/* ========================================================================
   THE KHATOON SHOP v4.0.2 — FINAL SCREEN-FIT & PROPORTION LAYER
   Loaded after every historical theme layer. Presentation only: no product,
   variation, stock, checkout, payment, shipping, order or SEO data changes.
======================================================================== */

/* ---------- Shared screen-fit foundation ---------- */
html {
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
    scroll-padding-top: 18px;
}

body.tks-luxury-suite-v400 {
    --tks-screen-shell: min(1320px, calc(100% - 40px));
    --tks-content-shell: min(1180px, calc(100% - 40px));
    --tks-compact-section: clamp(42px, 4.8vw, 62px);
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
}

body.tks-luxury-suite-v400 *,
body.tks-luxury-suite-v400 *::before,
body.tks-luxury-suite-v400 *::after {
    box-sizing: border-box;
}

body.tks-luxury-suite-v400 :where(
    .site-header,
    .header-main,
    .site-main,
    .entry-content,
    .home-section,
    .woocommerce,
    .tks-page-shell,
    .tks-shop-layout,
    .tks-luxury-footer__inner,
    .wc-block-components-sidebar-layout,
    .wc-block-checkout__main,
    .wc-block-checkout__sidebar
) {
    min-width: 0;
    max-width: 100%;
}

body.tks-luxury-suite-v400 :where(img, svg, video, canvas, iframe) {
    max-width: 100%;
}

body.tks-luxury-suite-v400 :where(input, select, textarea, button) {
    max-width: 100%;
}

body.tks-luxury-suite-v400 :where(p, a, li, td, th, dd, address, .woocommerce-message, .woocommerce-error) {
    overflow-wrap: anywhere;
}

body.tks-luxury-suite-v400 .screen-reader-text:focus {
    z-index: 100000;
}

/* ---------- Announcement and header proportions ---------- */
body.tks-luxury-suite-v400 .announcement-bar {
    min-height: 31px !important;
}

body.tks-luxury-suite-v400 .announcement-inner {
    width: var(--tks-screen-shell) !important;
    min-height: 31px !important;
    padding: 5px 0 !important;
    gap: 18px !important;
}

body.tks-luxury-suite-v400 .announcement-inner span {
    font-size: 11px !important;
    line-height: 1.35 !important;
}

body.tks-luxury-suite-v400 .site-header {
    width: 100% !important;
}

body.tks-luxury-suite-v400 .header-main,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .header-main {
    width: var(--tks-screen-shell) !important;
    max-width: none !important;
    min-height: 90px !important;
    margin-inline: auto !important;
    padding: 10px 0 !important;
}

/* The uploaded logo contains generous transparent canvas. A larger visible
   stage fixes the undersized mark without stretching or replacing the logo. */
body.tks-luxury-suite-v400 .brand-logo,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo {
    width: 220px !important;
    max-width: 220px !important;
    min-width: 0 !important;
    min-height: 70px !important;
    overflow: visible !important;
}

body.tks-luxury-suite-v400 .brand-logo .custom-logo-link,
body.tks-luxury-suite-v400 .brand-logo > a,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo .custom-logo-link {
    width: 100% !important;
    max-width: 220px !important;
    min-height: 70px !important;
    justify-content: flex-start !important;
    overflow: visible !important;
}

body.tks-luxury-suite-v400 .brand-logo img,
body.tks-luxury-suite-v400 .custom-logo,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo img {
    display: block !important;
    width: 214px !important;
    max-width: 214px !important;
    height: 76px !important;
    max-height: 76px !important;
    object-fit: contain !important;
    object-position: left center !important;
    transform: scale(1.08) !important;
    transform-origin: left center !important;
}

body.tks-luxury-suite-v400 .desktop-product-search {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 620px !important;
    margin-inline: auto !important;
}

body.tks-luxury-suite-v400 .header-actions {
    justify-content: flex-end !important;
}

body.tks-luxury-suite-v400 .header-action {
    min-width: 44px !important;
    min-height: 44px !important;
}

@media (min-width: 1181px) {
    body.tks-luxury-suite-v400 .header-main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .header-main {
        grid-template-columns: 220px minmax(360px, 1fr) minmax(280px, auto) !important;
        column-gap: 22px !important;
    }
}

