:root {
    --ink: #17212b;
    --muted: #64717d;
    --line: #dbe2e8;
    --paper: #f4f7fa;
    --panel: #ffffff;
    --panel-2: #eef4f7;
    --accent: #00a7b5;
    --accent-dark: #047480;
    --hot: #f05a28;
    --yellow: #ffcc32;
    --green: #21a66b;
    --shadow: 0 18px 48px rgba(23, 33, 43, .12);
    --container-max: 1200px;
    --container-narrow: 760px;
    --container-pad: 24px;
    --bp-container-max: var(--container-max);
    --bp-container-narrow: var(--container-narrow);
}

/* Bay Print trust and responsive cleanup - 2026-06-12 */
.bp-container {
    width: 100%;
    max-width: 1400px;
    margin-inline: auto;
    padding-inline: 16px;
    box-sizing: border-box;
}

.bp-storefront-header .bp-brand-logo img,
.bp-storefront-header .brand-logo-frame img,
header .logo img {
    height: 44px !important;
    width: auto !important;
    max-height: 44px !important;
    max-width: 220px !important;
    object-fit: contain !important;
}

.footer-logo-small .brand-logo-frame img {
    height: auto !important;
    max-height: 40px !important;
    width: auto !important;
    max-width: 160px !important;
    object-fit: contain !important;
}

.bp-hotline {
    color: inherit;
    text-decoration: none;
}

.bp-top-utility-inner nav {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
}

.bp-top-group {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.bp-top-group + .bp-top-group {
    margin-left: 12px;
    padding-left: 12px;
    border-left: 1px solid rgba(255, 255, 255, .25);
}

.bp-lang-switch span[aria-current="true"] {
    font-weight: 800;
}

.bp-desktop-nav {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.bp-mobile-menu {
    display: none;
}

.bp-mobile-menu summary {
    cursor: pointer;
    list-style: none;
}

.bp-mobile-menu summary::-webkit-details-marker {
    display: none;
}

.bp-mobile-menu-panel {
    display: grid;
    gap: 8px;
    padding: 12px 0 4px;
}

.site-footer.bp-footer-columns .footer-link-columns {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: start !important;
}

.site-footer.bp-footer-columns .footer-links {
    align-items: flex-start !important;
    text-align: left !important;
}

.site-footer.bp-footer-columns .footer-links a,
.site-footer.bp-footer-columns .footer-links p {
    line-height: 1.8 !important;
}

.bp-business-lines {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 12px;
    color: rgba(255, 255, 255, .72);
    font-size: .9rem;
}

.contact-intake-section {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 28px 16px 18px;
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr);
    gap: 20px;
    align-items: start;
    box-sizing: border-box;
}

.contact-form-card form {
    display: grid;
    gap: 14px;
}

.contact-info-card p {
    margin: 0 0 10px;
    line-height: 1.75;
}

.payment-method-detail {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    padding: 9px 12px;
    border-radius: 6px;
    background: #111827;
    color: #fff;
    text-decoration: none;
    font-weight: 800;
}

.bp-floating-whatsapp {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 80;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border-radius: 999px;
    background: #12b76a;
    color: #fff;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(18, 183, 106, .28);
}

@media (min-width: 768px) {
    .bp-container {
        padding-inline: 24px;
    }

    .contact-intake-section {
        padding-inline: 24px;
    }
}

@media (min-width: 1200px) {
    .bp-container {
        padding-inline: 32px;
    }

    .contact-intake-section {
        padding-inline: 32px;
    }
}

@media (max-width: 1199px) {
    .site-footer.bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .bp-storefront-header .bp-brand-logo img,
    .bp-storefront-header .brand-logo-frame img,
    header .logo img {
        height: 36px !important;
        max-height: 36px !important;
        max-width: 180px !important;
    }

    .bp-top-utility-inner nav {
        justify-content: space-between;
    }

    .bp-top-group:not(.bp-top-group-primary):not(.bp-lang-switch) {
        display: none;
    }

    .bp-desktop-nav {
        display: none;
    }

    .bp-mobile-menu {
        display: block;
        width: 100%;
    }

    .bp-mobile-menu summary {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 38px;
        border-radius: 6px;
        background: #ffffff;
        color: #17212b;
        border: 1px solid rgba(23, 33, 43, .14);
        font-weight: 900;
    }

    .bp-mobile-menu-panel a {
        display: flex;
        align-items: center;
        min-height: 40px;
        padding: 8px 12px;
        border: 1px solid rgba(15, 23, 42, .12);
        border-radius: 6px;
        text-decoration: none;
        color: #111827;
        background: #fff;
        font-weight: 800;
    }

    .site-footer.bp-footer-columns .footer-link-columns,
    .contact-intake-section {
        grid-template-columns: 1fr !important;
    }

    .bp-business-lines {
        display: grid;
    }

    .bp-floating-whatsapp {
        right: 12px;
        bottom: 12px;
        min-height: 40px;
        padding-inline: 13px;
        font-size: .9rem;
    }
}

/* Bay Print responsive storefront patch: capped content, full-bleed sections, fixed card grids. */
.bp-container {
    width: 100%;
    max-width: 1400px;
    margin-inline: auto;
    box-sizing: border-box;
    padding-inline: 16px;
}

.bp-section {
    width: 100%;
    padding: 32px 0;
}

.bp-home,
.bp-storefront-header .topbar,
.bp-storefront-header .nav-main,
.bp-storefront-header .primary-nav,
.bp-footer-columns {
    padding-left: 0;
    padding-right: 0;
}

.bp-top-utility {
    min-height: 36px;
    background: #fff;
}

.bp-top-utility-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: var(--muted);
    font-size: 13px;
}

.bp-top-tagline {
    color: var(--accent-dark);
    font-weight: 850;
}

.bp-top-utility nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0;
}

.bp-top-group {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 18px;
    padding-inline: 12px;
    border-left: 1px solid var(--line);
}

.bp-top-group:first-child {
    border-left: 0;
}

.bp-top-group a {
    color: inherit;
    font-weight: 750;
    text-decoration: none;
}

.bp-lang-switch a {
    min-width: 28px;
    text-align: center;
}

.bp-main-header {
    min-height: auto;
    background: #fff;
}

.bp-main-header-inner {
    display: grid;
    grid-template-columns: auto minmax(160px, 1fr) auto;
    align-items: center;
    gap: 18px;
    min-height: 68px;
}

.bp-storefront-header .brand-logo-frame.logo,
header .logo {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    max-width: 220px;
    height: 44px;
    min-height: 0;
    max-height: 44px;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
    padding: 0;
}

header .logo picture,
header .logo img,
.bp-storefront-header .brand-logo-frame.logo picture,
.bp-storefront-header .brand-logo-frame.logo img {
    display: block;
    width: auto;
    height: 44px;
    max-width: 220px;
    max-height: 44px;
    object-fit: contain;
}

.bp-brand-logo {
    min-width: 0;
}

.brand-logo-frame {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: min(238px, 42vw);
    min-height: 58px;
    border-radius: 8px;
    background: #111;
    padding: 8px 12px;
}

.brand-logo-frame picture,
.brand-logo-frame img {
    display: block;
    width: 100%;
    height: auto;
}

.footer-logo-frame {
    width: min(260px, 100%);
    margin-bottom: 8px;
}

.bp-footer-contact .brand-logo-frame {
    width: min(260px, 100%);
    margin-bottom: 8px;
}

.bp-hotline {
    justify-self: end;
    text-align: right;
}

.bp-hotline strong {
    color: #c2410c;
    font-size: 18px;
}

.bp-main-header .nav-actions {
    justify-content: flex-end;
    gap: 10px;
}

.bp-primary-nav {
    padding: 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: #fff;
}

.bp-primary-nav-inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 44px;
    overflow-x: auto;
    scrollbar-width: thin;
}

.bp-primary-nav a,
.bp-mega-trigger summary {
    flex: 0 0 auto;
    color: var(--ink);
    font-size: 14px;
    font-weight: 780;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
}

.bp-mega-trigger {
    flex: 0 0 auto;
}

.bp-mega-menu {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bp-promo-section {
    background: #fff7ed;
}

.bp-grid,
.bp-promo-carousel,
.bp-clean-product-grid,
.bp-catalog-products,
.bp-category-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.bp-promo-carousel {
    overflow: visible;
    padding: 0;
    scroll-snap-type: none;
}

.bp-promo-card {
    display: grid;
    grid-template-rows: auto 1fr;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(154, 52, 18, .08);
}

.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: linear-gradient(135deg, #fff7ed, #e0f2fe);
}

.bp-promo-card-body {
    display: grid;
    gap: 8px;
    align-content: start;
    padding: 16px;
}

.bp-promo-card small {
    color: #c2410c;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.bp-promo-card h3 {
    margin: 0;
    color: var(--ink);
    font-size: 20px;
    line-height: 1.22;
}

.bp-promo-card p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
}

.bp-category-section {
    background: #fff;
}

.bp-category-card {
    min-width: 0;
    height: 100%;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 14px;
    text-decoration: none;
}

.bp-category-card span {
    color: var(--ink);
    font-size: 18px;
    font-weight: 850;
}

.bp-category-card strong {
    color: #c2410c;
    font-size: 13px;
}

.bp-quick-order-section {
    background: #f8fafc;
}

.bp-quick-order {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    padding-top: 0;
    padding-bottom: 0;
}

.bp-quick-table article {
    grid-template-columns: 72px minmax(0, 1fr);
}

.bp-quick-table article b,
.bp-quick-table article .button {
    grid-column: 1 / -1;
}

.bp-clean-product-grid,
.product-grid.bp-clean-product-grid {
    grid-template-columns: 1fr;
}

.bp-product-card {
    display: grid;
    grid-template-rows: 1fr auto;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(23, 33, 43, .06);
}

.bp-product-card .product-card-link {
    display: grid;
    gap: 0;
    color: inherit;
    text-decoration: none;
}

.bp-product-card .product-thumb {
    overflow: hidden;
    background: #f8fafc;
}

.bp-product-card .product-card-body {
    display: grid;
    gap: 8px;
    padding: 16px;
}

.bp-product-card .category {
    margin: 0;
    color: #c2410c;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.bp-product-card h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.25;
}

.bp-product-card p {
    margin: 0;
}

.bp-product-card .card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: var(--muted);
}

.bp-product-card .card-meta strong {
    color: #c2410c;
}

.bp-card-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 0 16px 16px;
}

.bp-button,
.bp-card-actions .button,
.bp-promo-card .button,
.bp-main-header .button,
.bp-quick-table .button,
.bp-business-support .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid #f97316;
    border-radius: 6px;
    background: #f97316;
    color: #fff;
    padding: 0 14px;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.bp-card-actions .button.secondary,
.bp-business-support .button.secondary {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.bp-process-band,
.bp-business-support {
    width: 100%;
    margin: 0;
    padding: 32px 0;
}

.bp-business-support-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.bp-footer-columns {
    background: #17212b;
}

.bp-footer-columns .footer-link-panel {
    padding: 36px 0;
}

.bp-footer-columns .footer-link-columns {
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 24px;
}

.bp-footer-columns .footer-links {
    align-content: start;
}

.bp-footer-columns .footer-links > strong {
    line-height: 1.4;
}

.bp-footer-columns .footer-links a,
.bp-footer-columns .footer-links p {
    line-height: 1.8;
}

.bp-footer-columns .brand-logo-frame,
.bp-footer-columns .brand-logo-frame img {
    max-height: 40px;
}

@media (max-width: 767px) {
    .bp-top-tagline,
    .bp-top-group-secondary {
        display: none;
    }

    .bp-top-utility-inner {
        justify-content: flex-end;
    }

    .bp-main-header-inner {
        grid-template-columns: auto 1fr;
        gap: 12px;
        min-height: 68px;
    }

    .bp-hotline {
        justify-self: end;
        font-size: 0;
    }

    .bp-hotline span {
        display: none;
    }

    .bp-hotline strong {
        display: inline-grid;
        width: 42px;
        height: 42px;
        place-items: center;
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 50%;
        color: transparent;
    }

    .bp-hotline strong::before {
        content: "WA";
        color: #c2410c;
        font-size: 13px;
        font-weight: 900;
    }

    .bp-main-header .nav-actions {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .bp-main-header .nav-actions .icon-link:nth-child(1),
    .bp-main-header .nav-actions .icon-link:nth-child(2) {
        display: none;
    }

    .bp-primary-nav-inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-block: 8px;
        overflow: visible;
    }

    .bp-primary-nav-inner > a {
        display: none;
    }

    .bp-mega-trigger {
        width: 100%;
    }

    .bp-mega-trigger summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 42px;
        border: 1px solid var(--line);
        border-radius: 6px;
        padding-inline: 12px;
    }

    .bp-mega-trigger[open] .bp-mega-menu {
        position: fixed;
        inset: 0;
        z-index: 80;
        display: grid;
        width: 100vw;
        max-height: 100vh;
        grid-template-columns: 1fr;
        overflow-y: auto;
        border: 0;
        border-radius: 0;
        padding: 72px 18px 24px;
    }
}

@media (min-width: 768px) {
    .bp-container {
        padding-inline: 24px;
    }

    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 44px;
        padding-bottom: 44px;
    }

    .bp-promo-carousel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-card-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-quick-order {
        grid-template-columns: minmax(220px, .35fr) minmax(0, 1fr);
    }

    .bp-quick-table article {
        grid-template-columns: 72px minmax(0, 1fr) auto auto;
    }

    .bp-quick-table article b,
    .bp-quick-table article .button {
        grid-column: auto;
    }

    .bp-business-support-inner {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
        align-items: center;
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .bp-promo-carousel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .bp-container {
        padding-inline: 32px;
    }

    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .bp-promo-carousel {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Bay Print sprint final override: keep these rules at EOF. */
:root {
    --container-max: 1400px;
    --container-narrow: 720px;
}

.bp-container,
.container {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: 16px;
}

.bp-section {
    padding: 32px 0;
}

.bp-section > .bp-container,
.bp-process-band > .bp-container,
.bp-business-support > .bp-container {
    max-width: var(--container-max);
    margin-inline: auto;
}

.bp-promo-carousel {
    display: grid;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: 1fr;
    gap: 16px;
    overflow: visible;
    padding: 0;
    background: transparent;
    scroll-snap-type: none;
}

.bp-promo-card,
.bp-category-card,
.product-card {
    height: 100%;
    border-radius: 8px;
}

.bp-promo-card img,
.bp-category-card img,
.product-thumb img,
.product-card img,
.bp-product-gallery > img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: #f8fafc;
}

.bp-promo-card-body,
.product-card-body {
    display: grid;
    gap: 10px;
}

.bp-card-actions,
.catalogue-card-actions,
.product-matrix-actions {
    display: grid;
    gap: 8px;
}

.bp-card-actions .button,
.catalogue-card-actions a,
.product-matrix-actions a,
.product-matrix-actions button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid #f97316;
    border-radius: 6px;
    background: #f97316;
    color: #fff;
    padding: 10px 14px;
    font-weight: 900;
    text-decoration: none;
}

.bp-card-actions .button.secondary,
.catalogue-card-actions a:last-child {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.bp-product-hero,
.bp-anchor-tabs,
.bp-product-section,
.bp-catalog-header,
.bp-catalog-filter,
.bp-catalog-products {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: 16px;
}

.bp-product-hero {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    padding-top: 32px;
    padding-bottom: 32px;
}

.bp-product-section {
    padding-top: 32px;
    padding-bottom: 32px;
}

.bp-product-faq-list,
.feature-grid,
.product-grid,
.bp-clean-product-grid,
.bp-catalog-products {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.bp-product-faq-list article,
.feature-grid article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 16px;
}

.bp-product-cta-row,
.bp-error-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.bp-footer-columns .footer-link-panel {
    padding: 32px 0;
}

.bp-footer-columns .footer-link-columns {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
    align-items: start;
}

.bp-footer-columns .footer-links {
    align-self: start;
    line-height: 1.8;
}

.bp-footer-columns .footer-links a {
    display: block;
    line-height: 1.8;
}

.cart-toast {
    position: fixed;
    right: 12px;
    bottom: 12px;
    z-index: 1200;
}

@media (min-width: 768px) {
    .bp-container,
    .container,
    .bp-product-hero,
    .bp-anchor-tabs,
    .bp-product-section,
    .bp-catalog-header,
    .bp-catalog-filter,
    .bp-catalog-products {
        padding-inline: 24px;
    }

    .bp-section,
    .bp-product-section {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .bp-product-hero {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .bp-promo-carousel,
    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-category-grid,
    .bp-product-faq-list,
    .feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-card-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .bp-product-hero {
        grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr);
        gap: 48px;
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .bp-promo-carousel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .bp-container,
    .container,
    .bp-product-hero,
    .bp-anchor-tabs,
    .bp-product-section,
    .bp-catalog-header,
    .bp-catalog-filter,
    .bp-catalog-products {
        padding-inline: 32px;
    }

    .bp-section,
    .bp-product-section {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .bp-product-hero {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .bp-promo-carousel,
    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Bay Print full-site sprint patch: session cart UI, footer stickiness, grids, product pages. */
:root {
    --container-max: 1400px;
    --container-narrow: 720px;
    --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

html,
body {
    min-height: 100%;
    margin: 0;
}

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    color: var(--ink);
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

body > main,
.site-content {
    flex: 1 0 auto;
}

.site-footer {
    flex-shrink: 0;
    width: 100%;
}

.container,
.bp-container {
    width: 100%;
    max-width: var(--container-max);
    margin-inline: auto;
    box-sizing: border-box;
}

.container-narrow,
.bp-error-panel {
    max-width: var(--container-narrow);
    margin-inline: auto;
}

.bp-section,
.section {
    padding: 32px 0;
}

.bp-section p,
.bp-product-section p,
.bp-catalog-header p {
    max-width: var(--container-narrow);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid #e5e7eb;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(12px);
}

.bp-main-header-inner {
    min-height: 68px;
}

.bp-primary-nav a,
.bp-mega-trigger summary,
.main-nav a {
    font-size: 14px;
}

.cart-count-badge {
    display: inline-grid;
    min-width: 22px;
    height: 22px;
    place-items: center;
    border-radius: 999px;
    background: #f97316;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
}

.cart-count-badge[hidden] {
    display: none;
}

.cart-toast {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 1200;
    max-width: min(320px, calc(100vw - 36px));
    transform: translateY(14px);
    border: 1px solid rgba(23, 33, 43, .12);
    border-radius: 8px;
    background: #17212b;
    color: #fff;
    padding: 12px 16px;
    box-shadow: 0 18px 44px rgba(23, 33, 43, .2);
    font-size: 14px;
    font-weight: 800;
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
}

.cart-toast.is-visible {
    transform: translateY(0);
    opacity: 1;
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 24px;
}

.product-card {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
    transition: transform .2s ease, box-shadow .2s ease;
}

.product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .1);
}

.product-card img,
.bp-product-gallery img,
.bp-product-card .product-thumb img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.bp-product-page {
    width: 100%;
}

.bp-product-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr);
    gap: 48px;
    align-items: start;
    box-sizing: border-box;
    width: 100%;
    max-width: var(--container-max);
    margin-inline: auto;
    padding: 48px 32px;
}

.bp-product-section {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--container-max);
    margin-inline: auto;
    padding: 48px 32px;
}

.bp-product-section h2 {
    margin-top: 0;
    font-size: clamp(22px, 3vw, 36px);
    line-height: 1.25;
}

.bp-product-section table {
    width: 100%;
}

.bp-product-faq-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.bp-product-faq-list article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 16px;
}

.bp-product-cta-row,
.bp-error-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.bp-error-page {
    display: grid;
    flex: 1 0 auto;
    place-items: center;
    background: #f8fafc;
}

.bp-error-panel {
    text-align: center;
}

.bp-error-actions {
    justify-content: center;
}

.bp-footer-columns .footer-link-panel {
    padding: 48px 0 24px;
}

.bp-footer-columns .footer-link-columns {
    max-width: var(--container-max);
    margin-inline: auto;
    align-items: start;
}

@media (max-width: 900px) {
    .bp-product-hero {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media (max-width: 767px) {
    .bp-section,
    .section,
    .bp-product-hero,
    .bp-product-section {
        padding: 32px 16px;
    }

    .product-grid,
    .bp-product-faq-list {
        grid-template-columns: 1fr;
    }

    .cart-toast {
        right: 12px;
        bottom: 12px;
    }
}

@media (min-width: 768px) {
    .bp-section,
    .section {
        padding-top: 48px;
        padding-bottom: 48px;
    }
}

/* Bay Print final lock: keep this last so live CSS cannot re-expand logo/footer. */
.bp-storefront-header .brand-logo-frame.logo,
header .logo {
    width: auto;
    max-width: 220px;
    height: 44px;
    min-height: 0;
    max-height: 44px;
    overflow: hidden;
    background: transparent;
    padding: 0;
}

header .logo img,
.bp-storefront-header .brand-logo-frame.logo img {
    width: auto;
    height: 44px;
    max-height: 44px;
    object-fit: contain;
}

.bp-section,
.bp-process-band,
.bp-business-support {
    padding-top: 32px;
    padding-bottom: 32px;
}

.bp-footer-columns .footer-link-columns {
    align-items: start;
    gap: 24px;
}

.bp-footer-columns .footer-links {
    align-content: start;
}

.bp-footer-columns .footer-links a,
.bp-footer-columns .footer-links p {
    line-height: 1.8;
}

.bp-footer-columns .brand-logo-frame,
.bp-footer-columns .brand-logo-frame img {
    max-height: 40px;
}

@media (max-width: 767px) {
    .bp-storefront-header .brand-logo-frame.logo,
    header .logo {
        max-width: 180px;
        height: 36px;
        max-height: 36px;
    }

    header .logo img,
    .bp-storefront-header .brand-logo-frame.logo img {
        height: 36px;
        max-height: 36px;
    }
}

@media (min-width: 768px) {
    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

@media (min-width: 1200px) {
    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 48px;
        padding-bottom: 48px;
    }
}

/* Bay Print homepage/footer hotfix: logo sizing, zh-HK copy layout, compact sections. */
.bp-storefront-header .brand-logo-frame.logo,
header .logo {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    max-width: 220px;
    height: 44px;
    min-height: 0;
    max-height: 44px;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
    padding: 0;
}

header .logo picture,
header .logo img,
.bp-storefront-header .brand-logo-frame.logo picture,
.bp-storefront-header .brand-logo-frame.logo img {
    display: block;
    width: auto;
    height: 44px;
    max-width: 220px;
    max-height: 44px;
    object-fit: contain;
}

.bp-main-header-inner {
    min-height: 68px;
}

.bp-top-utility nav {
    gap: 0;
}

.bp-top-group {
    gap: 12px;
    padding-inline: 14px;
}

.bp-social-links {
    gap: 8px;
}

.bp-social-dot {
    display: inline-grid;
    width: 22px;
    height: 22px;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: #17212b;
    color: transparent;
    text-decoration: none;
}

.bp-social-dot span {
    display: block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #fff;
    opacity: .95;
}

.bp-social-dot-instagram {
    background: linear-gradient(135deg, #f05a28, #e11d8f 55%, #00a7b5);
}

.bp-social-dot-facebook {
    background: #1877f2;
}

.bp-home .eyebrow {
    text-transform: none;
    letter-spacing: 0;
}

.bp-section,
.bp-process-band,
.bp-business-support {
    padding-top: 32px;
    padding-bottom: 32px;
}

.bp-promo-card,
.bp-category-card,
.bp-product-card {
    height: 100%;
}

.bp-promo-card small {
    display: none;
}

.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img,
.bp-quick-table img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img {
    height: auto;
}

.bp-quick-table img {
    height: 72px;
}

.bp-more-link,
.bp-section-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin-top: 12px;
    border-radius: 6px;
    color: #c2410c;
    font-weight: 850;
    text-decoration: none;
}

.bp-section-actions {
    margin: 18px 0 0;
    text-align: center;
}

.bp-section-actions .button.secondary {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    color: #9a3412;
    padding-inline: 18px;
}

.bp-business-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.bp-business-actions .button {
    min-width: 136px;
}

.bp-footer-columns .footer-link-panel {
    padding: 32px 0;
}

.bp-footer-columns .footer-link-columns {
    align-items: start;
    gap: 24px;
}

.bp-footer-columns .footer-links {
    display: grid;
    align-content: start;
    gap: 6px;
}

.bp-footer-columns .footer-links > strong {
    margin-bottom: 4px;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
}

.bp-footer-columns .footer-links a,
.bp-footer-columns .footer-links p {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    line-height: 1.8;
}

.bp-footer-columns .footer-newsletter {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    margin-top: 8px;
}

.bp-footer-columns .footer-newsletter input,
.bp-footer-columns .footer-newsletter button {
    min-height: 40px;
    border-radius: 6px;
}

.bp-footer-columns .footer-newsletter input {
    min-width: 0;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .08);
    color: #fff;
    padding-inline: 12px;
}

.bp-footer-columns .footer-newsletter button {
    border: 1px solid #f97316;
    background: #f97316;
    color: #fff;
    padding-inline: 14px;
    font-weight: 850;
}

.bp-footer-columns .brand-logo-frame {
    max-height: 40px;
}

.bp-footer-columns .brand-logo-frame img {
    max-height: 40px;
}

@media (max-width: 767px) {
    .bp-storefront-header .brand-logo-frame.logo,
    header .logo {
        height: 36px;
        max-width: 180px;
        max-height: 36px;
    }

    header .logo picture,
    header .logo img,
    .bp-storefront-header .brand-logo-frame.logo picture,
    .bp-storefront-header .brand-logo-frame.logo img {
        height: 36px;
        max-width: 180px;
        max-height: 36px;
    }

    .bp-main-header-inner {
        min-height: 56px;
    }

    .bp-top-group-primary {
        border-left: 0;
    }

    .bp-business-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .bp-footer-columns .footer-newsletter {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 768px) {
    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

@media (min-width: 1200px) {
    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 48px;
        padding-bottom: 48px;
    }
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--ink);
    background: var(--paper);
    line-height: 1.55;
}

a {
    color: inherit;
}

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

.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(16px);
}

.topbar,
.utility-strip,
.nav-main,
.category-rail,
.header-hot-products,
.series-mega-nav,
.storefront-menu,
.site-footer,
main {
    padding-left: clamp(18px, 4vw, 56px);
    padding-right: clamp(18px, 4vw, 56px);
}

.topbar {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    color: var(--muted);
    font-size: 13px;
    border-bottom: 1px solid var(--line);
}

.topbar span:first-child {
    margin-right: auto;
    color: var(--accent-dark);
    font-weight: 800;
}

.topbar a,
.utility-strip a,
.primary-nav a,
.storefront-menu a,
.footer-links a {
    text-decoration: none;
}

.utility-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--line);
    background: #f8fbfd;
}

.utility-strip a {
    min-width: 0;
    display: grid;
    gap: 2px;
    min-height: 48px;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .14);
    border-radius: 6px;
    background: var(--panel);
    padding: 8px 10px;
}

.utility-strip a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.utility-strip span,
.utility-strip strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.utility-strip span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.utility-strip strong {
    color: #33404a;
    font-size: 13px;
    font-weight: 800;
}

.nav-main {
    min-height: 86px;
    display: grid;
    grid-template-columns: auto minmax(220px, .92fr) minmax(280px, 520px) auto;
    align-items: center;
    gap: 16px;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    line-height: 1.05;
    text-decoration: none;
}

.brand small {
    color: var(--muted);
    font-weight: 800;
}

.brand-mark {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: var(--ink);
    color: white;
    letter-spacing: 0;
}

.primary-nav,
.nav-actions {
    display: flex;
    align-items: center;
    gap: 14px;
}

.icon-link {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 12px;
    background: white;
    color: #33404a;
    text-decoration: none;
    font-size: 14px;
    font-weight: 850;
}

.primary-nav {
    flex-wrap: wrap;
    color: #33404a;
    font-size: 14px;
}

.nav-actions {
    justify-content: flex-end;
}

.header-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    min-width: 0;
}

.header-search input {
    min-height: 42px;
}

.header-search button {
    min-height: 42px;
    padding: 0 14px;
}

.header-order-tray {
    display: grid;
    grid-template-columns: minmax(150px, .9fr) minmax(220px, 1.3fr) minmax(120px, .7fr) minmax(120px, .7fr) 92px minmax(130px, .8fr) auto auto;
    gap: 8px;
    align-items: end;
    padding: 10px clamp(18px, 4vw, 56px);
    border-top: 1px solid var(--line);
    background: #fff7dc;
}

