/* Shared density consumers. Each selector is enabled only when that exact field
 * resolves for this device. Legacy/unset values do not alter component layout.
 * Keep non-form buttons, images, explicit Widget margins and product grid counts independent.
 */

/* Compact newsletter headings match the smaller panel; retain body readability. */
html[data-ca-layout-density="compact"] :is(.ca-footer-top .ca-footer-newsletter-title,.footer-top .footer-newsletter-title) {
    font-size: 24px;
    line-height: 1.25;
}
@media (max-width: 1023px) {
    html[data-ca-layout-density="compact"] :is(.ca-footer-top .ca-footer-newsletter-title,.footer-top .footer-newsletter-title) {
        font-size: 22px;
    }
}
@media (max-width: 767px) {
    html[data-ca-layout-density="compact"] :is(.ca-footer-top .ca-footer-newsletter-title,.footer-top .footer-newsletter-title) {
        font-size: 20px;
    }
}
html[data-ca-layout-density="compact"] :is(.ca-footer-top-layout-horizontal .ca-footer-newsletter-title,.footer-top-layout-horizontal .footer-newsletter-title) {
    font-size: 20px;
}

@media (min-width: 1024px) {
    html[data-ca-spacing-regions~="page-section-space-desktop"] .ca-page-heading-simple:has(.ca-heading-simple .breadcrumbs li) #maincontent,
    html[data-ca-spacing-regions~="page-section-space-desktop"] body:is(.catalog-category-view,.catalogsearch-result-index,.themeconfig-allproducts-index) .page-main {
        margin-block: var(--ca-page-section-space);
    }
    html[data-ca-spacing-regions~="heading-gap-desktop"] .column.main .ca-content-title,
    html[data-ca-spacing-regions~="heading-gap-desktop"] .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-heading-gap);
    }
    html[data-ca-spacing-regions~="heading-gap-desktop"] .column.main > .ca-catalog-products {
        padding-top: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-desktop"] .ca-catalog-products > .toolbar-products,
    html[data-ca-spacing-regions~="toolbar-gap-desktop"] .column.main > .toolbar-products {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-desktop"] .ca-catalog-products .products.wrapper > ul,
    html[data-ca-spacing-regions~="toolbar-gap-desktop"] .column.main > .products.wrapper {
        padding-top: var(--ca-toolbar-gap); margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-desktop"] .ca-catalog-products .products.wrapper > ul {
        padding-bottom: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-desktop"] .ca-catalog-products .products.wrapper ~ .toolbar-products,
    html[data-ca-spacing-regions~="pagination-gap-desktop"] .column.main > .products.wrapper ~ .toolbar-products {
        padding-top: var(--ca-pagination-gap); margin-top: 0; margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="sidebar-gap-desktop"] body.page-layout-2columns-left .columns,
    html[data-ca-spacing-regions~="sidebar-gap-desktop"] body.page-layout-2columns-right .columns,
    html[data-ca-spacing-regions~="sidebar-gap-desktop"] body.page-layout-3columns .columns {
        column-gap: var(--ca-sidebar-gap);
    }
    html[data-ca-spacing-regions~="list-gap-desktop"] .ca-catalog-products .mode-list > ul,
    html[data-ca-spacing-regions~="list-gap-desktop"] .products-list > .product-items {
        row-gap: 0;
    }
    html[data-ca-spacing-regions~="list-gap-desktop"] .ca-catalog-products .products.wrapper.mode-list .product-item.card,
    html[data-ca-spacing-regions~="list-gap-desktop"] .products-list > .product-items > .product-item {
        margin-bottom: var(--ca-list-gap);
    }
    html[data-ca-spacing-regions~="list-gap-desktop"] .ca-catalog-products .products.wrapper.mode-list > ul > li:last-child .product-item.card,
    html[data-ca-spacing-regions~="list-gap-desktop"] .products-list > .product-items > .product-item:last-child {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="list-padding-desktop"] .ca-catalog-products .mode-list .product-item .product-info,
    html[data-ca-spacing-regions~="list-padding-desktop"] .products-list .product.details.product-item-details {
        padding: var(--ca-list-padding);
    }
    html[data-ca-spacing-regions~="product-card-padding-desktop"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-padding-desktop"] .products-grid .product-item .product-item-details,
    html[data-ca-spacing-regions~="product-card-padding-desktop"] .mode-grid .product-item .product-info {
        padding: var(--ca-product-card-padding);
    }
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .mode-grid .product-item .product-info {
        row-gap: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .products-grid .product-item .product-info > div,
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .mode-grid .product-item .product-info > div {
        margin-block: 0; padding-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .products-grid .product-item .product-item-details > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-desktop"] .products-grid .product-item .product-item-details > * + * {
        margin-top: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="detail-column-gap-desktop"] .catalog-product-view .ca-product-detail-grid {
        column-gap: var(--ca-detail-column-gap); grid-template-columns: minmax(0, var(--ca-product-gallery-width,40%)) minmax(0,1fr) !important;
    }
    html[data-ca-spacing-regions~="detail-column-gap-desktop"] .catalog-product-view .columns .column.main > .product-info-main:not(:has(.ca-product-detail-grid)) {
        width: max(0px, calc(100% - var(--ca-product-gallery-width,40%) - var(--ca-detail-column-gap)));
    }
    html[data-ca-spacing-regions~="detail-info-gap-desktop"] .product-info-main .ca-product-info {
        gap: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-info-gap-desktop"] .catalog-product-view .columns .column.main > .product-info-main:not(:has(.ca-product-detail-grid)) > * + * {
        margin-top: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .catalog-product-view .ca-product-detail-grid {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .catalog-product-view .ca-product-sections {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .product-info-main .ca-product-related,
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .catalog-product-view .product.info.detailed,
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .catalog-product-view .block.related {
        margin-top: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-desktop"] .ca-product-tab-panel,
    html[data-ca-spacing-regions~="detail-panel-padding-desktop"] .ca-product-details-list-item {
        padding-block: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-desktop"] .ca-product-tabs--vertical .ca-product-tab-panel {
        padding-inline-start: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-desktop"] .product.info.detailed .product.data.items > .item.content {
        padding: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-desktop"] .ca-site-footer .ca-footer-content {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-desktop"] .page-footer .footer-row,
    html[data-ca-spacing-regions~="footer-padding-desktop"] .page-footer .footer-links-only {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-desktop"] .ca-footer-top-style-overlap + .ca-footer-content {
        padding-top: calc(var(--ca-footer-padding) + 3rem);
    }
    html[data-ca-spacing-regions~="footer-padding-desktop"] .footer-top-container-overlap + .footer-custom-content-container {
        padding-top: 48px;
    }
    html[data-ca-spacing-regions~="footer-column-gap-desktop"] .ca-site-footer .ca-footer-row,
    html[data-ca-spacing-regions~="footer-column-gap-desktop"] .page-footer .footer-row {
        column-gap: var(--ca-footer-column-gap);
    }
    html[data-ca-spacing-regions~="footer-title-gap-desktop"] .ca-site-footer .footer-column-title:not(button),
    html[data-ca-spacing-regions~="footer-title-gap-desktop"] .ca-footer-column-accordion-body h4,
    html[data-ca-spacing-regions~="footer-title-gap-desktop"] .page-footer .footer-column-title:not(button) {
        margin-bottom: var(--ca-footer-title-gap);
    }
    html[data-ca-spacing-regions~="footer-link-gap-desktop"] .ca-footer-column-accordion-body li + li,
    html[data-ca-spacing-regions~="footer-link-gap-desktop"] .footer-column-accordion-body li + li {
        margin-top: var(--ca-footer-link-gap);
    }
    html[data-ca-spacing-regions~="newsletter-padding-desktop"] .ca-footer-top .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-desktop"] .footer-top .footer-top-inner {
        padding-block: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="newsletter-padding-desktop"] .ca-footer-top-style-overlap .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-desktop"] .footer-top-style-overlap .footer-top-inner {
        padding-inline: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="widget-title-gap-desktop"] .ca-widget-spacing .ca-widget-section-header {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="widget-title-gap-desktop"] .ca-widget-spacing .ca-widget-section-title:not(.ca-widget-section-header *),
    html[data-ca-spacing-regions~="widget-title-gap-desktop"] .ca-widget-spacing .ca-widget-title:not(.ca-widget-section-title):not(.ca-widget-section-header *) {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="content-gap-desktop"] .ca-density-content-grid,
    html[data-ca-spacing-regions~="content-gap-desktop"] .blog-post-list .posts-grid,
    html[data-ca-spacing-regions~="content-gap-desktop"] .codingants-brand-list .codingants-brand-list__items,
    html[data-ca-spacing-regions~="content-gap-desktop"] .codingants-brand-widget--grid .codingants-brand-widget__items {
        gap: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-desktop"] .blog-post-list.blog-mode-list .post-item {
        margin-bottom: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-desktop"] .ca-density-content-list > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="content-gap-desktop"] .ca-density-content-list > * + * {
        margin-top: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-padding-desktop"] .ca-density-content-panel,
    html[data-ca-spacing-regions~="content-padding-desktop"] .blog-post-list .post-content,
    html[data-ca-spacing-regions~="content-padding-desktop"] .codingants-brand-list .codingants-brand-list__item,
    html[data-ca-spacing-regions~="content-padding-desktop"] .codingants-brand-widget .codingants-brand-widget__item {
        padding: var(--ca-content-padding);
    }
    html[data-ca-spacing-regions~="form-padding-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-desktop"] .customer-account-login .login-container > .block,
    html[data-ca-spacing-regions~="form-padding-desktop"] .customer-account-create .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-desktop"] .customer-account-forgotpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-desktop"] .customer-account-resetpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-desktop"] .account:not(.wishlist-index-index) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-desktop"] .account .column.main > form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-desktop"] .contact-index-index .column.main > form,
    html[data-ca-spacing-regions~="form-padding-desktop"] .account .column.main .block-dashboard-info,
    html[data-ca-spacing-regions~="form-padding-desktop"] .account .column.main .block-dashboard-addresses {
        padding: var(--ca-form-padding);
    }
    html[data-ca-spacing-regions~="form-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:not(.choice) {
        --reserved-space: var(--ca-form-gap);
        margin-top: 0; margin-bottom: var(--ca-form-gap);
    }
    html[data-ca-spacing-regions~="cart-padding-desktop"] .checkout-cart-index .ca-cart-summary-panel,
    html[data-ca-spacing-regions~="cart-padding-desktop"] .checkout-cart-index .cart-summary {
        padding: var(--ca-cart-padding);
    }
    html[data-ca-spacing-regions~="cart-gap-desktop"] .checkout-cart-index .form-cart article.cart.item,
    html[data-ca-spacing-regions~="cart-gap-desktop"] .checkout-cart-index .form-cart .cart.item > .item-info,
    html[data-ca-spacing-regions~="cart-gap-desktop"] .checkout-cart-index .cart.table-wrapper .cart > .item-info > td {
        padding-block: var(--ca-cart-gap);
    }
    html[data-ca-spacing-regions~="cart-gap-desktop"] .checkout-cart-index .cart-summary-actions > * + * {
        margin-top: var(--ca-cart-gap);
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    html[data-ca-spacing-regions~="page-section-space-tablet"] .ca-page-heading-simple:has(.ca-heading-simple .breadcrumbs li) #maincontent,
    html[data-ca-spacing-regions~="page-section-space-tablet"] body:is(.catalog-category-view,.catalogsearch-result-index,.themeconfig-allproducts-index) .page-main {
        margin-block: var(--ca-page-section-space);
    }
    html[data-ca-spacing-regions~="heading-gap-tablet"] .column.main .ca-content-title,
    html[data-ca-spacing-regions~="heading-gap-tablet"] .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-heading-gap);
    }
    html[data-ca-spacing-regions~="heading-gap-tablet"] .column.main > .ca-catalog-products {
        padding-top: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-tablet"] .ca-catalog-products > .toolbar-products,
    html[data-ca-spacing-regions~="toolbar-gap-tablet"] .column.main > .toolbar-products {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-tablet"] .ca-catalog-products .products.wrapper > ul,
    html[data-ca-spacing-regions~="toolbar-gap-tablet"] .column.main > .products.wrapper {
        padding-top: var(--ca-toolbar-gap); margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-tablet"] .ca-catalog-products .products.wrapper > ul {
        padding-bottom: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-tablet"] .ca-catalog-products .products.wrapper ~ .toolbar-products,
    html[data-ca-spacing-regions~="pagination-gap-tablet"] .column.main > .products.wrapper ~ .toolbar-products {
        padding-top: var(--ca-pagination-gap); margin-top: 0; margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="sidebar-gap-tablet"] body.page-layout-2columns-left .columns,
    html[data-ca-spacing-regions~="sidebar-gap-tablet"] body.page-layout-2columns-right .columns,
    html[data-ca-spacing-regions~="sidebar-gap-tablet"] body.page-layout-3columns .columns {
        column-gap: var(--ca-sidebar-gap);
    }
    html[data-ca-spacing-regions~="list-gap-tablet"] .ca-catalog-products .mode-list > ul,
    html[data-ca-spacing-regions~="list-gap-tablet"] .products-list > .product-items {
        row-gap: 0;
    }
    html[data-ca-spacing-regions~="list-gap-tablet"] .ca-catalog-products .products.wrapper.mode-list .product-item.card,
    html[data-ca-spacing-regions~="list-gap-tablet"] .products-list > .product-items > .product-item {
        margin-bottom: var(--ca-list-gap);
    }
    html[data-ca-spacing-regions~="list-gap-tablet"] .ca-catalog-products .products.wrapper.mode-list > ul > li:last-child .product-item.card,
    html[data-ca-spacing-regions~="list-gap-tablet"] .products-list > .product-items > .product-item:last-child {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="list-padding-tablet"] .ca-catalog-products .mode-list .product-item .product-info,
    html[data-ca-spacing-regions~="list-padding-tablet"] .products-list .product.details.product-item-details {
        padding: var(--ca-list-padding);
    }
    html[data-ca-spacing-regions~="product-card-padding-tablet"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-padding-tablet"] .products-grid .product-item .product-item-details,
    html[data-ca-spacing-regions~="product-card-padding-tablet"] .mode-grid .product-item .product-info {
        padding: var(--ca-product-card-padding);
    }
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .mode-grid .product-item .product-info {
        row-gap: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .products-grid .product-item .product-info > div,
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .mode-grid .product-item .product-info > div {
        margin-block: 0; padding-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .products-grid .product-item .product-item-details > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-tablet"] .products-grid .product-item .product-item-details > * + * {
        margin-top: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="detail-column-gap-tablet"] .catalog-product-view .columns .column.main > .product-info-main:not(:has(.ca-product-detail-grid)) {
        width: max(0px, calc(100% - var(--ca-product-gallery-width,40%) - var(--ca-detail-column-gap)));
    }
    html[data-ca-spacing-regions~="detail-column-gap-tablet"] .catalog-product-view .ca-product-detail-grid {
        row-gap: var(--ca-detail-column-gap);
    }
    html[data-ca-spacing-regions~="detail-info-gap-tablet"] .product-info-main .ca-product-info {
        gap: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-info-gap-tablet"] .catalog-product-view .columns .column.main > .product-info-main:not(:has(.ca-product-detail-grid)) > * + * {
        margin-top: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .catalog-product-view .ca-product-detail-grid {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .catalog-product-view .ca-product-sections {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .product-info-main .ca-product-related,
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .catalog-product-view .product.info.detailed,
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .catalog-product-view .block.related {
        margin-top: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-tablet"] .ca-product-tab-panel,
    html[data-ca-spacing-regions~="detail-panel-padding-tablet"] .ca-product-details-list-item {
        padding-block: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-tablet"] .ca-product-tabs--vertical .ca-product-tab-panel {
        padding-inline-start: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-tablet"] .product.info.detailed .product.data.items > .item.content {
        padding: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-tablet"] .ca-site-footer .ca-footer-content {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-tablet"] .page-footer .footer-row,
    html[data-ca-spacing-regions~="footer-padding-tablet"] .page-footer .footer-links-only {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-tablet"] .ca-footer-top-style-overlap + .ca-footer-content {
        padding-top: calc(var(--ca-footer-padding) + 3rem);
    }
    html[data-ca-spacing-regions~="footer-padding-tablet"] .footer-top-container-overlap + .footer-custom-content-container {
        padding-top: 48px;
    }
    html[data-ca-spacing-regions~="footer-column-gap-tablet"] .ca-site-footer .ca-footer-row,
    html[data-ca-spacing-regions~="footer-column-gap-tablet"] .page-footer .footer-row {
        column-gap: var(--ca-footer-column-gap);
    }
    html[data-ca-spacing-regions~="footer-title-gap-tablet"] .ca-site-footer .footer-column-title:not(button),
    html[data-ca-spacing-regions~="footer-title-gap-tablet"] .ca-footer-column-accordion-body h4,
    html[data-ca-spacing-regions~="footer-title-gap-tablet"] .page-footer .footer-column-title:not(button) {
        margin-bottom: var(--ca-footer-title-gap);
    }
    html[data-ca-spacing-regions~="footer-link-gap-tablet"] .ca-footer-column-accordion-body li + li,
    html[data-ca-spacing-regions~="footer-link-gap-tablet"] .footer-column-accordion-body li + li {
        margin-top: var(--ca-footer-link-gap);
    }
    html[data-ca-spacing-regions~="newsletter-padding-tablet"] .ca-footer-top .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-tablet"] .footer-top .footer-top-inner {
        padding-block: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="newsletter-padding-tablet"] .ca-footer-top-style-overlap .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-tablet"] .footer-top-style-overlap .footer-top-inner {
        padding-inline: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="widget-title-gap-tablet"] .ca-widget-spacing .ca-widget-section-header {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="widget-title-gap-tablet"] .ca-widget-spacing .ca-widget-section-title:not(.ca-widget-section-header *),
    html[data-ca-spacing-regions~="widget-title-gap-tablet"] .ca-widget-spacing .ca-widget-title:not(.ca-widget-section-title):not(.ca-widget-section-header *) {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="content-gap-tablet"] .ca-density-content-grid,
    html[data-ca-spacing-regions~="content-gap-tablet"] .blog-post-list .posts-grid,
    html[data-ca-spacing-regions~="content-gap-tablet"] .codingants-brand-list .codingants-brand-list__items,
    html[data-ca-spacing-regions~="content-gap-tablet"] .codingants-brand-widget--grid .codingants-brand-widget__items {
        gap: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-tablet"] .blog-post-list.blog-mode-list .post-item {
        margin-bottom: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-tablet"] .ca-density-content-list > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="content-gap-tablet"] .ca-density-content-list > * + * {
        margin-top: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-padding-tablet"] .ca-density-content-panel,
    html[data-ca-spacing-regions~="content-padding-tablet"] .blog-post-list .post-content,
    html[data-ca-spacing-regions~="content-padding-tablet"] .codingants-brand-list .codingants-brand-list__item,
    html[data-ca-spacing-regions~="content-padding-tablet"] .codingants-brand-widget .codingants-brand-widget__item {
        padding: var(--ca-content-padding);
    }
    html[data-ca-spacing-regions~="form-padding-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-tablet"] .customer-account-login .login-container > .block,
    html[data-ca-spacing-regions~="form-padding-tablet"] .customer-account-create .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-tablet"] .customer-account-forgotpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-tablet"] .customer-account-resetpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-tablet"] .account:not(.wishlist-index-index) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-tablet"] .account .column.main > form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-tablet"] .contact-index-index .column.main > form,
    html[data-ca-spacing-regions~="form-padding-tablet"] .account .column.main .block-dashboard-info,
    html[data-ca-spacing-regions~="form-padding-tablet"] .account .column.main .block-dashboard-addresses {
        padding: var(--ca-form-padding);
    }
    html[data-ca-spacing-regions~="form-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:not(.choice) {
        --reserved-space: var(--ca-form-gap);
        margin-top: 0; margin-bottom: var(--ca-form-gap);
    }
    html[data-ca-spacing-regions~="cart-padding-tablet"] .checkout-cart-index .ca-cart-summary-panel,
    html[data-ca-spacing-regions~="cart-padding-tablet"] .checkout-cart-index .cart-summary {
        padding: var(--ca-cart-padding);
    }
    html[data-ca-spacing-regions~="cart-gap-tablet"] .checkout-cart-index .form-cart article.cart.item,
    html[data-ca-spacing-regions~="cart-gap-tablet"] .checkout-cart-index .form-cart .cart.item > .item-info,
    html[data-ca-spacing-regions~="cart-gap-tablet"] .checkout-cart-index .cart.table-wrapper .cart > .item-info > td {
        padding-block: var(--ca-cart-gap);
    }
    html[data-ca-spacing-regions~="cart-gap-tablet"] .checkout-cart-index .cart-summary-actions > * + * {
        margin-top: var(--ca-cart-gap);
    }
}

@media (max-width: 767px) {
    html[data-ca-spacing-regions~="page-section-space-mobile"] .ca-page-heading-simple:has(.ca-heading-simple .breadcrumbs li) #maincontent,
    html[data-ca-spacing-regions~="page-section-space-mobile"] body:is(.catalog-category-view,.catalogsearch-result-index,.themeconfig-allproducts-index) .page-main {
        margin-block: var(--ca-page-section-space);
    }
    html[data-ca-spacing-regions~="heading-gap-mobile"] .column.main .ca-content-title,
    html[data-ca-spacing-regions~="heading-gap-mobile"] .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-heading-gap);
    }
    html[data-ca-spacing-regions~="heading-gap-mobile"] .column.main > .ca-catalog-products {
        padding-top: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-mobile"] .ca-catalog-products > .toolbar-products,
    html[data-ca-spacing-regions~="toolbar-gap-mobile"] .column.main > .toolbar-products {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="toolbar-gap-mobile"] .ca-catalog-products .products.wrapper > ul,
    html[data-ca-spacing-regions~="toolbar-gap-mobile"] .column.main > .products.wrapper {
        padding-top: var(--ca-toolbar-gap); margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-mobile"] .ca-catalog-products .products.wrapper > ul {
        padding-bottom: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-mobile"] .ca-catalog-products .products.wrapper ~ .toolbar-products,
    html[data-ca-spacing-regions~="pagination-gap-mobile"] .column.main > .products.wrapper ~ .toolbar-products {
        padding-top: var(--ca-pagination-gap); margin-top: 0; margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="list-gap-mobile"] .ca-catalog-products .mode-list > ul,
    html[data-ca-spacing-regions~="list-gap-mobile"] .products-list > .product-items {
        row-gap: 0;
    }
    html[data-ca-spacing-regions~="list-gap-mobile"] .ca-catalog-products .products.wrapper.mode-list .product-item.card,
    html[data-ca-spacing-regions~="list-gap-mobile"] .products-list > .product-items > .product-item {
        margin-bottom: var(--ca-list-gap);
    }
    html[data-ca-spacing-regions~="list-gap-mobile"] .ca-catalog-products .products.wrapper.mode-list > ul > li:last-child .product-item.card,
    html[data-ca-spacing-regions~="list-gap-mobile"] .products-list > .product-items > .product-item:last-child {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="list-padding-mobile"] .ca-catalog-products .mode-list .product-item .product-info,
    html[data-ca-spacing-regions~="list-padding-mobile"] .products-list .product.details.product-item-details {
        padding: var(--ca-list-padding);
    }
    html[data-ca-spacing-regions~="product-card-padding-mobile"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-padding-mobile"] .products-grid .product-item .product-item-details,
    html[data-ca-spacing-regions~="product-card-padding-mobile"] .mode-grid .product-item .product-info {
        padding: var(--ca-product-card-padding);
    }
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .products-grid .product-item .product-info,
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .mode-grid .product-item .product-info {
        row-gap: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .products-grid .product-item .product-info > div,
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .mode-grid .product-item .product-info > div {
        margin-block: 0; padding-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .products-grid .product-item .product-item-details > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="product-card-gap-mobile"] .products-grid .product-item .product-item-details > * + * {
        margin-top: var(--ca-product-card-gap);
    }
    html[data-ca-spacing-regions~="detail-column-gap-mobile"] .catalog-product-view .ca-product-detail-grid {
        row-gap: var(--ca-detail-column-gap);
    }
    html[data-ca-spacing-regions~="detail-info-gap-mobile"] .product-info-main .ca-product-info {
        gap: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-info-gap-mobile"] .catalog-product-view .columns .column.main > .product-info-main:not(:has(.ca-product-detail-grid)) > * + * {
        margin-top: var(--ca-detail-info-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .catalog-product-view .ca-product-detail-grid {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .catalog-product-view .ca-product-sections {
        padding-bottom: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .product-info-main .ca-product-related,
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .catalog-product-view .product.info.detailed,
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .catalog-product-view .block.related {
        margin-top: var(--ca-detail-section-gap);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-mobile"] .ca-product-tab-panel,
    html[data-ca-spacing-regions~="detail-panel-padding-mobile"] .ca-product-details-list-item {
        padding-block: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="detail-panel-padding-mobile"] .product.info.detailed .product.data.items > .item.content {
        padding: var(--ca-detail-panel-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-mobile"] .ca-site-footer .ca-footer-content {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-mobile"] .page-footer .footer-row,
    html[data-ca-spacing-regions~="footer-padding-mobile"] .page-footer .footer-links-only {
        padding-block: var(--ca-footer-padding);
    }
    html[data-ca-spacing-regions~="footer-padding-mobile"] .ca-footer-top-style-overlap + .ca-footer-content {
        padding-top: calc(var(--ca-footer-padding) + 1.75rem);
    }
    html[data-ca-spacing-regions~="footer-padding-mobile"] .footer-top-container-overlap + .footer-custom-content-container {
        padding-top: 48px;
    }
    html[data-ca-spacing-regions~="footer-column-gap-mobile"] .ca-site-footer .ca-footer-row,
    html[data-ca-spacing-regions~="footer-column-gap-mobile"] .page-footer .footer-row {
        column-gap: var(--ca-footer-column-gap);
    }
    html[data-ca-spacing-regions~="footer-title-gap-mobile"] .ca-site-footer .footer-column-title:not(button),
    html[data-ca-spacing-regions~="footer-title-gap-mobile"] .ca-footer-column-accordion-body h4,
    html[data-ca-spacing-regions~="footer-title-gap-mobile"] .page-footer .footer-column-title:not(button) {
        margin-bottom: var(--ca-footer-title-gap);
    }
    html[data-ca-spacing-regions~="footer-link-gap-mobile"] .ca-footer-column-accordion-body li + li,
    html[data-ca-spacing-regions~="footer-link-gap-mobile"] .footer-column-accordion-body li + li {
        margin-top: var(--ca-footer-link-gap);
    }
    html[data-ca-spacing-regions~="newsletter-padding-mobile"] .ca-footer-top .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-mobile"] .footer-top .footer-top-inner {
        padding-block: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="newsletter-padding-mobile"] .ca-footer-top-style-overlap .ca-footer-top-inner,
    html[data-ca-spacing-regions~="newsletter-padding-mobile"] .footer-top-style-overlap .footer-top-inner {
        padding-inline: var(--ca-newsletter-padding);
    }
    html[data-ca-spacing-regions~="widget-title-gap-mobile"] .ca-widget-spacing .ca-widget-section-header {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="widget-title-gap-mobile"] .ca-widget-spacing .ca-widget-section-title:not(.ca-widget-section-header *),
    html[data-ca-spacing-regions~="widget-title-gap-mobile"] .ca-widget-spacing .ca-widget-title:not(.ca-widget-section-title):not(.ca-widget-section-header *) {
        margin-bottom: var(--ca-widget-title-gap);
    }
    html[data-ca-spacing-regions~="content-gap-mobile"] .ca-density-content-grid,
    html[data-ca-spacing-regions~="content-gap-mobile"] .blog-post-list .posts-grid,
    html[data-ca-spacing-regions~="content-gap-mobile"] .codingants-brand-list .codingants-brand-list__items,
    html[data-ca-spacing-regions~="content-gap-mobile"] .codingants-brand-widget--grid .codingants-brand-widget__items {
        gap: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-mobile"] .blog-post-list.blog-mode-list .post-item {
        margin-bottom: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-gap-mobile"] .ca-density-content-list > * {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="content-gap-mobile"] .ca-density-content-list > * + * {
        margin-top: var(--ca-content-gap);
    }
    html[data-ca-spacing-regions~="content-padding-mobile"] .ca-density-content-panel,
    html[data-ca-spacing-regions~="content-padding-mobile"] .blog-post-list .post-content,
    html[data-ca-spacing-regions~="content-padding-mobile"] .codingants-brand-list .codingants-brand-list__item,
    html[data-ca-spacing-regions~="content-padding-mobile"] .codingants-brand-widget .codingants-brand-widget__item {
        padding: var(--ca-content-padding);
    }
    html[data-ca-spacing-regions~="form-padding-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-mobile"] .customer-account-login .login-container > .block,
    html[data-ca-spacing-regions~="form-padding-mobile"] .customer-account-create .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-mobile"] .customer-account-forgotpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-mobile"] .customer-account-resetpassword .column.main > .form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-mobile"] .account:not(.wishlist-index-index) .column.main .card,
    html[data-ca-spacing-regions~="form-padding-mobile"] .account .column.main > form:not(:has(.card)),
    html[data-ca-spacing-regions~="form-padding-mobile"] .contact-index-index .column.main > form,
    html[data-ca-spacing-regions~="form-padding-mobile"] .account .column.main .block-dashboard-info,
    html[data-ca-spacing-regions~="form-padding-mobile"] .account .column.main .block-dashboard-addresses {
        padding: var(--ca-form-padding);
    }
    html[data-ca-spacing-regions~="form-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:not(.choice) {
        --reserved-space: var(--ca-form-gap);
        margin-top: 0; margin-bottom: var(--ca-form-gap);
    }
    html[data-ca-spacing-regions~="cart-padding-mobile"] .checkout-cart-index .ca-cart-summary-panel,
    html[data-ca-spacing-regions~="cart-padding-mobile"] .checkout-cart-index .cart-summary {
        padding: var(--ca-cart-padding);
    }
    html[data-ca-spacing-regions~="cart-gap-mobile"] .checkout-cart-index .form-cart article.cart.item,
    html[data-ca-spacing-regions~="cart-gap-mobile"] .checkout-cart-index .form-cart .cart.item > .item-info,
    html[data-ca-spacing-regions~="cart-gap-mobile"] .checkout-cart-index .cart.table-wrapper .cart > .item-info > td {
        padding-block: var(--ca-cart-gap);
    }
    html[data-ca-spacing-regions~="cart-gap-mobile"] .checkout-cart-index .cart-summary-actions > * + * {
        margin-top: var(--ca-cart-gap);
    }
}

/* Form proportions: compact controls keep comfortable panel and error spacing. */

@media (min-width: 1024px) {
    html[data-ca-spacing-regions~="form-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field.field-reserved ul:last-of-type {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:has(.field) {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-control-height-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: var(--ca-form-control-height);
    }
    html[data-ca-spacing-regions~="form-control-height-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],input[type="url"],input[type="search"],input[type="date"],select:not([multiple]),.actions-toolbar button,.actions-toolbar .action.primary) {
        --form-py: max(0px, calc((var(--ca-effective-control-height) - 1lh - 2px) / 2));
        box-sizing: border-box;
        min-height: var(--ca-effective-control-height);
        height: auto;
        padding-block: var(--form-py);
    }
    html[data-ca-spacing-regions~="form-control-height-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(.actions-toolbar button,.actions-toolbar .action.primary) {
        /* Primary actions must not shrink below the theme's touch target. */
        --ca-effective-control-height: max(var(--ca-form-control-height), var(--ca-touch-target-min, 44px));
    }
    html[data-ca-spacing-regions~="form-control-height-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .control:has(input) button.absolute {
        min-height: var(--ca-effective-control-height);
        height: var(--ca-effective-control-height);
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-max-width-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > form,
    html[data-ca-spacing-regions~="form-max-width-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-max-width-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        width: 100%;
        max-width: min(100%, var(--ca-form-max-width));
        margin-inline: auto;
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main #customer-login-container {
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset {
        margin-block: 0 var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset legend {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form .actions-toolbar {
        margin-top: var(--ca-form-section-gap);
    }
}
@media (min-width: 1024px) and (pointer: coarse) {
    html[data-ca-spacing-regions~="form-control-height-desktop"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: max(44px, var(--ca-form-control-height));
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    html[data-ca-spacing-regions~="form-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field.field-reserved ul:last-of-type {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:has(.field) {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-control-height-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: var(--ca-form-control-height);
    }
    html[data-ca-spacing-regions~="form-control-height-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],input[type="url"],input[type="search"],input[type="date"],select:not([multiple]),.actions-toolbar button,.actions-toolbar .action.primary) {
        --form-py: max(0px, calc((var(--ca-effective-control-height) - 1lh - 2px) / 2));
        box-sizing: border-box;
        min-height: var(--ca-effective-control-height);
        height: auto;
        padding-block: var(--form-py);
    }
    html[data-ca-spacing-regions~="form-control-height-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(.actions-toolbar button,.actions-toolbar .action.primary) {
        /* Primary actions must not shrink below the theme's touch target. */
        --ca-effective-control-height: max(var(--ca-form-control-height), var(--ca-touch-target-min, 44px));
    }
    html[data-ca-spacing-regions~="form-control-height-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .control:has(input) button.absolute {
        min-height: var(--ca-effective-control-height);
        height: var(--ca-effective-control-height);
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-max-width-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > form,
    html[data-ca-spacing-regions~="form-max-width-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-max-width-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        width: 100%;
        max-width: min(100%, var(--ca-form-max-width));
        margin-inline: auto;
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main #customer-login-container {
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset {
        margin-block: 0 var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset legend {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form .actions-toolbar {
        margin-top: var(--ca-form-section-gap);
    }
}
@media (min-width: 768px) and (max-width: 1023px) and (pointer: coarse) {
    html[data-ca-spacing-regions~="form-control-height-tablet"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: max(44px, var(--ca-form-control-height));
    }
}

@media (max-width: 767px) {
    html[data-ca-spacing-regions~="form-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field.field-reserved ul:last-of-type {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .field:has(.field) {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="form-control-height-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: max(44px, var(--ca-form-control-height));
    }
    html[data-ca-spacing-regions~="form-control-height-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="number"],input[type="url"],input[type="search"],input[type="date"],select:not([multiple]),.actions-toolbar button,.actions-toolbar .action.primary) {
        --form-py: max(0px, calc((var(--ca-effective-control-height) - 1lh - 2px) / 2));
        box-sizing: border-box;
        min-height: var(--ca-effective-control-height);
        height: auto;
        padding-block: var(--form-py);
    }
    html[data-ca-spacing-regions~="form-control-height-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form :is(.actions-toolbar button,.actions-toolbar .action.primary) {
        /* Primary actions must not shrink below the theme's touch target. */
        --ca-effective-control-height: max(var(--ca-form-control-height), var(--ca-touch-target-min, 44px));
    }
    html[data-ca-spacing-regions~="form-control-height-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form .control:has(input) button.absolute {
        min-height: var(--ca-effective-control-height);
        height: var(--ca-effective-control-height);
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-max-width-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > form,
    html[data-ca-spacing-regions~="form-max-width-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-max-width-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        width: 100%;
        max-width: min(100%, var(--ca-form-max-width));
        margin-inline: auto;
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .card,
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main .login-container {
        margin-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main #customer-login-container {
        padding-block: 0;
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main > .page-title-wrapper {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset {
        margin-block: 0 var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form fieldset legend {
        margin-bottom: var(--ca-form-section-gap);
    }
    html[data-ca-spacing-regions~="form-section-gap-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword) .column.main form .actions-toolbar {
        margin-top: var(--ca-form-section-gap);
    }
}
@media (max-width: 767px) and (pointer: coarse) {
    html[data-ca-spacing-regions~="form-control-height-mobile"] :is(.customer-account-login,.customer-account-create,.customer-account-forgotpassword,.customer-account-resetpassword,.account,.contact-index-index) .column.main form {
        --ca-effective-control-height: max(44px, var(--ca-form-control-height));
    }
}

/* Remove legacy margins that otherwise add to the selected density. */
@media (min-width: 1024px) {
    html[data-ca-spacing-regions~="toolbar-gap-desktop"] .column.main > .products.wrapper > .product-items {
        margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-desktop"] .column.main > .products.wrapper > .product-items {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="detail-section-gap-desktop"] .catalog-product-view .product.info.detailed {
        padding-top: 0;
    }
}

/* Remove legacy margins that otherwise add to the selected density. */
@media (min-width: 768px) and (max-width: 1023px) {
    html[data-ca-spacing-regions~="toolbar-gap-tablet"] .column.main > .products.wrapper > .product-items {
        margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-tablet"] .column.main > .products.wrapper > .product-items {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="detail-section-gap-tablet"] .catalog-product-view .product.info.detailed {
        padding-top: 0;
    }
}

/* Remove legacy margins that otherwise add to the selected density. */
@media (max-width: 767px) {
    html[data-ca-spacing-regions~="toolbar-gap-mobile"] .column.main > .products.wrapper > .product-items {
        margin-top: 0;
    }
    html[data-ca-spacing-regions~="pagination-gap-mobile"] .column.main > .products.wrapper > .product-items {
        margin-bottom: 0;
    }
    html[data-ca-spacing-regions~="detail-section-gap-mobile"] .catalog-product-view .product.info.detailed {
        padding-top: 0;
    }
    html[data-ca-spacing-regions~="footer-padding-mobile"] .page-footer .footer-row + .footer-row {
        padding-top: 0;
    }
}