@media (min-width: 981px) and (max-width: 1180px) {
    body.tks-luxury-suite-v400 .header-main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .header-main {
        grid-template-columns: 180px minmax(280px, 1fr) minmax(250px, auto) !important;
        column-gap: 14px !important;
    }

    body.tks-luxury-suite-v400 .brand-logo,
    body.tks-luxury-suite-v400 .brand-logo .custom-logo-link,
    body.tks-luxury-suite-v400 .brand-logo > a {
        width: 180px !important;
        max-width: 180px !important;
    }

    body.tks-luxury-suite-v400 .brand-logo img,
    body.tks-luxury-suite-v400 .custom-logo {
        width: 174px !important;
        max-width: 174px !important;
        height: 68px !important;
        max-height: 68px !important;
    }
}

/* ---------- Standard pages and global vertical rhythm ---------- */
body.tks-luxury-suite-v400 .tks-page-shell,
body.tks-luxury-suite-v400 .site-main > article > .entry-content,
body.tks-luxury-suite-v400 .site-main > .woocommerce,
body.tks-luxury-suite-v400 .woocommerce-page .site-main {
    width: var(--tks-screen-shell);
    margin-inline: auto;
}

body.tks-luxury-suite-v400 .tks-page-shell {
    padding-top: 24px !important;
    padding-bottom: 50px !important;
}

body.tks-luxury-suite-v400 .entry-header,
body.tks-luxury-suite-v400 .page-header {
    margin-bottom: 24px !important;
}

body.tks-luxury-suite-v400 :where(.entry-title, .page-title, .woocommerce-products-header__title) {
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    font-size: clamp(34px, 4.4vw, 56px) !important;
    line-height: 1.06 !important;
}

body.tks-luxury-suite-v400 .woocommerce-notices-wrapper:empty,
body.tks-luxury-suite-v400 .woocommerce-form-coupon-toggle:empty {
    display: none !important;
}

/* ---------- Homepage: premium, compact, and screen-fitted ---------- */
body.tks-luxury-suite-v400.home .site-main,
body.tks-luxury-suite-v400.home .homepage {
    width: 100% !important;
    max-width: 100% !important;
}

body.tks-luxury-suite-v400 .prompt-hero,
body.tks-luxury-suite-v400 .hero {
    min-height: 510px !important;
    max-width: 100% !important;
}

body.tks-luxury-suite-v400 .prompt-hero-copy {
    min-width: 0 !important;
    padding: 42px clamp(24px, 4.2vw, 54px) !important;
}

body.tks-luxury-suite-v400 .prompt-hero-copy h1 {
    margin: 14px 0 20px !important;
    font-size: clamp(43px, 5.1vw, 70px) !important;
    line-height: .99 !important;
}

body.tks-luxury-suite-v400 .prompt-hero-copy p {
    margin-bottom: 24px !important;
    font-size: clamp(15px, 1.4vw, 18px) !important;
    line-height: 1.58 !important;
}

body.tks-luxury-suite-v400 .prompt-hero-visual {
    min-height: 440px !important;
}

body.tks-luxury-suite-v400 .prompt-trust-strip {
    min-height: 72px !important;
    padding-block: 12px !important;
}

body.tks-luxury-suite-v400 .home-section,
body.tks-luxury-suite-v400 .homepage-premium .home-section {
    width: var(--tks-screen-shell) !important;
    margin-inline: auto !important;
    padding-top: var(--tks-compact-section) !important;
    padding-bottom: var(--tks-compact-section) !important;
}

body.tks-luxury-suite-v400 .home-section-heading {
    margin-bottom: 22px !important;
}

body.tks-luxury-suite-v400 .home-section-heading h2 {
    margin-bottom: 10px !important;
    font-size: clamp(30px, 3.4vw, 45px) !important;
    line-height: 1.08 !important;
}

body.tks-luxury-suite-v400 .home-section-subtitle {
    margin-top: 0 !important;
    line-height: 1.55 !important;
}

body.tks-luxury-suite-v400 :where(.category-grid, .product-grid, .home-social-grid) {
    gap: 16px !important;
}

body.tks-luxury-suite-v400 .category-card-media {
    max-height: 220px;
}