.header-order-title,
.header-order-tray label,
.header-order-total {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.header-order-title span,
.header-order-tray label,
.header-order-total span {
    color: #7b5200;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.header-order-title strong,
.header-order-title em,
.header-order-total output,
.header-order-total small {
    display: block;
    min-width: 0;
}

.header-order-title strong {
    color: var(--ink);
    font-size: 16px;
    line-height: 1.15;
}

.header-order-title em,
.header-order-total small {
    color: #6b5c2d;
    font-size: 12px;
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-order-tray select,
.header-order-tray input {
    width: 100%;
    min-height: 38px;
    background: white;
}

.header-order-total {
    min-height: 38px;
    align-content: center;
    border: 1px solid rgba(240, 90, 40, .24);
    border-radius: 6px;
    background: white;
    padding: 5px 10px;
}

.header-order-total output {
    color: var(--hot);
    font-size: 17px;
    font-weight: 950;
    line-height: 1.1;
}

.header-order-tray button,
.header-order-tray > a {
    min-height: 38px;
}

.header-order-tray > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(7, 103, 104, .26);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 12px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
}

.series-mega-nav {
    display: grid;
    grid-template-columns: minmax(240px, .46fr) minmax(0, 1.54fr);
    gap: 12px;
    padding-top: 12px;
    padding-bottom: 12px;
    border-top: 1px solid var(--line);
    background: #f8fbfd;
}

.series-mega-visual {
    position: relative;
    min-height: 284px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel-2);
}

.series-mega-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.series-mega-visual figcaption {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: var(--accent-dark);
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 950;
}

.series-mega-body {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.series-mega-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 14px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 12px;
}

.series-mega-head span,
.series-mega-head strong,
.series-mega-head a {
    display: block;
    min-width: 0;
}

.series-mega-head span {
    grid-column: 1 / -1;
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.series-mega-head strong {
    color: var(--ink);
    font-size: 18px;
    line-height: 1.2;
}

.series-mega-head a {
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 7px 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 950;
    white-space: nowrap;
}

.series-mega-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.series-mega-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
}

.series-mega-card-head {
    display: grid;
    gap: 4px;
    min-height: 66px;
    align-content: center;
    border-bottom: 1px solid var(--line);
    background: var(--ink);
    color: white;
    padding: 10px;
    text-decoration: none;
}

.series-mega-card-head span,
.series-mega-card-head strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.series-mega-card-head span {
    color: var(--yellow);
    font-size: 10px;
    font-weight: 950;
    text-transform: uppercase;
}

.series-mega-card-head strong {
    font-size: 15px;
    line-height: 1.2;
}

.series-mega-links {
    display: grid;
}

.series-mega-links a {
    display: grid;
    gap: 2px;
    min-height: 50px;
    align-content: center;
    border-bottom: 1px solid var(--line);
    padding: 8px 10px;
    text-decoration: none;
}

.series-mega-links a:last-child {
    border-bottom: 0;
}

.series-mega-links a:hover {
    background: #edf9f8;
}

.series-mega-links strong,
.series-mega-links em {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.series-mega-links strong {
    color: var(--ink);
    font-size: 13px;
    font-weight: 950;
}

.series-mega-links em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.series-mega-foot {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
}

.series-mega-foot a {
    min-height: 36px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 8px;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.series-mega-foot a:hover,
.series-mega-head a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.category-rail {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    padding-top: 10px;
    padding-bottom: 12px;
    border-top: 1px solid var(--line);
}

.category-rail a {
    display: grid;
    gap: 2px;
    min-height: 54px;
    align-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    padding: 8px 10px;
    text-decoration: none;
}

.category-rail strong {
    font-size: 13px;
    line-height: 1.2;
}

.category-rail span {
    color: var(--muted);
    font-size: 12px;
}

.category-rail a:hover {
    border-color: var(--accent);
    background: white;
    color: var(--accent-dark);
}

.header-hot-products {
    display: grid;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
    gap: 10px;
    padding-top: 10px;
    padding-bottom: 12px;
    border-top: 1px solid var(--line);
    background: #f8fbfd;
}

.header-hot-head {
    display: grid;
    align-content: center;
    min-height: 106px;
    border: 1px solid rgba(20, 107, 117, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
}

.header-hot-head span,
.header-hot-head strong,
.header-hot-head a {
    display: block;
}

.header-hot-head span {
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.header-hot-head strong {
    margin-top: 5px;
    font-size: 18px;
    line-height: 1.18;
}

.header-hot-head a {
    margin-top: 10px;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
}

.header-hot-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.header-hot-strip article {
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    overflow: hidden;
}

.header-hot-product {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    min-height: 82px;
    align-items: center;
    padding: 8px;
    text-decoration: none;
}

.header-hot-product img {
    width: 76px;
    height: 64px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.header-hot-product span,
.header-hot-product strong,
.header-hot-product em,
.header-hot-product b {
    display: block;
    min-width: 0;
}

.header-hot-product strong {
    overflow: hidden;
    color: var(--ink);
    font-size: 14px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-hot-product em {
    overflow: hidden;
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-hot-product b {
    margin-top: 5px;
    color: var(--hot);
    font-size: 13px;
    line-height: 1.2;
}

.header-hot-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--line);
}

.header-hot-actions a {
    min-height: 30px;
    display: grid;
    place-items: center;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.header-hot-actions a + a {
    border-left: 1px solid var(--line);
}

.header-hot-actions a:hover {
    background: #edf9f8;
}

.storefront-menu {
    border-top: 1px solid var(--line);
    padding-top: 10px;
    padding-bottom: 12px;
}

.storefront-menu summary {
    min-height: 52px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 10px 14px;
    cursor: pointer;
    list-style: none;
}

.storefront-menu summary::-webkit-details-marker {
    display: none;
}

.storefront-menu summary::after {
    content: "+";
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    font-weight: 950;
}

.storefront-menu[open] summary::after {
    content: "-";
}

.storefront-menu summary strong,
.storefront-menu summary span {
    display: block;
}

.storefront-menu summary span {
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
}

.storefront-menu-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
    gap: 14px;
    margin-top: 10px;
}

.storefront-menu-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.storefront-menu-card,
.storefront-quick {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.storefront-menu-head {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.storefront-menu-head img {
    width: 62px;
    height: 48px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.storefront-menu-head strong,
.storefront-menu-head em,
.storefront-menu-products span,
.storefront-menu-products em {
    display: block;
}

.storefront-menu-head strong {
    font-size: 14px;
}

.storefront-menu-head em {
    margin-top: 2px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.storefront-menu-products {
    display: grid;
    gap: 6px;
    margin-top: 10px;
}

.storefront-menu-products a {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    border-top: 1px solid var(--line);
    padding-top: 6px;
    font-size: 12px;
}

.storefront-menu-products span {
    color: #33404a;
    font-weight: 850;
}

.storefront-menu-products em {
    color: var(--hot);
    font-style: normal;
    font-weight: 900;
    white-space: nowrap;
}

.storefront-menu-actions,
.storefront-quick div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.storefront-menu-actions a,
.storefront-quick a {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 900;
}

.storefront-menu-actions a:first-child,
.storefront-quick a:first-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.storefront-quick {
    align-content: start;
}

.storefront-quick strong,
.storefront-quick p {
    display: block;
}

.storefront-quick p {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 13px;
}

main {
    padding-top: clamp(28px, 5vw, 64px);
    padding-bottom: clamp(34px, 6vw, 76px);
}

h1,
h2,
h3,
p {
    margin-top: 0;
}

h1 {
    font-size: clamp(38px, 5.3vw, 74px);
    line-height: 1.02;
    margin-bottom: 18px;
}

h2 {
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.15;
}

h3 {
    font-size: 20px;
    line-height: 1.2;
}

.lede {
    font-size: clamp(17px, 2vw, 21px);
    color: var(--muted);
    max-width: 760px;
}

.eyebrow {
    margin-bottom: 10px;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0;
}

.button,
button,
input[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: var(--accent);
    color: white;
    text-decoration: none;
    font: inherit;
    font-weight: 850;
    cursor: pointer;
    white-space: nowrap;
}

.button.secondary {
    background: white;
    color: var(--accent-dark);
}

.button.ghost {
    background: transparent;
    color: var(--accent-dark);
}

.button.danger,
button.danger {
    border-color: #c7391d;
    background: #c7391d;
    color: white;
}

.hero-commerce {
    min-height: calc(100vh - 116px);
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
}

.hero-copy {
    max-width: 700px;
}

.hero-actions,
.quote-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.hero-store-search {
    display: grid;
    gap: 10px;
    margin-top: 24px;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: white;
    padding: 14px;
    box-shadow: 0 12px 32px rgba(23, 33, 43, .08);
}

.hero-store-search label {
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 950;
}

.hero-store-search div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.hero-store-search input,
.hero-store-search button {
    min-height: 46px;
}

.hero-store-search button {
    padding: 0 18px;
}

.hero-store-search p {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.hero-store-search a {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: var(--panel-2);
    color: #33404a;
    padding: 0 10px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 850;
}

.hero-store-search a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.hero-utility-dock {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.hero-utility-dock a {
    min-width: 0;
    min-height: 78px;
    display: grid;
    align-content: center;
    gap: 5px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #fbfdfd;
    color: var(--ink);
    padding: 11px;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(23, 33, 43, .04);
}

.hero-utility-dock a:hover {
    border-color: var(--accent);
    background: #f2fbf9;
}

.hero-utility-dock strong,
.hero-utility-dock span {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hero-utility-dock strong {
    color: var(--accent-dark);
    font-size: 15px;
    line-height: 1.15;
    white-space: nowrap;
}

.hero-utility-dock span {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.35;
}

.hero-store-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.hero-store-stats span {
    min-height: 74px;
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #edf9f8;
    padding: 12px;
}

.hero-store-stats strong,
.hero-store-stats em {
    display: block;
}

.hero-store-stats strong {
    color: var(--accent-dark);
    font-size: 26px;
    line-height: 1;
}

.hero-store-stats em {
    margin-top: 5px;
    color: #33404a;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.hero-deal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.hero-deal-grid a {
    min-width: 0;
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 9px;
    text-decoration: none;
}

.hero-deal-grid a:hover {
    border-color: var(--yellow);
}

.hero-deal-grid img {
    width: 74px;
    height: 62px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.hero-deal-grid em,
.hero-deal-grid strong,
.hero-deal-grid b {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hero-deal-grid em {
    color: var(--yellow);
    font-size: 11px;
    font-style: normal;
    font-weight: 950;
    text-transform: uppercase;
}

.hero-deal-grid strong {
    margin-top: 2px;
    font-size: 14px;
}

.hero-deal-grid b {
    margin-top: 2px;
    color: rgba(255, 255, 255, .75);
    font-size: 12px;
}

.home-promo-rail {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(20px, 4vw, 34px);
}

.home-promo-rail a {
    min-height: 142px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(23, 33, 43, .12);
    border-radius: 8px;
    background: linear-gradient(135deg, #17212b 0%, #26323d 58%, #ffcc32 58%, #ffcc32 100%);
    color: white;
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(23, 33, 43, .1);
}

.home-promo-rail a:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(23, 33, 43, .14);
}

.home-promo-rail span,
.home-promo-rail strong,
.home-promo-rail em {
    display: block;
    max-width: 72%;
}

.home-promo-rail span {
    justify-self: start;
    border-radius: 999px;
    background: rgba(255, 204, 50, .16);
    color: var(--yellow);
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.home-promo-rail strong {
    font-size: 22px;
}

.home-promo-rail em {
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
    font-style: normal;
    line-height: 1.5;
}

.hero-image {
    margin: 0;
    min-height: 420px;
    border-radius: 8px;
    overflow: hidden;
    background: var(--panel);
    box-shadow: var(--shadow);
}

.hero-image img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
}

.instant-order-card {
    display: grid;
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: var(--shadow);
}

.instant-order-media {
    position: relative;
    height: 190px;
    margin: 0;
    overflow: hidden;
    border-radius: 8px;
    background: var(--panel-2);
}

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

.instant-order-media figcaption {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border-radius: 999px;
    background: rgba(23, 33, 43, .82);
    color: white;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 900;
}

.instant-order-head,
.instant-order-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
}

.instant-order-head h2 {
    margin-bottom: 0;
    font-size: 25px;
}

.instant-order-head a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 11px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
}

.quick-order-grid.compact {
    gap: 10px;
}

.quick-order-grid.compact .field {
    margin-bottom: 0;
}

.instant-order-prefill {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    border: 1px solid rgba(0, 123, 132, .14);
    border-radius: 8px;
    background: #f4fbfb;
    padding: 12px;
}

.instant-order-prefill .field {
    margin-bottom: 0;
}

.instant-order-prefill .span-2 {
    grid-column: 1 / -1;
}

.quantity-presets.compact {
    grid-template-columns: repeat(4, 1fr);
    margin: 0;
}

.instant-order-product {
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
    padding: 10px;
}

.instant-order-product img {
    width: 96px;
    height: 76px;
}

.instant-order-product h3 {
    font-size: 17px;
}

.instant-order-product p {
    margin-bottom: 6px;
    font-size: 13px;
}

.instant-order-total {
    grid-template-columns: minmax(0, .78fr) minmax(210px, 1fr);
    gap: 10px;
    padding: 14px;
}

.instant-order-total strong {
    font-size: 29px;
}

.instant-order-total .breakdown {
    font-size: 13px;
}

.home-direct-quote {
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(24px, 4vw, 44px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(16px, 3vw, 24px);
}

.home-direct-quote-copy {
    display: grid;
    align-content: center;
    gap: 14px;
}

.home-direct-quote-copy h2,
.home-direct-quote-copy p {
    margin-bottom: 0;
}

.home-direct-quote-copy > p:not(.eyebrow) {
    color: #48656b;
}

.home-direct-quote-steps {
    display: grid;
    gap: 8px;
}

.home-direct-quote-steps span {
    min-height: 38px;
    display: flex;
    align-items: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    color: var(--accent-dark);
    padding: 0 12px;
    font-size: 13px;
    font-weight: 950;
}

.home-direct-quote-form {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.home-direct-quote-form .field {
    margin-bottom: 0;
}

.home-direct-quote-form .span-2 {
    grid-column: span 2;
}

.home-direct-quote-form button {
    grid-column: 1 / -1;
    min-height: 44px;
    border: 0;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    padding: 0 14px;
    font: inherit;
    font-weight: 950;
    cursor: pointer;
}

.trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.trust-row span,
.pill-list li,
.mini-list li {
    border: 1px solid var(--line);
    border-radius: 999px;
    background: white;
    padding: 7px 11px;
    color: #33404a;
    font-size: 13px;
    font-weight: 750;
}

.hero-product-launcher {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.hero-product-launcher a {
    min-width: 0;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255, 255, 255, .92);
    padding: 8px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.hero-product-launcher a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.hero-product-launcher img {
    width: 58px;
    height: 50px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.hero-product-launcher strong,
.hero-product-launcher em {
    display: block;
}

.hero-product-launcher strong {
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hero-product-launcher em {
    margin-top: 2px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.3;
}

.storefront-command-center {
    margin-top: clamp(24px, 4vw, 44px);
    padding-top: clamp(22px, 4vw, 38px);
    padding-bottom: clamp(22px, 4vw, 38px);
    border-top: 1px solid rgba(7, 103, 104, .16);
    border-bottom: 1px solid rgba(7, 103, 104, .16);
    background: #e9f5f4;
}

.storefront-command-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.storefront-command-head h2,
.storefront-command-head p {
    margin-bottom: 0;
}

.storefront-command-head > div {
    max-width: 820px;
}

.storefront-command-head > div > p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.storefront-command-head nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.storefront-command-head nav a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.storefront-console-layout {
    display: grid;
    grid-template-columns: minmax(180px, .72fr) minmax(0, 1.55fr) minmax(300px, .92fr);
    gap: 14px;
    margin-top: 18px;
}

.storefront-category-list,
.storefront-fast-purchase {
    display: grid;
    align-content: start;
    gap: 8px;
}

.storefront-category-list > strong,
.storefront-fast-head {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-radius: 8px;
    background: var(--ink);
    color: var(--yellow);
    padding: 0 12px;
    font-size: 15px;
    font-weight: 950;
}

.storefront-fast-head a {
    color: white;
    font-size: 12px;
    text-decoration: none;
}

.storefront-category-list a,
.storefront-fast-purchase > a {
    display: grid;
    gap: 2px;
    min-height: 58px;
    border: 1px solid rgba(7, 103, 104, .15);
    border-radius: 8px;
    background: white;
    padding: 10px 12px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.storefront-category-list a:hover,
.storefront-fast-purchase > a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.storefront-category-list span,
.storefront-category-list em,
.storefront-fast-purchase strong,
.storefront-fast-purchase em,
.storefront-fast-purchase b {
    display: block;
}

.storefront-category-list span {
    color: #283640;
    font-weight: 950;
}

.storefront-category-list em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.storefront-assurance-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.storefront-assurance-grid a {
    min-width: 0;
    min-height: 136px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.storefront-assurance-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.storefront-assurance-grid span,
.storefront-assurance-grid strong,
.storefront-assurance-grid em {
    display: block;
}

.storefront-assurance-grid span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0;
    text-transform: uppercase;
}

.storefront-assurance-grid strong {
    color: #283640;
    font-size: 16px;
    line-height: 1.25;
}

.storefront-assurance-grid em {
    color: #48656b;
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.workflow-hero {
    align-items: stretch;
}

.workflow-visual img {
    min-height: 360px;
    object-fit: cover;
}

.workflow-stage-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: clamp(28px, 5vw, 56px);
}

.workflow-stage-grid article {
    min-width: 0;
    min-height: 240px;
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: linear-gradient(180deg, #ffffff 0%, #f6fbfa 100%);
    padding: 18px;
    box-shadow: 0 12px 30px rgba(23, 33, 43, .06);
}

.workflow-stage-grid span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0;
    text-transform: uppercase;
}

.workflow-stage-grid strong {
    color: #24333c;
    font-size: 18px;
    line-height: 1.25;
}

.workflow-stage-grid p {
    margin: 0;
    color: #48656b;
    font-size: 13px;
    line-height: 1.55;
}

.workflow-stage-grid a {
    align-self: end;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
}

.workflow-portal-board {
    margin-top: clamp(34px, 6vw, 68px);
}

.workflow-seo-board {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 18px;
    align-items: start;
    margin-top: clamp(34px, 6vw, 68px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f8fbfa;
    padding: clamp(22px, 4vw, 34px);
}

.workflow-seo-board h2,
.workflow-seo-board p {
    margin: 0;
}

.workflow-seo-board h2 {
    margin-top: 6px;
}

.workflow-seo-board p:not(.eyebrow) {
    margin-top: 10px;
    color: #50676c;
    line-height: 1.65;
}

.workflow-seo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.workflow-seo-grid article {
    min-width: 0;
    border: 1px solid rgba(7, 103, 104, .12);
    border-radius: 8px;
    background: white;
    padding: 16px;
}

.workflow-seo-grid strong,
.workflow-seo-grid p {
    display: block;
}

.workflow-seo-grid strong {
    color: #263840;
    font-size: 16px;
}

.workflow-seo-grid p {
    margin-top: 8px;
    color: #50676c;
    font-size: 13px;
    line-height: 1.55;
}

.workflow-faq {
    margin-top: clamp(34px, 6vw, 68px);
}

.storefront-promo-wall {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.storefront-promo-wall a {
    position: relative;
    min-height: 250px;
    display: grid;
    align-content: end;
    overflow: hidden;
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
}

.storefront-promo-wall a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(23, 33, 43, .08), rgba(23, 33, 43, .78));
}

.storefront-promo-wall img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .18s ease;
}

.storefront-promo-wall a:hover img {
    transform: scale(1.04);
}

.storefront-promo-wall span,
.storefront-promo-wall strong,
.storefront-promo-wall em,
.storefront-promo-wall b {
    position: relative;
    z-index: 2;
    display: block;
}

.storefront-promo-wall span {
    justify-self: start;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.storefront-promo-wall strong {
    margin-top: 8px;
    font-size: 23px;
    line-height: 1.15;
}

.storefront-promo-wall em {
    max-width: 92%;
    margin-top: 5px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}

.storefront-promo-wall b {
    margin-top: 8px;
    color: var(--yellow);
    font-size: 18px;
}

.storefront-fast-purchase > a {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.storefront-fast-purchase strong {
    color: #283640;
    font-size: 14px;
}

.storefront-fast-purchase em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.35;
}

.storefront-fast-purchase b {
    color: var(--hot);
    font-size: 13px;
    white-space: nowrap;
}

.home-sku-board {
    margin-top: clamp(24px, 4vw, 44px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: clamp(16px, 3vw, 24px);
    box-shadow: 0 14px 36px rgba(23, 33, 43, .07);
}

.home-sku-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    align-items: end;
}

.home-sku-head h2,
.home-sku-head p {
    margin-bottom: 0;
}

.home-sku-head p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
}

.home-sku-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.home-sku-table-wrap {
    overflow-x: auto;
    margin-top: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
}

.home-sku-table {
    min-width: 1040px;
}

.home-sku-table th {
    background: #edf9f8;
    color: var(--accent-dark);
    font-size: 12px;
    text-transform: uppercase;
}

.home-sku-table td {
    vertical-align: middle;
}

.home-sku-product {
    min-width: 0;
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    color: var(--ink);
    text-decoration: none;
}

.home-sku-product img {
    width: 62px;
    height: 52px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.home-sku-product strong,
.home-sku-product em,
.home-sku-spec,
.home-sku-table small {
    display: block;
}

.home-sku-product strong {
    overflow: hidden;
    color: var(--ink);
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-sku-product em,
.home-sku-table small {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.home-sku-spec {
    color: #33404a;
    font-weight: 900;
}

.home-sku-qty {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.home-sku-qty a {
    min-width: 34px;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
}

.home-sku-table td:nth-child(4) strong,
.home-sku-table td:nth-child(5) strong {
    color: var(--hot);
    font-size: 16px;
}

.home-sku-row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.home-sku-row-actions a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.home-sku-row-actions a:first-child {
    border-color: var(--accent);
    background: var(--accent);
    color: white;
}

.home-sku-note {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.commerce-service-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: clamp(18px, 3vw, 28px);
}

.commerce-service-strip a {
    min-height: 104px;
    display: grid;
    align-content: start;
    gap: 5px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
}

.commerce-service-strip a:hover {
    border-color: var(--yellow);
}

.commerce-service-strip span,
.commerce-service-strip strong,
.commerce-service-strip em {
    display: block;
}

.commerce-service-strip span {
    color: var(--yellow);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.commerce-service-strip strong {
    font-size: 17px;
}

.commerce-service-strip em {
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.home-service-marketplace {
    display: grid;
    grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(24px, 4vw, 48px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: clamp(16px, 3vw, 24px);
}

.home-service-marketplace-visual {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel-2);
}

.home-service-marketplace-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-service-marketplace-visual div {
    position: absolute;
    right: 16px;
    bottom: 16px;
    left: 16px;
    display: grid;
    gap: 5px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 8px;
    background: rgba(23, 33, 43, .82);
    color: white;
    padding: 14px;
    backdrop-filter: blur(10px);
}

.home-service-marketplace-visual span,
.home-service-marketplace-visual strong,
.home-service-marketplace-visual em {
    display: block;
}

.home-service-marketplace-visual span {
    color: var(--yellow);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.home-service-marketplace-visual strong {
    font-size: clamp(20px, 2.2vw, 30px);
    line-height: 1.18;
}

.home-service-marketplace-visual em {
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.home-service-marketplace-panel {
    display: grid;
    gap: 14px;
    align-content: start;
    min-width: 0;
}

.home-service-marketplace-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: end;
    border: 1px solid rgba(7, 103, 104, .14);
    border-radius: 8px;
    background: white;
    padding: 16px;
}

.home-service-marketplace-head h2,
.home-service-marketplace-head p {
    margin-bottom: 0;
}

.home-service-marketplace-head p:not(.eyebrow) {
    margin-top: 8px;
    color: #50676c;
    line-height: 1.58;
}

.home-service-marketplace-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.home-service-marketplace-grid a {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    text-decoration: none;
    box-shadow: 0 10px 26px rgba(23, 33, 43, .05);
}

.home-service-marketplace-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
    transform: translateY(-1px);
}

.home-service-marketplace-grid img {
    width: 100%;
    height: 132px;
    object-fit: cover;
    background: var(--panel-2);
}

.home-service-marketplace-grid span,
.home-service-marketplace-grid strong,
.home-service-marketplace-grid em,
.home-service-marketplace-grid small {
    display: block;
    margin-right: 12px;
    margin-left: 12px;
}

.home-service-marketplace-grid span {
    margin-top: 12px;
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.home-service-marketplace-grid strong {
    margin-top: 5px;
    color: var(--ink);
    font-size: 16px;
    line-height: 1.22;
}

.home-service-marketplace-grid em {
    margin-top: 7px;
    color: #50676c;
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.home-service-marketplace-grid small {
    margin-top: 10px;
    margin-bottom: 14px;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    line-height: 1.35;
}

.home-service-marketplace-ops {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.home-service-marketplace-ops a {
    min-height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 8px;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.home-service-marketplace-ops a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.home-topic-hub {
    margin-top: clamp(34px, 6vw, 72px);
}

.home-topic-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.home-topic-head h2,
.home-topic-head p {
    margin: 0;
}

.home-topic-head h2 {
    margin-top: 6px;
}

.home-topic-head p:not(.eyebrow) {
    max-width: 760px;
    margin-top: 8px;
    color: #50676c;
    line-height: 1.65;
}

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

.home-topic-grid a {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(23, 33, 43, .06);
}

.home-topic-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.home-topic-grid img {
    width: 100%;
    height: 170px;
    object-fit: cover;
}

.home-topic-grid span,
.home-topic-grid strong,
.home-topic-grid em {
    display: block;
    margin-right: 14px;
    margin-left: 14px;
}

.home-topic-grid span {
    margin-top: 14px;
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0;
    text-transform: uppercase;
}

.home-topic-grid strong {
    margin-top: 7px;
    color: #24333c;
    font-size: 17px;
    line-height: 1.25;
}

.home-topic-grid em {
    margin-top: 8px;
    margin-bottom: 16px;
    color: #50676c;
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.home-topic-feature {
    background: #f7fbfb;
}

.quick-panel,
.split-cta,
.process-band,
.catalog-hero,
.checkout-layout {
    margin-top: clamp(38px, 7vw, 86px);
}

.quick-panel {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 22px;
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 12px 32px rgba(23, 33, 43, .07);
}

.quick-panel h2 {
    margin-bottom: 0;
}

.quick-order-hero {
    min-height: calc(82vh - 116px);
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
}

.quick-order-visual {
    margin: 0;
    min-height: 420px;
    border-radius: 8px;
    overflow: hidden;
    background: var(--panel);
    box-shadow: var(--shadow);
}

.quick-order-visual img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
}

.quick-purchase-overview {
    display: grid;
    gap: 16px;
    margin-top: clamp(24px, 4vw, 42px);
    padding: clamp(18px, 4vw, 30px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdfd;
    box-shadow: 0 12px 34px rgba(23, 33, 43, .05);
}

.quick-purchase-head {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr);
    gap: 18px;
    align-items: end;
}

.quick-purchase-head h2,
.quick-purchase-head p {
    margin-bottom: 0;
}

.quick-purchase-head p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
}

.quick-purchase-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.quick-purchase-stats article {
    min-height: 86px;
    display: grid;
    align-content: center;
    gap: 5px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #eef8f7;
    padding: 12px;
}

.quick-purchase-stats strong,
.quick-purchase-stats span {
    display: block;
}

.quick-purchase-stats strong {
    color: var(--accent-dark);
    font-size: 24px;
    line-height: 1;
}

.quick-purchase-stats span {
    color: #48656b;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.3;
}

.quick-sku-matrix-shop {
    display: grid;
    grid-template-columns: minmax(320px, .72fr) minmax(0, 1.28fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(26px, 5vw, 54px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: clamp(16px, 3vw, 24px);
}

.quick-sku-matrix-visual {
    position: relative;
    min-height: 430px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
}

.quick-sku-matrix-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.quick-sku-matrix-visual figcaption {
    position: absolute;
    left: 14px;
    bottom: 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .9);
    color: var(--accent-dark);
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 950;
}

.quick-sku-matrix-content {
    display: grid;
    gap: 12px;
    align-content: start;
    min-width: 0;
}

.quick-sku-matrix-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.quick-sku-matrix-table {
    min-width: 980px;
}

.quick-sku-matrix-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    text-transform: uppercase;
}

.quick-sku-matrix-table td {
    vertical-align: middle;
}

.quick-sku-matrix-table td:nth-child(3),
.quick-sku-matrix-table td:nth-child(4),
.quick-sku-matrix-table td:nth-child(5),
.quick-sku-matrix-table td:nth-child(6) {
    font-variant-numeric: tabular-nums;
}

.quick-sku-matrix-table td:nth-child(3) strong,
.quick-sku-matrix-table td:nth-child(4) strong,
.quick-sku-matrix-table td:nth-child(5) strong,
.quick-sku-matrix-table td:nth-child(6) strong {
    color: var(--hot);
}

.quick-sku-matrix-table td span,
.quick-sku-matrix-table td em {
    display: block;
}

.quick-sku-matrix-table td span {
    color: var(--muted);
    font-size: 12px;
}

.quick-sku-product-cell {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 260px;
    color: inherit;
    text-decoration: none;
}

.quick-sku-product-cell img {
    width: 66px;
    height: 52px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.quick-sku-product-cell strong,
.quick-sku-product-cell em {
    display: block;
}

.quick-sku-product-cell strong {
    color: var(--accent-dark);
}

.quick-sku-product-cell em {
    color: var(--ink);
    font-style: normal;
    font-weight: 850;
    line-height: 1.25;
}

.quick-sku-matrix-actions {
    min-width: 176px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.quick-sku-matrix-actions button,
.quick-sku-matrix-actions a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 0 8px;
    font: inherit;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    white-space: nowrap;
}

.quick-sku-matrix-actions button {
    border: 0;
    background: var(--hot);
    color: white;
    cursor: pointer;
}

.quick-sku-matrix-actions button.is-active {
    background: var(--accent-dark);
}

.quick-sku-matrix-actions a {
    border: 1px solid var(--line);
    background: white;
    color: var(--accent-dark);
}

.quick-sku-matrix-notes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.quick-sku-matrix-notes span {
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 8px;
    background: #fff;
    color: var(--muted);
    padding: 11px;
    font-size: 13px;
    line-height: 1.4;
}

.quick-decision-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.quick-decision-grid a {
    min-height: 148px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    padding: 16px;
    text-decoration: none;
}

.quick-decision-grid a:hover {
    border-color: var(--accent);
    background: #f7fcfc;
}

.quick-decision-grid strong,
.quick-decision-grid span,
.quick-decision-grid b {
    display: block;
}

.quick-decision-grid strong {
    font-size: 18px;
    line-height: 1.22;
}

.quick-decision-grid span {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.quick-decision-grid b {
    align-self: end;
    margin-top: auto;
    color: var(--hot);
    font-size: 13px;
}

.quick-category-strip {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px;
}

.quick-category-strip a {
    min-width: 0;
    display: grid;
    gap: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 8px;
    text-decoration: none;
}

.quick-category-strip a:hover {
    border-color: var(--accent);
}

.quick-category-strip img {
    width: 100%;
    aspect-ratio: 1.45;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.quick-category-strip span,
.quick-category-strip strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.quick-category-strip span {
    color: #33404a;
    font-size: 13px;
    font-weight: 950;
}

.quick-category-strip strong {
    color: var(--muted);
    font-size: 12px;
}

.quick-command-center {
    display: grid;
    gap: 16px;
    margin-top: clamp(26px, 5vw, 54px);
    padding: clamp(18px, 4vw, 30px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
}

.quick-command-head {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    gap: 18px;
    align-items: end;
}

.quick-command-head h2,
.quick-command-head p {
    margin-bottom: 0;
}

.quick-command-head > div > p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.quick-command-head nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.quick-command-head nav a {
    min-height: 138px;
    display: grid;
    align-content: start;
    gap: 6px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 13px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .04);
}

.quick-command-head nav a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.quick-command-head nav span,
.quick-command-head nav strong,
.quick-command-head nav em {
    display: block;
}

.quick-command-head nav span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.quick-command-head nav strong {
    font-size: 17px;
    line-height: 1.2;
}

.quick-command-head nav em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}

.quick-command-grid {
    display: grid;
    grid-template-columns: minmax(280px, .85fr) minmax(0, 1.25fr) minmax(280px, .72fr);
    gap: 12px;
}

.quick-process-panel,
.quick-deal-panel,
.quick-support-panel {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.quick-process-panel > strong,
.quick-deal-panel > strong,
.quick-support-panel > strong {
    min-height: 38px;
    display: flex;
    align-items: center;
    border-radius: 8px;
    background: var(--ink);
    color: var(--yellow);
    padding: 0 11px;
    font-size: 14px;
}

.quick-process-panel article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 10px;
}

.quick-process-panel article > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #edf9f8;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 950;
}

.quick-process-panel h3,
.quick-process-panel p {
    margin-bottom: 0;
}

.quick-process-panel h3 {
    font-size: 16px;
}

.quick-process-panel p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.quick-deal-panel > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.quick-deal-panel a {
    min-width: 0;
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 9px;
    text-decoration: none;
}

.quick-deal-panel a:hover {
    border-color: var(--accent);
    background: white;
}

.quick-deal-panel img {
    grid-row: span 3;
    width: 76px;
    height: 64px;
    border-radius: 6px;
    object-fit: cover;
    background: white;
}

.quick-deal-panel span,
.quick-deal-panel strong,
.quick-deal-panel em {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.quick-deal-panel span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.quick-deal-panel strong {
    color: #33404a;
    font-size: 14px;
}

.quick-deal-panel em {
    color: var(--hot);
    font-size: 13px;
    font-style: normal;
    font-weight: 950;
}

.quick-support-panel .check-list {
    gap: 7px;
}

.quick-support-panel .check-list li {
    font-size: 13px;
}

.quick-support-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.quick-readiness-board {
    margin-top: clamp(30px, 5vw, 60px);
}

.quick-readiness-head {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.quick-readiness-head h2,
.quick-readiness-head p {
    margin-bottom: 0;
}

.quick-readiness-head p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
}

.quick-readiness-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.quick-readiness-grid a {
    min-width: 0;
    min-height: 160px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 15px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.quick-readiness-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.quick-readiness-grid span,
.quick-readiness-grid strong,
.quick-readiness-grid em {
    display: block;
}

.quick-readiness-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.quick-readiness-grid strong {
    color: #283640;
    font-size: 17px;
    line-height: 1.25;
}

.quick-readiness-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.quick-start-board {
    margin-top: clamp(34px, 6vw, 70px);
}

.quick-start-head {
    max-width: none;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: end;
}

.quick-start-head p:last-child {
    color: var(--muted);
}

.quick-use-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.quick-use-grid a {
    min-height: 118px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
}

.quick-use-grid a:hover {
    border-color: var(--yellow);
}

.quick-use-grid span,
.quick-use-grid strong,
.quick-use-grid em {
    display: block;
}

.quick-use-grid span {
    color: var(--yellow);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.quick-use-grid strong {
    font-size: 18px;
}

.quick-use-grid em {
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.quick-start-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.quick-start-card {
    position: relative;
    min-width: 0;
    height: 100%;
    display: grid;
    grid-template-rows: 142px 1fr;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.quick-start-card:hover {
    border-color: var(--accent);
    transform: translateY(-2px);
}

.quick-start-card img {
    width: 100%;
    height: 142px;
    object-fit: cover;
    background: var(--panel-2);
}

.quick-start-card > span {
    position: absolute;
    top: 10px;
    left: 10px;
    border-radius: 999px;
    background: var(--hot);
    color: white;
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 950;
}

.quick-start-card > div {
    display: grid;
    gap: 8px;
    padding: 14px;
}

.quick-start-card p,
.quick-start-card h3,
.quick-start-card em {
    margin-bottom: 0;
}

.quick-start-card p {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
}

.quick-start-card h3 {
    font-size: 19px;
}

.quick-start-card em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
}

.quick-start-card ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin: 2px 0 0;
    padding: 0;
    list-style: none;
}

.quick-start-card li {
    display: grid;
    gap: 2px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 6px;
    background: #edf9f8;
    padding: 8px;
}

.quick-start-card li strong,
.quick-start-card li span {
    display: block;
}

.quick-start-card li strong {
    color: var(--hot);
    font-size: 14px;
}

.quick-start-card li span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
}

.quick-order-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: clamp(38px, 7vw, 86px);
}

.quick-order-form {
    display: grid;
    gap: 18px;
}

.quick-order-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.quick-order-grid .span-2 {
    grid-column: 1 / -1;
}

.quick-order-product {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 14px;
}

.quick-order-product img {
    width: 150px;
    height: 112px;
    object-fit: cover;
    border-radius: 6px;
    background: white;
}

.quick-order-product h3 {
    margin-bottom: 6px;
}

.quick-order-product p:last-of-type,
.quick-order-product span {
    color: var(--muted);
}

.quick-order-total {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(260px, 1fr);
    gap: 14px;
    align-items: start;
    border: 1px solid var(--accent);
    border-radius: 8px;
    background: #f2fbf9;
    padding: 18px;
}

.quick-order-total span,
.quick-order-total strong,
.quick-order-total p {
    display: block;
}

.quick-order-total strong {
    margin-top: 4px;
    color: var(--hot);
    font-size: 36px;
    line-height: 1.05;
}

.quick-order-total p {
    margin: 8px 0 0;
    color: var(--muted);
}

.quick-order-aside {
    position: sticky;
    top: 132px;
    display: grid;
    gap: 14px;
}

.quick-sku-list {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.quick-sku-list a {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 10px;
    text-decoration: none;
}

.quick-sku-list img {
    grid-row: span 2;
    width: 76px;
    height: 58px;
    object-fit: cover;
    border-radius: 6px;
}

.quick-sku-list span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
}

.quick-sku-list strong {
    align-self: start;
}

.bulk-order-section {
    margin-top: clamp(42px, 7vw, 84px);
}

.bulk-preset-board {
    display: grid;
    grid-template-columns: minmax(260px, .42fr) minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
    margin-top: 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f7fbfb;
    padding: 16px;
}

.bulk-preset-copy {
    display: grid;
    align-content: center;
    gap: 7px;
}

.bulk-preset-copy span,
.bulk-preset-grid button span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.bulk-preset-copy strong {
    color: var(--ink);
    font-size: clamp(22px, 3vw, 32px);
    line-height: 1.05;
}

.bulk-preset-copy p {
    margin: 0;
    color: var(--muted);
}

.bulk-preset-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.bulk-preset-grid button {
    display: grid;
    gap: 8px;
    text-align: left;
    border: 1px solid rgba(0, 123, 132, .2);
    border-radius: 8px;
    background: white;
    color: var(--ink);
    padding: 16px;
    min-height: 178px;
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.bulk-preset-grid button:hover {
    transform: translateY(-2px);
    border-color: var(--accent);
    box-shadow: 0 14px 28px rgba(23, 33, 43, .09);
}

.bulk-preset-grid button strong,
.bulk-preset-grid button em,
.bulk-preset-grid button b {
    display: block;
}

.bulk-preset-grid button strong {
    font-size: 18px;
    line-height: 1.2;
}

.bulk-preset-grid button em {
    color: var(--muted);
    font-style: normal;
    line-height: 1.55;
}

.bulk-preset-grid button b {
    align-self: end;
    color: var(--hot);
    font-size: 13px;
}

@media (max-width: 980px) {
    .bulk-preset-board {
        grid-template-columns: 1fr;
    }

    .bulk-preset-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .bulk-preset-grid {
        grid-template-columns: 1fr;
    }

    .bulk-preset-grid button {
        min-height: 0;
    }
}

.direct-request-section {
    display: grid;
    grid-template-columns: minmax(0, .7fr) minmax(420px, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: clamp(42px, 7vw, 84px);
    padding: clamp(22px, 4vw, 38px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f7fbfb;
}

.direct-request-copy {
    position: sticky;
    top: 132px;
}

.direct-request-copy h2 {
    margin-bottom: 12px;
}

.direct-request-copy p:last-of-type {
    color: var(--muted);
}

.direct-request-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 22px;
}

.direct-request-steps article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 13px;
}

.direct-request-steps strong,
.direct-request-steps span {
    display: block;
}

.direct-request-steps strong {
    color: var(--accent-dark);
    font-size: 13px;
}

.direct-request-steps span {
    margin-top: 5px;
    color: #33404a;
    font-weight: 850;
}

.direct-request-form {
    display: grid;
    gap: 12px;
}

.direct-request-form .field,
.direct-request-form .field-pair {
    margin-bottom: 0;
}

.bulk-order-form {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.bulk-order-table {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.bulk-order-table table {
    min-width: 1240px;
}

.bulk-order-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    text-transform: uppercase;
}

.bulk-order-table td {
    vertical-align: middle;
}

.bulk-order-table td:nth-child(7),
.bulk-order-table td:nth-child(8) {
    color: var(--hot);
    font-variant-numeric: tabular-nums;
}

.bulk-order-table select,
.bulk-order-table input {
    min-width: 120px;
}

.bulk-order-table td:first-child select {
    min-width: 280px;
}

.bulk-order-table input[type="number"] {
    width: 94px;
}

.bulk-row-status {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border-radius: 999px;
    background: #edf7f5;
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.bulk-row-status.loading {
    background: #eef4fb;
    color: #315d86;
}

.bulk-row-status.ready {
    background: #e7f8ef;
    color: #13794f;
}

.bulk-row-status.warning {
    background: #fff4df;
    color: #92671f;
}

.bulk-row-status.error {
    background: #ffece8;
    color: #b33b2f;
}

.bulk-row-status.muted {
    background: #f2f4f5;
    color: var(--muted);
}

.bulk-order-summary {
    display: grid;
    grid-template-columns: minmax(120px, auto) minmax(190px, auto) minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 8px;
    background: #f2fbf9;
    padding: 16px;
}

.bulk-order-summary div {
    border-right: 1px solid rgba(0, 123, 132, .18);
    padding-right: 12px;
}

.bulk-order-summary span,
.bulk-order-summary strong {
    display: block;
}

.bulk-order-summary span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.bulk-order-summary strong {
    margin-top: 4px;
    color: var(--hot);
    font-size: 24px;
}

.bulk-order-summary p {
    margin: 0;
    color: var(--muted);
}

.quick-categories {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
    gap: 10px;
}

.quick-categories a {
    min-height: 56px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    background: var(--panel-2);
    text-decoration: none;
    font-weight: 850;
}

.home-shop-window {
    margin-top: clamp(38px, 7vw, 76px);
}

.shop-window-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.shop-window-actions,
.home-category-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.home-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.home-category-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.home-category-media {
    position: relative;
    display: block;
    min-height: 154px;
    background: var(--panel-2);
    text-decoration: none;
}

.home-category-media img {
    width: 100%;
    height: 174px;
    object-fit: cover;
}

.home-category-media span {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 900;
}

.home-category-body {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.home-category-body h3,
.home-category-body p {
    margin-bottom: 0;
}

.home-category-body > p:not(.eyebrow) {
    color: var(--muted);
    font-size: 14px;
}

.home-category-body ul {
    display: grid;
    gap: 6px;
    margin: 4px 0 0;
    padding: 0;
    list-style: none;
}

.home-category-body li a {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid var(--line);
    padding-top: 7px;
    text-decoration: none;
    font-size: 13px;
}

.home-category-body li span {
    color: #33404a;
    font-weight: 850;
}

.home-category-body li em {
    color: var(--hot);
    font-style: normal;
    font-weight: 900;
    white-space: nowrap;
}

.home-category-actions {
    margin-top: 2px;
}

.home-category-actions a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 10px;
    color: var(--accent-dark);
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.home-category-actions a:first-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.task-board {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.task-board a {
    min-width: 0;
    min-height: 126px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.task-board a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.task-board span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.task-board strong,
.task-board em {
    display: block;
}

.task-board em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

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

.service-grid article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
}

.service-grid strong,
.service-grid span {
    display: block;
}

.service-grid strong {
    margin-bottom: 4px;
}

.service-grid span {
    color: var(--muted);
    font-size: 14px;
}

.use-case-board {
    margin-top: clamp(38px, 7vw, 76px);
}

.use-case-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.use-case-grid a {
    min-height: 164px;
    display: grid;
    align-content: space-between;
    gap: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.use-case-grid a:hover {
    border-color: var(--accent);
    transform: translateY(-2px);
}

.use-case-grid strong {
    font-size: 21px;
}

.use-case-grid span,
.use-case-grid small {
    display: block;
}

.use-case-grid span {
    color: var(--muted);
}

.use-case-grid small {
    color: var(--hot);
    font-size: 13px;
    font-weight: 900;
}

.package-board {
    margin-top: clamp(38px, 7vw, 76px);
}

.promotion-campaign-wall {
    display: grid;
    grid-template-columns: minmax(280px, .62fr) minmax(0, 1.38fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(30px, 5vw, 58px);
}

.promotion-campaign-lead {
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 3vw, 28px);
}

.promotion-campaign-lead h2,
.promotion-campaign-lead p {
    margin-bottom: 0;
}

.promotion-campaign-lead > p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
}

.promotion-campaign-lead > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.promotion-campaign-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.promotion-campaign-grid a {
    position: relative;
    min-height: 280px;
    display: grid;
    align-content: end;
    overflow: hidden;
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(23, 33, 43, .1);
}

.promotion-campaign-grid a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(23, 33, 43, .04), rgba(23, 33, 43, .82));
}

.promotion-campaign-grid img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .18s ease;
}

.promotion-campaign-grid a:hover img {
    transform: scale(1.04);
}

.promotion-campaign-grid span,
.promotion-campaign-grid strong,
.promotion-campaign-grid em,
.promotion-campaign-grid b {
    position: relative;
    z-index: 2;
    display: block;
}

.promotion-campaign-grid span {
    justify-self: start;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.promotion-campaign-grid strong {
    margin-top: 8px;
    font-size: 21px;
    line-height: 1.15;
}

.promotion-campaign-grid em {
    margin-top: 5px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}

.promotion-campaign-grid b {
    margin-top: 8px;
    color: var(--yellow);
    font-size: 17px;
}

.package-board.compact {
    margin-top: clamp(34px, 6vw, 68px);
}

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

.package-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 12px 32px rgba(23, 33, 43, .07);
}

.package-card > img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    background: var(--panel-2);
}

.package-card-body {
    padding: 20px;
}

.package-card-body .check-list {
    margin: 16px 0;
}

.package-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

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

.package-strip a {
    min-width: 0;
    display: grid;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.package-strip img {
    width: 100%;
    height: 132px;
    object-fit: cover;
    border-radius: 6px;
    background: var(--panel-2);
}

.package-strip span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
}

.package-strip strong,
.package-strip em {
    display: block;
}

.package-strip em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
}

.package-more {
    align-content: center;
    min-height: 210px;
    background: #fff8df !important;
    color: #5b4420;
}

.section-head {
    margin-top: clamp(46px, 8vw, 96px);
    max-width: 820px;
}

.section-head.compact {
    margin-top: 0;
}

.section-link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 18px;
    text-align: center;
}

.quick-order {
    margin-top: clamp(42px, 7vw, 84px);
}

.quick-order-table {
    overflow-x: auto;
    margin-top: 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.quick-order-table table {
    min-width: 920px;
}

.quick-order-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    text-transform: uppercase;
}

.quick-order-table td {
    vertical-align: middle;
}

.quick-order-table td:nth-child(3),
.quick-order-table td:nth-child(4),
.quick-order-table td:nth-child(5) {
    color: var(--hot);
    font-weight: 900;
}

.quick-order-table span {
    color: var(--muted);
    font-size: 13px;
}

.quick-order-table .button {
    min-height: 36px;
    padding: 0 12px;
}

.pricing-visual {
    height: 320px;
}

.pricing-order-console {
    margin-top: clamp(28px, 5vw, 52px);
}

.pricing-order-console form {
    display: grid;
    grid-template-columns: minmax(240px, .8fr) minmax(420px, 1.25fr) minmax(260px, .78fr) auto;
    gap: 14px;
    align-items: end;
    border: 1px solid rgba(240, 90, 40, .28);
    border-radius: 8px;
    background: #fff8e5;
    padding: 16px;
    box-shadow: 0 14px 34px rgba(23, 33, 43, .08);
}

.pricing-console-copy h2,
.pricing-console-copy p,
.pricing-console-preview strong,
.pricing-console-preview span,
.pricing-console-preview em,
.pricing-console-preview small {
    display: block;
    margin-bottom: 0;
}

.pricing-console-copy h2 {
    font-size: 23px;
    line-height: 1.18;
}

.pricing-console-copy p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
    font-size: 14px;
}

.pricing-console-fields {
    display: grid;
    grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(92px, .7fr));
    gap: 10px;
}

.pricing-console-fields label {
    display: grid;
    gap: 5px;
    color: #7b5200;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.pricing-console-fields select,
.pricing-console-fields input {
    width: 100%;
    min-height: 42px;
    background: white;
}

.pricing-console-preview {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    border: 1px solid rgba(240, 90, 40, .22);
    border-radius: 8px;
    background: white;
    padding: 10px;
}

.pricing-console-preview img {
    width: 84px;
    height: 72px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.pricing-console-preview span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.pricing-console-preview strong {
    overflow: hidden;
    color: var(--ink);
    font-size: 16px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pricing-console-preview em {
    color: var(--hot);
    font-size: 22px;
    font-style: normal;
    font-weight: 950;
    line-height: 1.1;
}

.pricing-console-preview small {
    color: var(--muted);
    font-size: 11px;
    line-height: 1.3;
}

.pricing-console-actions {
    display: grid;
    gap: 8px;
}

.pricing-console-actions .button,
.pricing-console-actions button {
    min-height: 38px;
    padding: 0 12px;
}

.pricing-category-nav {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 10px;
    margin-top: clamp(28px, 5vw, 52px);
}

.pricing-category-nav a {
    min-width: 0;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 10px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.pricing-category-nav a:hover,
.pricing-category-nav a.active {
    border-color: var(--accent);
    background: #edf9f8;
    color: var(--accent-dark);
}

.pricing-category-nav img {
    width: 54px;
    height: 48px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.pricing-category-nav strong,
.pricing-category-nav em {
    display: block;
}

.pricing-category-nav strong {
    overflow: hidden;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pricing-category-nav em {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.3;
}

.pricing-note-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.pricing-note-grid article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.pricing-note-grid strong,
.pricing-note-grid span {
    display: block;
}

.pricing-note-grid strong {
    color: var(--ink);
    font-size: 18px;
}

.pricing-note-grid span {
    margin-top: 8px;
    color: var(--muted);
}

.pricing-results {
    display: grid;
    gap: 34px;
}

.pricing-category {
    scroll-margin-top: 140px;
}

.pricing-table {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.pricing-table table {
    width: 100%;
    min-width: 1060px;
    border-collapse: collapse;
}

.pricing-table th {
    background: #f3f7f7;
    color: #52616c;
    font-size: 12px;
    text-align: left;
    text-transform: uppercase;
}

.pricing-table th,
.pricing-table td {
    border-bottom: 1px solid var(--line);
    padding: 12px;
    vertical-align: top;
}

.pricing-table tr:last-child td {
    border-bottom: 0;
}

.pricing-table td > strong,
.pricing-table td > span {
    display: block;
}

.pricing-table td > span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
}

.pricing-table .button {
    min-height: 34px;
    padding: 0 12px;
    white-space: nowrap;
}

.pricing-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.pricing-card-grid > article {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.pricing-card-media {
    position: relative;
    display: block;
    height: 156px;
    background: var(--panel-2);
    text-decoration: none;
}

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

.pricing-card-media span {
    position: absolute;
    left: 12px;
    top: 12px;
    border-radius: 999px;
    background: var(--hot);
    color: white;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 950;
}

.pricing-card-body {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.pricing-card-body h3,
.pricing-card-body p {
    margin-bottom: 0;
}

.pricing-card-body > p:not(.category) {
    color: var(--muted);
    font-size: 14px;
}

.pricing-card-specs {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.pricing-card-specs span {
    border-radius: 999px;
    background: var(--panel-2);
    color: #33404a;
    padding: 5px 8px;
    font-size: 12px;
    font-weight: 900;
}

.pricing-ladder-mini {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
}

.pricing-ladder-mini div {
    display: grid;
    gap: 3px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 6px;
    background: #edf9f8;
    padding: 8px;
}

.pricing-ladder-mini span,
.pricing-ladder-mini strong,
.pricing-ladder-mini em {
    display: block;
}

.pricing-ladder-mini span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
}

.pricing-ladder-mini strong {
    color: var(--hot);
    font-size: 13px;
}

.pricing-ladder-mini em {
    color: var(--muted);
    font-size: 11px;
    font-style: normal;
}

.pricing-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pricing-card-actions a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.pricing-card-actions a:last-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.pricing-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.compare-visual {
    height: 320px;
}

.compare-preset-board {
    margin-top: clamp(30px, 5vw, 58px);
}

.compare-preset-grid,
.compare-summary-strip {
    display: grid;
    gap: 12px;
}

.compare-preset-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 18px;
}

.compare-preset-grid a {
    display: grid;
    min-height: 230px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    padding: 16px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.compare-preset-grid span,
.compare-preset-grid strong,
.compare-preset-grid em,
.compare-preset-grid small,
.compare-preset-grid b {
    display: block;
}

.compare-preset-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.compare-preset-grid strong {
    margin-top: 9px;
    color: var(--ink);
    font-size: 19px;
    line-height: 1.2;
}

.compare-preset-grid em {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.compare-preset-grid small {
    margin-top: 12px;
    color: var(--hot);
    font-weight: 950;
}

.compare-preset-grid b {
    align-self: end;
    margin-top: 14px;
    color: #42505c;
    font-size: 12px;
    line-height: 1.45;
}

.compare-picker-panel {
    display: grid;
    grid-template-columns: minmax(0, .62fr) minmax(520px, 1fr);
    gap: 22px;
    align-items: end;
    margin-top: 34px;
    border: 1px solid rgba(0, 123, 132, .2);
    border-radius: 8px;
    background: #f2fbf9;
    padding: clamp(18px, 4vw, 30px);
    box-shadow: 0 14px 34px rgba(23, 33, 43, .07);
}

.compare-picker-panel h2,
.compare-picker-panel p {
    margin: 0;
}

.compare-picker-panel h2 {
    font-size: clamp(26px, 4vw, 42px);
    line-height: 1.05;
}

.compare-picker-panel p:not(.eyebrow) {
    margin-top: 10px;
    color: var(--muted);
}

.compare-picker-panel form {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.compare-picker-panel label {
    display: grid;
    gap: 7px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 900;
}

.compare-picker-panel select {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    padding: 0 12px;
    color: var(--ink);
    font: inherit;
}

.compare-picker-panel button {
    grid-column: 1 / -1;
    justify-self: start;
}

.compare-summary-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 18px;
}

.compare-summary-strip article {
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f3fbfa;
    padding: 14px;
}

.compare-summary-strip span,
.compare-summary-strip strong,
.compare-summary-strip em {
    display: block;
}

.compare-summary-strip span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.compare-summary-strip strong {
    margin-top: 4px;
    color: var(--ink);
    font-size: 26px;
    line-height: 1;
}

.compare-summary-strip em {
    margin-top: 7px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
}

.compare-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.compare-card-grid article {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.compare-card-grid article > div {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.compare-card-media {
    position: relative;
    display: block;
    height: 170px;
    background: var(--panel-2);
    text-decoration: none;
}

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

.compare-card-media span {
    position: absolute;
    left: 12px;
    top: 12px;
    border-radius: 999px;
    background: var(--hot);
    color: white;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 950;
}

.compare-card-grid h2,
.compare-card-grid p {
    margin: 0;
}

.compare-card-grid article > div > p:not(.category) {
    color: var(--muted);
    font-size: 14px;
}

.compare-card-prices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.compare-card-prices span {
    display: grid;
    gap: 3px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 7px;
    background: #edf9f8;
    padding: 9px 8px;
}

.compare-card-prices strong,
.compare-card-prices em {
    display: block;
}

.compare-card-prices strong {
    color: var(--accent-dark);
    font-size: 12px;
}

.compare-card-prices em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
}

.compare-card-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.compare-card-actions a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.compare-card-actions a:last-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.compare-table-panel {
    margin-top: clamp(38px, 7vw, 76px);
}

.compare-product-table {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.compare-product-table table {
    width: 100%;
    min-width: 960px;
    border-collapse: collapse;
}

.compare-product-table th {
    background: #f3f7f7;
    color: #52616c;
    font-size: 12px;
    text-align: left;
    text-transform: uppercase;
}

.compare-product-table th,
.compare-product-table td {
    border-bottom: 1px solid var(--line);
    padding: 13px;
    vertical-align: top;
}

.compare-product-table td > strong,
.compare-product-table td > span {
    display: block;
}

.compare-product-table td > span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
}

.compare-product-table tr:last-child th,
.compare-product-table tr:last-child td {
    border-bottom: 0;
}

.compare-helper-band {
    margin-top: clamp(38px, 7vw, 76px);
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 22px;
}

.product-grid.dense {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0;
}

.product-card {
    min-width: 0;
}

.product-card-link {
    height: 100%;
    display: grid;
    grid-template-rows: 220px 1fr;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
    transition: transform .18s ease, box-shadow .18s ease;
}

.product-card-link:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(23, 33, 43, .11);
}

.product-card-body {
    padding: 18px;
}

.product-card-body h2,
.product-card-body h3 {
    margin-bottom: 8px;
}

.category {
    margin-bottom: 8px;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 900;
}

.card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
}

.card-meta strong {
    color: var(--hot);
    font-size: 18px;
}

.product-thumb,
.product-stage {
    position: relative;
    min-height: 180px;
    overflow: hidden;
    background: #eef4f7;
}

.product-thumb img,
.product-stage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-thumb::after,
.product-stage::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    background: linear-gradient(0deg, rgba(23, 33, 43, .16), transparent);
    pointer-events: none;
}

.product-thumb span,
.product-stage span {
    position: absolute;
    top: 12px;
    left: 12px;
    border-radius: 999px;
    background: var(--hot);
    color: white;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 900;
    z-index: 2;
}

.process-band {
    padding: clamp(28px, 5vw, 54px);
    border-radius: 8px;
    background: var(--ink);
    color: white;
}

.process-band .eyebrow,
.process-band p {
    color: rgba(255, 255, 255, .78);
}

.steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.steps article {
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 8px;
    padding: 20px;
}

.steps span {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 18px;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    font-weight: 950;
}

.split-cta,
.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
    gap: 28px;
    align-items: start;
}

.cta-card,
.panel,
.quote-card,
.order-summary {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 22px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.catalog-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 480px);
    gap: 24px;
    align-items: end;
}

.catalog-side {
    display: grid;
    gap: 12px;
}

.catalog-visual {
    height: 260px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 12px 32px rgba(23, 33, 43, .07);
}

.catalog-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.supplier-metric-strip,
.supplier-command-grid,
.supplier-job-grid,
.supplier-job-command,
.supplier-mini-metrics {
    display: grid;
    gap: 12px;
}

.supplier-metric-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: clamp(24px, 4vw, 42px);
}

.supplier-metric-strip article,
.supplier-mini-metrics article,
.supplier-job-grid article,
.supplier-job-command article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.supplier-metric-strip span,
.supplier-metric-strip strong,
.supplier-metric-strip em,
.supplier-mini-metrics strong,
.supplier-mini-metrics span,
.supplier-command-grid span,
.supplier-command-grid strong,
.supplier-command-grid em,
.supplier-command-grid b,
.supplier-job-grid span,
.supplier-job-grid strong,
.supplier-job-grid p,
.supplier-job-grid em,
.supplier-job-command span,
.supplier-job-command strong,
.supplier-job-command p {
    display: block;
}

.supplier-metric-strip span,
.supplier-command-grid span,
.supplier-job-grid span,
.supplier-job-command span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.supplier-metric-strip strong,
.supplier-mini-metrics strong {
    margin-top: 4px;
    color: var(--hot);
    font-size: 34px;
    line-height: 1;
}

.supplier-metric-strip em,
.supplier-mini-metrics span {
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    font-weight: 850;
}

.supplier-command-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 14px;
}

.supplier-command-grid a {
    display: grid;
    gap: 8px;
    align-content: start;
    min-height: 178px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #edf9f8;
    color: var(--ink);
    padding: 16px;
    text-decoration: none;
}

.supplier-command-grid a:hover,
.supplier-job-grid article:hover {
    border-color: var(--accent);
    background: #f8fcfc;
}

.supplier-command-grid strong,
.supplier-job-grid strong,
.supplier-job-command strong {
    font-size: 19px;
    line-height: 1.25;
}

.supplier-command-grid em,
.supplier-job-grid p,
.supplier-job-command p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.supplier-command-grid b {
    align-self: end;
    margin-top: auto;
    color: var(--hot);
    font-size: 13px;
}

.supplier-jobs-hero {
    align-items: center;
}

.supplier-mini-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.supplier-job-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 22px;
}

.supplier-job-grid article {
    display: grid;
    gap: 9px;
}

.supplier-job-grid div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    margin-top: 4px;
}

.supplier-job-grid em {
    color: var(--accent-dark);
    font-weight: 900;
}

.supplier-job-command {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: clamp(24px, 4vw, 42px);
    margin-bottom: 24px;
}

.supplier-job-command article {
    display: grid;
    gap: 8px;
    min-height: 150px;
}

.catalog-search {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
}

.quote-helper {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff8df;
    padding: 18px;
}

.quote-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    max-width: 760px;
    margin-top: 24px;
}

.quote-helper ul {
    margin: 10px 0 0;
    padding-left: 20px;
    color: #5b4420;
}

.quick-quote-board,
.quote-category-list {
    margin-top: clamp(34px, 6vw, 68px);
}

.quote-request-layout {
    display: grid;
    grid-template-columns: minmax(0, .62fr) minmax(420px, .88fr);
    gap: 24px;
    align-items: start;
    margin-top: clamp(38px, 7vw, 76px);
}

.quote-request-points {
    display: grid;
    gap: 10px;
    margin-top: 20px;
}

.quote-request-points article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
}

.quote-request-points strong {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
}

.quick-request-form {
    display: grid;
    gap: 14px;
}

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

.quick-quote-grid a {
    display: grid;
    grid-template-rows: 110px auto auto auto;
    gap: 6px;
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 10px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.quick-quote-grid img {
    width: 100%;
    height: 110px;
    object-fit: cover;
    border-radius: 6px;
    background: var(--panel-2);
}

.quick-quote-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
}

.quick-quote-grid strong {
    min-height: 42px;
    line-height: 1.25;
}

.quick-quote-grid em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
}

.quote-category-list {
    display: grid;
    gap: 16px;
}

.quote-category-list article {
    display: grid;
    grid-template-columns: minmax(220px, .42fr) minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
}

.quote-category-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.quote-category-products a {
    min-height: 58px;
    display: grid;
    align-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    padding: 8px 10px;
    text-decoration: none;
}

.quote-category-products span,
.quote-category-products strong {
    display: block;
}

.quote-category-products strong {
    color: var(--hot);
    font-size: 13px;
}

.quote-product-list {
    display: grid;
    gap: 14px;
    margin-top: 30px;
}

.quote-product-list article {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
}

.quote-product-list img {
    width: 170px;
    height: 130px;
    object-fit: cover;
    border-radius: 6px;
    background: var(--panel-2);
}

.quote-product-list .button {
    margin-top: 14px;
}

.faq-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: 34px;
}

.faq-sidebar {
    position: sticky;
    top: 132px;
}

.faq-groups {
    display: grid;
    gap: 34px;
}

.faq-group {
    scroll-margin-top: 140px;
}

.faq-list {
    display: grid;
    gap: 12px;
}

.faq-list article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.faq-list h3 {
    margin-bottom: 8px;
}

.faq-list p {
    margin-bottom: 0;
    color: var(--muted);
}

.template-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: 34px;
}

.template-results {
    display: grid;
    gap: 34px;
}

.template-command-board {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(340px, .55fr);
    gap: 16px;
    margin-top: clamp(30px, 5vw, 58px);
}

.template-command-copy {
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #f1fbfa;
    padding: clamp(20px, 4vw, 34px);
}

.template-command-copy h2,
.template-command-copy p {
    margin-bottom: 0;
}

.template-command-copy p:not(.eyebrow) {
    margin-top: 10px;
    color: var(--muted);
    line-height: 1.7;
}

.template-command-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 20px;
}

.template-stat-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.template-stat-strip article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.template-stat-strip strong,
.template-stat-strip span {
    display: block;
}

.template-stat-strip strong {
    color: var(--accent-dark);
    font-size: 28px;
    line-height: 1;
}

.template-stat-strip span {
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.template-route-grid {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.template-route-grid a,
.template-format-board article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    color: var(--ink);
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.template-route-grid a {
    display: grid;
    min-height: 180px;
}

.template-route-grid span,
.template-route-grid strong,
.template-route-grid em,
.template-route-grid b,
.template-format-board span,
.template-format-board strong,
.template-format-board p {
    display: block;
}

.template-route-grid span,
.template-format-board span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.template-route-grid strong,
.template-format-board strong {
    margin-top: 8px;
    color: var(--ink);
    font-size: 18px;
    line-height: 1.25;
}

.template-route-grid em,
.template-format-board p {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.55;
}

.template-route-grid b {
    align-self: end;
    margin-top: 14px;
    color: var(--hot);
    font-size: 13px;
}

.featured-template-board {
    margin-top: clamp(32px, 5vw, 62px);
}

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

.featured-template-grid article {
    display: grid;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.featured-template-grid img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    background: var(--panel-2);
}

.featured-template-grid article > div {
    display: grid;
    gap: 5px;
    padding: 14px;
}

.featured-template-grid span,
.featured-template-grid strong,
.featured-template-grid em {
    display: block;
}

.featured-template-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.featured-template-grid strong {
    color: var(--ink);
    font-size: 18px;
}

.featured-template-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
}

.featured-template-grid nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: auto;
    border-top: 1px solid var(--line);
    background: var(--line);
}

.featured-template-grid nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    background: #fff;
    color: var(--accent-dark);
    padding: 0 8px;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.template-format-board {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 24px;
}

.template-checklist {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.template-checklist article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.template-checklist strong,
.template-checklist span {
    display: block;
}

.template-checklist span {
    margin-top: 6px;
    color: var(--muted);
    font-size: 14px;
}

.template-category {
    scroll-margin-top: 140px;
}

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

.template-card {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.template-card img {
    width: 150px;
    height: 118px;
    object-fit: cover;
    border-radius: 6px;
    background: var(--panel-2);
}

.template-card h3 {
    margin-bottom: 6px;
}

.template-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.template-actions .button {
    min-height: 36px;
    padding: 0 12px;
    font-size: 13px;
}

.material-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: 34px;
}

.material-results {
    display: grid;
    gap: 34px;
}

.material-section {
    scroll-margin-top: 140px;
}

.material-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.material-grid article {
    min-height: 162px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.material-grid strong,
.material-grid span {
    display: block;
}

.material-grid strong {
    color: var(--ink);
    font-size: 18px;
}

.material-grid span {
    margin-top: 8px;
    color: var(--muted);
}

.material-use-cases small {
    display: block;
    margin-top: 12px;
    color: var(--hot);
    font-weight: 850;
}

.eco-visual {
    height: 320px;
}

.eco-track-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.eco-track-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.eco-track-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #e8f7f3;
    color: var(--accent-dark);
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.eco-track-grid h2,
.eco-track-grid p,
.eco-track-grid ul {
    margin: 0;
}

.eco-track-grid p,
.eco-track-grid li {
    color: var(--muted);
}

.eco-track-grid ul {
    display: grid;
    gap: 7px;
    padding-left: 18px;
}

.eco-decision-list {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.eco-decision-list a {
    display: grid;
    gap: 6px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 14px;
    text-decoration: none;
}

.eco-decision-list strong,
.eco-decision-list span {
    display: block;
}

.eco-decision-list span {
    color: var(--muted);
}

.eco-products,
.eco-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.service-visual {
    height: 320px;
}

.service-commerce-matrix {
    margin-top: clamp(28px, 5vw, 52px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(16px, 3vw, 24px);
}

.service-commerce-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.service-commerce-head h2,
.service-commerce-head p {
    margin-bottom: 0;
}

.service-commerce-head > div {
    max-width: 900px;
}

.service-commerce-head > div > p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.service-commerce-head nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.service-commerce-head nav a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

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

.service-commerce-card {
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.service-commerce-media {
    position: relative;
    display: block;
    min-height: 176px;
    background: var(--panel-2);
    text-decoration: none;
}

.service-commerce-media img {
    width: 100%;
    height: 190px;
    display: block;
    object-fit: cover;
}

.service-commerce-media span {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    border-radius: 6px;
    background: rgba(255, 255, 255, .94);
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 950;
}

.service-commerce-body {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.service-commerce-body h3,
.service-commerce-body p {
    margin-bottom: 0;
}

.service-commerce-body > p:not(.eyebrow) {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.55;
}

.service-commerce-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.service-commerce-tags span {
    border: 1px solid var(--line);
    border-radius: 999px;
    background: var(--panel-2);
    padding: 6px 9px;
    color: #33404a;
    font-size: 12px;
    font-weight: 850;
}

.service-commerce-products {
    display: grid;
    gap: 6px;
}

.service-commerce-products a {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid var(--line);
    padding-top: 7px;
    text-decoration: none;
    font-size: 13px;
}

.service-commerce-products span {
    color: #33404a;
    font-weight: 850;
}

.service-commerce-products em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
    white-space: nowrap;
}

.service-commerce-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin-top: 2px;
}

.service-commerce-actions a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 8px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.service-commerce-actions a:first-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.service-series-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: 34px;
}

.service-sidebar {
    position: sticky;
    top: 132px;
}

.service-series-results {
    display: grid;
    gap: 34px;
}

.service-series-section {
    scroll-margin-top: 140px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 20px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.service-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0;
}

.service-tags span {
    border: 1px solid var(--line);
    border-radius: 999px;
    background: var(--panel-2);
    padding: 7px 11px;
    color: #33404a;
    font-size: 13px;
    font-weight: 800;
}

.service-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.service-product-grid a {
    min-width: 0;
    display: grid;
    grid-template-rows: 126px auto auto auto;
    gap: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 10px;
    text-decoration: none;
}

.service-product-grid img {
    width: 100%;
    height: 126px;
    object-fit: cover;
    border-radius: 6px;
    background: white;
}

.service-product-grid span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.service-product-grid strong {
    line-height: 1.25;
}

.service-product-grid em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
}

.service-workflow {
    scroll-margin-top: 140px;
}

.service-category-index {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.service-category-index a {
    display: grid;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.service-category-index span,
.service-category-index small {
    color: var(--muted);
}

.service-category-index small {
    font-weight: 850;
}

.contact-visual {
    height: 320px;
}

.contact-command-center {
    margin-top: clamp(34px, 6vw, 70px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 4vw, 30px);
}

.contact-command-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr);
    gap: 18px;
    align-items: end;
}

.contact-command-head h2,
.contact-command-head p {
    margin-bottom: 0;
}

.contact-command-head p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.contact-command-head nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.contact-command-head nav a {
    display: grid;
    gap: 5px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 13px;
    text-decoration: none;
}

.contact-command-head nav span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.contact-command-head nav strong {
    color: var(--ink);
    font-size: 15px;
}

.contact-command-grid {
    display: grid;
    grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
    gap: 16px;
    align-items: start;
    margin-top: 18px;
}

.contact-lookup-card h2,
.contact-lookup-card p {
    margin-bottom: 0;
}

.contact-lookup-card p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
}

.contact-lookup-card .field-pair {
    margin-top: 16px;
}

.contact-lookup-card button {
    width: 100%;
    min-height: 44px;
    margin-top: 12px;
    border: 0;
    border-radius: 8px;
    background: var(--accent);
    color: white;
    font-weight: 950;
    cursor: pointer;
}

.contact-routing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.contact-routing-grid a {
    min-height: 188px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 15px;
    text-decoration: none;
}

.contact-routing-grid span,
.contact-routing-grid strong,
.contact-routing-grid em,
.contact-routing-grid b {
    display: block;
}

.contact-routing-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff3e9;
    color: var(--hot);
    padding: 6px 9px;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.contact-routing-grid strong {
    color: var(--ink);
    font-size: 17px;
    line-height: 1.25;
}

.contact-routing-grid em {
    color: var(--muted);
    font-style: normal;
}

.contact-routing-grid b {
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
}

.contact-channel-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
}

.contact-channel-grid a {
    display: grid;
    align-content: start;
    gap: 8px;
    min-height: 170px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.contact-channel-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.contact-channel-grid strong,
.contact-channel-grid em {
    display: block;
}

.contact-channel-grid em {
    color: var(--muted);
    font-style: normal;
}

.contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: clamp(38px, 7vw, 76px);
}

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

.handoff-list article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 16px;
}

.handoff-list strong,
.handoff-list span {
    display: block;
}

.handoff-list span {
    margin-top: 8px;
    color: var(--muted);
}

.contact-card {
    position: sticky;
    top: 132px;
}

.membership-visual {
    height: 320px;
}

.membership-plan-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.membership-plan-grid a {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 190px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.membership-plan-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #e8f7f3;
    color: var(--accent-dark);
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.membership-plan-grid strong,
.membership-plan-grid em {
    display: block;
}

.membership-plan-grid em {
    color: var(--muted);
    font-style: normal;
}

.membership-account-console {
    margin-top: clamp(34px, 6vw, 70px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 4vw, 30px);
}

.membership-account-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.membership-account-head h2,
.membership-account-head p {
    margin-bottom: 0;
}

.membership-account-head p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.membership-account-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.membership-account-grid a {
    min-width: 0;
    min-height: 146px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.membership-account-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.membership-account-grid span,
.membership-account-grid strong,
.membership-account-grid em {
    display: block;
}

.membership-account-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.membership-account-grid strong {
    color: #283640;
    font-size: 17px;
    line-height: 1.25;
}

.membership-account-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.membership-flow-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.membership-flow-strip article {
    min-height: 124px;
    display: grid;
    align-content: start;
    gap: 6px;
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
}

.membership-flow-strip span,
.membership-flow-strip strong,
.membership-flow-strip p {
    display: block;
}

.membership-flow-strip span {
    color: var(--yellow);
    font-size: 12px;
    font-weight: 950;
}

.membership-flow-strip strong {
    font-size: 17px;
}

.membership-flow-strip p {
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: 13px;
    line-height: 1.45;
}

.membership-benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.membership-segments {
    margin-top: clamp(38px, 7vw, 76px);
}

.membership-segments article {
    background: var(--panel);
}

.membership-segments span,
.membership-segments strong,
.membership-segments p {
    display: block;
}

.membership-segments span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.membership-segments p {
    color: var(--muted);
}

.education-visual {
    height: 320px;
}

.education-audience-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.education-audience-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 188px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.education-audience-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.education-audience-grid h2,
.education-audience-grid p {
    margin: 0;
}

.education-audience-grid p {
    color: var(--muted);
}

.education-support-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.education-products,
.education-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.designer-files-visual,
.design-visual {
    height: 320px;
}

.design-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.design-service-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.design-service-grid article > span {
    justify-self: start;
    border-radius: 999px;
    background: #fff8df;
    color: #5b4420;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.design-service-grid h2,
.design-service-grid p {
    margin: 0;
}

.design-service-grid p {
    color: var(--muted);
}

.design-input-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.design-input-list strong {
    color: var(--hot);
    font-size: 22px;
}

.design-products,
.design-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.designer-portal-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(30px, 6vw, 62px);
}

.designer-portal-grid a {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 210px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.designer-portal-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.designer-portal-grid span,
.designer-portal-grid strong,
.designer-portal-grid em,
.designer-portal-grid b {
    display: block;
}

.designer-portal-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #eef9f8;
    color: var(--accent-dark);
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 950;
}

.designer-portal-grid strong {
    color: var(--ink);
    font-size: 21px;
    line-height: 1.18;
}

.designer-portal-grid em {
    color: var(--muted);
    font-size: 14px;
    font-style: normal;
}

.designer-portal-grid b {
    margin-top: auto;
    color: var(--hot);
    font-size: 13px;
}

.designer-file-console {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 430px);
    gap: 22px;
    align-items: start;
    margin-top: clamp(34px, 7vw, 76px);
}

.designer-file-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.designer-file-side {
    position: sticky;
    top: 190px;
}

.designer-file-type-list {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.designer-file-type-list article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 12px;
}

.designer-file-type-list strong,
.designer-file-type-list span {
    display: block;
}

.designer-file-type-list span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
}

.designer-handoff-flow {
    margin-top: clamp(38px, 7vw, 76px);
}

.artwork-service-visual {
    height: 320px;
}

.artwork-upload-visual {
    height: 340px;
}

.artwork-guidelines-visual {
    height: 340px;
}

.artwork-guideline-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.artwork-guideline-stats article {
    border: 1px solid rgba(0, 123, 132, .18);
    border-radius: 8px;
    background: #f2fbf9;
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.artwork-guideline-stats strong,
.artwork-guideline-stats span {
    display: block;
}

.artwork-guideline-stats strong {
    color: var(--accent-dark);
    font-size: clamp(26px, 4vw, 42px);
    line-height: 1;
}

.artwork-guideline-stats span {
    margin-top: 8px;
    color: var(--muted);
    font-weight: 800;
}

.artwork-command-center {
    margin-top: clamp(38px, 7vw, 76px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: 0 16px 40px rgba(23, 33, 43, .08);
}

.artwork-command-head {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(360px, 1fr);
    gap: 22px;
    align-items: start;
}

.artwork-command-head h2,
.artwork-command-head p {
    margin: 0;
}

.artwork-command-head h2 {
    font-size: clamp(26px, 4vw, 42px);
    line-height: 1.05;
}

.artwork-command-head p:not(.eyebrow) {
    margin-top: 12px;
    color: var(--muted);
}

.artwork-command-head nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.artwork-command-head nav a {
    display: grid;
    gap: 5px;
    min-height: 92px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 8px;
    background: #f8fbfb;
    padding: 14px;
    color: var(--ink);
}

.artwork-command-head nav strong,
.artwork-command-head nav span {
    display: block;
}

.artwork-command-head nav span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
}

.artwork-requirement-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
}

.artwork-requirement-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 18px;
}

.artwork-requirement-grid article > span {
    justify-self: start;
    border-radius: 999px;
    background: #fff8df;
    color: #5b4420;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.artwork-requirement-grid h3,
.artwork-requirement-grid p {
    margin: 0;
}

.artwork-requirement-grid p {
    color: var(--muted);
}

.artwork-format-band {
    margin-top: clamp(38px, 7vw, 76px);
}

.artwork-format-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: 20px;
}

.artwork-format-grid article {
    display: grid;
    align-content: start;
    gap: 8px;
    min-height: 170px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .08);
    padding: 16px;
}

.artwork-format-grid strong,
.artwork-format-grid span,
.artwork-format-grid p {
    display: block;
    margin: 0;
}

.artwork-format-grid strong {
    color: #fff;
    font-size: 24px;
}

.artwork-format-grid span {
    color: #ffe6a7;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.artwork-format-grid p {
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
}

.artwork-product-layout .handoff-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.artwork-upload-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: clamp(38px, 7vw, 76px);
}

.upload-drop-panel {
    display: grid;
    gap: 16px;
}

.upload-file-field {
    border: 1px dashed rgba(0, 167, 181, .5);
    border-radius: 8px;
    background: #f2fbf9;
    padding: 16px;
}

.upload-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.upload-side-panel {
    position: sticky;
    top: 132px;
    display: grid;
    gap: 14px;
}

.upload-route-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(38px, 7vw, 76px);
}

.upload-route-grid article {
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.upload-route-grid strong,
.upload-route-grid span,
.upload-route-grid a {
    display: block;
}

.upload-route-grid span {
    color: var(--muted);
    font-size: 14px;
}

.upload-route-grid a {
    justify-self: start;
    color: var(--accent-dark);
    font-weight: 900;
}

.artwork-upload-checklist {
    margin-top: clamp(30px, 6vw, 62px);
}

.artwork-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.artwork-service-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.artwork-service-grid article > span {
    justify-self: start;
    border-radius: 999px;
    background: #fff8df;
    color: #5b4420;
    padding: 7px 11px;
    font-size: 13px;
    font-weight: 900;
}

.artwork-service-grid h2 {
    margin: 0;
    font-size: 24px;
}

.artwork-service-grid p {
    margin: 0;
    color: var(--muted);
}

.artwork-check-layout .handoff-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.delivery-visual {
    height: 320px;
}

.delivery-option-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.delivery-option-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 188px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.delivery-option-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.delivery-option-grid p {
    margin: 0;
    color: var(--muted);
}

.delivery-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: clamp(38px, 7vw, 76px);
}

.delivery-lead-list {
    display: grid;
    gap: 14px;
    margin-top: 18px;
}

.delivery-lead-list > section {
    display: grid;
    grid-template-columns: minmax(220px, .36fr) minmax(0, 1fr);
    gap: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 14px;
}

.delivery-lead-list strong,
.delivery-lead-list span {
    display: block;
}

.delivery-lead-list span {
    margin-top: 5px;
    color: var(--muted);
    font-size: 14px;
}

.delivery-product-times {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.delivery-product-times a {
    display: grid;
    gap: 4px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: white;
    padding: 10px;
    text-decoration: none;
}

.delivery-product-times em {
    color: var(--ink);
    font-style: normal;
    font-weight: 900;
}

.delivery-timeline {
    scroll-margin-top: 140px;
}

.pickup-visual {
    height: 320px;
}

.pickup-command-center {
    display: grid;
    gap: 18px;
    margin-top: clamp(34px, 6vw, 72px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fffdf8;
    padding: clamp(20px, 4vw, 34px);
    box-shadow: 0 18px 46px rgba(23, 33, 43, .08);
}

.pickup-command-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .46fr);
    gap: 22px;
    align-items: end;
}

.pickup-command-head h2,
.pickup-command-head p {
    margin: 0;
}

.pickup-command-head h2 {
    margin-top: 6px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.04;
}

.pickup-command-head p:not(.eyebrow) {
    margin-top: 12px;
    max-width: 760px;
    color: var(--muted);
}

.pickup-command-head nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.pickup-command-head nav a {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(13, 95, 107, .2);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    font-weight: 900;
    text-align: center;
    text-decoration: none;
}

.pickup-command-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .38fr);
    gap: 18px;
    align-items: stretch;
}

.pickup-channel-board {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.pickup-channel-board article {
    display: grid;
    gap: 14px;
    align-content: space-between;
    min-height: 310px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 16px;
}

.pickup-channel-board article > div,
.pickup-doc-list article {
    display: grid;
    gap: 6px;
}

.pickup-channel-board span,
.pickup-doc-list span,
.pickup-stat-strip span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.pickup-channel-board strong {
    color: var(--ink);
    font-size: 22px;
    line-height: 1.1;
}

.pickup-channel-board em {
    color: var(--muted);
    font-style: normal;
    font-weight: 800;
}

.pickup-channel-board ul {
    display: grid;
    gap: 7px;
    margin: 0;
    padding-left: 18px;
    color: var(--muted);
}

.pickup-channel-board a {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    font-weight: 900;
    text-decoration: none;
}

.pickup-dispatch-panel {
    display: grid;
    align-content: start;
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #0f2d35;
    color: white;
    padding: 18px;
}

.pickup-dispatch-panel h3,
.pickup-dispatch-panel p {
    margin: 0;
}

.pickup-dispatch-panel .eyebrow {
    color: #f7a24b;
}

.pickup-doc-list {
    display: grid;
    gap: 10px;
}

.pickup-doc-list article {
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 8px;
    background: rgba(255, 255, 255, .08);
    padding: 12px;
}

.pickup-doc-list strong,
.pickup-doc-list p {
    color: white;
}

.pickup-doc-list p {
    color: rgba(255, 255, 255, .72);
    font-size: 14px;
}

.pickup-stat-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.pickup-stat-strip article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 14px;
}

.pickup-stat-strip strong,
.pickup-stat-strip p {
    display: block;
    margin: 0;
}

.pickup-stat-strip strong {
    margin-top: 5px;
    font-size: 30px;
}

.pickup-stat-strip p {
    margin-top: 3px;
    color: var(--muted);
    font-size: 14px;
}

.pickup-option-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.pickup-option-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 188px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.pickup-option-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.pickup-option-grid h2,
.pickup-option-grid p {
    margin: 0;
}

.pickup-option-grid p {
    color: var(--muted);
}

.pickup-option-grid small {
    display: block;
    color: var(--accent-dark);
    font-weight: 800;
    line-height: 1.45;
}

.pickup-readiness {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pickup-readiness strong {
    color: var(--hot);
    font-size: 22px;
}

.pickup-products,
.pickup-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.pickup-note-list {
    margin-top: 18px;
}

.locations-visual {
    height: 320px;
}

.locations-finder {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(340px, 1fr);
    gap: 22px;
    align-items: end;
    margin-top: 34px;
    border: 1px solid rgba(0, 123, 132, .2);
    border-radius: 8px;
    background: #f2fbf9;
    padding: clamp(18px, 4vw, 30px);
    box-shadow: 0 14px 34px rgba(23, 33, 43, .07);
}

.locations-finder h2,
.locations-finder p {
    margin: 0;
}

.locations-finder h2 {
    font-size: clamp(26px, 4vw, 42px);
    line-height: 1.05;
}

.locations-finder p:not(.eyebrow) {
    margin-top: 10px;
    color: var(--muted);
}

.locations-finder form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
    gap: 10px;
    align-items: end;
}

.locations-finder label {
    display: grid;
    gap: 7px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 900;
}

.locations-finder select {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    padding: 0 12px;
    color: var(--ink);
    font: inherit;
}

.locations-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.locations-service-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 330px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.locations-service-grid article > span {
    justify-self: start;
    border-radius: 999px;
    background: #fff8df;
    color: #5b4420;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.locations-service-grid h2,
.locations-service-grid p,
.locations-service-grid ul {
    margin: 0;
}

.locations-service-grid p,
.locations-service-grid ul {
    color: var(--muted);
}

.locations-service-grid strong {
    color: var(--accent-dark);
}

.locations-service-grid ul {
    display: grid;
    gap: 7px;
    padding-left: 18px;
}

.locations-service-grid a {
    align-self: end;
    justify-self: start;
    color: var(--accent-dark);
    font-weight: 900;
}

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

.locations-area-list article {
    display: grid;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 16px;
}

.locations-area-list span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.locations-area-list strong,
.locations-area-list p {
    display: block;
    margin: 0;
}

.locations-area-list p {
    color: var(--muted);
}

.locations-workflow {
    margin-top: clamp(38px, 7vw, 76px);
}

.express-visual {
    height: 320px;
}

.express-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.express-service-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 188px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.express-service-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.express-service-grid h2,
.express-service-grid p {
    margin: 0;
}

.express-service-grid p {
    color: var(--muted);
}

.express-checklist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.express-checklist strong {
    color: var(--hot);
    font-size: 22px;
}

.express-products,
.express-timeline {
    margin-top: clamp(38px, 7vw, 76px);
}

.setup-visual {
    height: 320px;
}

.setup-command-center {
    margin-top: clamp(34px, 6vw, 70px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 4vw, 30px);
}

.setup-command-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .85fr);
    gap: 18px;
    align-items: end;
}

.setup-command-head h2,
.setup-command-head p {
    margin-bottom: 0;
}

.setup-command-head p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.setup-command-head nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.setup-command-head nav a {
    display: grid;
    gap: 5px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 13px;
    text-decoration: none;
}

.setup-command-head nav span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.setup-command-head nav strong {
    color: var(--ink);
    font-size: 15px;
}

.setup-command-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.setup-command-grid a {
    min-height: 184px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 15px;
    text-decoration: none;
}

.setup-command-grid span,
.setup-command-grid strong,
.setup-command-grid em,
.setup-command-grid b {
    display: block;
}

.setup-command-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff3e9;
    color: var(--hot);
    padding: 6px 9px;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.setup-command-grid strong {
    color: var(--ink);
    font-size: 17px;
    line-height: 1.25;
}

.setup-command-grid em {
    color: var(--muted);
    font-style: normal;
}

.setup-command-grid b {
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
}

.setup-scenario-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.setup-scenario-strip article {
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .74);
    padding: 14px;
}

.setup-scenario-strip strong {
    display: block;
    color: var(--ink);
}

.setup-scenario-strip ul {
    margin: 9px 0 0;
    padding-left: 18px;
    color: #48656b;
}

.setup-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

.setup-service-grid article {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.setup-service-grid article > span {
    justify-self: start;
    border-radius: 999px;
    background: #fff8df;
    color: #5b4420;
    padding: 7px 11px;
    font-size: 13px;
    font-weight: 900;
}

.setup-service-grid h2 {
    margin: 0;
    font-size: 24px;
}

.setup-service-grid p {
    margin: 0;
    color: var(--muted);
}

.setup-layout .handoff-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mini-flow.vertical {
    grid-template-columns: 1fr;
    margin-top: 18px;
}

.cart-hero {
    align-items: stretch;
}

.cart-hero-side {
    display: grid;
    gap: 12px;
}

.cart-visual {
    min-height: 270px;
    height: 310px;
}

.cart-trust-row {
    margin-top: 18px;
}

.cart-summary-card,
.empty-state {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 22px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.cart-summary-card span {
    display: block;
    color: var(--muted);
}

.cart-summary-card strong {
    display: block;
    margin-top: 4px;
    color: var(--hot);
    font-size: 34px;
}

.cart-stage-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(28px, 5vw, 54px);
}

.cart-stage-strip article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fffdf8;
    padding: 16px;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.cart-stage-strip span,
.cart-stage-strip strong,
.cart-stage-strip p {
    display: block;
}

.cart-stage-strip span {
    color: var(--hot);
    font-size: 13px;
    font-weight: 900;
}

.cart-stage-strip strong {
    margin-top: 6px;
    font-size: 19px;
}

.cart-stage-strip p {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.cart-command-board {
    display: grid;
    grid-template-columns: minmax(260px, .52fr) minmax(0, 1fr);
    gap: 14px;
    margin-top: 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f7fbfb;
    padding: 16px;
}

.cart-command-head {
    align-self: center;
}

.cart-command-head h2,
.cart-command-head p {
    margin-bottom: 0;
}

.cart-command-head h2 {
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.08;
}

.cart-command-head p:not(.eyebrow) {
    margin-top: 10px;
    color: var(--muted);
}

.cart-command-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.cart-command-grid a {
    display: grid;
    gap: 8px;
    align-content: start;
    min-height: 178px;
    border: 1px solid rgba(20, 107, 117, .16);
    border-radius: 8px;
    background: white;
    padding: 14px;
    text-decoration: none;
}

.cart-command-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.cart-command-grid span,
.cart-command-grid strong,
.cart-command-grid em,
.cart-command-grid b {
    display: block;
}

.cart-command-grid span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.cart-command-grid strong {
    font-size: 18px;
    line-height: 1.2;
}

.cart-command-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.cart-command-grid b {
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
}

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: 30px;
}

.cart-items {
    display: grid;
    gap: 14px;
}

.cart-review-head {
    display: flex;
    gap: 14px;
    align-items: end;
    justify-content: space-between;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #e9f5f4;
    padding: 18px;
}

.cart-review-head h2,
.cart-review-head p {
    margin: 0;
}

.cart-review-head h2 {
    margin-top: 5px;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.08;
}

.cart-review-head a {
    flex: 0 0 auto;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 10px 12px;
    font-weight: 900;
    text-decoration: none;
}

.cart-item {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
}

.cart-item img {
    width: 150px;
    height: 120px;
    object-fit: cover;
    border-radius: 6px;
    background: var(--panel-2);
}

.cart-item h2 {
    margin-bottom: 10px;
    font-size: 24px;
}

.cart-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: -2px 0 12px;
}

.cart-item-meta span {
    border: 1px solid var(--line);
    border-radius: 999px;
    background: white;
    padding: 5px 9px;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 850;
}

.option-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 14px;
    margin: 0;
}

.option-list div {
    min-width: 0;
}

.option-list dt {
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
}

.option-list dd {
    margin: 2px 0 0;
}

.cart-item-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin-top: 12px;
}

.cart-item-actions a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 8px;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.cart-item-actions a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.cart-item-side {
    display: grid;
    justify-items: end;
    gap: 10px;
}

.cart-item-side strong {
    color: var(--hot);
    font-size: 24px;
}

.cart-quantity-form {
    display: grid;
    grid-template-columns: 82px auto;
    gap: 8px;
    align-items: end;
}

.cart-quantity-form label {
    display: grid;
    gap: 4px;
    margin: 0;
}

.cart-quantity-form label span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
}

.cart-quantity-form input {
    width: 100%;
    min-height: 38px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 10px;
    font-weight: 900;
}

.cart-quantity-form button {
    min-height: 38px;
    border: 1px solid rgba(0, 123, 132, .24);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 12px;
    font-weight: 950;
    cursor: pointer;
}

.cart-readiness-list {
    display: grid;
    gap: 8px;
    margin-top: 14px;
}

.cart-readiness-list p {
    margin: 0;
    border-left: 3px solid var(--accent);
    background: #f5fbfa;
    padding: 9px 10px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.cart-support-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(30px, 5vw, 58px);
}

.cart-support-grid article {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.cart-support-grid strong,
.cart-support-grid p {
    display: block;
    margin: 0;
}

.cart-support-grid p {
    margin-top: 5px;
    color: var(--muted);
    font-size: 14px;
}

.cart-support-grid a {
    flex: 0 0 auto;
    border-radius: 6px;
    background: var(--ink);
    color: white;
    padding: 9px 11px;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
}

.reorder-actions,
.inline-action-form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.reorder-actions form,
.inline-action-form {
    margin: 0;
}

.inline-action-form.compact {
    justify-content: flex-start;
}

.inline-action-form button,
.reorder-actions button {
    min-height: 36px;
    padding: 0 12px;
    font-size: 13px;
}

.empty-state {
    margin-top: 30px;
    text-align: center;
}

.cart-empty-market {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1fr);
    gap: 22px;
    align-items: center;
    text-align: left;
}

.cart-empty-market h2,
.cart-empty-market p {
    margin: 0;
}

.cart-empty-market h2 {
    margin-top: 5px;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.05;
}

.cart-empty-market p:not(.eyebrow) {
    margin-top: 12px;
    color: var(--muted);
}

.cart-empty-products {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.cart-empty-products a {
    min-width: 0;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 9px;
    text-decoration: none;
}

.cart-empty-products img {
    grid-row: span 3;
    width: 82px;
    height: 74px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.cart-empty-products span,
.cart-empty-products strong,
.cart-empty-products em {
    display: block;
    min-width: 0;
}

.cart-empty-products span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 900;
}

.cart-empty-products strong {
    overflow: hidden;
    color: var(--ink);
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cart-empty-products em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.confirmation-layout {
    min-height: 62vh;
    display: grid;
    grid-template-columns: auto minmax(0, 620px) minmax(320px, 520px);
    gap: 24px;
    align-items: center;
    justify-content: stretch;
}

.confirmation-icon {
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: var(--green);
    color: white;
    font-size: 40px;
    font-weight: 950;
}

.confirmation-copy {
    min-width: 0;
}

.confirmation-visual-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 18px 46px rgba(23, 33, 43, .1);
}

.confirmation-visual-card img {
    width: 100%;
    height: clamp(220px, 24vw, 320px);
    display: block;
    object-fit: cover;
}

.confirmation-live-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
}

.confirmation-live-grid a {
    min-height: 150px;
    display: grid;
    align-content: start;
    gap: 6px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #ffffff;
    padding: 12px;
    text-decoration: none;
}

.confirmation-live-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.confirmation-live-grid span,
.confirmation-live-grid strong,
.confirmation-live-grid em,
.confirmation-live-grid b {
    display: block;
}

.confirmation-live-grid span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.confirmation-live-grid strong {
    font-size: 16px;
    line-height: 1.25;
}

.confirmation-live-grid em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.45;
}

.confirmation-live-grid b {
    align-self: end;
    justify-self: start;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 6px 8px;
    font-size: 12px;
    line-height: 1;
}

.order-command-console {
    display: grid;
    grid-template-columns: minmax(300px, .68fr) minmax(0, 1.32fr);
    gap: 16px;
    align-items: stretch;
    margin-top: clamp(34px, 6vw, 70px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: clamp(16px, 3vw, 24px);
}

.order-command-copy {
    display: grid;
    align-content: center;
    gap: 12px;
    border: 1px solid rgba(7, 103, 104, .14);
    border-radius: 8px;
    background: white;
    padding: 18px;
}

.order-command-copy h2,
.order-command-copy p {
    margin-bottom: 0;
}

.order-command-copy p:not(.eyebrow) {
    color: var(--muted);
}

.order-command-code {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 10px;
    align-items: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #fff7dc;
    padding: 12px;
}

.order-command-code span,
.order-command-code strong {
    display: block;
}

.order-command-code span {
    grid-column: 1 / -1;
    color: #7b5200;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.order-command-code strong {
    overflow: hidden;
    color: var(--ink);
    font-size: 22px;
    line-height: 1.16;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.order-command-code.compact strong {
    font-size: 16px;
}

.order-command-code button {
    min-height: 36px;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: var(--accent);
    color: white;
    padding: 0 12px;
    font: inherit;
    font-size: 13px;
    font-weight: 950;
    cursor: pointer;
    white-space: nowrap;
}

.order-command-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.order-command-grid a {
    min-width: 0;
    min-height: 172px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 10px 26px rgba(23, 33, 43, .05);
}

.order-command-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.order-command-grid span,
.order-command-grid strong,
.order-command-grid em,
.order-command-grid b {
    display: block;
}

.order-command-grid span {
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.order-command-grid strong {
    color: var(--ink);
    font-size: 17px;
    line-height: 1.25;
}

.order-command-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.order-command-grid b {
    align-self: end;
    justify-self: start;
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 7px 9px;
    font-size: 12px;
    line-height: 1;
}

.post-order-actions {
    margin-top: clamp(34px, 6vw, 70px);
}

.post-order-action-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.post-order-action-grid a {
    min-height: 196px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.post-order-action-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.post-order-action-grid span,
.post-order-action-grid strong,
.post-order-action-grid em,
.post-order-action-grid b {
    display: block;
}

.post-order-action-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.post-order-action-grid strong {
    font-size: 20px;
}

.post-order-action-grid em {
    color: var(--muted);
    font-size: 14px;
    font-style: normal;
    line-height: 1.55;
}

.post-order-action-grid b {
    justify-self: start;
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 13px;
}

.post-order-flow {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(28px, 5vw, 52px);
}

.post-order-flow article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff8df;
    padding: 16px;
}

.post-order-flow span,
.post-order-flow strong,
.post-order-flow p {
    display: block;
}

.post-order-flow span {
    color: #a97608;
    font-size: 12px;
    font-weight: 950;
}

.post-order-flow strong {
    margin-top: 6px;
    font-size: 18px;
}

.post-order-flow p {
    margin: 7px 0 0;
    color: #6e562d;
    font-size: 14px;
}

.order-admin-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.order-ops-console {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 16px;
    align-items: stretch;
    margin-bottom: 24px;
}

.order-commercial-form {
    display: grid;
    gap: 16px;
}

.order-commercial-form h2,
.order-commercial-form p,
.order-ops-note p {
    margin: 0;
}

.order-commercial-preview {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.order-commercial-preview article {
    min-height: 108px;
    display: grid;
    align-content: start;
    gap: 6px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: 13px;
}

.order-commercial-preview span,
.order-commercial-preview strong,
.order-commercial-preview a {
    display: block;
}

.order-commercial-preview span {
    color: var(--muted);
    font-size: 13px;
}

.order-commercial-preview strong,
.order-commercial-preview a {
    color: var(--accent-dark);
    font-weight: 950;
    text-decoration: none;
}

.order-ops-note {
    border: 1px solid rgba(240, 90, 40, .18);
    border-radius: 8px;
    background: #fff7f2;
    padding: 18px;
}

.order-ops-note > strong {
    display: block;
    color: #9c3412;
    font-size: 18px;
}

.compact-list {
    margin-top: 18px;
}

.review-form {
    display: grid;
    gap: 8px;
    min-width: 260px;
}

.review-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.review-actions button {
    min-height: 36px;
    padding: 0 10px;
    font-size: 13px;
}

.catalog-search div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    margin-top: 8px;
}

.catalog-purchase-desk {
    display: grid;
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(28px, 5vw, 54px);
}

.catalog-purchase-desk figure {
    min-height: 360px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 14px 34px rgba(23, 33, 43, .08);
}

.catalog-purchase-desk figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog-purchase-copy {
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #f1fbfa;
    padding: clamp(20px, 3vw, 34px);
}

.catalog-purchase-copy h2,
.catalog-purchase-copy p {
    margin-bottom: 0;
}

.catalog-purchase-copy p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
    line-height: 1.7;
}

.catalog-purchase-actions,
.catalog-purchase-flow {
    display: grid;
    gap: 10px;
}

.catalog-purchase-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 20px;
}

.catalog-purchase-flow {
    grid-column: 1 / -1;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.catalog-purchase-flow a {
    display: grid;
    min-height: 190px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    padding: 15px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.catalog-purchase-flow span,
.catalog-purchase-flow strong,
.catalog-purchase-flow em,
.catalog-purchase-flow b {
    display: block;
}

.catalog-purchase-flow span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-purchase-flow strong {
    margin-top: 8px;
    color: var(--ink);
    font-size: 18px;
    line-height: 1.25;
}

.catalog-purchase-flow em {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.catalog-purchase-flow b {
    align-self: end;
    margin-top: 16px;
    color: var(--hot);
    font-size: 13px;
}

.catalog-campaign-wall {
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(28px, 5vw, 54px);
}

.catalog-campaign-lead {
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 3vw, 28px);
}

.catalog-campaign-lead h2,
.catalog-campaign-lead p {
    margin-bottom: 0;
}

.catalog-campaign-lead > p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
}

.catalog-campaign-lead > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.catalog-campaign-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.catalog-campaign-grid a {
    position: relative;
    min-height: 248px;
    display: grid;
    align-content: end;
    overflow: hidden;
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(23, 33, 43, .1);
}

.catalog-campaign-grid a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(23, 33, 43, .03), rgba(23, 33, 43, .82));
}

.catalog-campaign-grid img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .18s ease;
}

.catalog-campaign-grid a:hover img {
    transform: scale(1.04);
}

.catalog-campaign-grid span,
.catalog-campaign-grid strong,
.catalog-campaign-grid em,
.catalog-campaign-grid b {
    position: relative;
    z-index: 2;
    display: block;
}

.catalog-campaign-grid span {
    justify-self: start;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-campaign-grid strong {
    margin-top: 8px;
    font-size: 20px;
    line-height: 1.16;
}

.catalog-campaign-grid em {
    margin-top: 5px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}

.catalog-campaign-grid b {
    margin-top: 8px;
    color: var(--yellow);
    font-size: 16px;
}

.catalog-shop-finder {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(360px, 1.18fr);
    gap: 14px;
    margin-top: clamp(28px, 5vw, 52px);
}

.catalog-tag-panel,
.catalog-use-panel {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.catalog-tag-panel h2 {
    margin-bottom: 14px;
    font-size: 24px;
}

.catalog-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.catalog-tags a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 12px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.catalog-tags a:hover {
    border-color: var(--accent);
    background: white;
}

.catalog-use-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.catalog-use-grid a {
    min-height: 132px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
}

.catalog-use-grid a:hover {
    border-color: var(--yellow);
}

.catalog-use-grid span,
.catalog-use-grid strong,
.catalog-use-grid em {
    display: block;
}

.catalog-use-grid span {
    color: var(--yellow);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-use-grid strong {
    font-size: 18px;
}

.catalog-use-grid em {
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
    font-style: normal;
    line-height: 1.45;
}

.catalog-product-finder {
    display: grid;
    grid-template-columns: minmax(260px, .72fr) minmax(320px, .88fr) minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
    margin-top: clamp(34px, 6vw, 68px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 4vw, 30px);
}

.catalog-finder-copy {
    align-content: center;
    display: grid;
    gap: 12px;
}

.catalog-finder-copy h2,
.catalog-finder-copy p {
    margin: 0;
}

.catalog-finder-copy p:not(.eyebrow) {
    color: #48656b;
    line-height: 1.62;
}

.catalog-finder-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.catalog-finder-visual {
    min-height: 300px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
}

.catalog-finder-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog-finder-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.catalog-finder-grid a {
    min-height: 158px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 14px;
    text-decoration: none;
}

.catalog-finder-grid span,
.catalog-finder-grid strong,
.catalog-finder-grid em,
.catalog-finder-grid b {
    display: block;
}

.catalog-finder-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff3e9;
    color: var(--hot);
    padding: 6px 9px;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-finder-grid strong {
    color: var(--ink);
    font-size: 17px;
    line-height: 1.25;
}

.catalog-finder-grid em {
    color: var(--muted);
    font-style: normal;
    line-height: 1.45;
}

.catalog-finder-grid b {
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
}

.catalog-category-quickshop {
    margin-top: clamp(34px, 6vw, 68px);
}

.quickshop-head {
    max-width: none;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: end;
}

.quickshop-head p:last-child {
    color: var(--muted);
}

.catalog-category-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.catalog-category-card-grid > article {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.catalog-category-card-media {
    position: relative;
    display: block;
    height: 150px;
    background: var(--panel-2);
    text-decoration: none;
}

.catalog-category-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog-category-card-media span {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: var(--accent-dark);
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 950;
}

.catalog-category-card-body {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.catalog-category-card-body h3,
.catalog-category-card-body p {
    margin-bottom: 0;
}

.catalog-category-card-body > p:not(.eyebrow) {
    color: var(--muted);
    font-size: 14px;
}

.catalog-category-product-links {
    display: grid;
    gap: 6px;
}

.catalog-category-product-links a {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid var(--line);
    padding-top: 7px;
    text-decoration: none;
    font-size: 13px;
}

.catalog-category-product-links span {
    color: #33404a;
    font-weight: 850;
}

.catalog-category-product-links em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
    white-space: nowrap;
}

.catalog-category-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.catalog-category-card-actions a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.catalog-category-card-actions a:first-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.catalog-decision-board {
    margin-top: clamp(34px, 6vw, 68px);
}

.catalog-decision-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.catalog-decision-grid article {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.catalog-decision-media {
    position: relative;
    display: block;
    height: 180px;
    background: #eef4f7;
}

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

.catalog-decision-media span {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: var(--hot);
    padding: 7px 10px;
    font-size: 13px;
    font-weight: 950;
}

.catalog-decision-body {
    display: grid;
    gap: 11px;
    padding: 16px;
}

.catalog-decision-body h3,
.catalog-decision-body p {
    margin: 0;
}

.catalog-decision-body p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.55;
}

.catalog-decision-specs,
.catalog-decision-products,
.catalog-decision-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.catalog-decision-specs span,
.catalog-decision-products em {
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #f8fbfd;
    color: #33404a;
    padding: 6px 9px;
    font-size: 12px;
    font-style: normal;
    font-weight: 850;
}

.catalog-decision-products em {
    background: #fff8e8;
    color: #765523;
}

.catalog-decision-actions a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.catalog-decision-actions a:first-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.catalog-price-matrix {
    margin-top: clamp(34px, 6vw, 68px);
}

.matrix-head {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.matrix-head p:last-child {
    margin-bottom: 0;
    color: var(--muted);
}

.matrix-head-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    justify-content: flex-end;
}

.catalog-matrix-table {
    overflow-x: auto;
    margin-top: 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.catalog-matrix-table table {
    min-width: 1320px;
}

.catalog-matrix-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    text-transform: uppercase;
}

.catalog-matrix-table td {
    vertical-align: middle;
}

.catalog-matrix-table td:nth-child(4),
.catalog-matrix-table td:nth-child(5),
.catalog-matrix-table td:nth-child(6) {
    color: var(--hot);
    font-weight: 950;
}

.catalog-matrix-table td > span,
.catalog-matrix-table td > strong {
    display: block;
}

.catalog-matrix-table td > span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 12px;
}

.matrix-product {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 220px;
    color: var(--ink);
    text-decoration: none;
}

.matrix-product img {
    width: 70px;
    height: 54px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.matrix-product strong,
.matrix-product em {
    display: block;
}

.matrix-product em {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.matrix-actions {
    display: flex;
    gap: 8px;
}

.matrix-cart-form {
    display: grid;
    grid-template-columns: 86px minmax(110px, auto);
    gap: 8px;
    align-items: end;
    min-width: 210px;
}

.matrix-cart-form label {
    display: grid;
    gap: 4px;
    margin: 0;
}

.matrix-cart-form label span {
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.matrix-cart-form input {
    width: 100%;
    min-height: 34px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 9px;
    font-weight: 900;
}

.matrix-cart-form button {
    min-height: 34px;
    border: 0;
    border-radius: 6px;
    background: var(--hot);
    color: white;
    padding: 0 11px;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
    cursor: pointer;
}

.matrix-actions a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.matrix-actions a:last-child {
    border-color: var(--accent);
    background: #edf9f8;
}

.catalog-command-bar {
    position: sticky;
    top: 8px;
    z-index: 18;
    display: grid;
    grid-template-columns: minmax(150px, .45fr) minmax(260px, 1fr) minmax(180px, .42fr) minmax(260px, .7fr);
    gap: 10px;
    align-items: end;
    margin-top: clamp(28px, 5vw, 54px);
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: rgba(255, 255, 255, .97);
    padding: 12px;
    box-shadow: 0 14px 36px rgba(23, 33, 43, .1);
    backdrop-filter: blur(10px);
}

.catalog-command-summary {
    display: grid;
    gap: 2px;
}

.catalog-command-summary span,
.catalog-command-summary strong,
.catalog-command-summary em {
    display: block;
}

.catalog-command-summary span,
.catalog-command-search label,
.catalog-command-sort label {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-command-summary strong {
    color: var(--ink);
    font-size: 21px;
}

.catalog-command-summary em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.catalog-command-search,
.catalog-command-sort {
    display: grid;
    gap: 6px;
}

.catalog-command-search div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
}

.catalog-command-search input,
.catalog-command-search button,
.catalog-command-sort select {
    min-height: 40px;
}

.catalog-command-search button {
    padding: 0 14px;
}

.catalog-command-bar nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}

.catalog-command-bar nav a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    color: var(--accent-dark);
    padding: 0 8px;
    font-size: 12px;
    font-weight: 950;
    text-align: center;
    text-decoration: none;
}

.catalog-command-bar nav a:first-child {
    border-color: var(--accent);
    background: var(--accent);
    color: white;
}

.catalog-command-chips {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    border-top: 1px solid var(--line);
    padding-top: 10px;
}

.catalog-command-chips span,
.catalog-command-chips a {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid rgba(7, 103, 104, .15);
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none;
}

.catalog-command-chips b {
    color: var(--ink);
    font-weight: 950;
}

.catalog-bulk-board {
    display: grid;
    grid-template-columns: minmax(170px, .52fr) minmax(0, 1.18fr) auto;
    gap: 12px;
    align-items: stretch;
    margin-top: 12px;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #fff7dc;
    padding: 12px;
}

.catalog-bulk-board.has-items {
    border-color: rgba(240, 90, 40, .3);
    box-shadow: 0 12px 28px rgba(23, 33, 43, .07);
}

.catalog-bulk-summary,
.catalog-bulk-list,
.catalog-bulk-actions {
    min-width: 0;
}

.catalog-bulk-summary {
    display: grid;
    align-content: center;
    gap: 2px;
}

.catalog-bulk-summary span,
.catalog-bulk-summary strong,
.catalog-bulk-summary em {
    display: block;
}

.catalog-bulk-summary span {
    color: #7b5200;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalog-bulk-summary strong {
    color: var(--ink);
    font-size: 18px;
    line-height: 1.2;
}

.catalog-bulk-summary em {
    color: var(--hot);
    font-size: 13px;
    font-style: normal;
    font-weight: 900;
}

.catalog-bulk-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    border: 1px solid rgba(123, 82, 0, .12);
    border-radius: 8px;
    background: white;
    padding: 8px;
}

.catalog-bulk-list span {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .14);
    border-radius: 999px;
    background: #f7fbfb;
    color: #33404a;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 850;
}

.catalog-bulk-list strong {
    color: var(--accent-dark);
}

.catalog-bulk-list em {
    color: var(--hot);
    font-style: normal;
}

.catalog-bulk-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    align-content: center;
    min-width: 280px;
}

.catalog-bulk-actions a,
.catalog-bulk-actions button {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 0 10px;
    text-decoration: none;
    font: inherit;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.catalog-bulk-actions a {
    border: 1px solid var(--accent);
    background: var(--accent);
    color: white;
}

.catalog-bulk-actions a + a {
    border-color: rgba(7, 103, 104, .2);
    background: white;
    color: var(--accent-dark);
}

.catalog-bulk-actions button {
    border: 1px solid rgba(123, 82, 0, .18);
    background: white;
    color: #7b5200;
    cursor: pointer;
}

.catalog-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    margin-top: 34px;
    align-items: start;
}

.catalog-sidebar {
    position: sticky;
    top: 132px;
    display: grid;
    gap: 8px;
}

.catalog-sidebar h2 {
    font-size: 20px;
    margin-bottom: 8px;
}

.catalog-sidebar a,
.sidebar a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel);
    text-decoration: none;
    font-weight: 750;
}

.catalog-sidebar a.active,
.catalog-sidebar a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.catalog-sidebar a span {
    display: inline-grid;
    min-width: 28px;
    height: 24px;
    place-items: center;
    border-radius: 999px;
    background: var(--panel-2);
    color: var(--muted);
    font-size: 12px;
}

.catalog-filter {
    display: grid;
    gap: 8px;
    margin-top: 12px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
}

.catalog-filter label {
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
}

.catalog-filter select,
.catalog-sort select {
    min-height: 38px;
}

.catalog-filter button {
    min-height: 38px;
    margin-top: 4px;
}

.filter-reset {
    justify-content: center;
    padding: 8px 10px;
    background: var(--panel-2) !important;
    color: var(--accent-dark);
}

.sidebar-note {
    margin-top: 12px;
    padding: 14px;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
}

.sidebar-note a {
    margin-top: 10px;
    background: white;
}

.catalog-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    color: var(--muted);
    font-size: 14px;
}

.catalog-sort {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.catalog-sort label {
    font-size: 12px;
    font-weight: 850;
}

.catalog-category {
    scroll-margin-top: 140px;
    margin-bottom: 38px;
}

.catalog-category-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: end;
    margin-bottom: 16px;
}

.catalog-category-head h2 {
    margin-bottom: 8px;
}

.catalog-category-head p:last-child {
    margin-bottom: 0;
    color: var(--muted);
}

.catalog-category-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.catalog-category-stats article {
    min-height: 86px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 8px;
    background: #edf9f8;
    padding: 14px;
}

.catalog-category-stats span,
.catalog-category-stats strong {
    display: block;
}

.catalog-category-stats span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.catalog-category-stats strong {
    margin-top: 5px;
    color: #25313c;
    font-size: 18px;
}

.catalog-guide-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}

.catalog-guide-grid article {
    display: grid;
    gap: 9px;
    align-content: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 15px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .04);
}

.catalog-guide-grid span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
}

.catalog-guide-grid p {
    margin: 0;
    color: #33404a;
    font-size: 14px;
}

.catalog-guide-grid ul {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.catalog-guide-grid li {
    position: relative;
    padding-left: 17px;
    color: var(--muted);
    font-size: 13px;
}

.catalog-guide-grid li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55em;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--accent);
}

.catalog-faq-band {
    margin-top: clamp(38px, 7vw, 78px);
}

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

.catalog-faq-grid article {
    min-height: 170px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.catalog-faq-grid h3 {
    margin-bottom: 8px;
    font-size: 17px;
}

.catalog-faq-grid p {
    color: var(--muted);
    font-size: 14px;
}

.compare-band {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 28px;
    margin-top: clamp(42px, 7vw, 86px);
    padding: clamp(24px, 4vw, 42px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
}

.compare-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.compare-grid article {
    min-height: 118px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 16px;
}

.compare-grid strong,
.compare-grid span {
    display: block;
}

.compare-grid span {
    margin-top: 6px;
    color: var(--muted);
    font-size: 14px;
}

.mini-list,
.pill-list,
.check-list,
.breakdown {
    padding: 0;
    list-style: none;
}

.mini-list,
.pill-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.product-card-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 12px;
}

.product-card-actions span,
.product-card-actions em {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border-radius: 999px;
    padding: 0 10px;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.product-card-actions span {
    background: #fff0ec;
    color: var(--hot);
}

.product-card-actions em {
    background: #e8f8f4;
    color: #13794f;
}

.catalogue-shop-card {
    height: 100%;
    display: grid;
    grid-template-rows: 220px 1fr;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
    transition: transform .18s ease, box-shadow .18s ease;
}

.catalogue-shop-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(23, 33, 43, .11);
}

.catalogue-shop-card .product-thumb {
    height: 100%;
    margin: 0;
}

.product-card-media,
.product-card-title {
    text-decoration: none;
}

.product-card-title {
    display: block;
}

.product-card-title:hover {
    color: var(--accent-dark);
}

.catalogue-card-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
}

.catalogue-card-price strong {
    color: var(--hot);
    font-size: 20px;
}

.catalogue-price-ladder {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.catalogue-price-ladder span {
    min-width: 0;
    display: grid;
    gap: 3px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 7px;
    background: #edf9f8;
    padding: 9px 8px;
}

.catalogue-price-ladder b,
.catalogue-price-ladder em {
    display: block;
}

.catalogue-price-ladder b {
    color: var(--accent-dark);
    font-size: 12px;
}

.catalogue-price-ladder em {
    color: #25313c;
    font-size: 13px;
    font-style: normal;
    font-weight: 900;
}

.catalogue-card-handoff {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin-top: 12px;
}

.catalogue-card-handoff a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    color: #33404a;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.catalogue-card-handoff a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.catalogue-service-flags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.catalogue-service-flags span {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #fff7dc;
    color: #7a5510;
    padding: 0 9px;
    font-size: 12px;
    font-weight: 900;
}

.catalogue-select-row {
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    border: 1px solid rgba(7, 103, 104, .14);
    border-radius: 8px;
    background: #fff7dc;
    color: #33404a;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 950;
}

.catalogue-select-row input {
    width: 16px;
    height: 16px;
    accent-color: var(--accent);
}

.catalogue-card-buybox {
    display: grid;
    gap: 8px;
    margin-top: 14px;
    border-top: 1px solid var(--line);
    padding-top: 12px;
}

.catalogue-card-order {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(118px, .56fr);
    gap: 8px;
    align-items: end;
}

.catalogue-card-order label,
.catalogue-card-order label span {
    display: block;
}

.catalogue-card-order label span {
    margin-bottom: 4px;
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.catalogue-card-order select {
    width: 100%;
    min-height: 42px;
    background: white;
}

.catalogue-card-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.catalogue-card-actions a,
.catalogue-cart-form button {
    width: 100%;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding-right: 10px;
    padding-left: 10px;
    text-align: center;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.catalogue-card-actions a {
    border: 1px solid var(--line);
    background: white;
    color: var(--accent-dark);
}

.catalogue-cart-form {
    margin: 0;
}

.catalogue-cart-form button {
    border: 1px solid rgba(0, 123, 132, .24);
    background: var(--ink);
    color: white;
    cursor: pointer;
}

.catalogue-card-actions a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.breadcrumb {
    display: flex;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--muted);
    font-size: 14px;
}

.product-commerce-hub {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(420px, 1fr);
    gap: 16px;
    align-items: start;
    margin-bottom: 22px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.product-commerce-hub h2 {
    margin-bottom: 0;
    font-size: 24px;
}

.product-commerce-hub nav {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.product-commerce-hub nav a {
    min-width: 0;
    min-height: 58px;
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 7px;
    background: #edf9f8;
    padding: 8px 10px;
    text-decoration: none;
}

.product-commerce-hub nav a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.product-commerce-hub nav span,
.product-commerce-hub nav strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-commerce-hub nav span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.product-commerce-hub nav strong {
    color: #33404a;
    font-size: 13px;
}

.product-commerce-badges {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.product-commerce-badges article {
    min-height: 76px;
    display: grid;
    align-content: start;
    gap: 4px;
    border: 1px solid var(--line);
    border-radius: 7px;
    background: var(--panel-2);
    padding: 11px;
}

.product-commerce-badges strong,
.product-commerce-badges span {
    display: block;
}

.product-commerce-badges strong {
    color: var(--ink);
    font-size: 14px;
}

.product-commerce-badges span {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.45;
}

.product-decision-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: clamp(22px, 4vw, 40px);
}

.product-decision-strip article {
    min-height: 210px;
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.product-decision-strip span,
.product-decision-strip h3,
.product-decision-strip p,
.product-decision-strip a {
    display: block;
    min-width: 0;
}

.product-decision-strip span {
    justify-self: start;
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 9px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.product-decision-strip h3,
.product-decision-strip p {
    margin-bottom: 0;
}

.product-decision-strip h3 {
    font-size: 18px;
    line-height: 1.28;
}

.product-decision-strip p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.55;
}

.product-decision-strip a {
    align-self: end;
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 950;
    text-decoration: none;
}

.product-decision-strip a:hover {
    color: var(--hot);
}

.product-purchase-console {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.25fr) minmax(260px, .72fr);
    gap: 14px;
    align-items: stretch;
    margin-top: clamp(24px, 4vw, 42px);
    margin-bottom: clamp(26px, 5vw, 52px);
}

.product-purchase-lead,
.product-option-console article,
.product-price-console {
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.product-purchase-lead {
    display: grid;
    align-content: center;
    padding: clamp(18px, 3vw, 26px);
    background: #e9f5f4;
}

.product-purchase-lead h2,
.product-purchase-lead p {
    margin-bottom: 0;
}

.product-purchase-lead > p:not(.eyebrow) {
    margin-top: 9px;
    color: #48656b;
}

.product-purchase-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.product-option-console {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.product-option-console article {
    display: grid;
    align-content: start;
    gap: 8px;
    padding: 15px;
}

.product-option-console span,
.product-option-console strong {
    display: block;
}

.product-option-console span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.product-option-console strong {
    font-size: 18px;
}

.product-option-console ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-option-console li {
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 8px;
    font-size: 12px;
    font-weight: 900;
}

.product-price-console {
    display: grid;
    gap: 8px;
    align-content: start;
    padding: 14px;
}

.product-price-console > strong {
    min-height: 38px;
    display: flex;
    align-items: center;
    border-radius: 8px;
    background: var(--ink);
    color: var(--yellow);
    padding: 0 11px;
    font-size: 14px;
}

.product-price-console a {
    display: grid;
    grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
    gap: 3px 10px;
    align-items: center;
    min-height: 58px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    padding: 9px 10px;
    text-decoration: none;
}

.product-price-console a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.product-price-console a.is-active {
    border-color: var(--accent-dark);
    background: #dff4f2;
    box-shadow: inset 0 0 0 1px rgba(0, 123, 132, .18);
}

.product-price-console span,
.product-price-console em,
.product-price-console b {
    display: block;
}

.product-price-console span {
    grid-row: span 2;
    color: #33404a;
    font-size: 13px;
    font-weight: 950;
}

.product-price-console em {
    color: var(--hot);
    font-size: 17px;
    font-style: normal;
    font-weight: 950;
    text-align: right;
}

.product-price-console b {
    color: var(--muted);
    font-size: 12px;
    text-align: right;
}

.product-order-dock {
    position: sticky;
    top: 10px;
    z-index: 20;
    display: grid;
    grid-template-columns: minmax(260px, .9fr) minmax(170px, .35fr) minmax(360px, .9fr);
    gap: 12px;
    align-items: center;
    margin-bottom: clamp(18px, 3vw, 30px);
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: rgba(255, 255, 255, .96);
    padding: 10px;
    box-shadow: 0 14px 36px rgba(23, 33, 43, .12);
    backdrop-filter: blur(10px);
}

.product-order-dock-summary {
    min-width: 0;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.product-order-dock-summary img {
    width: 58px;
    height: 50px;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.product-order-dock-summary strong,
.product-order-dock-summary em,
.product-order-dock-price span,
.product-order-dock-price strong {
    display: block;
}

.product-order-dock-summary strong {
    overflow: hidden;
    color: var(--ink);
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-order-dock-summary em {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.product-order-dock-price {
    border-left: 1px solid var(--line);
    padding-left: 12px;
}

.product-order-dock-price span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
}

.product-order-dock-price strong {
    margin-top: 2px;
    color: var(--hot);
    font-size: 20px;
    line-height: 1;
}

.product-order-dock nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.product-order-dock nav a {
    min-width: 0;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    color: var(--accent-dark);
    padding: 0 9px;
    font-size: 13px;
    font-weight: 950;
    text-align: center;
    text-decoration: none;
}

.product-order-dock nav a.is-primary {
    border-color: var(--hot);
    background: var(--hot);
    color: white;
}

.product-detail {
    display: grid;
    grid-template-columns: minmax(320px, .9fr) minmax(0, .95fr) minmax(330px, 430px);
    gap: 24px;
    align-items: start;
}

.product-stage {
    min-height: 470px;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.product-stage img {
    min-height: 470px;
}

.gallery-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 10px;
}

.gallery-strip button {
    position: relative;
    min-width: 0;
    height: 86px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel);
    padding: 0;
    cursor: pointer;
}

.gallery-strip button:hover,
.gallery-strip button.active {
    border-color: var(--accent);
    box-shadow: 0 0 0 2px rgba(0, 167, 181, .14);
}

.gallery-strip img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-strip span {
    position: absolute;
    right: 7px;
    bottom: 7px;
    left: 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    padding: 4px 7px;
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    color: var(--accent-dark);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-info {
    min-width: 0;
}

.product-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 24px 0;
}

.product-facts div {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
}

.product-facts span {
    display: block;
    color: var(--muted);
    font-size: 13px;
}

.product-facts strong {
    display: block;
    margin-top: 5px;
}

.product-order-path {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 18px 0 24px;
}

.product-order-path article {
    display: grid;
    gap: 5px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
}

.product-order-path span,
.product-order-path strong,
.product-order-path em {
    display: block;
}

.product-order-path span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.product-order-path strong {
    font-size: 14px;
}

.product-order-path em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.product-visual-guide {
    display: grid;
    grid-template-columns: minmax(320px, .78fr) minmax(0, 1fr);
    gap: 22px;
    align-items: stretch;
    margin-top: clamp(34px, 6vw, 70px);
}

.product-visual-guide figure {
    position: relative;
    min-height: 420px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 12px 32px rgba(23, 33, 43, .07);
}

.product-visual-guide img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
}

.product-visual-guide figcaption {
    position: absolute;
    left: 14px;
    bottom: 14px;
    border-radius: 999px;
    background: rgba(23, 33, 43, .86);
    color: white;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 900;
}

.product-visual-guide-content {
    display: grid;
    gap: 16px;
    align-content: start;
}

.visual-guide-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.visual-guide-grid article {
    display: grid;
    gap: 9px;
    align-content: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.visual-guide-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.visual-guide-grid h3,
.visual-guide-grid p {
    margin-bottom: 0;
}

.visual-guide-grid h3 {
    font-size: 19px;
}

.visual-guide-grid p {
    color: var(--muted);
    font-size: 14px;
}

.visual-guide-grid ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 2px 0 0;
    padding: 0;
    list-style: none;
}

.visual-guide-grid li {
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 8px;
    font-size: 12px;
    font-weight: 900;
}

.visual-guide-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.info-block {
    margin-top: 24px;
}

.spec-summary {
    display: grid;
    gap: 10px;
    margin-top: 24px;
}

.spec-summary article {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr);
    gap: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 13px;
}

.spec-summary strong {
    color: var(--accent-dark);
}

.spec-summary span {
    color: var(--muted);
}

.template-downloads {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    gap: 10px;
    align-items: end;
    margin-top: 24px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 16px;
}

.template-downloads h2 {
    margin-bottom: 6px;
    font-size: 22px;
}

.template-downloads p:last-child {
    margin-bottom: 0;
    color: var(--muted);
}

.info-block h2 {
    font-size: 22px;
}

.check-list {
    display: grid;
    gap: 8px;
}

.check-list li {
    padding-left: 24px;
    position: relative;
}

.check-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55em;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--green);
}

.quote-card {
    position: sticky;
    top: 132px;
}

.quote-card-head h2 {
    margin-bottom: 12px;
}

.quote-card-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    margin-bottom: 14px;
}

.quote-card-steps span {
    display: grid;
    place-items: center;
    min-height: 34px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    font-weight: 900;
    text-align: center;
}

.config-summary {
    display: grid;
    gap: 4px;
    margin-bottom: 14px;
    border: 1px solid rgba(0, 123, 132, .2);
    border-radius: 8px;
    background: #edf9f8;
    padding: 12px;
}

.config-summary strong,
.config-summary span {
    display: block;
}

.config-summary strong {
    color: var(--accent-dark);
    font-size: 13px;
}

.config-summary span {
    color: #33404a;
    font-weight: 850;
}

.field {
    display: grid;
    gap: 6px;
    margin-bottom: 14px;
}

label {
    font-weight: 850;
}

select,
input,
textarea {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 9px 11px;
    font: inherit;
    background: white;
}

textarea {
    resize: vertical;
}

.field small {
    color: var(--muted);
}

.field-pair > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.quantity-presets {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin: -4px 0 14px;
}

.quantity-presets.wide {
    grid-template-columns: repeat(6, 1fr);
}

.quantity-presets button {
    min-height: 36px;
    border-color: var(--line);
    background: white;
    color: var(--ink);
}

.quantity-presets button.is-active,
.product-tier-grid button.is-active {
    border-color: var(--accent-dark);
    background: #dff4f2;
    box-shadow: inset 0 0 0 1px rgba(0, 123, 132, .18);
}

.product-tier-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: -4px 0 14px;
}

.product-tier-grid button {
    min-height: 74px;
    display: grid;
    align-content: center;
    justify-items: start;
    gap: 3px;
    border-color: var(--line);
    background: white;
    color: var(--ink);
    padding: 10px;
    text-align: left;
    white-space: normal;
}

.product-tier-grid button:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.product-tier-grid span,
.product-tier-grid strong,
.product-tier-grid em {
    display: block;
}

.product-tier-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
}

.product-tier-grid strong {
    color: var(--hot);
    font-size: 18px;
}

.product-tier-grid em {
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}

.price-total {
    font-size: 38px;
    font-weight: 950;
    color: var(--hot);
}

.quote-note {
    display: grid;
    gap: 4px;
    margin-bottom: 14px;
    border: 1px solid #f0d783;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
    padding: 12px;
}

.quote-note strong,
.quote-note span {
    display: block;
}

.quote-note span {
    font-size: 13px;
}

.quote-proof-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}

.quote-proof-stack span {
    display: flex;
    align-items: center;
    min-height: 34px;
    border: 1px solid rgba(22, 163, 74, .22);
    border-radius: 6px;
    background: rgba(22, 163, 74, .08);
    color: #245337;
    font-size: 12px;
    font-weight: 900;
    padding: 7px 9px;
}

.quote-proof-stack span::before {
    content: "";
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    margin-right: 7px;
    border-radius: 999px;
    background: var(--green);
}

.muted {
    color: var(--muted);
}

.breakdown {
    display: grid;
    gap: 6px;
}

.breakdown li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid var(--line);
    padding-bottom: 6px;
}

.product-series-switcher,
.product-service-addons {
    margin-top: clamp(34px, 6vw, 68px);
}

.product-bundle-builder {
    margin-top: clamp(34px, 6vw, 68px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(16px, 3vw, 24px);
}

.product-bundle-visual {
    position: relative;
    min-height: clamp(260px, 30vw, 420px);
    margin: 0 0 18px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 14px 34px rgba(23, 33, 43, .08);
}

.product-bundle-visual img {
    width: 100%;
    height: 100%;
    min-height: clamp(260px, 30vw, 420px);
    display: block;
    object-fit: cover;
}

.product-bundle-visual figcaption {
    position: absolute;
    left: 14px;
    bottom: 14px;
    border-radius: 999px;
    background: rgba(23, 33, 43, .84);
    color: white;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 900;
}

.product-bundle-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, .44fr) auto;
    gap: 18px;
    align-items: end;
}