body.tks-luxury-suite-v400 .product-card-body {
    min-height: 154px !important;
    padding: 12px !important;
}

body.tks-luxury-suite-v400 :where(.home-promo-grid, .home-spotlight, .home-newsletter, .home-testimonials, .home-faq) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body.tks-luxury-suite-v400 .home-newsletter {
    min-height: 0 !important;
}

/* Home brand cards: make actual brand artwork prominent instead of a short
   strip. This also covers product-backed brand visuals. */
body.tks-luxury-suite-v400 .brand-carousel-card {
    min-height: 204px !important;
    padding: 12px !important;
}

body.tks-luxury-suite-v400 .brand-carousel-logo {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 132px !important;
    min-height: 132px !important;
    padding: 6px !important;
    overflow: hidden !important;
}

body.tks-luxury-suite-v400 .brand-carousel-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    padding: 4px !important;
    object-fit: contain !important;
    object-position: center !important;
}

body.tks-luxury-suite-v400 .brand-carousel-card.is-product .brand-carousel-logo img {
    padding: 2px !important;
}

body.tks-luxury-suite-v400 .brand-carousel-card strong {
    margin-top: 7px !important;
    font-size: 15px !important;
}

/* ---------- Shop archive and compact catalogue cards ---------- */
body.tks-luxury-suite-v400 .tks-shop-layout {
    width: var(--tks-screen-shell) !important;
    margin-inline: auto !important;
    gap: 22px !important;
}

body.tks-luxury-suite-v400 .tks-shop-filters {
    width: 250px !important;
    min-width: 0 !important;
}

body.tks-luxury-suite-v400 ul.products {
    gap: 16px !important;
}

@media (min-width: 1281px) {
    body.tks-luxury-suite-v400 ul.products.columns-4,
    body.tks-luxury-suite-v400 ul.products.columns-5,
    body.tks-luxury-suite-v400 ul.products.columns-6,
    body.tks-luxury-suite-v400 .tks-shop-products ul.products {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

body.tks-luxury-suite-v400 ul.products li.product {
    min-width: 0 !important;
    margin: 0 !important;
}

body.tks-luxury-suite-v400 ul.products li.product .woocommerce-loop-product__link {
    min-width: 0 !important;
}

body.tks-luxury-suite-v400 ul.products li.product a img {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    object-fit: contain !important;
}

body.tks-luxury-suite-v400 ul.products li.product .woocommerce-loop-product__title {
    min-height: 2.8em !important;
    margin: 9px 11px 5px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

body.tks-luxury-suite-v400 ul.products li.product .price {
    margin: 5px 11px 11px !important;
}

body.tks-luxury-suite-v400 ul.products li.product .button {
    min-height: 42px !important;
    margin: 0 10px 11px !important;
    padding: 9px 11px !important;
}

/* ---------- Single product: balanced image and buying panel ---------- */
@media (min-width: 981px) {
    body.tks-luxury-suite-v400.single-product div.product {
        display: grid !important;
        grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr) !important;
        align-items: start !important;
        gap: clamp(30px, 4.4vw, 64px) !important;
        width: var(--tks-screen-shell) !important;
        margin-inline: auto !important;
    }

    body.tks-luxury-suite-v400.single-product div.product > :where(.woocommerce-tabs, .related, .upsells) {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }

    body.tks-luxury-suite-v400.single-product div.product .woocommerce-product-gallery,
    body.tks-luxury-suite-v400.single-product div.product .summary {
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }
}

body.tks-luxury-suite-v400.single-product .product .woocommerce-product-gallery__wrapper,
body.tks-luxury-suite-v400.single-product .product .woocommerce-product-gallery__image {
    max-width: 100% !important;
}

body.tks-luxury-suite-v400.single-product .product .woocommerce-product-gallery__image img {
    width: 100% !important;
    max-height: 640px !important;
    object-fit: contain !important;
}

body.tks-luxury-suite-v400.single-product .summary .product_title {
    margin: 0 0 14px !important;
    font-size: clamp(34px, 4vw, 52px) !important;
    line-height: 1.06 !important;
}

body.tks-luxury-suite-v400.single-product .summary > :where(p, .price, form.cart, .product_meta) {
    margin-bottom: 18px !important;
}

body.tks-luxury-suite-v400.single-product form.variations_form table.variations :where(th, td) {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
}

body.tks-luxury-suite-v400.single-product .woocommerce-tabs {
    margin-top: 42px !important;
    padding-top: 0 !important;
}

body.tks-luxury-suite-v400.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px 18px !important;
    margin-bottom: 22px !important;
    overflow: visible !important;
}

body.tks-luxury-suite-v400.single-product .woocommerce-tabs .panel {
    max-width: 980px !important;
    margin: 0 auto !important;
}

/* ---------- Cart, account, forms, order received ---------- */
body.tks-luxury-suite-v400.woocommerce-cart .site-main,
body.tks-luxury-suite-v400.woocommerce-account .site-main,
body.tks-luxury-suite-v400.woocommerce-order-received .site-main {
    width: var(--tks-screen-shell) !important;
    margin-inline: auto !important;
    padding-top: 24px !important;
    padding-bottom: 50px !important;
}

@media (min-width: 981px) {
    body.tks-luxury-suite-v400.woocommerce-cart .woocommerce-cart-form {
        float: left !important;
        width: calc(64% - 13px) !important;
    }

    body.tks-luxury-suite-v400.woocommerce-cart .cart-collaterals {
        float: right !important;
        width: calc(36% - 13px) !important;
    }
}

body.tks-luxury-suite-v400.woocommerce-cart .cart_totals,
body.tks-luxury-suite-v400.woocommerce-account .tks-account-content,
body.tks-luxury-suite-v400.woocommerce-account .woocommerce-MyAccount-content {
    padding: 20px !important;
}

body.tks-luxury-suite-v400.woocommerce-cart table.cart img {
    width: 76px !important;
    max-width: 76px !important;
    height: 76px !important;
    object-fit: contain !important;
}

body.tks-luxury-suite-v400.woocommerce-account .tks-account-shell {
    width: var(--tks-screen-shell) !important;
    grid-template-columns: 240px minmax(0, 1fr) !important;
    gap: 22px !important;
}

body.tks-luxury-suite-v400.woocommerce-account #customer_login {
    gap: 20px !important;
}