.product-bundle-head h2,
.product-bundle-head p {
    margin-bottom: 0;
}

.product-bundle-head > div {
    max-width: 900px;
}

.product-bundle-head > div > p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.product-bundle-head nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.product-bundle-head nav a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: white;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.product-bundle-preview {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
    align-self: stretch;
}

.product-bundle-preview a {
    position: relative;
    min-width: 0;
    min-height: 84px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    text-decoration: none;
}

.product-bundle-preview img {
    width: 100%;
    height: 100%;
    min-height: 84px;
    display: block;
    object-fit: cover;
}

.product-bundle-preview span {
    position: absolute;
    right: 5px;
    bottom: 5px;
    left: 5px;
    overflow: hidden;
    border-radius: 5px;
    background: rgba(255, 255, 255, .92);
    color: var(--accent-dark);
    padding: 4px 5px;
    font-size: 11px;
    font-weight: 950;
    line-height: 1.1;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-bundle-grid {
    display: grid;
    grid-template-columns: minmax(240px, .78fr) repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.product-bundle-main,
.product-bundle-card {
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.product-bundle-main {
    display: grid;
    align-content: start;
    gap: 10px;
    padding: 14px;
}

.product-bundle-main img {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.product-bundle-main span {
    justify-self: start;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 950;
}

.product-bundle-main h3,
.product-bundle-main p {
    margin-bottom: 0;
}

.product-bundle-main p {
    color: var(--muted);
    font-size: 14px;
}

.product-bundle-main strong {
    color: var(--hot);
    font-size: 22px;
}

.product-bundle-media {
    position: relative;
    display: block;
    min-height: 148px;
    background: var(--panel-2);
    text-decoration: none;
}

.product-bundle-media img {
    width: 100%;
    height: 156px;
    display: block;
    object-fit: cover;
}

.product-bundle-media span {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 10px;
    display: inline-flex;
    justify-content: center;
    border-radius: 6px;
    background: rgba(255, 255, 255, .94);
    color: var(--accent-dark);
    padding: 6px 8px;
    font-size: 12px;
    font-weight: 950;
}

.product-bundle-body {
    display: grid;
    gap: 10px;
    padding: 14px;
}

.product-bundle-body h3,
.product-bundle-body p {
    margin-bottom: 0;
}

.product-bundle-body > p:not(.eyebrow) {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.product-bundle-form {
    display: grid;
    gap: 8px;
    border-top: 1px solid var(--line);
    padding-top: 10px;
}

.product-bundle-form label {
    display: grid;
    gap: 6px;
    color: var(--muted);
    font-size: 12px;
}

.product-bundle-form label span {
    font-weight: 900;
}

.product-bundle-form button {
    min-height: 38px;
    border: 0;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    padding: 0 12px;
    font: inherit;
    font-weight: 950;
    cursor: pointer;
}

.product-bundle-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.product-bundle-actions a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--accent-dark);
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.series-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.series-grid article {
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
    overflow: hidden;
}

.series-grid article.is-current {
    border-color: var(--accent-dark);
    box-shadow: 0 12px 32px rgba(0, 123, 132, .15);
}

.series-grid a {
    display: grid;
    gap: 10px;
    height: 100%;
    color: inherit;
    padding: 12px;
}

.series-grid img {
    width: 100%;
    aspect-ratio: 5 / 3;
    border-radius: 6px;
    object-fit: cover;
    background: var(--panel-2);
}

.series-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff1d8;
    color: #7a4a08;
    font-size: 12px;
    font-weight: 950;
    padding: 5px 9px;
}

.series-grid article.is-current span {
    background: #dff4f2;
    color: var(--accent-dark);
}

.series-grid h3 {
    margin-bottom: 0;
    font-size: 20px;
}

.series-grid p {
    color: var(--muted);
}

.series-grid ul {
    display: grid;
    gap: 6px;
    margin-top: auto;
}

.series-grid li {
    display: flex;
    gap: 7px;
    color: #33404a;
    font-size: 13px;
}

.series-grid li::before {
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 auto;
    margin-top: .45em;
    border-radius: 999px;
    background: var(--accent);
}

.series-grid strong {
    color: var(--hot);
    font-size: 18px;
}

.product-aftercare {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 42px;
}

.product-aftercare article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 20px;
}

.product-matrix-shop {
    display: grid;
    grid-template-columns: minmax(320px, .76fr) minmax(0, 1.24fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(34px, 6vw, 70px);
}

.product-matrix-visual {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #e9f5f4;
}

.product-matrix-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-matrix-visual figcaption {
    position: absolute;
    left: 16px;
    bottom: 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .9);
    color: var(--accent-dark);
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 950;
}

.product-matrix-content {
    display: grid;
    gap: 12px;
    align-content: start;
}

.product-matrix-toolbar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.product-matrix-toolbar article,
.product-matrix-notes span {
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: 12px;
}

.product-matrix-toolbar span,
.product-matrix-toolbar strong,
.product-matrix-notes span {
    display: block;
}

.product-matrix-toolbar span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.product-matrix-toolbar strong {
    margin-top: 4px;
    color: var(--ink);
    line-height: 1.25;
}

.product-matrix-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.product-matrix-table {
    min-width: 780px;
}

.product-matrix-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 12px;
    text-transform: uppercase;
}

.product-matrix-table td {
    vertical-align: middle;
}

.product-matrix-table td:first-child strong,
.product-matrix-table td:first-child span {
    display: block;
}

.product-matrix-table td:first-child strong {
    color: var(--accent-dark);
    font-size: 20px;
}

.product-matrix-table td:first-child span {
    color: var(--muted);
    font-size: 12px;
}

.product-matrix-table td:nth-child(2),
.product-matrix-table td:nth-child(4) {
    color: var(--hot);
    font-weight: 950;
}

.product-matrix-actions {
    min-width: 222px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.product-matrix-actions form {
    margin: 0;
}

.product-matrix-actions a,
.product-matrix-actions button {
    min-height: 34px;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 0 8px;
    font: inherit;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    white-space: nowrap;
}

.product-matrix-actions a {
    border: 1px solid var(--line);
    background: #fff;
    color: var(--accent-dark);
}

.product-matrix-actions a.is-active {
    border-color: rgba(0, 167, 181, .38);
    background: #dff4f2;
}

.product-matrix-actions button {
    border: 0;
    background: var(--hot);
    color: white;
    cursor: pointer;
}

.product-matrix-notes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.product-matrix-notes span {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.4;
}

.price-section {
    margin-top: clamp(36px, 6vw, 70px);
}

.product-detail-reference,
.product-faq-section {
    margin-top: clamp(34px, 6vw, 68px);
}

.product-reference-layout {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(320px, .75fr);
    gap: 18px;
    align-items: stretch;
}

.product-spec-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.product-spec-table {
    min-width: 620px;
}

.product-spec-table th,
.product-spec-table td {
    border-bottom: 1px solid var(--line);
    padding: 14px 16px;
    vertical-align: top;
}

.product-spec-table tr:last-child th,
.product-spec-table tr:last-child td {
    border-bottom: 0;
}

.product-spec-table th {
    width: 170px;
    background: var(--panel-2);
    color: var(--accent-dark);
    font-size: 13px;
    text-align: left;
}

.product-spec-table td {
    color: #33404a;
    font-weight: 750;
}

.artwork-handoff-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.artwork-handoff-grid article {
    display: grid;
    gap: 7px;
    align-content: start;
    min-height: 148px;
    border: 1px solid rgba(0, 123, 132, .16);
    border-radius: 8px;
    background: #edf9f8;
    padding: 16px;
}

.artwork-handoff-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.artwork-handoff-grid strong {
    font-size: 18px;
}

.artwork-handoff-grid p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
}

.price-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.price-table {
    min-width: 760px;
}

.price-table th {
    background: var(--panel-2);
    color: #33404a;
    font-size: 13px;
    text-transform: uppercase;
}

.price-table td:first-child {
    font-weight: 950;
}

.price-table td:nth-child(2),
.price-table td:nth-child(4) {
    color: var(--hot);
    font-weight: 900;
}

.price-table-actions {
    display: grid;
    grid-template-columns: minmax(118px, 1.2fr) repeat(2, minmax(64px, .7fr));
    gap: 7px;
    min-width: 270px;
}

.price-ladder-cart-form {
    margin: 0;
}

.price-ladder-cart-form button,
.price-table-actions a {
    min-height: 34px;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    padding: 0 9px;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.price-ladder-cart-form button {
    border: 0;
    background: var(--hot);
    color: white;
    cursor: pointer;
}

.price-table-actions a {
    border: 1px solid var(--line);
    background: white;
    color: var(--accent-dark);
}

.price-table-actions a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

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

.product-specs article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 22px;
}

.product-faq-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.product-faq-grid article {
    min-height: 178px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.product-faq-grid h3 {
    margin-bottom: 8px;
    font-size: 18px;
}

.product-faq-grid p {
    color: var(--muted);
    font-size: 14px;
}

.product-buying-guide {
    margin-top: clamp(34px, 6vw, 68px);
}

.product-guide-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.product-guide-grid article {
    display: grid;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.product-guide-grid article > span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.product-guide-grid h3,
.product-guide-grid p {
    margin-bottom: 0;
}

.product-guide-grid ul {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-guide-grid li {
    border-top: 1px solid var(--line);
    padding-top: 6px;
    color: #33404a;
    font-size: 14px;
    font-weight: 850;
}

.product-guide-grid p {
    color: var(--muted);
    font-size: 14px;
}

.addon-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.addon-grid article {
    display: grid;
    gap: 10px;
    align-content: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.addon-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.addon-grid h3 {
    margin-bottom: 0;
    font-size: 20px;
}

.addon-grid strong {
    color: var(--hot);
    font-size: 18px;
}

.addon-grid p {
    color: var(--muted);
}

.addon-grid .button {
    align-self: end;
    justify-self: start;
}

.related-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.checkout-hero {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
}

.checkout-visual {
    margin: 0;
    min-height: 400px;
    overflow: hidden;
    border-radius: 8px;
    background: var(--panel);
    box-shadow: var(--shadow);
}

.checkout-visual img {
    width: 100%;
    height: 100%;
    min-height: 400px;
    object-fit: cover;
}

.checkout-progress {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.checkout-progress article {
    min-height: 140px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.checkout-progress span,
.checkout-progress strong,
.checkout-progress p {
    display: block;
}

.checkout-progress span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.checkout-progress strong {
    margin-top: 6px;
}

.checkout-progress p {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.checkout-command-bar {
    display: grid;
    grid-template-columns: minmax(0, .45fr) minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin-top: clamp(24px, 4vw, 42px);
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.checkout-command-bar h2 {
    margin-bottom: 0;
    font-size: 24px;
}

.checkout-command-bar nav {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.checkout-command-bar nav a {
    min-width: 0;
    min-height: 58px;
    display: grid;
    align-content: center;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 7px;
    background: #edf9f8;
    padding: 8px 10px;
    text-decoration: none;
}

.checkout-command-bar nav a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.checkout-command-bar nav span,
.checkout-command-bar nav strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.checkout-command-bar nav span {
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.checkout-command-bar nav strong {
    color: #33404a;
    font-size: 13px;
}

.checkout-decision-board {
    margin-top: clamp(34px, 6vw, 70px);
}

.checkout-decision-head {
    max-width: none;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: end;
}

.checkout-decision-head p:last-child {
    color: var(--muted);
}

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

.checkout-decision-grid article {
    display: grid;
    gap: 10px;
    align-content: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.checkout-decision-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.checkout-decision-grid h3,
.checkout-decision-grid p {
    margin-bottom: 0;
}

.checkout-decision-grid h3 {
    font-size: 20px;
}

.checkout-decision-grid p {
    color: var(--muted);
    font-size: 14px;
}

.checkout-decision-grid ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 2px 0 0;
    padding: 0;
    list-style: none;
}

.checkout-decision-grid li {
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 8px;
    font-size: 12px;
    font-weight: 900;
}

.checkout-support-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.checkout-support-strip a {
    display: grid;
    gap: 5px;
    min-height: 88px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--ink);
    color: white;
    padding: 14px;
    text-decoration: none;
}

.checkout-support-strip a:hover {
    border-color: var(--yellow);
}

.checkout-support-strip strong,
.checkout-support-strip span {
    display: block;
}

.checkout-support-strip strong {
    color: var(--yellow);
    font-size: 15px;
}

.checkout-support-strip span {
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
    line-height: 1.45;
}

.checkout-handoff-os {
    display: grid;
    grid-template-columns: minmax(280px, .42fr) minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
    margin-top: clamp(28px, 5vw, 56px);
}

.checkout-handoff-lead {
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #edf9f8;
    padding: clamp(18px, 3vw, 28px);
}

.checkout-handoff-lead h2,
.checkout-handoff-lead p {
    margin: 0;
}

.checkout-handoff-lead p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
    line-height: 1.65;
}

.checkout-handoff-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.checkout-handoff-grid a {
    display: grid;
    gap: 7px;
    align-content: start;
    min-height: 172px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    padding: 16px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.checkout-handoff-grid a:hover {
    border-color: var(--accent);
    background: #f8fcfc;
}

.checkout-handoff-grid span,
.checkout-handoff-grid strong,
.checkout-handoff-grid em,
.checkout-handoff-grid b {
    display: block;
}

.checkout-handoff-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.checkout-handoff-grid strong {
    font-size: 18px;
    line-height: 1.25;
}

.checkout-handoff-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.checkout-handoff-grid b {
    align-self: end;
    margin-top: auto;
    color: var(--hot);
    font-size: 13px;
}

.checkout-workbench {
    grid-template-columns: minmax(320px, 430px) minmax(0, 1fr);
    margin-top: clamp(38px, 7vw, 76px);
}

.checkout-sidebar {
    position: sticky;
    top: 132px;
    display: grid;
    gap: 14px;
}

.checkout-order-card {
    display: grid;
    gap: 14px;
}

.checkout-item-list {
    display: grid;
    gap: 10px;
}

.checkout-item-list article {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 10px;
}

.checkout-item-list img {
    width: 64px;
    height: 48px;
    border-radius: 6px;
    object-fit: cover;
    background: white;
}

.checkout-item-list strong,
.checkout-item-list span,
.checkout-item-list em {
    display: block;
}

.checkout-item-list span {
    color: var(--muted);
    font-size: 12px;
}

.checkout-item-list em {
    color: var(--hot);
    font-style: normal;
    font-weight: 950;
    white-space: nowrap;
}

.checkout-readiness {
    border: 1px solid #f0d783;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
    padding: 18px;
}

.checkout-readiness .eyebrow {
    color: #92671f;
}

.checkout-readiness h2 {
    font-size: 22px;
}

.checkout-aftercare-card {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    border: 1px solid rgba(91, 68, 32, .18);
    border-radius: 8px;
    background: white;
    padding: 14px;
}

.checkout-aftercare-card h2 {
    margin-bottom: 0;
    font-size: 22px;
}

.checkout-aftercare-card article {
    display: grid;
    gap: 4px;
    border: 1px solid #f0d783;
    border-radius: 7px;
    background: #fff8df;
    padding: 10px;
}

.checkout-aftercare-card strong,
.checkout-aftercare-card span {
    display: block;
}

.checkout-aftercare-card span {
    color: #6e562d;
    font-size: 13px;
    line-height: 1.45;
}

.payment-hero {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(360px, 1.05fr);
    gap: clamp(24px, 5vw, 56px);
    align-items: center;
}

.payment-check-card,
.payment-flow-card {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 20px;
    box-shadow: 0 14px 34px rgba(23, 33, 43, .07);
}

.payment-check-card h2,
.payment-flow-card h2 {
    font-size: 24px;
}

.payment-hero-console {
    display: grid;
    gap: 12px;
}

.payment-visual {
    height: clamp(300px, 32vw, 420px);
}

.payment-stat-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.payment-stat-strip article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.payment-stat-strip strong,
.payment-stat-strip span {
    display: block;
}

.payment-stat-strip strong {
    color: var(--hot);
    font-size: 30px;
    line-height: 1;
}

.payment-stat-strip span {
    margin-top: 5px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.payment-route-board {
    margin-top: clamp(32px, 5vw, 62px);
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #e9f5f4;
    padding: clamp(18px, 4vw, 30px);
}

.payment-route-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .75fr);
    gap: 18px;
    align-items: end;
}

.payment-route-head h2,
.payment-route-head p {
    margin-bottom: 0;
}

.payment-route-head p:not(.eyebrow) {
    margin-top: 8px;
    color: #48656b;
}

.payment-route-head form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 12px;
}

.payment-route-head label {
    display: grid;
    gap: 5px;
    color: #48656b;
    font-size: 12px;
    font-weight: 900;
}

.payment-route-head input {
    min-width: 0;
    min-height: 38px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 10px;
    font: inherit;
}

.payment-route-head button {
    grid-column: 1 / -1;
    min-height: 40px;
    border: 0;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    font-weight: 950;
    cursor: pointer;
}

.payment-route-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.payment-route-grid a {
    min-height: 180px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: white;
    padding: 15px;
    text-decoration: none;
}

.payment-route-grid span,
.payment-route-grid strong,
.payment-route-grid em,
.payment-route-grid b {
    display: block;
}

.payment-route-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff3e9;
    color: var(--hot);
    padding: 6px 9px;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.payment-route-grid strong {
    color: var(--ink);
    font-size: 17px;
    line-height: 1.25;
}

.payment-route-grid em {
    color: var(--muted);
    font-style: normal;
}

.payment-route-grid b {
    margin-top: auto;
    color: var(--accent-dark);
    font-size: 13px;
}

.payment-command-center {
    display: grid;
    gap: 18px;
    margin-top: clamp(32px, 5vw, 62px);
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #fff8df;
    padding: clamp(20px, 4vw, 34px);
}

.payment-command-head {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(360px, .95fr);
    gap: 20px;
    align-items: end;
}

.payment-command-head h2,
.payment-command-head p {
    margin: 0;
}

.payment-command-head h2 {
    margin-top: 6px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.04;
}

.payment-command-head p:not(.eyebrow) {
    margin-top: 10px;
    color: #6e562d;
}

.payment-command-head nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.payment-command-head nav a {
    display: grid;
    gap: 4px;
    align-content: center;
    min-height: 74px;
    border: 1px solid rgba(167, 118, 8, .24);
    border-radius: 8px;
    background: white;
    padding: 10px;
    text-align: center;
    text-decoration: none;
}

.payment-command-head nav a:hover {
    border-color: #d49a17;
    color: #7a5510;
}

.payment-command-head nav span,
.payment-command-head nav strong {
    display: block;
}

.payment-command-head nav span {
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    line-height: 1.25;
    text-transform: uppercase;
}

.payment-command-head nav strong {
    color: #6e562d;
    font-size: 14px;
    line-height: 1.25;
}

.payment-proof-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.payment-proof-grid article {
    border: 1px solid rgba(167, 118, 8, .18);
    border-radius: 8px;
    background: rgba(255, 255, 255, .78);
    padding: 15px;
}

.payment-proof-grid strong,
.payment-proof-grid p {
    display: block;
    margin: 0;
}

.payment-proof-grid p {
    margin-top: 7px;
    color: #6e562d;
    font-size: 14px;
    line-height: 1.5;
}

.payment-method-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(28px, 5vw, 52px);
}

.payment-method-grid article {
    min-height: 160px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #edf9f8;
    padding: 18px;
}

.payment-method-grid span,
.payment-method-grid strong,
.payment-method-grid p {
    display: block;
}

.payment-method-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.payment-method-grid strong {
    margin-top: 7px;
    font-size: 22px;
}

.payment-method-grid p {
    margin: 9px 0 0;
    color: #406468;
    font-size: 14px;
    line-height: 1.55;
}

.payment-method-grid small {
    display: block;
    margin-top: 10px;
    color: var(--accent-dark);
    font-weight: 850;
    line-height: 1.45;
}

.media-upload-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
    gap: 18px;
    align-items: start;
    margin-top: clamp(24px, 4vw, 42px);
}

.media-upload-form {
    display: grid;
    gap: 14px;
}

.media-upload-form h2,
.media-upload-form p {
    margin: 0;
}

.media-upload-form h2 {
    margin-top: 6px;
}

.media-upload-form p:not(.eyebrow) {
    margin-top: 8px;
    color: #406468;
    line-height: 1.55;
}

.media-upload-form button {
    width: max-content;
    min-height: 44px;
    border: 0;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    padding: 0 16px;
    font: inherit;
    font-weight: 950;
    cursor: pointer;
}

.media-upload-recent h2,
.media-upload-recent p {
    margin: 0;
}

.media-upload-recent h2 {
    margin-top: 6px;
}

.media-recent-list {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.media-recent-list article {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid rgba(20, 107, 117, .16);
    border-radius: 8px;
    background: #f7fbfb;
    padding: 8px;
}

.media-recent-list img {
    width: 78px;
    height: 62px;
    border-radius: 6px;
    object-fit: cover;
}

.media-recent-list span,
.media-recent-list strong,
.media-recent-list em,
.media-recent-list small {
    display: block;
    min-width: 0;
}

.media-recent-list strong {
    overflow: hidden;
    color: #24333c;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.media-recent-list em,
.media-recent-list small {
    overflow-wrap: anywhere;
    color: #55777b;
    font-size: 12px;
    font-style: normal;
    line-height: 1.35;
}

.media-library-board {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(28px, 5vw, 52px);
}

.media-library-board article {
    display: grid;
    grid-template-columns: minmax(160px, .8fr) minmax(0, 1.2fr);
    overflow: hidden;
    border: 1px solid rgba(20, 107, 117, .18);
    border-radius: 8px;
    background: #f7fbfb;
}

.media-library-preview {
    min-height: 220px;
    margin: 0;
    background: #dcefeb;
}

.media-library-preview img {
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
}

.media-library-preview span {
    display: grid;
    min-height: 220px;
    place-items: center;
    color: #406468;
    font-size: 13px;
    font-weight: 850;
}

.media-library-copy {
    padding: 18px;
}

.media-library-copy span,
.media-library-copy h2,
.media-library-copy p,
.media-library-copy small {
    display: block;
    margin: 0;
}

.media-library-copy span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.media-library-copy h2 {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.18;
}

.media-library-copy p,
.media-library-copy small,
.media-library-copy dd {
    color: #406468;
    font-size: 14px;
    line-height: 1.5;
}

.media-library-copy p {
    margin-top: 8px;
}

.media-library-copy small {
    margin-top: 10px;
    overflow-wrap: anywhere;
    font-weight: 800;
}

.media-library-copy dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 14px 0 0;
}

.media-library-copy dl div {
    border: 1px solid rgba(20, 107, 117, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .7);
    padding: 10px;
}

.media-library-copy dt,
.media-library-copy dd {
    margin: 0;
}

.media-library-copy dt {
    color: #55777b;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.media-library-direction {
    border-top: 1px solid rgba(20, 107, 117, .14);
    padding-top: 12px;
}

@media (max-width: 980px) {
    .media-upload-panel,
    .media-library-board {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .media-library-board article {
        grid-template-columns: 1fr;
    }

    .media-library-preview,
    .media-library-preview img,
    .media-library-preview span {
        min-height: 190px;
    }

    .media-library-copy dl {
        grid-template-columns: 1fr;
    }

    .media-upload-form button {
        width: 100%;
    }
}

.payment-gateway-readiness {
    margin-top: clamp(30px, 5vw, 60px);
}

.payment-gateway-head {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
}

.payment-gateway-head h2,
.payment-gateway-head p {
    margin-bottom: 0;
}

.payment-gateway-head p:not(.eyebrow) {
    margin-top: 8px;
    color: var(--muted);
}

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

.payment-gateway-grid article {
    min-height: 164px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.payment-gateway-grid span,
.payment-gateway-grid strong,
.payment-gateway-grid p {
    display: block;
}

.payment-gateway-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 9px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.payment-gateway-grid strong {
    color: #283640;
    font-size: 18px;
    line-height: 1.25;
}

.payment-gateway-grid p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.supplier-margin-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .42fr);
    gap: 18px;
    align-items: start;
    margin-top: 24px;
}

.supplier-margin-tool {
    box-shadow: none;
}

.supplier-margin-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.supplier-margin-actions button {
    min-height: 40px;
    border: 1px solid rgba(7, 103, 104, .2);
    background: #edf9f8;
    color: var(--accent-dark);
}

.supplier-margin-summary {
    display: grid;
    gap: 10px;
}

.supplier-margin-summary article {
    display: grid;
    gap: 6px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.supplier-margin-summary span,
.supplier-margin-summary strong,
.supplier-margin-summary p {
    display: block;
}

.supplier-margin-summary span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.supplier-margin-summary strong {
    color: var(--ink);
    font-size: 24px;
}

.supplier-margin-summary p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
}

.supplier-margin-summary.is-warning article:last-child {
    border-color: rgba(240, 90, 40, .45);
    background: #fff4ee;
}

.supplier-margin-summary.is-warning article:last-child strong {
    color: var(--hot);
}

.supplier-cost-checklist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 24px;
}

.supplier-cost-checklist article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
}

.supplier-cost-entry {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .34fr);
    gap: 18px;
    align-items: start;
    margin-top: clamp(28px, 5vw, 52px);
}

.supplier-cost-form {
    box-shadow: none;
}

.cost-entry-switches {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 14px 0;
}

.cost-entry-switches label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 999px;
    background: #f4fbfb;
    color: var(--accent-dark);
    padding: 9px 12px;
    font-size: 13px;
    font-weight: 850;
}

.supplier-cost-table-panel {
    margin-top: 24px;
    overflow-x: auto;
}

.topic-category-strip,
.topic-feature-grid,
.topic-card-grid,
.topic-article-hero,
.topic-article-layout {
    display: grid;
    gap: 16px;
}

.topic-category-strip {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-top: clamp(28px, 5vw, 52px);
}

.topic-category-strip a {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 12px;
    color: var(--ink);
    font-weight: 900;
    text-align: center;
}

.topic-feature-wall,
.topic-section,
.topic-related-products,
.topic-next-band {
    margin-top: clamp(36px, 6vw, 70px);
}

.topic-feature-wall {
    display: grid;
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
}

.topic-feature-lead {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f5f9fc;
    padding: 22px;
}

.topic-feature-lead h2,
.topic-feature-lead p {
    margin: 0;
}

.topic-feature-lead p:not(.eyebrow) {
    margin-top: 10px;
    color: var(--muted);
    line-height: 1.65;
}

.topic-feature-lead .button {
    margin-top: 18px;
}

.topic-feature-grid,
.topic-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.topic-feature-grid a,
.topic-card-grid article,
.topic-checklist-panel {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.topic-feature-grid a {
    color: var(--ink);
}

.topic-feature-grid img,
.topic-card-media img,
.topic-article-hero figure img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    background: #eaf0f5;
}

.topic-feature-grid span,
.topic-feature-grid strong,
.topic-feature-grid em,
.topic-card-grid .category,
.topic-card-grid h3,
.topic-card-grid p {
    display: block;
    margin: 0;
}

.topic-feature-grid span,
.topic-card-grid .category,
.topic-card-media span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.topic-feature-grid span,
.topic-feature-grid strong,
.topic-feature-grid em,
.topic-card-grid article > div {
    padding: 0 16px;
}

.topic-feature-grid span {
    padding-top: 15px;
}

.topic-feature-grid strong {
    margin-top: 7px;
    font-size: 19px;
    line-height: 1.25;
}

.topic-feature-grid em {
    padding-bottom: 16px;
    margin-top: 9px;
    color: var(--muted);
    font-style: normal;
    line-height: 1.55;
}

.topic-card-media {
    position: relative;
    display: block;
}

.topic-card-media span {
    position: absolute;
    left: 12px;
    bottom: 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    padding: 6px 9px;
}

.topic-card-grid article > div {
    padding-top: 16px;
    padding-bottom: 18px;
}

.topic-card-grid h3 {
    margin-top: 7px;
    font-size: 21px;
}

.topic-card-grid p:not(.category) {
    margin-top: 9px;
    color: var(--muted);
    line-height: 1.55;
}

.topic-card-grid article a:not(.topic-card-media) {
    display: inline-block;
    margin-top: 13px;
    color: var(--accent-dark);
    font-weight: 900;
}

.topic-article-hero {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 440px);
    align-items: stretch;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: clamp(22px, 4vw, 44px);
}

.topic-article-hero figure {
    margin: 0;
}

.topic-article-hero figure img {
    height: 100%;
    min-height: 320px;
    border-radius: 8px;
}

.topic-article-hero figcaption {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
}

.topic-article-layout {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    margin-top: 24px;
    align-items: start;
}

.topic-article-body,
.topic-checklist-panel {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: clamp(20px, 4vw, 34px);
}

.topic-article-body section + section {
    margin-top: 24px;
}

.topic-article-body h2,
.topic-article-body p,
.topic-checklist-panel h2 {
    margin: 0;
}

.topic-article-body p {
    margin-top: 9px;
    color: var(--muted);
    line-height: 1.75;
}

.payment-workbench {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    margin-top: clamp(34px, 6vw, 68px);
}

.payment-flow-card {
    display: grid;
    gap: 12px;
    align-self: start;
}

.payment-check-card.compact {
    box-shadow: none;
}

.payment-check-card.compact strong {
    display: block;
    margin-bottom: 8px;
    color: var(--accent-dark);
}

.payment-flow-card article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 8px 10px;
    align-items: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 12px;
}

.payment-flow-card article span {
    grid-row: span 2;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: var(--ink);
    color: var(--yellow);
    font-size: 13px;
    font-weight: 950;
}

.payment-flow-card article strong,
.payment-flow-card article p {
    display: block;
}

.payment-flow-card article p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.checkout-form {
    margin-top: 0;
}

.checkout-review {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 16px;
    margin-bottom: 20px;
}

.checkout-review h2 {
    margin-bottom: 12px;
    font-size: 24px;
}

.checkout-steps {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.checkout-steps article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
}

.checkout-steps span {
    grid-row: span 2;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 999px;
    background: var(--accent);
    color: white;
    font-weight: 950;
}

.checkout-steps strong,
.checkout-steps p {
    margin: 0;
}

.checkout-steps p {
    color: var(--muted);
    font-size: 14px;
}

.checkout-section {
    border-bottom: 1px solid var(--line);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.checkout-section h2 {
    margin-bottom: 14px;
    font-size: 24px;
}

.checkout-field-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.checkout-upload-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, .72fr);
    gap: 12px;
    align-items: center;
    border: 1px dashed var(--accent);
    border-radius: 8px;
    background: #edf9f8;
    padding: 14px;
    margin-bottom: 14px;
}