body.tks-luxury-suite-v400.woocommerce-account #customer_login :where(.u-column1, .u-column2) {
    padding: 22px !important;
}

body.tks-luxury-suite-v400.woocommerce-order-received :where(.woocommerce-order-overview, .woocommerce-order-details, .woocommerce-customer-details) {
    margin-bottom: 26px !important;
}

body.tks-luxury-suite-v400.woocommerce-order-received .woocommerce-columns--addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

/* ---------- Checkout: compact, readable, and never horizontally clipped ---------- */
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-premium-checkout-page,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .entry-header.tks-checkout-page-header,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .entry-content {
    width: var(--tks-content-shell) !important;
    max-width: none !important;
    margin-inline: auto !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-premium-checkout-page {
    padding-top: 18px !important;
    padding-bottom: 38px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .entry-header.tks-checkout-page-header {
    padding: 22px 0 16px !important;
    margin-bottom: 18px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-title-row {
    padding-bottom: 14px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-progress {
    margin: 16px 0 20px !important;
}

@media (min-width: 981px) {
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(360px, 430px) !important;
        gap: 24px !important;
        align-items: start !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__sidebar {
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__sidebar {
        position: sticky !important;
        top: 18px !important;
        align-self: start !important;
    }
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .col2-set,
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review {
    min-width: 0 !important;
    margin-bottom: 16px !important;
    padding: 18px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) :where(
    .wc-block-components-checkout-step__heading,
    .wc-block-components-checkout-step__title,
    #order_review_heading
) {
    margin-bottom: 13px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) :where(
    .wc-block-components-radio-control__option,
    #payment ul.payment_methods li
) {
    min-height: 56px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) :where(
    .wc-block-components-radio-control-accordion-content,
    .payment_box
) {
    padding: 14px 16px !important;
    line-height: 1.52 !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-step-navigation {
    margin-top: 16px !important;
    padding-top: 14px !important;
}

body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-trust {
    margin: 22px auto 0 !important;
}

/* Checkout should finish after trust and order controls, not with a second
   marketing page below the purchase flow. */
body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-newsletter {
    display: none !important;
}

/* ---------- Wholesale, policies and supporting pages ---------- */
body.tks-luxury-suite-v400 .tks-wholesale-hero {
    min-height: 410px !important;
}

body.tks-luxury-suite-v400 .tks-wholesale-collage {
    min-height: 350px !important;
}

body.tks-luxury-suite-v400 :where(.tks-policy-shell, .tks-contact-shell, .tks-about-shell, .tks-wholesale-shell) {
    width: var(--tks-screen-shell) !important;
    margin-inline: auto !important;
    padding-top: 32px !important;
    padding-bottom: 52px !important;
}

/* ---------- Footer: complete but not excessively tall ---------- */
body.tks-luxury-suite-v400 .tks-luxury-footer {
    margin-top: 0 !important;
}

body.tks-luxury-suite-v400 .tks-luxury-footer__inner {
    width: var(--tks-screen-shell) !important;
    margin-inline: auto !important;
    gap: 24px !important;
    padding-top: 38px !important;
    padding-bottom: 30px !important;
}

body.tks-luxury-suite-v400 .footer-logo {
    width: 210px !important;
    max-width: 100% !important;
}

body.tks-luxury-suite-v400 .footer-logo img {
    width: 205px !important;
    max-width: 100% !important;
    max-height: 82px !important;
    object-fit: contain !important;
    object-position: left center !important;
}

body.tks-luxury-suite-v400 .tks-footer-column h2,
body.tks-luxury-suite-v400 .tks-footer-payment h2 {
    margin-bottom: 12px !important;
}

body.tks-luxury-suite-v400 .tks-footer-column a {
    min-height: 32px !important;
    padding-block: 6px !important;
}

body.tks-luxury-suite-v400 .tks-footer-bottom {
    min-height: 42px !important;
    padding: 10px 20px !important;
}

/* ---------- Tablet ---------- */
@media (max-width: 980px) {
    body.tks-luxury-suite-v400 {
        --tks-screen-shell: min(860px, calc(100% - 28px));
        --tks-content-shell: min(760px, calc(100% - 28px));
        --tks-compact-section: 42px;
    }

    body.tks-luxury-suite-v400 .header-main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .header-main {
        grid-template-columns: 46px minmax(130px, 1fr) auto !important;
        min-height: 82px !important;
        column-gap: 10px !important;
        padding: 8px 0 !important;
    }

    body.tks-luxury-suite-v400 .brand-logo,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo {
        width: 164px !important;
        max-width: 164px !important;
        min-height: 60px !important;
        justify-self: center !important;
        justify-content: center !important;
    }

    body.tks-luxury-suite-v400 .brand-logo .custom-logo-link,
    body.tks-luxury-suite-v400 .brand-logo > a {
        width: 164px !important;
        max-width: 164px !important;
        min-height: 60px !important;
        justify-content: center !important;
    }

    body.tks-luxury-suite-v400 .brand-logo img,
    body.tks-luxury-suite-v400 .custom-logo,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo img {
        width: 158px !important;
        max-width: 158px !important;
        height: 62px !important;
        max-height: 62px !important;
        object-position: center !important;
        transform-origin: center !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero,
    body.tks-luxury-suite-v400 .hero {
        min-height: 0 !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-copy {
        padding: 38px 30px !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-visual {
        min-height: 330px !important;
    }

    body.tks-luxury-suite-v400 .tks-shop-layout {
        display: block !important;
    }

    body.tks-luxury-suite-v400 .tks-shop-filters {
        width: 100% !important;
    }

    body.tks-luxury-suite-v400 .tks-shop-products ul.products,
    body.tks-luxury-suite-v400 ul.products.columns-4,
    body.tks-luxury-suite-v400 ul.products.columns-5,
    body.tks-luxury-suite-v400 ul.products.columns-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.tks-luxury-suite-v400.single-product div.product {
        width: var(--tks-screen-shell) !important;
        margin-inline: auto !important;
    }

    body.tks-luxury-suite-v400.woocommerce-cart .woocommerce-cart-form,
    body.tks-luxury-suite-v400.woocommerce-cart .cart-collaterals {
        float: none !important;
        width: 100% !important;
    }

    body.tks-luxury-suite-v400.woocommerce-cart .cart-collaterals {
        margin-top: 22px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-account .tks-account-shell {
        grid-template-columns: 1fr !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__sidebar {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__sidebar {
        position: static !important;
        margin-top: 18px !important;
    }

    body.tks-luxury-suite-v400 .tks-luxury-footer__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.tks-luxury-suite-v400 :where(.tks-footer-brand, .tks-footer-payment) {
        grid-column: 1 / -1 !important;
    }
}

/* ---------- Phones ---------- */
@media (max-width: 680px) {
    body.tks-luxury-suite-v400 {
        --tks-screen-shell: calc(100% - 24px);
        --tks-content-shell: calc(100% - 24px);
        --tks-compact-section: 34px;
        padding-bottom: calc(68px + env(safe-area-inset-bottom)) !important;
    }

    body.tks-luxury-suite-v400 .announcement-inner {
        width: calc(100% - 20px) !important;
        gap: 8px !important;
    }

    body.tks-luxury-suite-v400 .announcement-inner span {
        font-size: 9.5px !important;
        white-space: nowrap !important;
    }

    body.tks-luxury-suite-v400 .header-main,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .header-main {
        grid-template-columns: 44px minmax(120px, 1fr) auto !important;
        min-height: 76px !important;
        column-gap: 6px !important;
        padding: 6px 0 !important;
    }

    body.tks-luxury-suite-v400 .brand-logo,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo,
    body.tks-luxury-suite-v400 .brand-logo .custom-logo-link,
    body.tks-luxury-suite-v400 .brand-logo > a {
        width: 144px !important;
        max-width: 144px !important;
        min-height: 54px !important;
    }

    body.tks-luxury-suite-v400 .brand-logo img,
    body.tks-luxury-suite-v400 .custom-logo,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .brand-logo img {
        width: 140px !important;
        max-width: 140px !important;
        height: 56px !important;
        max-height: 56px !important;
        transform: scale(1.06) !important;
    }

    body.tks-luxury-suite-v400 .mobile-menu-toggle,
    body.tks-luxury-suite-v400 .header-action,
    body.tks-luxury-suite-v400 .mobile-shop-nav a,
    body.tks-luxury-suite-v400 .mobile-shop-nav button {
        min-width: 44px !important;
        min-height: 44px !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-copy {
        padding: 30px 20px 28px !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-copy h1 {
        margin: 10px 0 15px !important;
        font-size: clamp(38px, 12vw, 52px) !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-copy p {
        margin-bottom: 19px !important;
        font-size: 15px !important;
    }

    body.tks-luxury-suite-v400 .prompt-hero-visual {
        min-height: 260px !important;
    }

    body.tks-luxury-suite-v400 .prompt-trust-strip {
        min-height: 0 !important;
        padding: 11px 12px !important;
    }

    body.tks-luxury-suite-v400 .home-section-heading {
        margin-bottom: 17px !important;
    }

    body.tks-luxury-suite-v400 .home-section-heading h2 {
        font-size: clamp(28px, 9vw, 38px) !important;
    }

    body.tks-luxury-suite-v400 .brand-carousel-card {
        flex: 0 0 164px !important;
        min-height: 184px !important;
    }

    body.tks-luxury-suite-v400 .brand-carousel-logo {
        height: 116px !important;
        min-height: 116px !important;
    }

    body.tks-luxury-suite-v400 .tks-shop-products ul.products,
    body.tks-luxury-suite-v400 ul.products.columns-4,
    body.tks-luxury-suite-v400 ul.products.columns-5,
    body.tks-luxury-suite-v400 ul.products.columns-6,
    body.tks-luxury-suite-v400 ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body.tks-luxury-suite-v400 ul.products li.product .woocommerce-loop-product__title {
        margin: 8px 9px 4px !important;
        font-size: 12.5px !important;
    }

    body.tks-luxury-suite-v400 ul.products li.product .price {
        margin-inline: 9px !important;
        font-size: 13px !important;
    }

    body.tks-luxury-suite-v400 ul.products li.product .button {
        min-height: 40px !important;
        margin: 0 8px 9px !important;
        font-size: 11px !important;
    }

    body.tks-luxury-suite-v400.single-product .summary .product_title {
        font-size: clamp(31px, 10vw, 42px) !important;
    }

    body.tks-luxury-suite-v400.single-product .product .woocommerce-product-gallery__image img {
        max-height: 480px !important;
    }

    body.tks-luxury-suite-v400.single-product .woocommerce-tabs {
        margin-top: 30px !important;
    }

    body.tks-luxury-suite-v400.single-product .woocommerce-tabs ul.tabs {
        flex-wrap: nowrap !important;
        gap: 0 !important;
        width: 100% !important;
        overflow-x: auto !important;
        scrollbar-width: none;
    }

    body.tks-luxury-suite-v400.single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar {
        display: none;
    }

    body.tks-luxury-suite-v400.single-product .woocommerce-tabs ul.tabs li {
        flex: 0 0 auto !important;
    }

    body.tks-luxury-suite-v400.woocommerce-cart table.cart img {
        width: 62px !important;
        max-width: 62px !important;
        height: 62px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-account #customer_login {
        grid-template-columns: 1fr !important;
    }

    body.tks-luxury-suite-v400.woocommerce-order-received .woocommerce-columns--addresses {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .entry-header.tks-checkout-page-header {
        padding-top: 16px !important;
        margin-bottom: 12px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .col2-set,
    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review {
        margin-bottom: 12px !important;
        padding: 14px !important;
        border-radius: 12px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-step-navigation {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-step-navigation button {
        width: 100% !important;
    }

    body.tks-luxury-suite-v400.woocommerce-checkout:not(.woocommerce-order-received) .tks-checkout-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.tks-luxury-suite-v400 .tks-wholesale-hero,
    body.tks-luxury-suite-v400 .tks-wholesale-collage {
        min-height: 0 !important;
    }

    body.tks-luxury-suite-v400 .tks-luxury-footer__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px 14px !important;
        padding-top: 30px !important;
        padding-bottom: 24px !important;
    }

    body.tks-luxury-suite-v400 .tks-footer-brand,
    body.tks-luxury-suite-v400 .tks-footer-payment {
        grid-column: 1 / -1 !important;
    }

    body.tks-luxury-suite-v400 .footer-logo,
    body.tks-luxury-suite-v400 .footer-logo img {
        width: 180px !important;
        max-width: 180px !important;
    }

    body.tks-luxury-suite-v400 .tks-footer-column h2,
    body.tks-luxury-suite-v400 .tks-footer-payment h2 {
        font-size: 13px !important;
    }

    body.tks-luxury-suite-v400 .tks-footer-column a {
        min-height: 34px !important;
        font-size: 12px !important;
    }

    body.tks-luxury-suite-v400 .mobile-shop-nav {
        min-height: 64px !important;
        padding-bottom: env(safe-area-inset-bottom) !important;
    }

    body.tks-luxury-suite-v400 .tks-back-to-top {
        bottom: calc(78px + env(safe-area-inset-bottom)) !important;
    }
}

@media (max-width: 390px) {
    body.tks-luxury-suite-v400 {
        --tks-screen-shell: calc(100% - 18px);
        --tks-content-shell: calc(100% - 18px);
    }

    body.tks-luxury-suite-v400 .brand-logo,
    body.tks-luxury-suite-v400 .brand-logo .custom-logo-link,
    body.tks-luxury-suite-v400 .brand-logo > a {
        width: 126px !important;
        max-width: 126px !important;
    }

    body.tks-luxury-suite-v400 .brand-logo img,
    body.tks-luxury-suite-v400 .custom-logo {
        width: 123px !important;
        max-width: 123px !important;
    }

    body.tks-luxury-suite-v400 .header-actions {
        gap: 0 !important;
    }

    body.tks-luxury-suite-v400 .header-action {
        padding-inline: 4px !important;
    }

    /* Keep the proven two-column mobile shopping pattern even on narrow
       phones; cards shrink rather than becoming an excessively long list. */
    body.tks-luxury-suite-v400 .tks-shop-products ul.products,
    body.tks-luxury-suite-v400 ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.tks-luxury-suite-v400 *,
    body.tks-luxury-suite-v400 *::before,
    body.tks-luxury-suite-v400 *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