.checkout-upload-card strong,
.checkout-upload-card span {
    display: block;
}

.checkout-upload-card span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
}

.mini-flow,
.cart-next {
    display: grid;
    gap: 10px;
}

.mini-flow {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mini-flow article,
.cart-next article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 12px;
}

.mini-flow strong,
.mini-flow span,
.cart-next strong,
.cart-next span {
    display: block;
}

.mini-flow span,
.cart-next span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.cart-next {
    margin-top: 14px;
}

.option-choice {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}

.option-choice.compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.option-choice label {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    padding: 12px;
    cursor: pointer;
}

.option-choice input,
.confirm-check input {
    width: auto;
    min-height: 0;
    margin-top: 4px;
}

.option-choice strong,
.option-choice small {
    display: block;
}

.option-choice small {
    margin-top: 3px;
    color: var(--muted);
    font-weight: 500;
}

.checkout-gateway-reserve {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 12px 0 4px;
}

.checkout-gateway-reserve article {
    min-height: 150px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: #fbfdfd;
    padding: 13px;
}

.checkout-gateway-reserve span,
.checkout-gateway-reserve strong,
.checkout-gateway-reserve p {
    display: block;
}

.checkout-gateway-reserve span {
    justify-self: start;
    border-radius: 999px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.checkout-gateway-reserve strong {
    color: #283640;
    font-size: 16px;
    line-height: 1.25;
}

.checkout-gateway-reserve p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.confirm-check {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    border: 1px solid #f0d783;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
    padding: 12px;
}

.login-layout {
    min-height: 62vh;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
    gap: 32px;
    align-items: center;
}

.login-form {
    margin-top: 0;
}

.login-note,
.alert {
    border-radius: 8px;
    padding: 14px;
}

.login-note {
    max-width: 520px;
    margin-top: 24px;
    border: 1px solid #f0d783;
    background: #fff8df;
    color: #5b4420;
}

.login-note p {
    margin: 6px 0 0;
}

.login-note.compact {
    margin-top: 12px;
    padding: 12px;
}

.customer-login-hero {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(380px, 1.04fr);
    gap: clamp(24px, 5vw, 56px);
    align-items: center;
}

.customer-login-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 18px;
}

.customer-login-actions a {
    display: grid;
    gap: 4px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 12px;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.customer-login-actions span,
.customer-login-actions strong {
    display: block;
}

.customer-login-actions span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.customer-login-actions strong {
    color: var(--accent-dark);
    font-size: 14px;
}

.customer-login-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .78fr);
    gap: 14px;
    align-items: stretch;
}

.customer-login-visual {
    min-height: 420px;
    height: 100%;
}

.customer-login-form {
    align-content: start;
}

.customer-login-form h2 {
    margin-bottom: 14px;
    font-size: 26px;
}

.customer-login-benefits {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(30px, 5vw, 58px);
}

.customer-login-benefits article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.customer-login-benefits strong,
.customer-login-benefits p {
    display: block;
    margin: 0;
}

.customer-login-benefits p {
    margin-top: 7px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.customer-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.customer-nav a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel);
    color: #33404a;
    padding: 0 12px;
    text-decoration: none;
    font-weight: 850;
}

.customer-nav a.active,
.customer-nav a:hover {
    border-color: var(--accent);
    background: #e6f8fa;
    color: var(--accent-dark);
}

.customer-profile {
    align-self: stretch;
}

.customer-command-center {
    display: grid;
    gap: 18px;
    margin-top: clamp(28px, 5vw, 54px);
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #eef8f7;
    padding: clamp(20px, 4vw, 34px);
}

.customer-command-head {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(360px, 1fr);
    gap: 18px;
    align-items: end;
}

.customer-command-head h2,
.customer-command-head p {
    margin: 0;
}

.customer-command-head h2 {
    margin-top: 6px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.04;
}

.customer-command-head p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
}

.customer-command-head nav {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.customer-command-head nav a {
    display: grid;
    gap: 4px;
    align-content: center;
    min-height: 74px;
    border: 1px solid rgba(7, 103, 104, .22);
    border-radius: 8px;
    background: white;
    padding: 10px;
    text-align: center;
    text-decoration: none;
}

.customer-command-head nav a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.customer-command-head nav span,
.customer-command-head nav strong {
    display: block;
}

.customer-command-head nav span {
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    line-height: 1.25;
    text-transform: uppercase;
}

.customer-command-head nav strong {
    color: var(--accent-dark);
    font-size: 14px;
    line-height: 1.25;
}

.customer-queue-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.customer-queue-grid article {
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .78);
    padding: 16px;
}

.customer-queue-grid span,
.customer-queue-grid strong,
.customer-queue-grid p {
    display: block;
    margin: 0;
}

.customer-queue-grid span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.customer-queue-grid strong {
    margin-top: 5px;
    color: var(--hot);
    font-size: 34px;
    line-height: 1;
}

.customer-queue-grid p {
    margin-top: 8px;
    color: #48656b;
    font-size: 13px;
    line-height: 1.45;
}

.customer-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 24px;
}

.customer-metrics article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.customer-metrics span,
.customer-metrics strong,
.customer-metrics em {
    display: block;
}

.customer-metrics span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.customer-metrics strong {
    margin-top: 4px;
    color: var(--hot);
    font-size: 34px;
    line-height: 1;
}

.customer-metrics em {
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
}

.customer-actions {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.customer-actions a {
    display: grid;
    gap: 8px;
    min-height: 124px;
    align-content: start;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.customer-actions a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.customer-actions strong,
.customer-actions span {
    display: block;
}

.customer-actions span {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.dashboard-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 24px;
    align-items: start;
    margin-top: 32px;
}

.ops-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
    gap: 18px;
    align-items: stretch;
    margin-top: 12px;
}

.ops-hero h2,
.ops-hero p,
.ops-margin-card p,
.ops-panel h2,
.ops-panel p {
    margin: 0;
}

.ops-hero .lede {
    max-width: 880px;
}

.ops-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.ops-margin-card {
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #f5fbfa;
    padding: 18px;
}

.ops-margin-card.warning {
    border-color: rgba(240, 90, 40, .32);
    background: #fff2ec;
}

.ops-margin-card.healthy {
    border-color: rgba(33, 166, 107, .34);
    background: #edfaf4;
}

.ops-margin-card span,
.ops-check-grid span,
.ops-metric-grid span,
.ops-order-table span,
.ops-storage-list span,
.ops-storage-list em,
.ops-mini-list span {
    color: var(--muted);
    font-size: 13px;
}

.ops-margin-card strong {
    color: var(--ink);
    font-size: clamp(32px, 5vw, 50px);
    line-height: 1;
}

.ops-margin-card a,
.ops-panel-head a {
    justify-self: start;
    color: var(--accent-dark);
    font-weight: 900;
    text-decoration: none;
}

.ops-metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 20px;
}

.ops-metric-grid a {
    min-height: 132px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    text-decoration: none;
}

.ops-metric-grid a:hover,
.ops-check-grid a:hover,
.ops-storage-list a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.ops-metric-grid strong {
    font-size: 34px;
    line-height: 1;
}

.ops-metric-grid em,
.ops-storage-list em {
    font-style: normal;
}

.ops-command-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
    gap: 18px;
    align-items: start;
    margin-top: 18px;
}

.ops-main-stack,
.ops-side-stack {
    display: grid;
    gap: 14px;
}

.ops-check-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.ops-check-grid a,
.ops-storage-list a,
.ops-mini-list article {
    min-height: 128px;
    display: grid;
    align-content: start;
    gap: 7px;
    border: 1px solid rgba(219, 226, 232, .95);
    border-radius: 8px;
    background: #fbfdfe;
    padding: 14px;
    text-decoration: none;
}

.ops-check-grid span {
    justify-self: start;
    border-radius: 999px;
    background: #fff3e9;
    color: var(--hot);
    padding: 5px 8px;
    font-weight: 950;
}

.ops-check-grid strong,
.ops-storage-list strong,
.ops-mini-list strong {
    display: block;
    color: var(--ink);
    font-size: 16px;
    line-height: 1.3;
}

.ops-check-grid p,
.ops-mini-list p {
    color: var(--muted);
    line-height: 1.45;
}

.ops-panel {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
}

.ops-panel-head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.ops-order-table td,
.ops-order-table th {
    vertical-align: top;
}

.ops-order-table a {
    color: var(--accent-dark);
    font-weight: 900;
    text-decoration: none;
}

.ops-warning {
    display: inline-block;
    border-radius: 999px;
    background: #fff2ec;
    color: #9c3412;
    padding: 5px 8px;
    font-size: 12px;
    font-weight: 900;
}

.ops-mini-list,
.ops-storage-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.ops-storage-list a {
    min-height: 104px;
}

.alert {
    margin-bottom: 14px;
    border: 1px solid #f0b1a0;
    background: #fff0ec;
    color: #822d18;
    font-weight: 750;
}

.alert.success {
    border-color: rgba(33, 166, 107, .36);
    background: #e8f8f4;
    color: #13794f;
}

.order-summary {
    margin-top: 22px;
}

.order-summary span {
    color: var(--muted);
}

.order-summary strong {
    display: block;
    margin-top: 6px;
    font-size: 24px;
}

.status-service-hero {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(380px, 1.1fr);
    gap: clamp(24px, 5vw, 58px);
    align-items: center;
}

.status-hero-console {
    display: grid;
    gap: 12px;
}

.status-hero-visual {
    height: clamp(300px, 32vw, 420px);
}

.status-metric-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.status-metric-strip article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 22px rgba(23, 33, 43, .05);
}

.status-metric-strip strong,
.status-metric-strip span {
    display: block;
}

.status-metric-strip strong {
    color: var(--hot);
    font-size: 30px;
    line-height: 1;
}

.status-metric-strip span {
    margin-top: 5px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
}

.status-command-center {
    display: grid;
    gap: 18px;
    margin-top: clamp(32px, 5vw, 62px);
    border: 1px solid rgba(7, 103, 104, .18);
    border-radius: 8px;
    background: #eef8f7;
    padding: clamp(20px, 4vw, 34px);
}

.status-command-head {
    display: grid;
    grid-template-columns: minmax(0, .76fr) minmax(360px, 1fr);
    gap: 20px;
    align-items: end;
}

.status-command-head h2,
.status-command-head p {
    margin: 0;
}

.status-command-head h2 {
    margin-top: 6px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.04;
}

.status-command-head p:not(.eyebrow) {
    margin-top: 10px;
    color: #48656b;
}

.status-command-head nav {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.status-command-head nav a {
    display: grid;
    gap: 4px;
    align-content: center;
    min-height: 72px;
    border: 1px solid rgba(7, 103, 104, .22);
    border-radius: 8px;
    background: white;
    padding: 10px;
    text-align: center;
    text-decoration: none;
}

.status-command-head nav a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.status-command-head nav span,
.status-command-head nav strong {
    display: block;
}

.status-command-head nav span {
    color: var(--hot);
    font-size: 11px;
    font-weight: 950;
    line-height: 1.25;
    text-transform: uppercase;
}

.status-command-head nav strong {
    color: var(--accent-dark);
    font-size: 14px;
    line-height: 1.25;
}

.status-service-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.status-service-panel a {
    min-height: 176px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 18px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.status-service-panel a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.status-service-panel span,
.status-service-panel strong,
.status-service-panel em,
.status-service-panel b {
    display: block;
}

.status-service-panel span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.status-service-panel strong {
    font-size: 20px;
}

.status-service-panel em {
    color: var(--muted);
    font-size: 14px;
    font-style: normal;
}

.status-service-panel b {
    justify-self: start;
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 10px;
    font-size: 13px;
}

.status-readiness-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.status-readiness-grid article {
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .78);
    padding: 16px;
}

.status-readiness-grid strong {
    display: block;
    color: var(--accent-dark);
    font-size: 18px;
}

.status-readiness-grid ul {
    display: grid;
    gap: 6px;
    margin: 10px 0 0;
    padding-left: 18px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.public-status-flow {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(30px, 5vw, 56px);
}

.public-status-flow article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.public-status-flow span,
.public-status-flow strong,
.public-status-flow p {
    display: block;
}

.public-status-flow span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
}

.public-status-flow strong {
    margin-top: 6px;
    font-size: 18px;
}

.public-status-flow p {
    margin: 7px 0 0;
    color: var(--muted);
    font-size: 14px;
}

.status-query-form h2 {
    margin-bottom: 14px;
    font-size: 24px;
}

.status-query-help {
    display: grid;
    gap: 6px;
    margin-top: 14px;
    border: 1px solid #f0d783;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
    padding: 14px;
}

.status-query-help strong,
.status-query-help span,
.status-query-help a {
    display: block;
}

.status-query-help span {
    font-size: 13px;
}

.status-query-help a {
    justify-self: start;
    color: var(--accent-dark);
    font-weight: 900;
}

.status-live-handoff {
    margin-top: 22px;
}

.status-live-handoff .section-head {
    max-width: none;
}

.status-live-handoff .section-head p:not(.eyebrow) {
    color: var(--muted);
}

.status-live-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
}

.status-live-grid a,
.status-live-grid article {
    display: grid;
    gap: 7px;
    align-content: start;
    min-height: 160px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    padding: 16px;
    text-decoration: none;
    box-shadow: 0 10px 28px rgba(23, 33, 43, .05);
}

.status-live-grid a:hover {
    border-color: var(--accent);
    background: #f8fcfc;
}

.status-live-grid span,
.status-live-grid strong,
.status-live-grid em,
.status-live-grid b {
    display: block;
}

.status-live-grid span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.status-live-grid strong {
    font-size: 18px;
    line-height: 1.25;
}

.status-live-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.5;
}

.status-live-grid b {
    align-self: end;
    margin-top: auto;
    color: var(--hot);
    font-size: 13px;
}

.status-live-grid form {
    align-self: end;
    margin-top: auto;
}

.status-live-grid button {
    min-height: 36px;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 12px;
    font-size: 13px;
    font-weight: 900;
}

.status-board {
    margin-top: 24px;
}

.support-checklist {
    align-self: stretch;
}

.support-visual {
    height: clamp(260px, 28vw, 360px);
}

.support-hub-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(30px, 5vw, 56px);
}

.support-hub-card {
    min-height: 220px;
    display: grid;
    align-content: start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 20px;
    text-decoration: none;
    box-shadow: 0 10px 26px rgba(23, 33, 43, .06);
}

.support-hub-card:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.support-hub-card span,
.support-hub-card strong,
.support-hub-card em,
.support-hub-card b {
    display: block;
}

.support-hub-card span {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.support-hub-card strong {
    font-size: 20px;
}

.support-hub-card em {
    color: var(--muted);
    font-size: 14px;
    font-style: normal;
    line-height: 1.65;
}

.support-hub-card b {
    justify-self: start;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 12px;
    font-size: 13px;
}

.support-process {
    margin-top: clamp(36px, 6vw, 70px);
}

.support-process-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}

.support-process-grid a {
    min-height: 190px;
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff8df 0%, #ffffff 100%);
    padding: 16px;
    text-decoration: none;
}

.support-process-grid a:hover {
    border-color: #e5b83e;
    color: #7a5510;
}

.support-process-grid span,
.support-process-grid strong,
.support-process-grid em {
    display: block;
}

.support-process-grid span {
    color: #a97608;
    font-size: 12px;
    font-weight: 950;
}

.support-process-grid strong {
    font-size: 17px;
}

.support-process-grid em {
    color: var(--muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.55;
}

.support-action-band {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(420px, 1fr);
    gap: clamp(22px, 4vw, 46px);
    align-items: start;
    margin-top: clamp(36px, 6vw, 70px);
    border: 1px solid rgba(7, 103, 104, .2);
    border-radius: 8px;
    background: #effaf8;
    padding: clamp(22px, 4vw, 38px);
}

.support-action-band h2 {
    margin: 6px 0 0;
}

.support-action-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.support-action-grid a {
    min-height: 128px;
    display: grid;
    gap: 7px;
    border: 1px solid rgba(7, 103, 104, .16);
    border-radius: 8px;
    background: var(--panel);
    padding: 16px;
    text-decoration: none;
}

.support-action-grid a:hover {
    border-color: var(--accent);
    color: var(--accent-dark);
}

.support-action-grid strong,
.support-action-grid span {
    display: block;
}

.support-action-grid span {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.support-faq-layout {
    margin-top: clamp(36px, 6vw, 70px);
}

.self-service-panel {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.self-service-panel article {
    display: grid;
    align-content: start;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.self-service-panel strong,
.self-service-panel span,
.self-service-panel a {
    display: block;
}

.self-service-panel span {
    color: var(--muted);
    font-size: 13px;
}

.self-service-panel a,
.self-service-panel button {
    justify-self: start;
    min-height: 34px;
    border: 1px solid var(--accent);
    border-radius: 6px;
    background: #edf9f8;
    color: var(--accent-dark);
    padding: 0 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
}

.status-timeline {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.status-timeline article {
    position: relative;
    display: grid;
    gap: 12px;
    min-height: 190px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: 14px;
    box-shadow: 0 8px 24px rgba(23, 33, 43, .05);
}

.status-timeline article > span {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: var(--panel-2);
    border: 2px solid var(--line);
}

.status-timeline article > span::after {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--muted);
}

.status-timeline strong,
.status-timeline p,
.status-timeline small {
    display: block;
}

.status-timeline p {
    margin: 6px 0;
    color: var(--ink);
    font-weight: 750;
}

.status-timeline small {
    color: var(--muted);
    line-height: 1.45;
}

.status-timeline article.done {
    border-color: rgba(33, 166, 107, .45);
}

.status-timeline article.done > span {
    border-color: var(--green);
    background: #e8f8f4;
}

.status-timeline article.done > span::after {
    background: var(--green);
}

.status-timeline article.current {
    border-color: rgba(0, 167, 181, .55);
    box-shadow: 0 12px 30px rgba(0, 167, 181, .13);
}

.status-timeline article.current > span {
    border-color: var(--accent);
    background: #e6f8fa;
}

.status-timeline article.current > span::after {
    background: var(--accent);
}

.status-timeline article.issue {
    border-color: rgba(240, 90, 40, .55);
}

.status-timeline article.issue > span {
    border-color: var(--hot);
    background: #fff0ec;
}

.status-timeline article.issue > span::after {
    background: var(--hot);
}

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

.next-actions article {
    display: grid;
    gap: 8px;
    border: 1px solid #f0d783;
    border-radius: 8px;
    background: #fff8df;
    color: #5b4420;
    padding: 14px;
}

.next-actions strong,
.next-actions span,
.next-actions a {
    display: block;
}

.next-actions a {
    justify-self: start;
    margin-top: 4px;
    color: var(--accent-dark);
    font-weight: 900;
}

.app-shell {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 22px;
}

.sidebar {
    display: grid;
    align-content: start;
    gap: 8px;
}

table {
    width: 100%;
    border-collapse: collapse;
}

th,
td {
    border-bottom: 1px solid var(--line);
    padding: 10px;
    text-align: left;
}

.floating-tools {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 30;
    width: 288px;
    border: 1px solid rgba(0, 167, 181, .28);
    border-radius: 8px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 18px 48px rgba(23, 33, 43, .18);
    backdrop-filter: blur(14px);
    padding: 10px;
}

/* V1 deploy: keep long screenshots and slow mobile browsers from duplicating sticky toolbars. */
.site-header,
.quick-order-aside,
.direct-request-copy,
.faq-sidebar,
.service-sidebar,
.catalog-command-bar,
.catalog-sidebar,
.product-order-dock,
.quote-card,
.checkout-sidebar {
    position: static;
    top: auto;
}

.floating-tools {
    position: static;
    width: min(100%, 288px);
    margin: 24px auto 0;
}

.feature-grid,
.guide-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
    margin: clamp(24px, 4vw, 42px) 0;
}

.feature-grid article,
.guide-grid article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    padding: clamp(18px, 3vw, 26px);
    box-shadow: 0 10px 28px rgba(23, 33, 43, .06);
}

.feature-grid strong,
.guide-grid strong {
    display: block;
    margin-bottom: 8px;
    color: var(--ink);
    font-size: 18px;
}

.feature-grid p,
.guide-grid p {
    margin: 0;
    color: var(--muted);
}

/* Task 1 e-banner-style storefront IA: white customer-facing front end with one job per section. */
.bp-storefront-header {
    background: #fff;
}

.bp-top-utility {
    justify-content: space-between;
    background: #fff;
}

.bp-top-utility nav,
.bp-primary-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
}

.bp-main-header {
    grid-template-columns: auto minmax(180px, 1fr) auto;
    background: #fff;
}

.bp-hotline {
    display: grid;
    gap: 2px;
    color: var(--muted);
    font-size: 13px;
}

.bp-hotline strong {
    color: #c2410c;
    font-size: 18px;
}

.bp-primary-nav {
    padding: 10px clamp(18px, 4vw, 56px);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: #fff;
}

.bp-primary-nav a,
.bp-mega-trigger summary {
    color: var(--ink);
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.bp-mega-trigger {
    position: relative;
}

.bp-mega-trigger[open] .bp-mega-menu {
    display: grid;
}

.bp-mega-menu {
    position: absolute;
    left: 0;
    top: calc(100% + 10px);
    z-index: 40;
    display: none;
    width: min(900px, 92vw);
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: var(--shadow);
    padding: 18px;
}

.bp-mega-menu article,
.bp-mega-menu article a {
    display: grid;
    gap: 6px;
}

.bp-mega-menu article a {
    color: var(--muted);
    text-decoration: none;
}

.bp-mega-heading {
    color: var(--ink) !important;
    font-weight: 800;
}

.bp-home {
    background: #fff;
}

.bp-promo-carousel {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(280px, 420px);
    gap: 18px;
    overflow-x: auto;
    padding: clamp(22px, 4vw, 42px) clamp(18px, 4vw, 56px);
    background: #fff7ed;
    scroll-snap-type: x mandatory;
}

.bp-promo-carousel article {
    position: relative;
    min-height: 300px;
    overflow: hidden;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    background: #fff;
    scroll-snap-align: start;
}

.bp-promo-carousel img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    background: #f8fafc;
}

.bp-promo-carousel article > div {
    display: grid;
    gap: 8px;
    padding: 18px;
}

.bp-promo-carousel span,
.bp-product-card .category {
    color: #c2410c;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.bp-promo-carousel strong {
    font-size: 22px;
    line-height: 1.15;
}

.bp-section {
    padding: clamp(30px, 5vw, 64px) clamp(18px, 4vw, 56px);
}

.bp-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 16px;
}

.bp-category-card {
    display: grid;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 14px;
    color: inherit;
    text-decoration: none;
}

.bp-category-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 6px;
    background: #f8fafc;
}

.bp-category-card span {
    font-size: 18px;
    font-weight: 800;
}

.bp-category-card strong {
    color: #c2410c;
}

.bp-quick-order {
    display: grid;
    grid-template-columns: minmax(220px, .35fr) minmax(0, 1fr);
    gap: 22px;
    padding: clamp(30px, 5vw, 64px) clamp(18px, 4vw, 56px);
    background: #f8fafc;
}

.bp-quick-table {
    display: grid;
    gap: 10px;
}

.bp-quick-table article {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) auto auto;
    gap: 12px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 10px;
}

.bp-quick-table img {
    width: 72px;
    height: 56px;
    object-fit: cover;
    border-radius: 6px;
}

.bp-quick-table span {
    display: block;
    color: var(--muted);
    font-size: 13px;
}

.bp-quick-table b {
    color: #c2410c;
    white-space: nowrap;
}

.bp-clean-product-grid {
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.bp-product-card {
    background: #fff;
}

.bp-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 0 16px 16px;
}

.bp-home .button,
.bp-main-header .button,
.bp-promo-carousel .button,
.bp-card-actions .button,
.bp-business-support .button {
    border-color: #f97316;
    background: #f97316;
    color: #fff;
}

.bp-home .button.secondary,
.bp-card-actions .button.secondary,
.bp-business-support .button.secondary {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.bp-process-band,
.bp-business-support {
    margin-left: clamp(18px, 4vw, 56px);
    margin-right: clamp(18px, 4vw, 56px);
}

.bp-footer-columns {
    background: #17212b;
}

@media (max-width: 760px) {
    .bp-main-header,
    .bp-quick-order,
    .bp-quick-table article {
        grid-template-columns: 1fr;
    }

    .bp-quick-table article {
        align-items: stretch;
    }
}

.bp-catalog-page,
.bp-product-page {
    background: #fff;
}

.bp-catalog-header {
    padding: clamp(34px, 6vw, 72px) clamp(18px, 4vw, 56px) clamp(18px, 3vw, 34px);
    border-bottom: 1px solid var(--line);
    background: #fff;
}

.bp-catalog-header h1 {
    max-width: 980px;
    margin-bottom: 10px;
    font-size: clamp(34px, 5vw, 58px);
}

.bp-catalog-header p {
    max-width: 900px;
    color: var(--muted);
    font-size: 18px;
}

.bp-catalog-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 16px clamp(18px, 4vw, 56px);
    border-bottom: 1px solid var(--line);
    background: #fff7ed;
}

.bp-catalog-filter a {
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff;
    color: #9a3412;
    padding: 8px 13px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}

.bp-catalog-products {
    padding: clamp(24px, 4vw, 48px) clamp(18px, 4vw, 56px);
}

.bp-product-hero {
    display: grid;
    grid-template-columns: minmax(280px, .95fr) minmax(320px, .8fr);
    gap: clamp(24px, 5vw, 64px);
    align-items: start;
    padding: clamp(28px, 5vw, 64px) clamp(18px, 4vw, 56px);
    background: #fff;
}

.bp-product-gallery {
    display: grid;
    gap: 12px;
}

.bp-product-gallery > img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f8fafc;
}

.bp-product-thumbs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.bp-product-thumbs button {
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    color: var(--ink);
    padding: 9px;
    font-weight: 800;
}

.bp-product-buybox {
    display: grid;
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(23, 33, 43, .08);
    padding: clamp(18px, 3vw, 28px);
}

.bp-product-buybox h1 {
    margin: 0;
    font-size: clamp(30px, 4vw, 48px);
}

.bp-product-buybox label {
    display: grid;
    gap: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
}

.bp-product-buybox select,
.bp-product-buybox input {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 11px;
    color: var(--ink);
    font: inherit;
}

.bp-product-buybox button {
    border: 1px solid #f97316;
    border-radius: 6px;
    background: #f97316;
    color: #fff;
    padding: 13px 18px;
    font-size: 17px;
    font-weight: 900;
}

.bp-stock-row,
.bp-subtotal {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    background: #fff7ed;
    padding: 12px;
}

.bp-stock-row strong,
.bp-subtotal strong {
    color: #c2410c;
    font-size: 22px;
}

.bp-anchor-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px clamp(18px, 4vw, 56px);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: #fff;
}

.bp-anchor-tabs a {
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--ink);
    padding: 8px 12px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}

.bp-product-section {
    padding: clamp(28px, 5vw, 58px) clamp(18px, 4vw, 56px);
    border-bottom: 1px solid var(--line);
}

.bp-product-section h2 {
    margin-bottom: 18px;
    font-size: clamp(26px, 4vw, 38px);
}

.bp-product-section table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.bp-product-section th {
    width: 220px;
    color: var(--muted);
    font-weight: 800;
}

.bp-template-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
}

.bp-template-list a {
    display: grid;
    gap: 6px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f8fafc;
    color: inherit;
    padding: 16px;
    text-decoration: none;
}

.bp-install-steps {
    display: grid;
    gap: 10px;
    margin: 0;
    padding-left: 22px;
}

@media (max-width: 860px) {
    .bp-product-hero {
        grid-template-columns: 1fr;
    }
}

.floating-service-panel {
    margin-bottom: 9px;
    border: 1px solid rgba(0, 167, 181, .2);
    border-radius: 7px;
    background: linear-gradient(135deg, rgba(0, 167, 181, .1), rgba(240, 90, 40, .08)), #fff;
    overflow: hidden;
}

.floating-service-panel summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 3px;
    cursor: pointer;
    list-style: none;
    padding: 10px;
}

.floating-service-panel summary::-webkit-details-marker {
    display: none;
}

.floating-service-panel summary span,
.floating-service-panel summary strong {
    display: block;
}

.floating-service-panel summary span {
    color: var(--hot);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.floating-service-panel summary strong {
    color: var(--ink);
    font-size: 15px;
    line-height: 1.25;
}

.floating-service-body {
    display: grid;
    gap: 9px;
    border-top: 1px solid rgba(0, 167, 181, .16);
    padding: 10px;
}

.floating-service-body p {
    margin: 0;
    color: #56636f;
    font-size: 12px;
    line-height: 1.55;
}

.floating-service-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.floating-service-actions a {
    display: grid;
    place-items: center;
    min-height: 32px;
    border: 1px solid rgba(0, 167, 181, .2);
    border-radius: 6px;
    background: rgba(255, 255, 255, .88);
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
}

.floating-service-actions a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.floating-status-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 6px;
}

.floating-status-form label {
    display: grid;
    gap: 4px;
    color: #697683;
    font-size: 11px;
    font-weight: 850;
}

.floating-status-form input {
    width: 100%;
    min-width: 0;
    height: 32px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 8px;
    font: inherit;
}

.floating-status-form button {
    grid-column: 1 / -1;
    min-height: 34px;
    border: 0;
    border-radius: 6px;
    background: var(--accent);
    color: white;
    font-weight: 950;
    cursor: pointer;
}

.floating-tools nav {
    display: grid;
    gap: 7px;
}

.floating-tools a {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    min-height: 48px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel);
    color: #33404a;
    padding: 6px 8px;
    text-decoration: none;
}

.floating-tools a:hover {
    border-color: var(--accent);
    background: #edf9f8;
}

.floating-tools span,
.floating-tools em,
.floating-tools small {
    display: block;
}

.floating-tools span {
    min-height: 28px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    background: var(--ink);
    color: white;
    font-size: 11px;
    font-weight: 950;
}

.floating-tools em {
    overflow: hidden;
    font-size: 13px;
    font-style: normal;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.floating-tools small {
    grid-column: 2;
    margin-top: -4px;
    overflow: hidden;
    color: #7b8792;
    font-size: 11px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.site-footer {
    display: grid;
    grid-template-columns: minmax(300px, .9fr) minmax(260px, .65fr) minmax(0, 1.35fr);
    gap: 24px;
    align-items: start;
    padding-top: 34px;
    padding-bottom: 34px;
    background: var(--ink);
    color: white;
}

.site-footer p {
    max-width: 720px;
    margin: 8px 0 0;
    color: rgba(255, 255, 255, .72);
}

.footer-brand-panel,
.footer-newsletter-panel,
.footer-link-panel {
    min-width: 0;
}

.footer-logo,
.footer-newsletter-panel > strong {
    display: block;
    font-size: 22px;
    line-height: 1.15;
}

.footer-service-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.footer-service-form label {
    display: grid;
    gap: 6px;
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    font-weight: 900;
}

.footer-service-form select,
.footer-newsletter input {
    width: 100%;
    min-height: 44px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 6px;
    background: rgba(255, 255, 255, .1);
    color: white;
    padding: 0 11px;
    font: inherit;
}

.footer-service-form select option {
    color: var(--ink);
}

.footer-service-form button,
.footer-newsletter button {
    min-height: 44px;
    border: 0;
    border-radius: 6px;
    background: var(--yellow);
    color: #2f2714;
    padding: 0 14px;
    font: inherit;
    font-weight: 950;
    cursor: pointer;
}

.footer-service-form button {
    grid-column: 1 / -1;
}

.footer-service-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
}

.footer-service-strip a {
    display: grid;
    gap: 4px;
    min-height: 84px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 8px;
    background: rgba(255, 255, 255, .07);
    padding: 12px;
    text-decoration: none;
}

.footer-service-strip strong,
.footer-service-strip span {
    display: block;
}

.footer-service-strip strong {
    color: #fff;
    font-size: 14px;
}

.footer-service-strip span {
    color: rgba(255, 255, 255, .66);
    font-size: 12px;
}

.footer-newsletter {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    margin-top: 16px;
}

.footer-newsletter input::placeholder {
    color: rgba(255, 255, 255, .58);
}

.footer-member-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.footer-member-links a {
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    padding: 7px 10px;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none;
}

.footer-link-columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.footer-links {
    display: grid;
    gap: 8px;
}

.footer-links > strong {
    color: #fff;
    font-size: 15px;
}

.footer-links a {
    color: rgba(255, 255, 255, .78);
    font-size: 14px;
}

.footer-group-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    padding-top: 14px;
}

.footer-group-strip span {
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: rgba(255, 255, 255, .68);
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 850;
}

@media (max-width: 1100px) {
    .hero-commerce,
    .home-direct-quote,
    .quick-order-hero,
    .checkout-hero,
    .checkout-command-bar,
    .checkout-handoff-os,
    .payment-hero,
    .payment-route-head,
    .payment-workbench,
    .payment-command-head,
    .topic-feature-wall,
    .topic-article-hero,
    .topic-article-layout,
    .catalog-hero,
    .catalog-purchase-desk,
    .catalog-shop-finder,
    .catalog-product-finder,
    .catalog-campaign-wall,
    .catalog-command-bar,
    .catalog-bulk-board,
    .catalog-layout,
    .template-layout,
    .template-command-board,
    .promotion-campaign-wall,
    .material-layout,
    .service-commerce-head,
    .service-series-layout,
    .artwork-upload-layout,
    .artwork-command-head,
    .quick-order-layout,
    .quick-sku-matrix-shop,
    .quick-command-head,
    .quick-command-grid,
    .direct-request-section,
    .contact-command-head,
    .contact-command-grid,
    .contact-layout,
    .locations-finder,
    .delivery-layout,
    .setup-command-head,
    .pickup-command-head,
    .pickup-command-layout,
    .product-detail,
    .product-commerce-hub,
    .product-purchase-console,
    .product-order-dock,
    .product-bundle-head,
    .product-visual-guide,
    .product-matrix-shop,
    .quick-purchase-head,
    .split-cta,
    .checkout-layout,
    .cart-layout,
    .cart-command-board,
    .cart-empty-market,
    .confirmation-layout,
    .order-command-console,
    .login-layout,
    .customer-login-hero,
    .customer-login-panel,
    .customer-command-head,
    .dashboard-layout,
    .ops-hero,
    .ops-command-layout,
    .order-ops-console,
    .quote-request-layout,
    .status-service-hero,
    .status-command-head,
    .supplier-margin-layout,
    .supplier-cost-entry,
    .support-action-band,
    .quote-category-list article,
    .storefront-menu-panel,
    .storefront-command-head,
    .storefront-console-layout,
    .home-service-marketplace,
    .home-topic-head,
    .workflow-seo-board,
    .membership-account-head,
    .compare-band {
        grid-template-columns: 1fr;
    }

    .compare-picker-panel {
        grid-template-columns: 1fr;
    }

    .compare-picker-panel form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-footer {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .footer-link-panel {
        grid-column: 1 / -1;
    }

    .nav-main {
        grid-template-columns: 1fr;
        align-items: stretch;
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .header-order-tray {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: stretch;
    }

    .pricing-order-console form {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .pricing-console-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pricing-console-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .header-order-title,
    .header-order-total {
        grid-column: span 2;
    }

    .catalog-bulk-actions {
        min-width: 0;
    }

    .utility-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .nav-actions,
    .catalog-sidebar,
    .service-sidebar,
    .quick-order-aside,
    .upload-side-panel,
    .designer-file-side,
    .direct-request-copy,
    .checkout-sidebar,
    .contact-card,
    .status-query-form,
    .quote-card {
        position: static;
    }

    .product-grid,
    .product-grid.dense,
    .related-grid,
    .pricing-card-grid,
    .compare-card-grid,
    .supplier-metric-strip,
    .supplier-command-grid,
    .supplier-job-grid,
    .supplier-job-command,
    .supplier-mini-metrics,
    .quick-start-grid,
    .steps,
    .product-order-path,
    .series-grid,
    .product-matrix-toolbar,
    .product-matrix-notes,
    .product-bundle-grid,
    .addon-grid,
    .product-guide-grid,
    .product-decision-strip,
    .product-aftercare,
    .product-specs,
    .product-commerce-badges,
    .public-status-flow,
    .status-live-grid,
    .status-command-head nav,
    .status-metric-strip,
    .payment-command-head nav,
    .payment-route-head form,
    .payment-stat-strip,
    .payment-proof-grid,
    .payment-gateway-grid,
    .payment-route-grid,
    .catalog-purchase-actions,
    .catalog-purchase-flow,
    .compare-summary-strip,
    .template-stat-strip,
    .template-route-grid,
    .template-command-actions,
    .ops-metric-grid,
    .ops-check-grid,
    .order-commercial-preview,
    .quick-sku-matrix-notes,
    .checkout-handoff-grid,
    .customer-login-actions,
    .customer-command-head nav,
    .customer-queue-grid,
    .support-hub-grid,
    .support-process-grid,
    .status-readiness-grid,
    .quick-readiness-grid,
    .workflow-stage-grid,
    .workflow-seo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .option-choice.compact {
        grid-template-columns: 1fr;
    }

    .storefront-command-head nav {
        justify-content: flex-start;
    }

    .quick-quote-grid,
    .quote-category-products,
    .compare-preset-grid,
    .catalog-use-grid,
    .catalog-finder-grid,
    .catalog-campaign-grid,
    .promotion-campaign-grid,
    .quick-command-head nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .task-board,
    .storefront-menu-grid,
    .storefront-assurance-grid,
    .direct-request-steps,
    .hero-product-launcher,
    .hero-utility-dock,
    .hero-deal-grid,
    .home-promo-rail,
    .home-category-grid,
    .use-case-grid,
    .package-strip,
    .pricing-note-grid,
    .customer-actions,
    .self-service-panel,
    .status-timeline,
    .template-checklist,
    .series-mega-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .material-grid,
    .service-commerce-grid,
    .post-order-action-grid,
    .post-order-flow,
    .payment-method-grid,
    .featured-template-grid,
    .template-format-board,
    .supplier-cost-checklist,
    .topic-feature-grid,
    .topic-card-grid,
    .commerce-service-strip,
    .home-service-marketplace-grid,
    .home-service-marketplace-ops,
    .home-topic-grid,
    .quick-use-grid,
    .quick-deal-panel > div,
    .checkout-decision-grid,
    .checkout-support-strip,
    .checkout-handoff-grid,
    .checkout-gateway-reserve,
    .cart-stage-strip,
    .cart-empty-products,
    .cart-support-grid,
    .payment-proof-grid,
    .order-command-grid,
    .quick-purchase-stats,
    .quick-decision-grid,
    .quick-category-strip,
    .customer-login-benefits,
    .status-service-panel,
    .catalog-category-card-grid,
    .catalog-decision-grid,
    .catalog-category-stats,
    .catalog-guide-grid,
    .catalog-faq-grid,
    .upload-route-grid,
    .eco-track-grid,
    .service-product-grid,
    .service-commerce-grid,
    .service-category-index,
    .contact-routing-grid,
    .contact-channel-grid,
    .handoff-list,
    .artwork-guideline-stats,
    .artwork-requirement-grid,
    .artwork-format-grid,
    .artwork-product-layout .handoff-list,
    .artwork-service-grid,
    .artwork-check-layout .handoff-list,
    .delivery-option-grid,
    .delivery-product-times,
    .pickup-channel-board,
    .pickup-option-grid,
    .pickup-readiness,
    .pickup-stat-strip,
    .locations-service-grid,
    .locations-area-list,
    .compare-card-grid,
    .express-service-grid,
    .express-checklist,
    .setup-command-grid,
    .setup-scenario-strip,
    .setup-service-grid,
    .setup-layout .handoff-list,
    .membership-plan-grid,
    .membership-account-grid,
    .membership-flow-strip,
    .membership-benefits,
    .education-audience-grid,
    .education-support-list,
    .designer-portal-grid,
    .designer-file-console,
    .design-service-grid,
    .design-input-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .delivery-lead-list > section {
        grid-template-columns: 1fr;
    }

    .quick-order-total {
        grid-template-columns: 1fr;
    }

    .checkout-progress,
    .checkout-field-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bulk-order-summary {
        grid-template-columns: 1fr;
    }

    .quote-card-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-reference-layout {
        grid-template-columns: 1fr;
    }

    .checkout-command-bar nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .visual-guide-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bulk-order-summary div {
        border-right: 0;
        border-bottom: 1px solid rgba(0, 123, 132, .18);
        padding-right: 0;
        padding-bottom: 10px;
    }

    .category-rail {
        grid-template-columns: repeat(7, minmax(150px, 1fr));
        overflow-x: auto;
    }

    .series-mega-nav {
        grid-template-columns: 1fr;
    }

    .series-mega-visual {
        min-height: 260px;
    }

    .series-mega-grid {
        grid-template-columns: repeat(5, minmax(220px, 1fr));
        overflow-x: auto;
        overscroll-behavior-x: contain;
    }

    .series-mega-foot {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .header-hot-products {
        grid-template-columns: 1fr;
    }

    .header-hot-head {
        min-height: auto;
    }

    .header-hot-strip {
        grid-template-columns: repeat(4, minmax(220px, 1fr));
        overflow-x: auto;
    }

    .pricing-category-nav {
        grid-template-columns: repeat(7, minmax(180px, 1fr));
        overflow-x: auto;
    }

    .product-order-dock-price {
        border-left: 0;
        border-top: 1px solid var(--line);
        padding-top: 10px;
        padding-left: 0;
    }
}

@media (max-width: 720px) {
    .topbar,
    .primary-nav,
    .nav-actions,
    .hero-store-search div,
    .instant-order-head,
    .instant-order-actions,
    .storefront-menu summary,
    .series-mega-head,
    .home-service-marketplace-head,
    .hero-actions,
    .header-search,
    .header-order-tray,
    .quote-search,
    .catalog-toolbar,
    .catalog-command-search div,
    .catalog-command-bar nav,
    .catalog-bulk-actions,
    .contact-command-head nav,
    .setup-command-head nav,
    .ops-metric-grid,
    .ops-check-grid,
    .order-commercial-preview,
    .quick-sku-matrix-notes,
    .home-direct-quote-form,
    .service-commerce-grid,
    .product-bundle-grid,
    .product-bundle-head nav,
    .product-matrix-toolbar,
    .product-matrix-notes,
    .site-footer {
        display: grid;
        grid-template-columns: 1fr;
    }

    .home-service-marketplace-visual {
        min-height: 320px;
    }

    .home-service-marketplace-grid,
    .home-service-marketplace-ops {
        grid-template-columns: 1fr;
    }

    .series-mega-grid {
        grid-template-columns: 1fr;
        overflow-x: visible;
    }

    .series-mega-foot {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .series-mega-visual {
        min-height: 210px;
    }

    .series-mega-head a {
        width: 100%;
        text-align: center;
    }

    .service-commerce-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-bundle-preview {
        grid-auto-flow: column;
        grid-auto-columns: minmax(92px, 1fr);
        grid-template-columns: none;
        overflow-x: auto;
        overscroll-behavior-x: contain;
    }

    .header-order-title,
    .header-order-total {
        grid-column: auto;
    }

    .pricing-console-fields,
    .pricing-console-actions,
    .pricing-console-preview {
        grid-template-columns: 1fr;
    }

    .pricing-console-preview img {
        width: 100%;
        height: 180px;
    }

    .topbar span:first-child {
        margin-right: 0;
    }

    .utility-strip {
        grid-template-columns: repeat(5, minmax(170px, 1fr));
        overflow-x: auto;
        overscroll-behavior-x: contain;
    }

    .floating-tools {
        right: 0;
        bottom: 0;
        left: 0;
        width: auto;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 0;
        padding: 8px 10px;
    }

    .floating-service-panel {
        display: none;
    }

    .floating-tools nav {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: minmax(88px, 1fr);
        gap: 8px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        padding-bottom: 2px;
    }

    .floating-tools a {
        grid-template-columns: 1fr;
        justify-items: center;
        min-height: 58px;
        padding: 7px 8px;
        text-align: center;
    }

    .floating-tools small {
        display: none;
    }

    .floating-tools span {
        min-width: 34px;
        min-height: 24px;
        padding: 0 6px;
    }

    .floating-tools em {
        max-width: 82px;
        font-size: 12px;
    }

    .floating-tools + .site-footer {
        padding-bottom: 106px;
    }

    .footer-service-form,
    .footer-newsletter,
    .footer-service-strip,
    .footer-link-columns {
        grid-template-columns: 1fr;
    }

    .storefront-menu summary::after {
        justify-self: start;
    }

    .header-hot-strip {
        grid-template-columns: repeat(8, minmax(230px, 1fr));
        overscroll-behavior-x: contain;
    }

    .home-direct-quote-form .span-2 {
        grid-column: auto;
    }

    .instant-order-card {
        padding: 12px;
    }

    .instant-order-media {
        height: 170px;
    }

    .quick-panel,
    .home-sku-head,
    .storefront-menu-grid,
    .shop-window-head,
    .quickshop-head,
    .quick-start-head,
    .quick-readiness-head,
    .checkout-decision-head,
    .cart-review-head,
    .hero-product-launcher,
    .hero-store-stats,
    .hero-utility-dock,
    .hero-deal-grid,
    .home-promo-rail,
    .commerce-service-strip,
    .home-topic-head,
    .home-topic-grid,
    .storefront-promo-wall,
    .storefront-assurance-grid,
    .workflow-stage-grid,
    .promotion-campaign-grid,
    .visual-guide-grid,
    .quick-order-grid,
    .instant-order-prefill,
    .quick-order-product,
    .quick-command-head,
    .quick-command-grid,
    .quick-command-head nav,
    .quick-deal-panel > div,
    .quick-readiness-grid,
    .quick-categories,
    .direct-request-steps,
    .checkout-progress,
    .checkout-field-grid,
    .checkout-upload-card,
    .checkout-decision-grid,
    .checkout-support-strip,
    .checkout-gateway-reserve,
    .cart-stage-strip,
    .cart-command-grid,
    .cart-empty-market,
    .cart-empty-products,
    .cart-support-grid,
    .cart-item-actions,
    .payment-command-head,
    .payment-command-head nav,
    .payment-route-head,
    .payment-route-head form,
    .payment-route-grid,
    .payment-gateway-head,
    .payment-gateway-grid,
    .payment-stat-strip,
    .payment-proof-grid,
    .quick-purchase-head,
    .quick-purchase-stats,
    .quick-decision-grid,
    .quick-category-strip,
    .customer-login-hero,
    .customer-login-panel,
    .customer-login-actions,
    .customer-login-benefits,
    .customer-command-head,
    .customer-command-head nav,
    .customer-queue-grid,
    .status-command-head,
    .status-command-head nav,
    .status-metric-strip,
    .status-service-panel,
    .status-live-grid,
    .confirmation-live-grid,
    .order-command-grid,
    .status-readiness-grid,
    .post-order-action-grid,
    .post-order-flow,
    .payment-method-grid,
    .supplier-metric-strip,
    .supplier-command-grid,
    .supplier-job-grid,
    .supplier-job-command,
    .supplier-mini-metrics,
    .topic-category-strip,
    .topic-feature-wall,
    .topic-feature-grid,
    .topic-card-grid,
    .topic-article-hero,
    .topic-article-layout,
    .payment-hero,
    .payment-workbench,
    .workflow-seo-board,
    .workflow-seo-grid,
    .task-board,
    .home-category-grid,
    .service-grid,
    .use-case-grid,
    .pricing-note-grid,
    .package-grid,
    .package-strip,
    .customer-metrics,
    .customer-actions,
    .mini-flow,
    .self-service-panel,
    .status-timeline,
    .next-actions,
    .template-checklist,
    .template-command-actions,
    .template-stat-strip,
    .template-route-grid,
    .featured-template-grid,
    .template-format-board,
    .template-grid,
    .material-grid,
    .checkout-command-bar nav,
    .catalog-category-stats,
    .catalog-purchase-actions,
    .catalog-purchase-flow,
    .catalog-category-card-grid,
    .catalog-decision-grid,
    .catalog-campaign-grid,
    .catalog-use-grid,
    .catalog-finder-grid,
    .quick-use-grid,
    .catalog-guide-grid,
    .catalog-faq-grid,
    .upload-route-grid,
    .eco-track-grid,
    .service-product-grid,
    .service-category-index,
    .contact-channel-grid,
    .handoff-list,
    .artwork-command-head,
    .artwork-command-head nav,
    .artwork-guideline-stats,
    .artwork-requirement-grid,
    .artwork-format-grid,
    .artwork-product-layout .handoff-list,
    .artwork-service-grid,
    .artwork-check-layout .handoff-list,
    .delivery-option-grid,
    .delivery-product-times,
    .pickup-channel-board,
    .pickup-command-head nav,
    .pickup-option-grid,
    .pickup-readiness,
    .pickup-stat-strip,
    .locations-finder,
    .locations-finder form,
    .locations-service-grid,
    .locations-area-list,
    .express-service-grid,
    .express-checklist,
    .setup-service-grid,
    .setup-layout .handoff-list,
    .membership-plan-grid,
    .membership-account-head,
    .membership-account-grid,
    .membership-flow-strip,
    .membership-benefits,
    .education-audience-grid,
    .education-support-list,
    .design-service-grid,
    .designer-portal-grid,
    .designer-file-console,
    .designer-file-actions,
    .design-input-list,
    .compare-grid,
    .compare-preset-grid,
    .compare-summary-strip,
    .quick-quote-grid,
    .quote-category-products,
    .product-grid,
    .product-grid.dense,
    .related-grid,
    .pricing-card-grid,
    .compare-card-grid,
    .quick-start-grid,
    .steps,
    .product-order-path,
    .series-grid,
    .addon-grid,
    .quote-proof-stack,
    .product-guide-grid,
    .product-decision-strip,
    .supplier-cost-checklist,
    .product-aftercare,
    .product-specs,
    .product-commerce-hub nav,
    .product-commerce-badges,
    .product-bundle-grid,
    .product-bundle-head nav,
    .product-option-console,
    .product-order-dock nav,
    .status-service-panel,
    .status-live-grid,
    .public-status-flow,
    .support-hub-grid,
    .support-process-grid,
    .support-action-grid,
    .product-facts,
    .spec-summary article {
        grid-template-columns: 1fr;
    }

    .hero-commerce {
        min-height: 0;
    }

    .quick-order-hero {
        min-height: 0;
    }

    .hero-image,
    .checkout-visual,
    .quick-order-visual,
    .cart-visual,
    .payment-visual,
    .customer-login-visual,
    .confirmation-visual-card img,
    .hero-image img {
        min-height: 300px;
    }

    .checkout-visual img,
    .quick-order-visual img,
    .cart-visual img,
    .payment-visual img,
    .confirmation-visual-card img,
    .customer-login-visual img {
        min-height: 300px;
    }

    .catalog-search div,
    .catalog-category-head,
    .matrix-head,
    .matrix-head-actions,
    .compare-picker-panel,
    .compare-picker-panel form,
    .compare-card-grid,
    .compare-card-actions,
    .catalogue-card-order,
    .catalogue-card-actions,
    .checkout-item-list article,
    .quote-product-list article,
    .template-downloads,
    .template-card,
    .cart-item,
    .confirmation-layout,
    .order-admin-grid,
    .field-pair > div {
        grid-template-columns: 1fr;
    }

    .quote-product-list img,
    .quick-order-product img,
    .cart-item img {
        width: 100%;
        height: 220px;
    }

    .cart-item-side {
        justify-items: stretch;
    }

    .option-list {
        grid-template-columns: 1fr;
    }

    .artwork-handoff-grid,
    .product-faq-grid {
        grid-template-columns: 1fr;
    }

    .product-visual-guide figure,
    .product-visual-guide img {
        min-height: 260px;
    }

    .pricing-ladder-mini {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .quantity-presets.wide {
        grid-template-columns: repeat(3, 1fr);
    }

    .quantity-presets.compact {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Bay Print responsive storefront final overrides. Keep this block last. */
.bp-container {
    width: 100%;
    max-width: 1400px;
    margin-inline: auto;
    box-sizing: border-box;
    padding-inline: 16px;
}

.bp-home,
.bp-storefront-header .topbar,
.bp-storefront-header .nav-main,
.bp-storefront-header .primary-nav,
.bp-footer-columns {
    padding-left: 0;
    padding-right: 0;
}

.bp-section,
.bp-process-band,
.bp-business-support {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 32px 0;
}

.bp-top-utility-inner,
.bp-main-header-inner,
.bp-primary-nav-inner {
    width: 100%;
}

.bp-top-utility-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.bp-top-utility nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0;
}

.bp-top-group {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-inline: 12px;
    border-left: 1px solid var(--line);
}

.bp-top-group:first-child {
    border-left: 0;
}

.bp-main-header-inner {
    display: grid;
    grid-template-columns: auto minmax(160px, 1fr) auto;
    align-items: center;
    gap: 18px;
    min-height: 82px;
}

.bp-hotline {
    justify-self: end;
    text-align: right;
}

.bp-primary-nav {
    padding: 0;
}

.bp-primary-nav-inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 44px;
    overflow-x: auto;
}

.bp-promo-section {
    background: #fff7ed;
}

.bp-promo-carousel,
.bp-clean-product-grid,
.product-grid.bp-clean-product-grid,
.bp-catalog-products,
.bp-category-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 16px;
    overflow: visible;
    padding: 0;
    scroll-snap-type: none;
}

.bp-promo-card,
.bp-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
}

.bp-promo-card {
    border: 1px solid #fed7aa;
    box-shadow: 0 12px 28px rgba(154, 52, 18, .08);
}

.bp-product-card {
    grid-template-rows: 1fr auto;
    border: 1px solid var(--line);
    box-shadow: 0 10px 26px rgba(23, 33, 43, .06);
}

.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: linear-gradient(135deg, #fff7ed, #e0f2fe);
}

.bp-promo-card-body,
.bp-product-card .product-card-body {
    display: grid;
    gap: 8px;
    align-content: start;
    padding: 16px;
}

.bp-promo-card small,
.bp-product-card .category {
    color: #c2410c;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.bp-promo-card h3,
.bp-product-card h3 {
    margin: 0;
    color: var(--ink);
    line-height: 1.25;
}

.bp-promo-card h3 {
    font-size: 20px;
}

.bp-product-card h3 {
    font-size: 18px;
}

.bp-promo-card p,
.bp-product-card p {
    margin: 0;
}

.bp-card-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 0 16px 16px;
}

.bp-card-actions .button,
.bp-promo-card .button,
.bp-main-header .button,
.bp-quick-table .button,
.bp-business-support .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid #f97316;
    border-radius: 6px;
    background: #f97316;
    color: #fff;
    padding: 0 14px;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.bp-card-actions .button.secondary,
.bp-business-support .button.secondary {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.bp-category-card {
    display: grid;
    gap: 10px;
    height: 100%;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 14px;
    text-decoration: none;
}

.bp-category-card span {
    color: var(--ink);
    font-size: 18px;
    font-weight: 850;
}

.bp-category-card strong {
    color: #c2410c;
    font-size: 13px;
}

.bp-quick-order-section {
    background: #f8fafc;
}

.bp-quick-order {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    padding-top: 0;
    padding-bottom: 0;
}

.bp-business-support-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.bp-footer-columns .footer-link-panel {
    padding: 36px 0;
}

.bp-footer-columns .footer-link-columns {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
}

@media (max-width: 767px) {
    .bp-top-tagline,
    .bp-top-group-secondary {
        display: none;
    }

    .bp-top-utility-inner {
        justify-content: flex-end;
    }

    .bp-main-header-inner {
        grid-template-columns: auto 1fr;
        min-height: 68px;
    }

    .brand-logo-frame.logo,
    header .logo {
        width: min(170px, 52vw);
        max-width: 180px;
        height: 36px;
        min-height: 0;
        max-height: 36px;
        padding: 0;
    }

    header .logo picture,
    header .logo img,
    .brand-logo-frame.logo picture,
    .brand-logo-frame.logo img {
        width: auto;
        height: 36px;
        max-height: 36px;
    }

    .bp-hotline {
        justify-self: end;
        font-size: 0;
    }

    .bp-hotline span {
        display: none;
    }

    .bp-hotline strong {
        display: inline-grid;
        width: 42px;
        height: 42px;
        place-items: center;
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 50%;
        color: transparent;
    }

    .bp-hotline strong::before {
        content: "WA";
        color: #c2410c;
        font-size: 13px;
        font-weight: 900;
    }

    .bp-main-header .nav-actions {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .bp-main-header .nav-actions .icon-link:nth-child(1),
    .bp-main-header .nav-actions .icon-link:nth-child(2) {
        display: none;
    }

    .bp-primary-nav-inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        padding-block: 8px;
        overflow: visible;
    }

    .bp-primary-nav-inner > a {
        display: none;
    }

    .bp-mega-trigger {
        width: 100%;
    }

    .bp-mega-trigger summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 42px;
        border: 1px solid var(--line);
        border-radius: 6px;
        padding-inline: 12px;
    }

    .bp-mega-trigger[open] .bp-mega-menu {
        position: fixed;
        inset: 0;
        z-index: 80;
        display: grid;
        width: 100vw;
        max-height: 100vh;
        grid-template-columns: 1fr;
        overflow-y: auto;
        border: 0;
        border-radius: 0;
        padding: 72px 18px 24px;
    }
}

@media (min-width: 768px) {
    .bp-container {
        padding-inline: 24px;
    }

    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .bp-promo-carousel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-card-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-quick-order {
        grid-template-columns: minmax(220px, .35fr) minmax(0, 1fr);
    }

    .bp-business-support-inner {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
        align-items: center;
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .bp-promo-carousel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .bp-container {
        padding-inline: 32px;
    }

    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .bp-promo-carousel {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Bay Print EOF hard overrides 2026-06-07. Do not move above older blocks. */
:root {
    --bp-container-max: 1200px;
    --bp-container-narrow: 760px;
}

.bp-container,
.container {
    width: 100%;
    max-width: var(--bp-container-max);
    margin-inline: auto;
    padding-inline: 16px;
    box-sizing: border-box;
}

.container-narrow,
.bp-product-section > p,
.bp-catalog-header > p,
.section-head > p:not(.eyebrow),
.cart-command-head > p,
.checkout-decision-head > p {
    max-width: var(--bp-container-narrow);
}

.bp-main-header-inner {
    min-height: 68px;
}

header .logo,
.brand-logo-frame.logo,
header .logo img,
.brand-logo-frame.logo img,
.bp-brand-logo img {
    height: 44px;
    max-height: 44px;
    width: auto;
    object-fit: contain;
}

.bp-section,
.bp-process-band,
.bp-business-support {
    padding-top: 32px;
    padding-bottom: 32px;
}

.bp-home .hero,
.catalog-hero,
.checkout-hero,
.cart-stage-strip,
.cart-command-board,
.cart-layout,
.cart-support-grid,
.workflow-stage-grid,
.bp-catalog-header,
.bp-catalog-filter,
.bp-catalog-products,
.bp-product-page > .bp-product-hero,
.bp-product-page > .bp-anchor-tabs,
.bp-product-page > .bp-product-section {
    width: min(100% - 32px, var(--bp-container-max));
    margin-inline: auto;
    box-sizing: border-box;
}

.bp-product-page {
    max-width: none;
}

.bp-product-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
    gap: 28px;
    align-items: start;
}

.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img,
.cart-empty-products img,
.cart-item > img,
.checkout-item-list img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.site-footer.bp-footer-columns {
    background: #111827;
    color: #d1d5db;
    padding: 0;
}

.bp-footer-columns .footer-link-panel {
    padding: 44px 0 22px;
}

.bp-footer-columns .footer-link-columns {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr 1fr;
    align-items: start;
    gap: 28px;
}

.bp-footer-columns .footer-links a,
.bp-footer-columns .footer-links p {
    line-height: 1.8;
}

.footer-logo-small .brand-logo-frame.logo,
.footer-logo-small .brand-logo-frame.logo img {
    height: 40px;
    max-height: 40px;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-top: 28px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #9ca3af;
    font-size: 13px;
}

@media (min-width: 768px) {
    .bp-container,
    .container {
        padding-inline: 24px;
    }

    .bp-promo-carousel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-category-grid,
    .bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .bp-promo-carousel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .bp-container,
    .container {
        padding-inline: 32px;
    }

    .bp-section,
    .bp-process-band,
    .bp-business-support {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .bp-promo-carousel,
    .bp-category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bp-clean-product-grid,
    .product-grid.bp-clean-product-grid,
    .bp-catalog-products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bp-footer-columns .footer-link-columns {
        grid-template-columns: 1.25fr 1fr 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .bp-main-header-inner {
        min-height: 58px;
    }

    header .logo,
    .brand-logo-frame.logo,
    header .logo img,
    .brand-logo-frame.logo img,
    .bp-brand-logo img {
        height: 36px;
        max-height: 36px;
    }

    .bp-product-hero,
    .cart-layout,
    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .footer-bottom {
        display: grid;
    }
}

/* Bay Print emergency layout hotfix 2026-06-08. Keep at EOF. */
.bp-storefront-header .topbar,
.bp-storefront-header .nav-main,
.bp-storefront-header .primary-nav,
.site-footer.bp-footer-columns {
    padding-left: 0;
    padding-right: 0;
}

.bp-storefront-header .bp-container,
.site-footer.bp-footer-columns .bp-container {
    width: min(100%, var(--bp-container-max));
    max-width: var(--bp-container-max);
    margin-inline: auto;
    padding-inline: 16px;
    box-sizing: border-box;
}

.bp-top-utility-inner {
    display: flex;
    width: 100%;
    min-height: 32px;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
}

.bp-top-utility nav {
    display: flex;
    width: auto;
    margin-left: auto;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
    text-align: right;
}

.bp-main-header-inner {
    display: grid;
    width: 100%;
    min-height: 68px;
    grid-template-columns: auto minmax(120px, 1fr) auto;
    align-items: center;
    gap: 16px;
}

.bp-primary-nav-inner {
    display: flex;
    width: 100%;
    min-height: 42px;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    overflow-x: auto;
    text-align: left;
}

.bp-primary-nav-inner > a,
.bp-mega-trigger summary {
    white-space: nowrap;
}

.site-footer.bp-footer-columns .footer-link-panel {
    width: 100%;
    padding: 44px 0 22px;
}

.site-footer.bp-footer-columns .footer-link-columns {
    width: 100%;
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr 1fr;
    align-items: start;
    justify-content: stretch;
    gap: 28px;
}

.site-footer.bp-footer-columns .footer-links {
    min-width: 0;
    align-content: start;
}

.site-footer .footer-logo .brand-logo-frame.logo,
.site-footer .footer-logo .brand-logo-frame.logo picture,
.site-footer .footer-logo .brand-logo-frame.logo img,
.site-footer .footer-logo-small .brand-logo-frame.logo,
.site-footer .footer-logo-small .brand-logo-frame.logo picture,
.site-footer .footer-logo-small .brand-logo-frame.logo img {
    width: auto;
    max-width: 180px;
    height: auto;
    max-height: 40px;
    object-fit: contain;
}

.bp-social-dot {
    position: relative;
    display: inline-grid;
    width: 24px;
    height: 24px;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
}

.bp-social-dot span {
    display: none;
}

.bp-social-dot-instagram::before {
    content: "IG";
}

.bp-social-dot-facebook::before {
    content: "f";
    font-size: 15px;
    font-family: Arial, sans-serif;
}

@media (min-width: 768px) {
    .bp-storefront-header .bp-container,
    .site-footer.bp-footer-columns .bp-container {
        padding-inline: 24px;
    }
}

@media (min-width: 1200px) {
    .bp-storefront-header .bp-container,
    .site-footer.bp-footer-columns .bp-container {
        padding-inline: 32px;
    }
}

@media (max-width: 767px) {
    .bp-main-header-inner {
        min-height: 58px;
        grid-template-columns: auto 1fr;
    }

    .bp-main-header .nav-actions {
        grid-column: 1 / -1;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-primary-nav-inner {
        min-height: 52px;
    }

    .site-footer.bp-footer-columns .footer-link-columns {
        grid-template-columns: 1fr;
    }
}

/* Bay Print parent-display override 2026-06-08.
   Fixes legacy .nav-main flex and .site-footer grid rules shrinking the new container layout. */
.bp-storefront-header .bp-top-utility,
.bp-storefront-header .bp-main-header,
.bp-storefront-header .bp-primary-nav,
.site-footer.bp-footer-columns {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.bp-storefront-header .bp-container,
.site-footer.bp-footer-columns .bp-container {
    display: block !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    flex: none !important;
}

.bp-storefront-header .bp-top-utility-inner,
.bp-storefront-header .bp-primary-nav-inner {
    display: flex !important;
    width: 100% !important;
    max-width: 1400px !important;
}

.bp-storefront-header .bp-main-header-inner {
    display: grid !important;
    width: 100% !important;
    max-width: 1400px !important;
    grid-template-columns: auto minmax(140px, 1fr) auto !important;
}

.site-footer.bp-footer-columns .footer-link-panel {
    display: block !important;
    width: 100% !important;
    grid-column: auto !important;
    padding: 44px 0 22px !important;
}

.site-footer.bp-footer-columns .footer-link-columns {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 28px !important;
}

@media (min-width: 768px) {
    .bp-storefront-header .bp-container,
    .site-footer.bp-footer-columns .bp-container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}

@media (min-width: 1200px) {
    .bp-storefront-header .bp-container,
    .site-footer.bp-footer-columns .bp-container {
        padding-left: 32px !important;
        padding-right: 32px !important;
    }
}

@media (max-width: 767px) {
    .site-footer.bp-footer-columns .footer-link-columns {
        grid-template-columns: 1fr !important;
    }
}

html,
body {
    max-width: 100% !important;
    overflow-x: hidden !important;
}

.quick-sku-matrix-shop,
.quick-sku-matrix-content {
    min-width: 0 !important;
    max-width: 100% !important;
}

.quick-sku-matrix-table-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

/* Bay Print conversion refresh 2026-06-12 */
:root {
    --bp-cta-orange: #f36f21;
    --bp-cta-orange-dark: #c84f0e;
    --bp-system-green: #0f766e;
    --bp-ink: #17202a;
    --bp-soft-gray: #f5f7f9;
}

.button,
button[type="submit"] {
    border-radius: 8px;
}

.button,
.bp-button,
button[type="submit"] {
    background: var(--bp-cta-orange);
    border-color: var(--bp-cta-orange);
    color: #fff;
    font-weight: 800;
}

.button.secondary,
.bp-button.secondary {
    background: #fff;
    border-color: var(--bp-cta-orange);
    color: var(--bp-cta-orange-dark);
}

.button.ghost,
.button.danger {
    background: var(--bp-soft-gray);
    border-color: #d7dde4;
    color: var(--bp-ink);
}

.button.danger {
    border-color: #f3b5a1;
    color: #a13a15;
}

.bp-procurement-hero {
    background: #fff;
    border-bottom: 1px solid #e9edf2;
}

.bp-procurement-hero-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .72fr);
    align-items: center;
    gap: 36px;
    padding-top: clamp(28px, 5vw, 64px) !important;
    padding-bottom: clamp(24px, 4vw, 48px) !important;
}

.bp-procurement-copy h1 {
    max-width: 760px;
    margin: 0;
    color: var(--bp-ink);
    font-size: clamp(2rem, 4.3vw, 4.15rem);
    line-height: 1.04;
    letter-spacing: 0;
}

.bp-procurement-copy .lede {
    max-width: 720px;
    margin: 18px 0 0;
    color: #415160;
    font-size: clamp(1rem, 1.45vw, 1.2rem);
    line-height: 1.7;
}

.bp-procurement-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.bp-procurement-actions .button {
    min-height: 48px;
    justify-content: center;
}

.bp-procurement-trust {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 22px;
}

.bp-procurement-trust span {
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid #dbe5e7;
    border-radius: 8px;
    background: #f7fbfb;
}

.bp-procurement-trust strong {
    color: var(--bp-system-green);
    font-size: .98rem;
}

.bp-procurement-trust em {
    color: #596a77;
    font-size: .82rem;
    font-style: normal;
}

.bp-procurement-visual {
    margin: 0;
}

.bp-procurement-visual img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(23, 32, 42, .12);
}

.bp-scene-entry-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.bp-scene-entry-grid a {
    display: grid;
    gap: 8px;
    min-height: 144px;
    padding: 18px;
    border: 1px solid #e2e7ed;
    border-radius: 8px;
    background: #fff;
    color: var(--bp-ink);
    text-decoration: none;
}

.bp-scene-entry-grid span {
    width: max-content;
    padding: 4px 8px;
    border-radius: 999px;
    background: #e8f5f3;
    color: var(--bp-system-green);
    font-size: .76rem;
    font-weight: 800;
}

.bp-scene-entry-grid strong {
    font-size: 1.05rem;
}

.bp-scene-entry-grid em {
    color: #5a6875;
    font-size: .92rem;
    font-style: normal;
    line-height: 1.5;
}

.product-facts em {
    display: block;
    margin-top: 4px;
    color: #697783;
    font-size: .78rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.35;
}

.bp-stock-row em {
    display: block;
    margin-top: 3px;
    color: #697783;
    font-size: .78rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.35;
}

.bp-product-gallery > span[data-product-gallery-caption] {
    display: block;
    margin-top: 8px;
    color: #53616e;
    font-size: .9rem;
    font-weight: 800;
}

.bp-product-thumbs button.active,
.bp-product-thumbs button[aria-selected="true"] {
    border-color: var(--bp-cta-orange);
    color: var(--bp-cta-orange-dark);
}

.bp-static-price-breakdown {
    display: grid;
    gap: 8px;
    margin: 12px 0;
    padding: 0;
    list-style: none;
}

.bp-static-price-breakdown li {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 0;
    border-bottom: 1px solid #e4e9ef;
    color: #526170;
}

.bp-static-price-breakdown strong {
    color: var(--bp-ink);
}

.bp-price-note {
    margin: 8px 0 12px;
    color: #5d6b78;
    font-size: .9rem;
    line-height: 1.5;
}

.quote-next-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.quote-next-actions a {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    border: 1px solid #dfe5eb;
    border-radius: 8px;
    background: #fff;
    color: var(--bp-ink);
    font-size: .86rem;
    font-weight: 800;
    text-decoration: none;
}

.quick-order-visual img,
.quick-sku-matrix-visual img {
    border-radius: 8px;
}

.quick-sku-matrix-actions {
    gap: 6px;
}

.quick-sku-matrix-actions button,
.quick-sku-matrix-actions a,
.quantity-presets button {
    min-height: 34px;
    border-radius: 8px;
    white-space: nowrap;
}

.quick-order-aside {
    align-self: start;
    position: sticky;
    top: 88px;
}

.cart-checklist {
    display: grid;
    gap: 10px;
    margin: 16px 0;
    padding: 14px;
    border: 1px solid #dde6ea;
    border-radius: 8px;
    background: #f7fbfb;
}

.cart-checklist strong {
    color: var(--bp-ink);
}

.cart-checklist label {
    display: flex;
    gap: 9px;
    align-items: flex-start;
    color: #465766;
    font-size: .9rem;
    line-height: 1.45;
}

.cart-checklist input {
    margin-top: 3px;
    accent-color: var(--bp-system-green);
}

@media (max-width: 900px) {
    .bp-procurement-hero-inner,
    .bp-scene-entry-grid {
        grid-template-columns: 1fr;
    }

    .bp-procurement-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bp-procurement-visual {
        display: none;
    }
}

@media (max-width: 767px) {
    .bp-storefront-header .bp-top-utility-inner {
        min-height: 30px !important;
    }

    .bp-storefront-header .bp-main-header-inner {
        grid-template-columns: minmax(128px, auto) 1fr !important;
        gap: 8px !important;
        min-height: auto !important;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    .bp-hotline {
        display: none !important;
    }

    .bp-main-header .nav-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .bp-main-header .nav-actions .icon-link:first-child {
        display: none !important;
    }

    .bp-main-header .nav-actions .button,
    .bp-main-header .nav-actions .icon-link {
        min-height: 34px;
        padding-inline: 10px;
        font-size: .86rem;
        white-space: nowrap;
    }

    .bp-primary-nav-inner {
        min-height: 38px !important;
        gap: 8px !important;
        overflow-x: auto;
    }

    .bp-primary-nav-inner > a,
    .bp-mega-trigger summary {
        min-height: 30px;
        padding: 6px 10px;
        white-space: nowrap;
    }

    .bp-procurement-hero-inner {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .bp-procurement-copy h1 {
        font-size: clamp(1.72rem, 8vw, 2.55rem);
    }

    .bp-procurement-copy .lede {
        margin-top: 12px;
        font-size: .98rem;
        line-height: 1.55;
    }

    .bp-procurement-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 16px;
    }

    .bp-procurement-actions .button {
        width: 100%;
    }

    .bp-procurement-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        margin-top: 16px;
    }

    .bp-procurement-trust span {
        padding: 10px;
    }

    .bp-scene-entry-grid a {
        min-height: auto;
    }

    .quote-next-actions {
        grid-template-columns: 1fr;
    }

    .quick-order-aside {
        position: static;
    }
}

/* Bay Print final override guard - keep this at the end. */
.bp-container {
    width: 100%;
    max-width: 1400px;
    margin-inline: auto;
    box-sizing: border-box;
}

.bp-storefront-header .bp-brand-logo img,
.bp-storefront-header .brand-logo-frame img,
header .logo img {
    height: 44px !important;
    width: auto !important;
    max-height: 44px !important;
    max-width: 220px !important;
    object-fit: contain !important;
}

.bp-top-utility-inner nav {
    width: 100%;
    justify-content: flex-end !important;
    gap: 0 !important;
}

.bp-top-group + .bp-top-group {
    margin-left: 12px !important;
    padding-left: 12px !important;
    border-left: 1px solid rgba(255, 255, 255, .25) !important;
}

.bp-desktop-nav {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bp-mobile-menu {
    display: none;
}

.site-footer.bp-footer-columns .footer-link-columns {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: start !important;
}

.site-footer.bp-footer-columns .footer-links {
    align-items: flex-start !important;
    text-align: left !important;
}

.site-footer.bp-footer-columns .footer-links a,
.site-footer.bp-footer-columns .footer-links p {
    line-height: 1.8 !important;
}

.footer-logo-small .brand-logo-frame img {
    max-height: 40px !important;
    width: auto !important;
    max-width: 160px !important;
}

.contact-intake-section {
    max-width: 1400px !important;
    margin-inline: auto !important;
}

.bp-floating-whatsapp {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 80;
}

@media (min-width: 768px) {
    .bp-container {
        padding-inline: 24px;
    }
}

@media (min-width: 1200px) {
    .bp-container {
        padding-inline: 32px;
    }
}

@media (max-width: 1199px) {
    .site-footer.bp-footer-columns .footer-link-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .bp-container {
        padding-inline: 16px;
    }

    .bp-storefront-header .bp-brand-logo img,
    .bp-storefront-header .brand-logo-frame img,
    header .logo img {
        height: 36px !important;
        max-height: 36px !important;
        max-width: 180px !important;
    }

    .bp-top-utility-inner nav {
        justify-content: space-between !important;
    }

    .bp-top-group:not(.bp-top-group-primary):not(.bp-lang-switch) {
        display: none !important;
    }

    .bp-desktop-nav {
        display: none !important;
    }

    .bp-mobile-menu {
        display: block !important;
        width: 100%;
    }

    .site-footer.bp-footer-columns .footer-link-columns,
    .contact-intake-section {
        grid-template-columns: 1fr !important;
    }
}

/* Bay Print visual pass v2: clean logo, calmer header controls, mobile nav. */
.bp-storefront-header .brand-logo-frame,
.bp-storefront-header .brand-logo-frame.logo,
header .logo,
.footer-logo-small .brand-logo-frame {
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.bp-storefront-header .brand-logo-frame.logo,
header .logo {
    width: auto !important;
    max-width: 188px !important;
    height: 44px !important;
    max-height: 44px !important;
}

.bp-storefront-header .brand-logo-frame.logo img,
header .logo img {
    display: block !important;
    width: auto !important;
    height: 44px !important;
    max-width: 188px !important;
    max-height: 44px !important;
    object-fit: contain !important;
}

.footer-logo-small .brand-logo-frame,
.footer-logo-small .brand-logo-frame.logo {
    width: auto !important;
    max-width: 160px !important;
    height: 40px !important;
    max-height: 40px !important;
}

.footer-logo-small .brand-logo-frame img {
    height: 40px !important;
    max-height: 40px !important;
    max-width: 160px !important;
}

.bp-main-header-inner {
    grid-template-columns: minmax(150px, auto) minmax(0, 1fr) !important;
    gap: 18px !important;
}

.bp-main-header .nav-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    min-width: 0 !important;
}

.bp-main-header .nav-actions .icon-link,
.bp-main-header .nav-actions .button {
    min-height: 40px;
    border-radius: 8px;
    white-space: nowrap;
}

.bp-cart-action {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    border-color: rgba(23, 33, 43, .18) !important;
    background: #ffffff !important;
}

.bp-cart-icon {
    position: relative;
    width: 18px;
    height: 16px;
    border: 2px solid currentColor;
    border-top: 0;
    border-radius: 3px 3px 5px 5px;
}

.bp-cart-icon::before {
    content: "";
    position: absolute;
    left: 2px;
    right: 2px;
    top: -7px;
    height: 8px;
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
}

.bp-lang-switch {
    gap: 6px !important;
}

.bp-lang-switch span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 24px;
    border-radius: 999px;
    padding-inline: 8px;
    line-height: 1;
}

.bp-lang-switch span[aria-current="true"] {
    background: #e6f7f8;
    color: #047480;
}

.bp-lang-switch span[aria-disabled="true"] {
    color: #7a8792;
}

.bp-menu-icon {
    display: inline-grid;
    gap: 4px;
    width: 20px;
}

.bp-menu-icon i {
    display: block;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

.bp-mobile-menu summary {
    gap: 10px !important;
    justify-content: center !important;
    background: #fff !important;
    color: #17212b !important;
    border: 1px solid rgba(23, 33, 43, .14) !important;
    box-shadow: 0 6px 16px rgba(23, 33, 43, .05) !important;
}

.bp-procurement-visual img,
.bp-promo-card img,
.bp-category-card img,
.bp-product-card .product-thumb img,
.product-card img {
    background: linear-gradient(135deg, #f8fafc, #eef6f7) !important;
}

.bp-procurement-visual img {
    aspect-ratio: 4 / 3;
    height: auto !important;
    max-height: 520px;
    object-fit: cover;
    object-position: center;
}

.bp-top-utility-inner nav {
    align-items: center !important;
}

@media (max-width: 767px) {
    .bp-storefront-header .brand-logo-frame.logo,
    header .logo {
        max-width: 142px !important;
        height: 36px !important;
        max-height: 36px !important;
    }

    .bp-storefront-header .brand-logo-frame.logo img,
    header .logo img {
        height: 36px !important;
        max-width: 142px !important;
        max-height: 36px !important;
    }

    .bp-main-header-inner {
        grid-template-columns: minmax(132px, auto) minmax(0, 1fr) !important;
        gap: 10px !important;
        min-height: 56px !important;
    }

    .bp-main-header .nav-actions {
        grid-column: auto !important;
        display: flex !important;
        justify-content: flex-end !important;
        width: auto !important;
    }

    .bp-main-header .nav-actions .icon-link:nth-child(1),
    .bp-main-header .nav-actions .icon-link:nth-child(2) {
        display: none !important;
    }

    .bp-cart-action {
        width: 42px;
        min-width: 42px;
        height: 42px;
        padding: 0 !important;
        justify-content: center;
        border-radius: 50% !important;
    }

    .bp-cart-action .bp-action-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
    }

    .bp-main-header .nav-actions .button {
        min-height: 42px;
        padding-inline: 12px;
        border-radius: 8px;
    }

    .bp-top-group-primary a {
        max-width: 52vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bp-lang-switch {
        margin-left: auto !important;
        padding-left: 8px !important;
    }
}

/* Bay Print layout unification v3: one real container source. */
:root {
    --container-max: 1200px;
    --container-narrow: 760px;
    --container-pad: 24px;
    --bp-container-max: var(--container-max);
    --bp-container-narrow: var(--container-narrow);
}

.container,
.bp-container,
.bp-section > .bp-container,
.bp-process-band > .bp-container,
.bp-business-support > .bp-container,
.bp-storefront-header .bp-container,
.site-footer.bp-footer-columns .bp-container,
.contact-intake-section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: var(--container-max) !important;
    margin-inline: auto !important;
    padding-inline: var(--container-pad) !important;
}

.container-narrow,
.bp-container-narrow,
.section-head,
.storefront-command-head > div,
.bp-catalog-header > p,
.bp-product-section > p,
.cart-command-head > p,
.checkout-decision-head > p {
    max-width: var(--container-narrow) !important;
}

.bp-catalog-header,
.bp-catalog-filter,
.bp-catalog-products,
.product-grid,
.feature-grid,
.guide-grid,
.quick-order,
.quick-order-table,
.package-strip,
.section-link,
.split-cta,
.process-band,
.storefront-command-center,
.storefront-console-layout,
.storefront-assurance-grid {
    box-sizing: border-box;
    width: min(100%, var(--container-max)) !important;
    margin-inline: auto !important;
}

.bp-procurement-hero-inner {
    max-width: var(--container-max) !important;
}

@media (max-width: 767px) {
    :root {
        --container-pad: 16px;
    }

    .container,
    .bp-container,
    .bp-section > .bp-container,
    .bp-process-band > .bp-container,
    .bp-business-support > .bp-container,
    .bp-storefront-header .bp-container,
    .site-footer.bp-footer-columns .bp-container,
    .contact-intake-section {
        padding-inline: var(--container-pad) !important;
    }
}
