:root{
    --storefront-full-css-ready:1;
    --ui-font:'Manrope',sans-serif;
    --ui-bg:#f6f8fc;
    --ui-surface:#ffffff;
    --ui-border:#e4ebf3;
    --ui-muted:#6b7c93;
    --ui-ink:#102a43;
    --ui-primary:#3b82f6;
    --ui-primary-dark:#2563eb;
    --ui-success:#19a463;
    --ui-danger:#dc4c64;
    --ui-shadow:0 16px 40px rgba(15,23,42,.08);
    --ui-radius:18px;
}

.admin-offsite-advanced-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin:0 0 18px;
}

.admin-offsite-advanced-card{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.admin-offsite-card-head{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:flex-start;
    border-bottom:1px solid #dbe7f5;
    padding-bottom:12px;
}

.admin-offsite-card-head h2{
    margin:0 0 4px;
    font-size:18px;
    color:#122840;
}

.admin-offsite-card-head p:not(.admin-kicker){
    margin:0;
    color:#607793;
    font-size:13px;
    line-height:1.45;
}

.admin-offsite-card-head > span{
    flex:0 0 auto;
    border:1px solid #cfe0f3;
    border-radius:6px;
    padding:6px 9px;
    color:#17324d;
    background:#f7fbff;
    font-weight:800;
    font-size:12px;
    white-space:nowrap;
}

.admin-offsite-import-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.admin-offsite-import-grid label,
.admin-offsite-advanced-card label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#607793;
    font-size:11px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.admin-offsite-import-grid input,
.admin-offsite-import-grid select,
.admin-offsite-advanced-card input,
.admin-offsite-advanced-card select,
.admin-offsite-advanced-card textarea{
    width:100%;
    border:1px solid #cfe0f3;
    border-radius:6px;
    padding:10px 12px;
    color:#17324d;
    background:#fff;
    font-size:14px;
    letter-spacing:0;
    text-transform:none;
}

.admin-offsite-text-import textarea{
    min-height:98px;
    resize:vertical;
}

.admin-offsite-actions-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.admin-offsite-import-state,
.admin-offsite-scan-result{
    min-height:34px;
    border-radius:6px;
    padding:8px 10px;
    background:#f6f9fd;
    color:#607793;
    font-size:13px;
    display:flex;
    flex-direction:column;
    gap:3px;
}

.admin-offsite-import-state:empty,
.admin-offsite-scan-result:empty{
    display:none;
}

.admin-offsite-import-state.saving,
.admin-offsite-scan-result.saving{
    background:#fff8e6;
    color:#8a5b00;
}

.admin-offsite-import-state.saved,
.admin-offsite-scan-result.saved{
    background:#eefaf2;
    color:#17683a;
}

.admin-offsite-import-state.failed,
.admin-offsite-scan-result.failed{
    background:#fff0f0;
    color:#aa2739;
}

.admin-offsite-import-preview{
    max-height:220px;
    overflow:auto;
    border:1px solid #dbe7f5;
    border-radius:6px;
}

.admin-offsite-import-preview table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
}

.admin-offsite-import-preview th,
.admin-offsite-import-preview td{
    padding:8px;
    border-bottom:1px solid #edf3fb;
    vertical-align:top;
}

.admin-offsite-import-preview th{
    background:#f7fbff;
    color:#607793;
    font-size:10px;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.admin-offsite-mini-list{
    display:flex;
    flex-direction:column;
    gap:6px;
    border-top:1px solid #edf3fb;
    padding-top:10px;
    font-size:12px;
    color:#607793;
}

.admin-offsite-mini-list strong{
    color:#17324d;
}

.admin-offsite-checkbox-line{
    flex-direction:row !important;
    align-items:center;
    gap:8px !important;
    color:#17324d !important;
    font-size:13px !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.admin-offsite-checkbox-line input{
    width:auto !important;
}

.admin-offsite-sku-strip{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:6px;
    font-size:11px;
    color:#607793;
}

.admin-offsite-sku-strip span{
    border:1px solid #dbe7f5;
    border-radius:999px;
    background:#f7fbff;
    padding:3px 7px;
}

.admin-offsite-map-badge.master_sku{
    background:#eefaf2 !important;
    border-color:#bfe8cb !important;
    color:#17683a !important;
}

.admin-offsite-map-badge.legacy_alias,
.admin-offsite-map-badge.manual{
    background:#fff8e6 !important;
    border-color:#f4d78a !important;
    color:#8a5b00 !important;
}

.admin-offsite-map-badge.unmapped{
    background:#fff0f0 !important;
    border-color:#f3c4cb !important;
    color:#aa2739 !important;
}

.admin-offsite-tool-page{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.offsite-label-workbench{
    display:flex;
    flex-direction:column;
    gap:14px;
}

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

.offsite-label-upload-grid label,
.offsite-label-paste-box,
.offsite-packing-console label,
.offsite-sku-map-card label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#17324d;
    font-weight:800;
    font-size:14px;
}

.offsite-label-upload-grid input,
.offsite-label-paste-box textarea,
.offsite-packing-console input,
.offsite-packing-console select,
.offsite-sku-map-card input,
.offsite-sku-map-card select{
    width:100%;
    border:1px solid #cfe0f3;
    border-radius:6px;
    padding:10px 12px;
    background:#fff;
    color:#17324d;
}

.offsite-label-paste-box textarea{
    min-height:82px;
    resize:vertical;
}

.offsite-label-toolbar{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:8px;
}

.offsite-label-toolbar span{
    margin-left:auto;
    color:#607793;
    font-weight:700;
}

.offsite-label-toolbar span.saved{
    color:#17683a;
}

.offsite-label-toolbar span.failed{
    color:#aa2739;
}

.offsite-label-toolbar span.saving{
    color:#8a5b00;
}

.offsite-label-preview-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:16px;
    min-height:540px;
}

.offsite-label-preview-panel,
.offsite-label-data-panel{
    display:flex;
    flex-direction:column;
    min-height:540px;
}

.offsite-tool-panel-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
}

.offsite-tool-panel-head h2{
    margin:0;
    color:#122840;
    font-size:20px;
}

.offsite-tool-panel-head span{
    color:#607793;
    font-size:12px;
    font-weight:800;
}

.offsite-label-canvas-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:12px;
    overflow:auto;
    flex:1;
}

.offsite-label-card{
    border:1px solid #dbe7f5;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
}

.offsite-label-card img{
    display:block;
    width:100%;
    height:220px;
    object-fit:contain;
    background:#f7fbff;
    border-bottom:1px solid #edf3fb;
}

.offsite-label-card div{
    padding:9px 10px;
    display:flex;
    flex-direction:column;
    gap:2px;
}

.offsite-label-card strong{
    color:#17324d;
    font-size:13px;
}

.offsite-label-card span{
    color:#607793;
    font-size:12px;
    word-break:break-word;
}

.offsite-label-data-table{
    overflow:auto;
}

.offsite-label-data-table table{
    width:100%;
    border-collapse:collapse;
    font-size:13px;
}

.offsite-label-data-table th,
.offsite-label-data-table td{
    padding:10px;
    border-bottom:1px solid #edf3fb;
    text-align:left;
    vertical-align:top;
}

.offsite-label-data-table th{
    background:#f7fbff;
    color:#607793;
    font-size:11px;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.offsite-empty-panel{
    min-height:120px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px dashed #cfe0f3;
    border-radius:8px;
    color:#607793;
    background:#f9fcff;
    text-align:center;
    padding:18px;
}

.offsite-recent-imports,
.offsite-two-column{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.offsite-recent-imports{
    display:block;
}

.offsite-mini-table{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.offsite-mini-table > div,
.offsite-mini-table > button{
    width:100%;
    border:1px solid #dbe7f5;
    border-radius:8px;
    background:#fff;
    color:#17324d;
    padding:10px;
    display:grid;
    grid-template-columns:1.2fr .8fr 1.6fr 1fr .8fr;
    gap:8px;
    align-items:center;
    text-align:left;
}

.offsite-mini-table strong{
    color:#122840;
}

.offsite-mini-table span{
    color:#607793;
    font-size:12px;
}

.offsite-unmapped-list > button{
    cursor:pointer;
}

.offsite-unmapped-list > button:hover{
    border-color:#3b82f6;
    background:#f7fbff;
}

.admin-offsite-stat-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.admin-offsite-stat-grid article{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.admin-offsite-stat-grid span{
    color:#607793;
    font-weight:800;
}

.admin-offsite-stat-grid strong{
    color:#122840;
    font-size:28px;
}

.admin-offsite-module-nav{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 16px;
}

.admin-offsite-module-nav a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:1px solid #cfe0f3;
    border-radius:8px;
    background:#fff;
    color:#17324d;
    padding:10px 14px;
    font-weight:900;
    text-decoration:none;
}

.admin-offsite-module-nav a.active,
.admin-offsite-module-nav a:hover{
    border-color:#3b82f6;
    background:#eef5ff;
    color:#0f4eb8;
}

.admin-offsite-orders-stats{
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-bottom:16px;
}

.offsite-packing-console form{
    display:grid;
    grid-template-columns:minmax(0,1fr) 180px auto;
    gap:12px;
    align-items:end;
}

.offsite-packing-hero{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);
    gap:18px;
    align-items:stretch;
}

.offsite-packing-hero form input{
    min-height:54px;
    font-size:18px;
    font-weight:800;
}

.offsite-packing-help{
    border:1px solid #dbe7f5;
    border-radius:8px;
    background:#f7fbff;
    padding:14px;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.offsite-packing-help p{
    margin:0;
    color:#607793;
    font-size:13px;
    line-height:1.45;
}

.offsite-packing-list{
    max-height:520px;
    overflow:auto;
}

.offsite-smart-sku-grid{
    align-items:start;
}

.offsite-sku-map-card form{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.offsite-qr-console{
    display:grid;
    grid-template-columns:minmax(320px,1fr) minmax(320px,.8fr);
    gap:18px;
    align-items:stretch;
}

.offsite-qr-camera{
    position:relative;
    min-height:520px;
    border-radius:10px;
    overflow:hidden;
    background:#0d1b2a;
    border:1px solid #cfe0f3;
}

.offsite-qr-camera video{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
}

.offsite-qr-frame{
    position:absolute;
    inset:18%;
    border:3px solid #3b82f6;
    border-radius:14px;
    box-shadow:0 0 0 999px rgba(6,18,35,.45);
    pointer-events:none;
}

.offsite-qr-side{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.offsite-qr-side form{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.offsite-qr-side label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#17324d;
    font-weight:900;
}

.offsite-qr-side input{
    border:1px solid #cfe0f3;
    border-radius:6px;
    min-height:52px;
    padding:10px 12px;
    font-size:17px;
    font-weight:800;
}

.offsite-qr-actions{
    justify-content:flex-start;
}

@media (max-width: 1180px){
    .admin-offsite-advanced-grid{
        grid-template-columns:1fr;
    }

    .offsite-label-upload-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .offsite-label-preview-grid,
    .offsite-two-column{
        grid-template-columns:1fr;
    }

    .admin-offsite-orders-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .offsite-packing-hero,
    .offsite-qr-console{
        grid-template-columns:1fr;
    }
}

@media (max-width: 640px){
    .admin-offsite-import-grid{
        grid-template-columns:1fr;
    }

    .admin-offsite-card-head{
        flex-direction:column;
    }

    .offsite-label-upload-grid,
    .admin-offsite-stat-grid,
    .offsite-packing-console form{
        grid-template-columns:1fr;
    }

    .offsite-label-toolbar{
        justify-content:flex-start;
        flex-wrap:wrap;
    }

    .offsite-label-toolbar span{
        flex-basis:100%;
        margin-left:0;
    }

    .offsite-mini-table > div,
    .offsite-mini-table > button{
        grid-template-columns:1fr;
    }

    .admin-offsite-orders-stats{
        grid-template-columns:1fr;
    }
}

/* Phase 3-8 storefront and operations features */
.storefront-app .store-track-order-page{max-width:1120px;margin:0 auto;padding:32px 16px 72px}
.storefront-app .store-track-order-hero{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:24px;align-items:start;padding:28px;border:1px solid #dbe7f6;background:#fff;border-radius:8px;box-shadow:0 18px 50px rgba(15,35,59,.06)}
.storefront-app .store-track-order-hero h1{font-size:34px;line-height:1.12;margin:6px 0 10px;color:#102a43}
.storefront-app .store-track-order-hero p{color:#55708f;margin:0;max-width:620px}
.storefront-app .store-track-order-form{display:grid;gap:12px}
.storefront-app .store-track-order-form label{display:block;font-size:12px;font-weight:800;color:#55708f;margin:0 0 5px}
.storefront-app .store-track-order-form input{width:100%;height:46px;border:1px solid #cad8eb;border-radius:8px;padding:0 12px;font-weight:700;color:#102a43}
.storefront-app .store-track-order-form button{height:48px;border:0;border-radius:8px;background:#2563eb;color:#fff;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.storefront-app .store-track-order-error{margin:0;color:#dc2626;font-weight:800;font-size:13px}
.storefront-app .store-track-order-result{margin-top:18px;display:grid;gap:16px}
.storefront-app .store-track-order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.storefront-app .store-track-order-summary div,.storefront-app .store-track-shipment-card,.storefront-app .store-track-timeline,.storefront-app .store-track-items{border:1px solid #dbe7f6;background:#fff;border-radius:8px;padding:16px}
.storefront-app .store-track-order-summary span,.storefront-app .store-track-shipment-card span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6d86a5;font-weight:900}
.storefront-app .store-track-order-summary strong,.storefront-app .store-track-shipment-card strong{display:block;color:#102a43;font-size:18px;margin-top:3px}
.storefront-app .store-track-shipment-card{display:flex;align-items:center;justify-content:space-between;gap:12px}
.storefront-app .store-track-shipment-card a{font-weight:900;color:#2563eb}
.storefront-app .store-track-order-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px}
.storefront-app .store-track-timeline h2,.storefront-app .store-track-items h2{font-size:20px;margin:0 0 14px;color:#102a43}
.storefront-app .store-track-timeline article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid #edf2f8}
.storefront-app .store-track-timeline article:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}
.storefront-app .store-track-timeline i{color:#16a34a;margin-top:3px}
.storefront-app .store-track-timeline strong,.storefront-app .store-track-items strong{display:block;color:#102a43}
.storefront-app .store-track-timeline span,.storefront-app .store-track-timeline small,.storefront-app .store-track-items span{display:block;color:#55708f;font-size:13px}
.storefront-app .store-track-items article{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf2f8}
.storefront-app .store-track-items article:last-child{border-bottom:0}
.storefront-app .store-track-items img{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid #dbe7f6}
.storefront-app .store-whatsapp-help{position:fixed;right:18px;bottom:92px;z-index:1030;display:inline-flex;align-items:center;gap:8px;padding:12px 14px;border-radius:8px;background:#16a34a;color:#fff;text-decoration:none;font-weight:900;box-shadow:0 14px 36px rgba(22,163,74,.28)}
.storefront-app .store-whatsapp-help:hover{color:#fff;background:#12843d}
.storefront-app .product-personalization-preview{margin-top:12px;border:1px solid #cfe7d2;background:#f2fbf3;border-radius:8px;padding:12px}
.storefront-app .product-personalization-preview>strong{display:block;color:#14532d;margin-bottom:8px}
.storefront-app .product-personalization-preview p{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 6px;color:#2f5b3b}
.storefront-app .product-personalization-preview p:last-child{margin-bottom:0}
.storefront-app .product-personalization-preview span{font-weight:800}
.storefront-app .product-personalization-preview strong{font-weight:900;text-align:right;overflow-wrap:anywhere}
.account-review-help{display:block;margin-top:6px;color:#6d86a5;font-size:12px;font-weight:700}
.admin-inventory-alert-panel .admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.admin-inventory-alert-panel .admin-section-heading h2{font-size:20px;margin:0;color:#102a43}
.admin-inventory-alert-list{display:grid;gap:10px}
.admin-inventory-alert-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #dbe7f6;border-radius:8px;padding:12px;background:#f8fbff}
.admin-inventory-alert-list strong{display:block;color:#102a43}
.admin-inventory-alert-list small{display:block;color:#55708f}
.admin-review-image-strip{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.admin-review-image-strip img{width:46px;height:46px;object-fit:cover;border-radius:8px;border:1px solid #dbe7f6}
.admin-whatsapp-webhook-box{border:1px solid #dbe7f6;border-radius:8px;background:#f8fbff;padding:14px;margin-top:4px}
.admin-whatsapp-webhook-box .admin-settings-info-block.compact{padding:0 0 12px;margin:0 0 12px;border-bottom:1px solid #dbe7f6}
.admin-webhook-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-copy-field{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center}
.admin-copy-field input[readonly]{background:#fff;color:#102a43;font-weight:800}
.admin-icon-btn.copied{background:#dcfce7;border-color:#86efac;color:#166534}
.admin-webhook-meta-note{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;color:#55708f;font-size:12px;font-weight:700}
.admin-webhook-meta-note strong{color:#102a43}
.admin-webhook-meta-note span{border:1px solid #dbe7f6;background:#fff;border-radius:999px;padding:5px 8px}

@media (max-width: 767px){
    .storefront-app .store-track-order-page{padding:18px 10px 104px}
    .storefront-app .store-track-order-hero{grid-template-columns:1fr;padding:16px;gap:16px}
    .storefront-app .store-track-order-hero h1{font-size:26px}
    .storefront-app .store-track-order-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
    .storefront-app .store-track-order-grid{grid-template-columns:1fr}
    .storefront-app .store-track-shipment-card{align-items:flex-start;flex-direction:column}
    .storefront-app .store-whatsapp-help{right:12px;bottom:148px;padding:10px 12px}
    .storefront-app .store-whatsapp-help span{display:none}
    .admin-webhook-copy-grid{grid-template-columns:1fr}
}

/* Storefront polish: product cards, coupons, homepage sections */
.storefront-app .product-detail-shell{
    border:0;
    box-shadow:none;
}

.storefront-app .store-product-content{
    gap:9px;
}

.storefront-app .store-product-meta-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    width:100%;
    min-width:0;
}

.storefront-app .store-product-brand{
    flex:1 1 auto;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-product-coupon{
    flex:0 1 auto;
    max-width:58%;
    margin-left:auto;
    justify-content:flex-end;
}

.storefront-app .store-product-price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    width:100%;
    min-width:0;
    flex-wrap:nowrap;
}

.storefront-app .store-product-price-main{
    flex:1 1 auto;
    min-width:0;
    width:auto;
    overflow:visible;
}

.storefront-app .store-product-price-main span{
    min-width:0;
    max-width:none;
}

.storefront-app .store-product-rating{
    flex:0 0 auto;
    justify-content:flex-end;
    min-width:max-content;
}

.storefront-app .cart-coupon-list{
    display:grid;
    gap:8px;
    margin:0 0 10px;
}

.storefront-app .cart-coupon-option{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:10px;
    border:1px solid #d7ecd9;
    border-radius:8px;
    background:#f7fcf8;
}

.storefront-app .cart-coupon-option > div{
    display:grid;
    gap:2px;
    min-width:0;
}

.storefront-app .cart-coupon-option strong{
    color:#102a43;
    font-size:13px;
    line-height:1.25;
}

.storefront-app .cart-coupon-option span,
.storefront-app .cart-coupon-option small{
    color:#49617a;
    font-size:11px;
    font-weight:700;
    line-height:1.25;
}

.storefront-app .cart-coupon-option form{
    margin:0;
}

.storefront-app .cart-coupon-option button{
    min-height:34px;
    padding:0 12px;
    border:1px solid #157347;
    border-radius:7px;
    background:#157347;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.storefront-app .cart-coupon-option.is-disabled{
    border-color:#e5edf6;
    background:#f8fafc;
    opacity:.75;
}

.storefront-app .cart-coupon-option button:disabled{
    border-color:#cbd5e1;
    background:#e2e8f0;
    color:#64748b;
}

.storefront-app .product-detail-coupon-offers{
    display:grid;
    gap:8px;
    width:100%;
    max-width:620px;
    margin:14px 0 10px;
}

.storefront-app .product-detail-coupon-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.storefront-app .product-detail-coupon-head strong{
    color:#102a43;
    font-size:14px;
}

.storefront-app .product-detail-coupon-head small{
    color:#60758f;
    font-size:12px;
    font-weight:700;
}

.storefront-app .product-detail-coupon-offers .product-detail-coupon-offer{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    width:100%;
    margin:0;
    padding:10px 12px;
    border-radius:8px;
}

.storefront-app .product-detail-coupon-offer form{
    margin:0;
}

.storefront-app .product-detail-coupon-offer button{
    min-height:34px;
    padding:0 12px;
    border:1px solid #157347;
    border-radius:7px;
    background:#157347;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.storefront-app .product-detail-coupon-offer.is-applied button{
    border-color:#bfd5c9;
    background:#fff;
    color:#157347;
}

.storefront-app .store-home-benefits{
    gap:0;
    margin:18px 0 22px;
    border-top:1px solid #edf2f7;
    border-bottom:1px solid #edf2f7;
    background:#fff;
}

.storefront-app .store-home-benefits article{
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    padding:14px 18px;
    align-items:center;
}

.storefront-app .store-home-benefits article + article{
    border-left:1px solid #edf2f7;
}

.storefront-app .store-home-benefits i{
    width:34px;
    height:34px;
    border-radius:8px;
}

.storefront-app .store-home-category-card{
    width:auto;
    min-height:0;
    padding:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    align-items:flex-start;
}

.storefront-app .store-home-category-thumb{
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
    border-radius:8px;
    background:#f4f7fb;
    margin:0;
}

.storefront-app .store-home-category-thumb img{
    border-radius:8px;
}

.storefront-app .store-home-category-card strong{
    text-align:left;
    font-size:14px;
}

@media (min-width:576px){
    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(auto-fit,minmax(150px,170px));
        gap:18px;
    }
}

@media (max-width:575px){
    .storefront-app .store-product-content{
        gap:7px;
        padding:10px;
    }

    .storefront-app .store-product-meta-row{
        align-items:center;
        gap:5px;
    }

    .storefront-app .store-product-coupon{
        max-width:62%;
        width:auto;
        margin-left:auto;
        justify-content:flex-end;
        font-size:8.5px;
    }

    .storefront-app .store-product-coupon span{
        max-width:100%;
        min-height:18px;
        padding:0 4px;
    }

    .storefront-app .store-product-price-row{
        display:flex;
        align-items:center;
        gap:5px;
        flex-wrap:nowrap;
    }

    .storefront-app .store-product-price-main{
        width:auto;
        gap:3px;
    }

    .storefront-app .store-product-price-main strong{
        font-size:15px;
    }

    .storefront-app .store-product-price-main span{
        max-width:40px;
        overflow:hidden;
        text-overflow:ellipsis;
        font-size:8.5px;
    }

    .storefront-app .store-product-price-main em{
        font-size:8.5px;
    }

    .storefront-app .store-product-rating{
        gap:2px;
        min-width:auto;
    }

    .storefront-app .store-product-rating .store-stars{
        gap:0;
        font-size:9px;
    }

    .storefront-app .store-product-rating span{
        font-size:9px;
    }

    .storefront-app .cart-coupon-option{
        grid-template-columns:minmax(0,1fr);
        gap:8px;
    }

    .storefront-app .cart-coupon-option button{
        width:100%;
    }

    .storefront-app .product-detail-coupon-head{
        display:grid;
        gap:2px;
    }

    .storefront-app .product-detail-coupon-offers .product-detail-coupon-offer{
        grid-template-columns:minmax(0,1fr);
        align-items:start;
    }

    .storefront-app .product-detail-coupon-offer button{
        width:100%;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:0;
    }

    .storefront-app .store-home-benefits article{
        padding:12px 10px;
        gap:9px;
    }

    .storefront-app .store-home-benefits article + article{
        border-left:0;
    }

    .storefront-app .store-home-benefits article:nth-child(even){
        border-left:1px solid #edf2f7;
    }

    .storefront-app .store-home-benefits article:nth-child(n+3){
        border-top:1px solid #edf2f7;
    }

    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--ui-font);background:var(--ui-bg);color:var(--ui-ink);overflow-x:hidden}
@media (prefers-reduced-motion:no-preference){.storefront-app{animation:pageFadeIn .18s ease both}}@keyframes pageFadeIn{from{opacity:.01}to{opacity:1}}
a{color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.app-toast-container{position:fixed;top:20px;right:20px;z-index:2000;display:grid;gap:12px;pointer-events:none}
.app-toast{--app-toast-accent:var(--ui-primary);position:relative;min-width:320px;overflow:hidden;border:1px solid var(--ui-border);border-left:4px solid var(--app-toast-accent);border-radius:16px;background:#fff;box-shadow:var(--ui-shadow);padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;pointer-events:auto;opacity:0;transform:translate3d(24px,0,0) scale(.98);transition:opacity .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)}
.app-toast.showing,.app-toast.show{opacity:1;transform:translate3d(0,0,0) scale(1)}
.app-toast:not(.show){opacity:0;transform:translate3d(18px,0,0) scale(.985)}
.app-toast::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--app-toast-accent);transform-origin:left center;animation:app-toast-progress 4.2s linear forwards}
.app-toast-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eef4ff;color:var(--ui-primary)}
.app-toast-body{display:grid;gap:3px}
.app-toast-body strong{font-size:14px}
.app-toast-body span{color:var(--ui-muted);font-size:13px;line-height:1.5}
.app-toast-close{width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#90a0b7;padding:0;line-height:1;display:grid;place-items:center;transition:background .16s ease,color .16s ease,transform .16s ease}
.app-toast-close:hover,.app-toast-close:focus-visible{background:#f2f6fb;color:#28415d;outline:0;transform:scale(1.06)}
.app-toast-success{--app-toast-accent:var(--ui-success)}.app-toast-success .app-toast-icon{background:#e9f8ef;color:var(--ui-success)}
.app-toast-danger{--app-toast-accent:var(--ui-danger)}.app-toast-danger .app-toast-icon{background:#fff1f2;color:var(--ui-danger)}
.app-toast-warning{--app-toast-accent:#d08b00}.app-toast-warning .app-toast-icon{background:#fff8e6;color:#d08b00}
.app-toast-info .app-toast-icon{background:#eef4ff;color:var(--ui-primary)}
@keyframes app-toast-progress{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.btn.btn-dark{background:var(--ui-primary);border-color:var(--ui-primary);color:#fff;border-radius:14px;font-weight:800;box-shadow:none}
.btn.btn-dark:hover{background:var(--ui-primary-dark);border-color:var(--ui-primary-dark);color:#fff}
.btn.btn-outline-dark{background:#fff;border:1px solid #d8e3ef;color:#28415d;border-radius:14px;font-weight:700;box-shadow:none}
.btn.btn-outline-dark:hover{background:#f5f8fc;color:#28415d;border-color:#c7d6e8}
.table-responsive{overflow-x:auto}
.text-muted{color:var(--ui-muted)!important}
@media(max-width:575px){.app-toast{min-width:min(320px,calc(100vw - 24px))}.app-toast-container{top:12px;right:12px;left:12px}}
@media(prefers-reduced-motion:reduce){
    .app-toast,.app-toast-close{transition:none}
    .app-toast::after{animation:none}
}


.storefront-app{background:#fff;color:#132a46}.storefront-app .main-content,.store-shell{width:min(1380px,calc(100% - 40px));margin:0 auto}.store-topbar{background:#102a43;color:#fff;font-size:12px}.store-topbar-inner{width:min(1380px,calc(100% - 40px));min-height:38px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.store-topbar-inner p{margin:0;display:flex;align-items:center;gap:8px}.store-topbar-links{display:flex;align-items:center;gap:16px}.store-topbar-links a{text-decoration:none;color:#d9e7f5}.store-main-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid #e6edf5}.store-main-header-inner{width:min(1380px,calc(100% - 40px));min-height:82px;margin:0 auto;display:grid;grid-template-columns:220px minmax(320px,1fr) auto;align-items:center;gap:18px}.store-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#102a43;font-weight:800;font-size:24px}.store-brand img{width:42px;height:42px;object-fit:cover;border-radius:12px}.store-category-trigger,.store-search-button,.store-main-action,.mobile-nav-item,.cart-close-btn,.store-product-wishlist,.store-drawer-arrow,.store-drawer-close,.product-detail-thumb,.product-qty-control button,.cart-remove-btn{border:0;background:transparent}.store-category-trigger{display:none;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:14px;background:#f5f8fc;color:#24405c;font-weight:700}.store-search-shell{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0;border:1px solid #dbe5f0;border-radius:18px;overflow:hidden;background:#f8fbff}.store-search-select{min-height:52px;padding:0 16px;display:flex;align-items:center;gap:10px;border-right:1px solid #e4ebf3;color:#5f738d;font-weight:700}.store-search-input-wrap{display:flex;align-items:center}.store-search-input{width:100%;min-height:52px;padding:0 16px;border:0;background:transparent;color:#132a46}.store-search-input:focus{outline:none}.store-search-button{width:54px;height:52px;background:#3b82f6;color:#fff}.store-main-actions{display:flex;align-items:center;gap:10px}.store-main-action{min-height:46px;padding:0 14px;border:1px solid #d8e3ef;border-radius:16px;display:flex;align-items:center;gap:8px;color:#31465f;text-decoration:none;font-weight:700;background:#fff}.store-main-action.compact{width:46px;justify-content:center;padding:0}.store-main-action.cart em{font-style:normal;min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:#eef4ff;color:#345cdb;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.store-category-drawer{position:fixed;top:0;left:-360px;width:min(340px,90vw);height:100vh;background:#fff;z-index:1200;transition:left .25s ease;border-right:1px solid #e6edf5;box-shadow:0 18px 42px rgba(15,23,42,.12)}.store-category-drawer.active{left:0}.store-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);opacity:0;visibility:hidden;transition:.2s ease;z-index:1190}.store-overlay.active{opacity:1;visibility:visible}.store-category-drawer-shell{height:100%;display:flex;flex-direction:column}.store-category-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid #e6edf5}.store-drawer-kicker{display:block;color:#7890aa;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.store-category-drawer-head h3{margin:4px 0 0;font-size:24px}.store-drawer-close{width:40px;height:40px;border-radius:12px;background:#f4f7fb;color:#31465f}.store-drawer-list{padding:10px 12px;overflow:auto}.store-drawer-group{border-bottom:1px solid #eef2f7;padding:6px 0}.store-drawer-row{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:8px;align-items:center}.store-drawer-main,.store-drawer-arrow.static,.store-drawer-child{display:flex;align-items:center;text-decoration:none;color:#23364d;font-weight:700}.store-drawer-main{min-height:42px;padding:0 10px;border-radius:12px;justify-content:space-between;background:#fff}.store-drawer-arrow{width:40px;height:42px;border-radius:12px;background:#f4f7fb;color:#53677f}.store-drawer-children{padding:8px 0 8px 18px;display:grid;gap:6px}.store-drawer-child{min-height:34px;padding:0 10px;border-radius:10px;color:#5b718b}.store-drawer-child:hover,.store-drawer-main:hover{background:#f5f8fc;color:#3b82f6}.store-drawer-count{min-width:24px;height:24px;border-radius:999px;background:#eef4ff;color:#345cdb;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.store-shell{padding:24px 0 36px}.store-home-hero,.store-category-hero,.store-newsletter-inner,.product-detail-shell,.account-hero-card{display:grid;gap:22px}.store-home-hero{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:center;padding:28px;border:1px solid #e6edf5;border-radius:28px;background:linear-gradient(135deg,#eff6ff 0%,#ffffff 60%)}.store-home-kicker{display:inline-flex;min-height:32px;padding:0 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:800;align-items:center}.store-home-hero h1{margin:14px 0 12px;font-size:54px;line-height:.95}.store-home-hero h1 small{display:block;font-size:30px;font-weight:700}.store-home-hero p{max-width:540px;color:#60758f;font-size:16px;line-height:1.7}.store-home-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.store-home-primary-btn,.store-home-secondary-btn,.account-primary-btn,.account-outline-btn,.account-secondary-link,.product-detail-cart{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:14px;text-decoration:none;font-weight:800}.store-home-primary-btn,.account-primary-btn,.product-detail-cart{background:#3b82f6;color:#fff;border:1px solid #3b82f6}.store-home-secondary-btn,.account-outline-btn{background:#fff;color:#27415f;border:1px solid #d8e3ef}.store-home-dots{display:flex;gap:8px;margin-top:18px}.store-home-dots span{width:10px;height:10px;border-radius:999px;background:#cbd5e1}.store-home-dots .active{width:28px;background:#3b82f6}.store-home-hero-media{min-height:360px;border-radius:24px;overflow:hidden;background:#dbeafe}.store-home-hero-media img{width:100%;height:100%;object-fit:cover}.store-home-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.store-home-benefits article,.store-testimonial-card,.store-filter-card,.store-catalog-head,.product-description-section,.product-related-section,.account-card,.account-nav-card{background:#fff;border:1px solid #e6edf5;border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.05)}.store-home-benefits article{display:flex;align-items:center;gap:12px;padding:18px}.store-home-benefits i{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#eef4ff;color:#3b82f6}.store-home-benefits strong,.store-section-head h2,.store-category-hero h1,.store-catalog-head h2,.store-product-title a,.product-detail-info h1,.account-card-head h2,.account-hero-card h1{color:#102a43}.store-home-benefits span,.store-section-head a,.store-category-hero p,.store-catalog-head p,.store-product-rating span,.store-footer-links a,.store-footer-contact a,.store-footer-contact span,.product-detail-summary,.account-kicker,.account-secondary-link,.auth-note,.auth-benefit-grid span{color:#60758f}.store-section{margin-top:22px}.store-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.store-section-head a{text-decoration:none;font-weight:700}.store-home-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.store-home-category-card{padding:18px;border:1px solid #e6edf5;border-radius:18px;background:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.store-home-category-thumb{width:90px;height:90px;border-radius:999px;overflow:hidden;background:#f3f6fb}.store-home-category-thumb img{width:100%;height:100%;object-fit:cover}.store-home-category-card strong{font-size:14px;text-align:center}.store-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.store-product-card{height:100%;display:flex;flex-direction:column;border:1px solid #e6edf5;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.05);overflow:hidden}.store-product-media{position:relative;aspect-ratio:1/1;background:#f3f6fb}.store-product-badge{position:absolute;top:12px;left:12px;z-index:2;min-height:26px;padding:0 10px;border-radius:999px;background:#102a43;color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center}.store-product-wishlist{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.12);display:grid;place-items:center;color:#132a46}.store-product-image-link,.store-product-image{width:100%;height:100%}.store-product-image{object-fit:cover}.store-product-content{display:flex;flex-direction:column;gap:10px;flex:1;padding:14px}.store-product-title{margin:0;font-size:15px;line-height:1.4}.store-product-title a{text-decoration:none}.store-product-rating,.store-product-price-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.store-stars{display:flex;gap:2px;color:#d7dee8;font-size:11px}.store-stars .is-filled{color:#f59e0b}.store-product-price-row strong{font-size:18px}.store-product-price-row span{text-decoration:line-through;color:#9aabc0;font-size:12px}.store-product-price-row em{font-style:normal;color:#17a34a;font-size:11px;font-weight:800}.store-product-form{margin-top:auto}.store-product-button{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:#132a46;color:#fff;text-decoration:none;font-weight:800;border:1px solid #132a46}.store-product-button.secondary{background:#f4f7fb;color:#26415f;border-color:#d8e3ef}.store-customize-banner{margin-top:22px;padding:22px;display:grid;grid-template-columns:auto minmax(220px,1fr) minmax(360px,1.4fr) auto;gap:16px;align-items:center;border:1px solid #d9e6f4;border-radius:20px;background:#eff6ff}.store-customize-icon{width:52px;height:52px;border-radius:16px;background:#fff;color:#3b82f6;display:grid;place-items:center;font-size:20px}.store-customize-copy h3{margin:0 0 4px}.store-customize-copy p{margin:0;color:#60758f}.store-customize-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.store-customize-steps article{padding:12px;border-radius:14px;background:#fff}.store-customize-steps strong,.store-customize-steps span,.store-customize-steps i{display:block}.store-customize-steps span{margin-top:4px;font-size:12px;color:#60758f}.store-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.store-testimonial-card{padding:20px}.store-testimonial-card p{margin:12px 0;color:#60758f;line-height:1.7}.store-listing-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.store-breadcrumbs,.product-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;font-weight:700;color:#70849e}.store-breadcrumbs a,.product-breadcrumb a{color:#3b82f6;text-decoration:none}.store-filter-card{padding:18px;margin-bottom:14px}.store-filter-card-head.inline,.store-catalog-head,.store-reference-footer-bottom,.account-address-head,.account-address-footer,.account-form-actions,.account-hero-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.store-filter-card h3,.store-filter-group h4{margin:0}.store-filter-group{display:grid;gap:10px;margin-top:16px}.store-range-line{height:4px;border-radius:999px;background:#dbeafe;position:relative}.store-range-line span{position:absolute;left:20%;right:18%;top:0;bottom:0;border-radius:999px;background:#3b82f6}.store-range-values,.store-filter-category-list,.store-filter-sub-list{display:grid;gap:8px}.store-range-values{grid-template-columns:repeat(2,1fr);font-size:12px;color:#60758f}.store-filter-category-item>a,.store-filter-sub-list a,.store-filter-group label{display:flex;align-items:center;justify-content:space-between;min-height:34px;text-decoration:none;color:#31465f;font-size:13px;font-weight:700}.store-filter-category-item.active>a,.store-filter-sub-list a.active{color:#3b82f6}.store-filter-sub-list{padding-left:12px}.store-category-hero{grid-template-columns:minmax(0,1fr) 300px;padding:24px;border:1px solid #e6edf5;border-radius:24px;background:#fff}.store-category-hero-features{display:flex;gap:10px;flex-wrap:wrap}.store-category-hero-features article{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border-radius:999px;background:#f5f8fc;color:#405870;font-size:12px;font-weight:800}.store-category-hero-image{height:220px;border-radius:18px;overflow:hidden;background:#edf3fb}.store-category-hero-image img{width:100%;height:100%;object-fit:cover}.store-catalog-head{padding:18px;border:1px solid #e6edf5;border-radius:18px;background:#fff;margin:16px 0}.store-catalog-toolbar,.store-view-icons,.store-newsletter-copy,.store-payment-icons,.store-footer-socials,.cart-item-actions,.cart-qty-form,.product-detail-actions,.product-detail-price-row,.product-detail-meta,.product-detail-thumbs,.account-grid,.account-nav-list,.auth-tabs{display:flex;align-items:center;gap:10px}.store-catalog-toolbar select{min-height:40px;padding:0 12px;border:1px solid #d8e3ef;border-radius:12px;background:#fff}.store-view-icons button{width:38px;height:38px;border:1px solid #d8e3ef;border-radius:12px;background:#fff;color:#7a8da6}.store-view-icons button.active{background:#102a43;color:#fff;border-color:#102a43}.main-content.product-detail-page{width:min(1380px,calc(100% - 40px));margin:0 auto;padding:24px 0 36px}.product-detail-shell{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start;padding:24px;border:1px solid #e6edf5;border-radius:24px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.05)}.product-detail-main-image{position:relative;border-radius:20px;overflow:hidden;background:#f3f6fb}.product-detail-main-image img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover}.product-detail-main-image span{position:absolute;left:14px;top:14px;min-height:28px;padding:0 12px;border-radius:999px;background:#102a43;color:#fff;display:inline-flex;align-items:center;font-size:12px;font-weight:800}.product-detail-thumbs{flex-wrap:wrap;margin-top:14px}.product-detail-thumb{width:72px;height:72px;padding:0;border-radius:14px;overflow:hidden;border:2px solid transparent;background:#fff}.product-detail-thumb.active{border-color:#3b82f6}.product-detail-thumb img{width:100%;height:100%;object-fit:cover}.product-detail-kicker{margin:0 0 8px;color:#6f84a0;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.product-detail-info h1{font-size:34px;margin:0 0 12px}.product-detail-price-row strong{font-size:30px}.product-detail-price-row span{font-size:16px;text-decoration:line-through;color:#9aabc0}.product-detail-price-row em{font-style:normal;color:#17a34a;font-weight:800}.product-detail-summary{line-height:1.7;margin:0 0 18px}.product-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.product-detail-meta div{padding:14px;border:1px solid #e6edf5;border-radius:14px;background:#fbfcfe}.product-detail-meta span{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7a8da6;margin-bottom:6px}.product-qty-control{display:flex;align-items:center;border:1px solid #d8e3ef;border-radius:14px;overflow:hidden}.product-qty-control button{width:42px;height:46px;background:#f5f8fc;font-size:20px;color:#23415d}.product-qty-control input{width:70px;height:46px;border:0;text-align:center}.product-detail-cart{min-width:180px}.product-description-section,.product-related-section{padding:24px;margin-top:22px}.product-description-content{color:#556b85;line-height:1.8}.cart-sidebar{position:fixed;top:0;right:0;width:min(380px,calc(100vw - 24px));height:100vh;background:#fff;transform:translateX(110%);transition:transform .22s ease;z-index:1300;display:flex;flex-direction:column;border-left:1px solid #e6edf5;box-shadow:-16px 0 34px rgba(15,23,42,.12)}.cart-sidebar.active{transform:translateX(0)}.cart-overlay{position:fixed;inset:0;background:rgba(15,23,42,.42);opacity:0;visibility:hidden;transition:.2s ease;z-index:1290}.cart-overlay.active{opacity:1;visibility:visible}.cart-header,.cart-footer{padding:18px;border-bottom:1px solid #eef2f7}.cart-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.cart-header h4{margin:0}.cart-header small{display:block;margin-top:4px;color:#6f84a0;font-weight:600}.cart-close-btn{width:40px;height:40px;border-radius:12px;background:#f4f7fb;color:#31465f}.cart-body{flex:1;overflow:auto;padding:18px}.cart-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #eef2f7}.cart-item-image{width:84px;height:84px;border-radius:14px;overflow:hidden;background:#f4f7fb;flex:0 0 auto}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-title{text-decoration:none;font-weight:700}.cart-info p,.cart-line-meta{margin:6px 0;color:#60758f}.cart-qty-form{border:1px solid #d8e3ef;border-radius:12px;overflow:hidden}.cart-qty-form button{width:34px;height:36px;background:#f5f8fc;color:#23415d;border:0}.cart-qty-form input{width:46px;height:36px;border:0;text-align:center}.cart-remove-btn{padding:0 10px;min-height:36px;border-radius:12px;background:#fff1f2;color:#d6455d;font-weight:700}.cart-footer{border-top:1px solid #eef2f7;border-bottom:0}.cart-total{margin-bottom:12px}.checkout-btn{width:100%;min-height:46px;border:0;border-radius:14px;background:#102a43;color:#fff;font-weight:800}.cart-empty-state{min-height:220px;display:grid;place-items:center;text-align:center;gap:10px;color:#60758f}.cart-empty-state i{width:54px;height:54px;border-radius:16px;background:#eef4ff;display:grid;place-items:center;color:#3b82f6}.store-newsletter-band{background:#102a43;color:#fff;padding:42px 0}.store-newsletter-inner{width:min(1380px,calc(100% - 40px));margin:0 auto;grid-template-columns:minmax(0,1fr) 420px;align-items:center}.store-newsletter-copy span{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:0 0 auto}.store-newsletter-copy p{margin:6px 0 0;color:#d2dcec}.store-newsletter-form{display:grid;grid-template-columns:1fr auto;gap:10px}.store-newsletter-form input{min-height:50px;padding:0 16px;border:0;border-radius:14px}.store-newsletter-form button{min-height:50px;padding:0 18px;border:0;border-radius:14px;background:#3b82f6;color:#fff;font-weight:800}.store-reference-footer{background:#fff;padding:34px 0 0}.store-reference-footer-inner{width:min(1380px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:22px}.store-reference-footer h3,.store-reference-footer h4{margin:0 0 12px}.store-reference-footer p{margin:0;color:#60758f;line-height:1.7}.store-footer-links{display:grid;gap:10px}.store-footer-links a,.store-footer-contact a{text-decoration:none}.store-footer-contact{display:grid;gap:10px}.store-footer-socials a{width:38px;height:38px;border-radius:12px;background:#f5f8fc;display:grid;place-items:center;text-decoration:none;color:#29415e}.store-payment-icons span{min-height:30px;padding:0 10px;border-radius:999px;background:#f4f7fb;color:#627791;font-size:12px;font-weight:700;display:inline-flex;align-items:center}.store-reference-footer-bottom{width:min(1380px,calc(100% - 40px));margin:22px auto 0;padding:16px 0;border-top:1px solid #eef2f7;color:#7a8da6}.mobile-bottom-nav{display:none}.auth-shell{width:min(1100px,calc(100% - 40px));margin:34px auto;display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:24px;align-items:stretch}.auth-hero-panel,.auth-box-modern{border:1px solid #e6edf5;border-radius:24px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.05)}.auth-hero-panel{padding:28px;background:linear-gradient(135deg,#eff6ff 0%,#ffffff 60%)}.auth-brand-kicker,.auth-form-kicker{display:block;color:#6f84a0;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.auth-brand h1,.auth-form-head h2{margin:8px 0 10px;color:#102a43;font-weight:800}.auth-brand p,.auth-form-head p{color:#60758f;line-height:1.7}.auth-benefit-grid{display:grid;gap:12px;margin-top:20px}.auth-benefit-grid>div{padding:16px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid #dbe5f0}.auth-box-modern{padding:24px}.auth-tabs-modern{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.auth-tab{min-height:44px;border-radius:14px;background:#f5f8fc;color:#5f738d;font-weight:800}.auth-tab.active{background:#3b82f6;color:#fff}.auth-form{display:none}.auth-form.active{display:block}.auth-form-stack{display:grid;gap:14px}.auth-field label{display:block;margin-bottom:6px;color:#52677f;font-size:13px;font-weight:700}.auth-field input{min-height:48px;border:1px solid #d8e3ef;border-radius:14px}.auth-submit{min-height:48px}.account-page{padding:24px 0 36px}.account-layout{width:min(1380px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px}.account-nav-card{padding:18px;position:sticky;top:100px;height:fit-content}.account-nav-head{padding-bottom:14px;border-bottom:1px solid #eef2f7;margin-bottom:14px}.account-nav-head span,.account-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7287a3}.account-nav-head strong{display:block;margin-top:6px;font-size:20px}.account-nav-head small{display:block;margin-top:4px;color:#60758f}.account-nav-list{display:grid;gap:6px}.account-nav-link{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:14px;text-decoration:none;color:#51657d;font-weight:700}.account-nav-link.active,.account-nav-link:hover{background:#f3f7fc;color:#102a43}.account-content{display:grid;gap:18px}.account-hero-card{grid-template-columns:minmax(0,1fr) auto;padding:22px 24px}.account-hero-card p{margin:8px 0 0;color:#60758f;line-height:1.7}.account-hero-meta,.account-hero-stat{display:grid;gap:10px}.account-hero-meta>div,.account-hero-stat{min-width:180px;padding:14px 16px;border:1px solid #e6edf5;border-radius:14px;background:#fbfcfe}.account-hero-meta span,.account-hero-stat span{display:block;color:#7287a3;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.account-hero-meta strong,.account-hero-stat strong{display:block;margin-top:8px;font-size:18px}.account-grid{display:grid;gap:18px}.account-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.account-side-stack{display:grid;gap:18px}.account-mini-card{padding:18px;border:1px solid #e6edf5;border-radius:16px;background:#fbfcfe}.account-mini-card h3{margin:8px 0}.account-card{padding:22px 24px}.account-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-field label{display:block;margin-bottom:6px;color:#52677f;font-size:13px;font-weight:700}.account-field input,.account-field select{width:100%;min-height:46px;padding:0 14px;border:1px solid #d8e3ef;border-radius:14px;background:#fff}.account-checkbox-row{display:flex;align-items:center;gap:10px;font-weight:700;color:#425b76}.account-address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-address-card{padding:18px;border:1px solid #e6edf5;border-radius:18px;background:#fbfcfe}.account-address-tags{display:flex;gap:8px;flex-wrap:wrap}.account-address-tags span,.account-default-tag{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#eef4ff;color:#345cdb;font-size:12px;font-weight:800}.account-default-tag{background:#e9f8ef;color:#1d8f4d}.account-address-body{margin-top:14px;color:#5f738d;line-height:1.7}.account-address-body p{margin:0 0 6px}.account-address-contact{display:flex;gap:12px;flex-wrap:wrap}.account-address-footer{margin-top:16px;justify-content:flex-start;flex-wrap:wrap}.account-icon-btn{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid #d8e3ef;border-radius:12px;background:#fff;color:#29415e;text-decoration:none;font-weight:700}.account-delete-btn{color:#d6455d}.account-empty-state{min-height:240px;display:grid;place-items:center;text-align:center;gap:10px;color:#60758f}.account-empty-state i{width:54px;height:54px;border-radius:16px;background:#eef4ff;display:grid;place-items:center;color:#3b82f6}.account-modal .modal-content{border-radius:18px;border:1px solid #e5edf6;box-shadow:0 18px 44px rgba(15,23,42,.12)}.account-modal-secondary,.account-modal-danger{min-height:42px;padding:0 16px;border-radius:12px;border:1px solid #d8e3ef;background:#fff;font-weight:700}.account-modal-danger{background:#d6455d;border-color:#d6455d;color:#fff}.account-secondary-link{text-decoration:none;padding:0}.account-outline-btn{display:inline-flex}.account-primary-btn{border:0}.cart-form,.cart-shopping{display:inline-flex}
@media(max-width:1199px){.store-home-benefits,.store-home-category-grid,.store-testimonial-grid,.account-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-customize-banner{grid-template-columns:auto 1fr}.store-customize-steps{grid-column:1/-1}.account-layout{grid-template-columns:1fr}.account-nav-card{position:relative;top:0}}
@media(max-width:991px){.store-main-header-inner,.store-home-hero,.store-listing-layout,.store-category-hero,.store-newsletter-inner,.product-detail-shell,.auth-shell,.account-grid-two,.account-form-grid{grid-template-columns:1fr}.store-topbar-links,.store-main-action span{display:none}.store-category-trigger{display:inline-flex}.store-main-header-inner{grid-template-columns:auto 1fr auto}.store-shell,.main-content.product-detail-page,.auth-shell,.account-layout,.store-topbar-inner,.store-main-header-inner,.store-newsletter-inner,.store-reference-footer-inner,.store-reference-footer-bottom{width:min(100%,calc(100% - 24px))}.store-reference-footer-inner{grid-template-columns:1fr 1fr}.store-home-hero-media,.store-category-hero-image{min-height:220px;height:220px}.store-filter-sidebar{display:none}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;background:#fff;border-top:1px solid #e6edf5;z-index:1000}.mobile-nav-item{display:grid;place-items:center;gap:4px;color:#31465f;font-size:11px;text-decoration:none}.cart-sidebar{width:min(380px,calc(100vw - 12px))}.store-main-actions{gap:6px}.store-main-action{padding:0 12px}.store-main-action.cart em{margin-left:2px}.product-detail-meta{grid-template-columns:1fr}.account-hero-card{grid-template-columns:1fr}.account-address-grid{grid-template-columns:1fr}}
@media(max-width:575px){.store-home-hero{padding:20px}.store-home-hero h1{font-size:38px}.store-home-hero h1 small{font-size:24px}.store-home-benefits,.store-home-category-grid,.store-testimonial-grid,.store-product-grid,.store-customize-steps,.store-reference-footer-inner{grid-template-columns:1fr}.store-main-header-inner,.store-topbar-inner,.store-shell,.main-content.product-detail-page,.store-newsletter-inner,.auth-shell,.account-layout{width:min(100%,calc(100% - 16px))}.store-main-header-inner{gap:10px;grid-template-columns:1fr auto}.store-brand span{font-size:20px}.store-search-shell{grid-column:1/-1;grid-template-columns:1fr auto}.store-search-select{display:none}.store-main-actions{justify-content:flex-end}.store-main-action{min-height:42px}.store-home-primary-btn,.store-home-secondary-btn,.product-detail-cart,.account-primary-btn,.account-outline-btn{width:100%}.store-home-hero-actions,.product-detail-actions,.account-form-actions{flex-direction:column;align-items:stretch}.product-detail-info h1{font-size:28px}.auth-box-modern,.auth-hero-panel,.account-card,.account-nav-card,.product-description-section,.product-related-section{padding:18px}}


/* Storefront polish: lighter homepage, tighter corners, better mobile behavior */
:root{
    --ui-radius:5px;
}

.storefront-app .app-toast,
.storefront-app .app-toast-icon,
.storefront-app .btn.btn-dark,
.storefront-app .btn.btn-outline-dark,
.storefront-app .store-brand img,
.storefront-app .store-category-trigger,
.storefront-app .store-search-shell,
.storefront-app .store-main-action,
.storefront-app .store-drawer-close,
.storefront-app .store-drawer-main,
.storefront-app .store-drawer-arrow,
.storefront-app .store-drawer-child,
.storefront-app .store-home-hero,
.storefront-app .store-home-hero-media,
.storefront-app .store-home-benefits article,
.storefront-app .store-home-category-card,
.storefront-app .store-product-card,
.storefront-app .store-product-button,
.storefront-app .store-customize-banner,
.storefront-app .store-customize-icon,
.storefront-app .store-customize-steps article,
.storefront-app .store-testimonial-card,
.storefront-app .store-filter-card,
.storefront-app .store-catalog-head,
.storefront-app .store-category-hero,
.storefront-app .store-category-hero-image,
.storefront-app .store-view-icons button,
.storefront-app .product-detail-shell,
.storefront-app .product-detail-main-image,
.storefront-app .product-detail-thumb,
.storefront-app .product-detail-meta div,
.storefront-app .product-qty-control,
.storefront-app .cart-sidebar,
.storefront-app .cart-close-btn,
.storefront-app .cart-item-image,
.storefront-app .cart-qty-form,
.storefront-app .cart-remove-btn,
.storefront-app .checkout-btn,
.storefront-app .store-newsletter-copy span,
.storefront-app .store-newsletter-form input,
.storefront-app .store-newsletter-form button,
.storefront-app .store-footer-socials a,
.storefront-app .store-payment-icons span,
.storefront-app .auth-hero-panel,
.storefront-app .auth-box-modern,
.storefront-app .auth-benefit-grid > div,
.storefront-app .auth-tab,
.storefront-app .auth-field input,
.storefront-app .account-card,
.storefront-app .account-nav-card,
.storefront-app .account-nav-link,
.storefront-app .account-hero-meta > div,
.storefront-app .account-hero-stat,
.storefront-app .account-mini-card,
.storefront-app .account-field input,
.storefront-app .account-field select,
.storefront-app .account-address-card,
.storefront-app .account-icon-btn,
.storefront-app .account-modal .modal-content,
.storefront-app .account-modal-secondary,
.storefront-app .account-modal-danger{
    border-radius:5px !important;
}

.storefront-app .store-search-button,
.storefront-app .store-home-primary-btn,
.storefront-app .store-home-secondary-btn,
.storefront-app .account-primary-btn,
.storefront-app .account-outline-btn,
.storefront-app .product-detail-cart,
.storefront-app .store-main-action.compact{
    border-radius:5px !important;
}

.storefront-app .store-home-page{
    padding-top:18px;
}

.storefront-app .store-main-header{
    box-shadow:0 1px 0 rgba(16,42,67,.06);
}

.storefront-app .store-search-shell{
    background:#fff;
    grid-template-columns:minmax(0,1fr) auto;
}

.storefront-app .store-search-input{
    min-height:46px;
}

.storefront-app .store-search-button{
    width:52px;
    height:46px;
}

.storefront-app .store-main-action{
    min-height:44px;
    padding:0 16px;
}

.storefront-app .store-home-hero{
    padding:28px;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
    align-items:center;
    background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%);
}

.storefront-app .store-home-kicker{
    min-height:28px;
    padding:0 10px;
    border-radius:5px;
}

.storefront-app .store-home-hero h1{
    margin:12px 0 10px;
    font-size:52px;
}

.storefront-app .store-home-hero h1 small{
    margin-top:4px;
    font-size:28px;
}

.storefront-app .store-home-hero p{
    margin:0;
    max-width:620px;
}

.storefront-app .store-home-dots span{
    border-radius:999px;
}

.storefront-app .store-home-benefits{
    margin:18px 0 10px;
}

.storefront-app .store-home-benefits article{
    min-height:82px;
    padding:16px 18px;
}

.storefront-app .store-home-benefits i{
    border-radius:5px;
}

.storefront-app .store-section{
    margin-top:24px;
}

.storefront-app .store-section-head{
    margin-bottom:16px;
}

.storefront-app .store-home-category-card{
    align-items:flex-start;
    padding:14px;
}

.storefront-app .store-home-category-thumb{
    width:96px;
    height:96px;
    border-radius:50%;
}

.storefront-app .store-product-card{
    box-shadow:0 8px 22px rgba(15,23,42,.05);
}

.storefront-app .store-product-wishlist{
    border-radius:50%;
}

.storefront-app .store-product-wishlist-form{
    position:absolute;
    top:12px;
    right:12px;
    z-index:3;
    margin:0;
}

.storefront-app .store-product-wishlist-form .store-product-wishlist{
    position:static;
}

.storefront-app .store-product-wishlist.is-active{
    color:#db2777;
    background:#fff5f8;
}

.storefront-app .store-product-button{
    min-height:40px;
}

.storefront-app .store-customize-banner{
    grid-template-columns:auto minmax(220px,1fr) minmax(280px,1.3fr) auto;
    gap:14px;
    padding:20px;
    background:#eef5ff;
}

.storefront-app .store-customize-steps article{
    min-height:84px;
}

.storefront-app .store-testimonial-card{
    min-height:160px;
}

.storefront-app .store-newsletter-band{
    padding:32px 0;
}

.storefront-app .store-newsletter-inner{
    gap:18px;
}

.storefront-app .store-reference-footer{
    padding-top:28px;
}

.storefront-app .store-footer-socials a{
    width:34px;
    height:34px;
}

@media (max-width: 1199px){
    .storefront-app .store-home-hero{
        grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);
    }

    .storefront-app .store-customize-banner{
        grid-template-columns:auto 1fr;
    }

    .storefront-app .store-customize-steps{
        grid-column:1 / -1;
    }
}

@media (max-width: 991px){
    .storefront-app .store-main-header{
        position:sticky;
    }

    .storefront-app .store-main-header-inner{
        min-height:auto;
        padding:12px 0;
        grid-template-columns:1fr auto;
        gap:12px;
    }

    .storefront-app .store-brand{
        font-size:20px;
    }

    .storefront-app .store-brand img{
        width:34px;
        height:34px;
    }

    .storefront-app .store-search-shell{
        order:3;
        grid-column:1 / -1;
    }

    .storefront-app .store-home-hero{
        grid-template-columns:1fr;
        padding:22px;
    }

    .storefront-app .store-home-hero-media{
        min-height:260px;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .storefront-app .store-home-category-grid,
    .storefront-app .store-testimonial-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .storefront-app .store-customize-banner{
        grid-template-columns:1fr;
        justify-items:start;
    }

    .storefront-app .store-customize-steps{
        width:100%;
        grid-template-columns:1fr;
    }

    .storefront-app .store-customize-banner > a{
        width:100%;
    }

    .storefront-app .store-newsletter-inner,
    .storefront-app .store-reference-footer-inner{
        grid-template-columns:1fr;
    }
}

@media (max-width: 575px){
    .storefront-app .store-topbar{
        display:none;
    }

    .storefront-app .store-shell,
    .storefront-app .store-newsletter-inner,
    .storefront-app .store-reference-footer-inner,
    .storefront-app .store-reference-footer-bottom,
    .storefront-app .store-main-header-inner{
        width:min(100%,calc(100% - 16px));
    }

    .storefront-app .store-main-header-inner{
        padding:10px 0;
    }

    .storefront-app .store-main-actions{
        gap:8px;
    }

    .storefront-app .store-main-action{
        min-height:40px;
        padding:0 12px;
    }

    .storefront-app .store-main-action span{
        display:none;
    }

    .storefront-app .store-main-action.cart em{
        margin-left:0;
    }

    .storefront-app .store-search-shell{
        grid-template-columns:1fr 48px;
    }

    .storefront-app .store-home-hero{
        padding:16px;
    }

    .storefront-app .store-home-hero h1{
        font-size:34px;
        line-height:1.05;
    }

    .storefront-app .store-home-hero h1 small{
        font-size:22px;
    }

    .storefront-app .store-home-hero-media{
        min-height:200px;
    }

    .storefront-app .store-home-benefits,
    .storefront-app .store-home-category-grid,
    .storefront-app .store-testimonial-grid,
    .storefront-app .store-product-grid{
        grid-template-columns:1fr;
    }

    .storefront-app .store-section-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .storefront-app .store-customize-banner{
        padding:16px;
    }

    .storefront-app .store-newsletter-band{
        padding:24px 0;
    }

    .storefront-app .store-newsletter-form{
        grid-template-columns:1fr;
    }

    .storefront-app .store-newsletter-form button,
    .storefront-app .store-home-primary-btn,
    .storefront-app .store-home-secondary-btn{
        width:100%;
    }

    .storefront-app .store-reference-footer{
        padding-bottom:76px;
    }
}

/* Header alignment pass to match storefront reference */
.storefront-app .store-topbar{
    background:#131c2f;
    border-bottom:0;
}

.storefront-app .store-topbar-inner,
.storefront-app .store-main-header-inner{
    width:min(1460px,calc(100% - 48px));
}

.storefront-app .store-topbar-inner{
    min-height:34px;
    font-size:12px;
}

.storefront-app .store-topbar-inner p{
    font-weight:700;
    letter-spacing:0;
}

.storefront-app .store-topbar-links{
    gap:22px;
}

.storefront-app .store-topbar-links a{
    color:#ffffff;
    font-size:12px;
}

.storefront-app .store-main-header{
    background:#fff;
    border-bottom:1px solid #dfe7f1;
}

.storefront-app .store-main-header-inner{
    min-height:72px;
    grid-template-columns:190px minmax(520px,1fr) auto;
    gap:22px;
}

.storefront-app .store-brand{
    gap:10px;
    font-size:22px;
    font-weight:800;
}

.storefront-app .store-brand img{
    width:40px;
    height:40px;
    object-fit:contain;
    background:transparent;
}

.storefront-app .store-search-shell{
    border-color:#d6e1ee;
    box-shadow:none;
}

.storefront-app .store-search-input{
    min-height:44px;
    padding:0 18px;
    font-size:15px;
}

.storefront-app .store-search-input::placeholder{
    color:#7f8da3;
}

.storefront-app .store-search-button{
    width:54px;
    height:44px;
    background:#2f6df6;
}

.storefront-app .store-main-actions{
    gap:10px;
}

.storefront-app .store-main-action{
    min-height:44px;
    padding:0 16px;
    border:1px solid #d6e1ee;
    color:#1d2f45;
    font-weight:700;
    background:#fff;
}

.storefront-app .store-main-action i{
    font-size:16px;
}

.storefront-app .store-main-action.compact{
    width:44px;
    color:#ff7a1a;
}

.storefront-app .store-main-action.cart{
    padding:0 18px;
    border-color:#b9ecc8;
    background:#f3fff6;
    color:#1d2f45;
}

.storefront-app .store-main-action.cart i{
    color:#18a34a;
}

.storefront-app .store-main-action.cart em{
    min-width:18px;
    height:18px;
    padding:0 5px;
    background:#df2a2a;
    color:#fff;
    font-size:11px;
}

@media (max-width: 991px){
    .storefront-app .store-topbar-inner,
    .storefront-app .store-main-header-inner{
        width:min(100%,calc(100% - 24px));
    }

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

    .storefront-app .store-brand{
        font-size:20px;
    }

    .storefront-app .store-search-shell{
        grid-column:1 / -1;
    }
}

@media (max-width: 575px){
    .storefront-app .store-main-header-inner{
        width:min(100%,calc(100% - 16px));
        gap:10px;
    }

    .storefront-app .store-brand{
        font-size:18px;
    }

    .storefront-app .store-brand img{
        width:32px;
        height:32px;
    }

    .storefront-app .store-search-input{
        font-size:14px;
    }

    .storefront-app .store-main-actions{
        gap:6px;
    }

    .storefront-app .store-main-action{
        min-height:40px;
        padding:0 12px;
    }

    .storefront-app .store-main-action.cart{
        padding:0 12px;
    }
}

/* Fix hero banner image height */
.storefront-app .store-home-hero{
    align-items:stretch;
}

.storefront-app .store-home-hero-media{
    height:420px;
    min-height:420px;
    max-height:420px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:transparent;
}

.storefront-app .store-home-hero-media img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:transparent;
}

@media (max-width: 991px){
    .storefront-app .store-home-hero-media{
        height:280px;
        min-height:280px;
        max-height:280px;
    }
}

@media (max-width: 575px){
    .storefront-app .store-home-hero-media{
        height:220px;
        min-height:220px;
        max-height:220px;
    }
}

/* Compact shop-by-category section */
.storefront-app .store-home-category-grid{
    grid-template-columns:repeat(auto-fit,minmax(120px,120px));
    gap:12px;
    justify-content:start;
}

.storefront-app .store-home-category-card{
    width:120px;
    min-height:136px;
    padding:12px 10px 14px;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    box-shadow:0 6px 18px rgba(15,23,42,.04);
}

.storefront-app .store-home-category-thumb{
    width:84px;
    height:84px;
    border-radius:50%;
    margin:0 auto;
}

.storefront-app .store-home-category-card strong{
    width:100%;
    display:block;
    text-align:left;
    font-size:12px;
    line-height:1.35;
    color:#0f2743;
}

@media (max-width: 575px){
    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(2,minmax(120px,120px));
        justify-content:start;
    }
}

/* Fix benefits card text layout */
.storefront-app .store-home-benefits article{
    align-items:flex-start;
}

.storefront-app .store-home-benefits article > div{
    display:grid;
    gap:4px;
    min-width:0;
    flex:1;
}

.storefront-app .store-home-benefits strong{
    display:block;
    margin:0;
    font-size:14px;
    line-height:1.25;
    color:#102a43;
}

.storefront-app .store-home-benefits span{
    display:block;
    margin:0;
    font-size:12px;
    line-height:1.4;
    color:#6b7c93;
}

/* Fix product card photo sizing */
.storefront-app .store-product-media{
    aspect-ratio:1 / 1;
    height:220px;
    padding:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f8fbff;
}

.storefront-app .store-product-image-link{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
}

.storefront-app .store-product-image{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
}

@media (max-width: 575px){
    .storefront-app .store-product-media{
        height:210px;
        padding:12px;
    }
}

/* Fill full product card photo area */
.storefront-app .store-product-media{
    aspect-ratio:1 / 1;
    height:220px;
    padding:0;
    display:block;
    overflow:hidden;
    background:#f3f6fb;
}

.storefront-app .store-product-image-link{
    display:block;
    width:100%;
    height:100%;
}

.storefront-app .store-product-image{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

@media (max-width: 575px){
    .storefront-app .store-product-media{
        height:210px;
    }
}

/* Mobile storefront rebuild: sticky logo + search, 2-card product grid, sticky icon footer */
@media (max-width: 575px){
    .storefront-app{
        padding-bottom:76px;
    }

    .storefront-app .store-main-header{
        position:sticky;
        top:0;
        z-index:1100;
        background:#fff;
    }

    .storefront-app .store-main-header-inner{
        width:min(100%,calc(100% - 16px));
        grid-template-columns:auto minmax(0,1fr);
        align-items:center;
        gap:12px;
        padding:8px 0;
        position:relative;
    }

    .storefront-app .store-brand{
        min-height:40px;
        gap:8px;
        font-size:17px;
        min-width:auto;
        flex:0 0 auto;
    }

    .storefront-app .store-brand img{
        width:30px;
        height:30px;
    }

    .storefront-app .store-category-trigger,
    .storefront-app .store-main-actions{
        display:none !important;
    }

    .storefront-app .store-search-shell{
        order:2;
        grid-column:auto;
        grid-template-columns:minmax(0,1fr) 46px;
        border-radius:5px !important;
        min-width:0;
        align-self:center;
        position:static;
        box-shadow:0 8px 20px rgba(16,42,67,.06);
    }

    .storefront-app .store-search-input{
        min-height:42px;
        padding:0 12px;
        font-size:13px;
    }

    .storefront-app .store-search-button{
        width:46px;
        height:42px;
        border-radius:5px !important;
    }

    .storefront-app .store-search-input-wrap{
        position:static;
    }

    .storefront-app .store-search-suggestions{
        top:calc(100% + 6px);
        left:0;
        right:0;
        width:auto;
        max-height:min(68vh, 420px);
        padding:10px;
        border-radius:5px;
        box-shadow:0 18px 36px rgba(16,42,67,.18);
    }

    .storefront-app .store-shell{
        width:min(100%,calc(100% - 16px));
        padding:10px 0 20px;
    }

    .storefront-app .store-section{
        margin-top:18px;
    }

    .storefront-app .store-section-head{
        margin-bottom:10px;
        align-items:center;
        flex-direction:row;
        justify-content:space-between;
    }

    .storefront-app .store-section-head h2{
        font-size:18px;
        line-height:1.2;
    }

    .storefront-app .store-section-head a{
        font-size:12px;
        white-space:nowrap;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:1fr;
        gap:10px;
        margin:12px 0 6px;
    }

    .storefront-app .store-home-benefits article{
        min-height:unset;
        padding:14px;
    }

    .storefront-app .store-home-category-slider{
        display:grid !important;
        grid-auto-flow:column;
        grid-auto-columns:140px;
        grid-template-columns:none !important;
        gap:10px;
        overflow-x:auto;
        overscroll-behavior-x:contain;
        scroll-snap-type:x mandatory;
        padding:2px 2px 6px;
        margin:0 -2px;
        scrollbar-width:none;
    }

    .storefront-app .store-home-category-slider::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-home-category-card{
        width:140px;
        min-height:138px;
        padding:12px 10px;
        scroll-snap-align:start;
        justify-content:flex-start;
    }

    .storefront-app .store-home-category-thumb{
        width:76px;
        height:76px;
    }

    .storefront-app .store-home-category-card strong{
        font-size:12px;
        text-align:center;
    }

    .storefront-app .store-product-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
    }

    .storefront-app .store-product-col{
        min-width:0;
    }

    .storefront-app .store-product-card{
        min-width:0;
    }

    .storefront-app .store-product-media{
        height:150px !important;
    }

    .storefront-app .store-product-badge{
        top:8px;
        left:8px;
        min-height:22px;
        padding:0 8px;
        font-size:10px;
    }

    .storefront-app .store-product-wishlist-form{
        top:8px;
        right:8px;
    }

    .storefront-app .store-product-wishlist{
        width:30px;
        height:30px;
    }

    .storefront-app .store-product-content{
        gap:7px;
        padding:10px;
    }

    .storefront-app .store-product-title{
        font-size:13px;
        line-height:1.3;
    }

    .storefront-app .store-product-rating{
        gap:4px;
    }

    .storefront-app .store-stars{
        font-size:10px;
    }

    .storefront-app .store-product-rating span{
        font-size:11px;
    }

    .storefront-app .store-product-price-row{
        gap:4px;
    }

    .storefront-app .store-product-price-row strong{
        font-size:15px;
    }

    .storefront-app .store-product-price-row span,
    .storefront-app .store-product-price-row em{
        font-size:10px;
    }

    .storefront-app .store-product-button{
        min-height:36px;
        padding:0 8px;
        font-size:11px;
        gap:6px;
    }

    .storefront-app .store-customize-banner{
        gap:12px;
        padding:14px;
        background:linear-gradient(180deg,#eef5ff 0%,#f8fbff 100%);
        border-color:#cfe0f6;
    }

    .storefront-app .store-customize-copy h3{
        font-size:16px;
    }

    .storefront-app .store-customize-copy p{
        font-size:13px;
    }

    .storefront-app .store-customize-steps article{
        min-height:unset;
        padding:12px;
        border:1px solid #dce8f5;
        background:#fff;
        box-shadow:0 6px 18px rgba(15,23,42,.04);
    }

    .storefront-app .store-customize-steps strong{
        margin-top:6px;
        font-size:13px;
    }

    .storefront-app .store-customize-steps span{
        font-size:11px;
        line-height:1.4;
    }

    .storefront-app .store-testimonial-slider{
        overflow:hidden;
    }

    .storefront-app .store-testimonial-track{
        display:grid;
        grid-auto-flow:column;
        grid-auto-columns:100%;
        gap:12px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        overscroll-behavior-x:contain;
        scroll-behavior:smooth;
    }

    .storefront-app .store-testimonial-track::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-testimonial-card{
        min-height:unset;
        padding:16px;
        scroll-snap-align:start;
        box-shadow:0 8px 20px rgba(15,23,42,.05);
    }

    .storefront-app .store-testimonial-dots{
        display:flex;
        justify-content:center;
        gap:8px;
        margin-top:10px;
    }

    .storefront-app .store-testimonial-dot{
        width:8px;
        height:8px;
        padding:0;
        border:0;
        border-radius:999px;
        background:#cfd9e5;
    }

    .storefront-app .store-testimonial-dot.active{
        width:22px;
        background:#2f6df6;
    }

    .storefront-app .store-newsletter-band{
        margin-top:24px;
        padding:28px 0 30px;
    }

    .storefront-app .store-reference-footer{
        margin-top:18px;
        padding-top:24px;
        padding-bottom:86px;
    }

    .storefront-app .store-reference-footer-bottom{
        margin-top:18px;
        margin-bottom:0;
        padding-bottom:14px;
    }

    .storefront-app .mobile-bottom-nav{
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        display:grid;
        grid-template-columns:repeat(5,minmax(0,1fr));
        min-height:72px;
        padding:6px 6px max(6px,env(safe-area-inset-bottom));
        background:#fff;
        border-top:1px solid #dfe7f1;
        box-shadow:0 -6px 18px rgba(15,23,42,.06);
        z-index:1200;
    }

    .storefront-app .mobile-nav-item{
        position:relative;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        color:#28415d;
        font-size:10px;
        text-decoration:none;
        min-height:60px;
        min-width:0;
    }

    .storefront-app .mobile-nav-item i{
        width:32px;
        height:32px;
        border:1px solid #d9e5ff;
        border-radius:5px;
        background:#f3f7ff;
        display:grid;
        place-items:center;
        font-size:14px;
        line-height:1;
        color:#2563eb;
        transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease;
    }

    .storefront-app .mobile-nav-item span{
        display:block;
        width:100%;
        max-width:58px;
        overflow:hidden;
        text-align:center;
        text-overflow:ellipsis;
        white-space:nowrap;
        color:#51657d;
        font-weight:700;
        line-height:1;
    }

    .storefront-app .mobile-nav-item.mobile-wishlist-trigger i{
        border-color:#ffd7e2;
        background:#fff5f8;
        color:#db2777;
    }

    .storefront-app .mobile-nav-item.mobile-cart-trigger i{
        border-color:#ccefd9;
        background:#f1fcf5;
        color:#16a34a;
    }

    .storefront-app .mobile-nav-item.mobile-chat-trigger i{
        border-color:#d8e3ef;
        background:#f4f7fb;
        color:#102f4c;
    }

    .storefront-app .mobile-nav-item.active span{
        color:#102a43;
    }

    .storefront-app .mobile-nav-item.active i{
        transform:translateY(-1px);
        box-shadow:0 7px 14px rgba(15,23,42,.08);
    }

    .storefront-app .mobile-nav-badge,
    .storefront-app .mobile-cart-badge{
        position:absolute;
        top:4px;
        right:calc(50% - 25px);
        min-width:16px;
        height:16px;
        padding:0 4px;
        border-radius:999px;
        background:#df2a2a;
        color:#fff;
        font-size:10px;
        font-weight:800;
        display:inline-flex;
        align-items:center;
        justify-content:center;
    }

    .storefront-app .mobile-nav-badge[hidden]{
        display:none;
    }

    .storefront-app .store-home-benefits{
        gap:12px;
    }

    .storefront-app .store-home-benefits article{
        position:relative;
        overflow:hidden;
        border-color:#d9e6f4;
        background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);
        box-shadow:0 8px 20px rgba(15,23,42,.05);
    }

    .storefront-app .store-home-benefits article:after{
        content:'';
        position:absolute;
        left:0;
        top:0;
        bottom:0;
        width:4px;
        background:linear-gradient(180deg,#4f8cff 0%,#2f6df6 100%);
    }

    .storefront-app .store-home-benefits i{
        width:40px;
        height:40px;
        background:#eef4ff;
        color:#2f6df6;
    }

    .storefront-app .store-listing-page .store-breadcrumbs{
        display:none;
    }

    .storefront-app .store-listing-page .store-category-hero{
        grid-template-columns:1fr;
        gap:12px;
        padding:0;
        border:0;
        background:transparent;
    }

    .storefront-app .store-listing-page .store-category-hero-copy{
        order:2;
        padding:0;
    }

    .storefront-app .store-listing-page .store-category-hero-copy h1{
        margin:0 0 8px;
        font-size:28px;
        line-height:1.05;
    }

    .storefront-app .store-listing-page .store-category-hero-copy p{
        font-size:13px;
        line-height:1.6;
    }

    .storefront-app .store-listing-page .store-category-hero-features{
        gap:8px;
        margin-top:10px;
    }

    .storefront-app .store-listing-page .store-category-hero-features article{
        min-height:30px;
        padding:0 10px;
        font-size:11px;
    }

    .storefront-app .store-listing-page .store-category-hero-image{
        order:1;
        height:160px;
        border-radius:5px;
    }

    .storefront-app .store-listing-page .store-catalog-head{
        padding:14px;
        margin:14px 0 12px;
        gap:12px;
        flex-direction:column;
        align-items:flex-start;
    }

    .storefront-app .store-listing-page .store-catalog-head h2{
        margin:0 0 6px;
        font-size:17px;
        line-height:1.2;
    }

    .storefront-app .store-listing-page .store-catalog-head p{
        margin:0;
        font-size:12px;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar{
        width:100%;
        justify-content:space-between;
        align-items:center;
        gap:10px;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar label{
        display:grid;
        gap:6px;
        min-width:0;
        flex:1;
        font-size:12px;
        font-weight:700;
        color:#28415d;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar select{
        min-width:0;
        width:100%;
        min-height:40px;
        border-radius:5px;
    }

    .storefront-app .store-listing-page .store-view-icons{
        flex:0 0 auto;
    }

    .storefront-app .store-listing-page .store-view-icons button{
        width:36px;
        height:36px;
        border-radius:5px;
    }
}

/* Cart drawer interaction polish */
.cart-qty-form{
    align-items:center;
}

.cart-qty-btn{
    width:34px;
    height:36px;
    border:0;
    background:#f5f8fc;
    color:#23415d;
    font-size:18px;
    line-height:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.cart-qty-form input,
.product-qty-control input{
    -moz-appearance:textfield;
    appearance:textfield;
}

.cart-qty-form input::-webkit-outer-spin-button,
.cart-qty-form input::-webkit-inner-spin-button,
.product-qty-control input::-webkit-outer-spin-button,
.product-qty-control input::-webkit-inner-spin-button{
    -webkit-appearance:none;
    margin:0;
}

/* Hero banner module */
.admin-table-copy{
    display:grid;
    gap:4px;
}

.admin-table-copy strong{
    color:#102a43;
    font-size:14px;
}

.admin-table-copy span{
    color:#60758f;
    font-size:13px;
    line-height:1.5;
}

.admin-banner-cell{
    align-items:flex-start;
}

.admin-banner-meta{
    display:grid;
    gap:4px;
    min-width:0;
}

.admin-banner-meta strong{
    color:#102a43;
    font-size:15px;
    line-height:1.3;
}

.admin-banner-meta span{
    color:#60758f;
    font-size:13px;
    line-height:1.45;
}

.admin-banner-content{
    max-width:100%;
}

.admin-banner-content strong,
.admin-banner-content span{
    display:block;
}

.admin-banner-content strong{
    margin-bottom:4px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.admin-banner-content span{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
}

.admin-banner-sort{
    display:grid;
    gap:2px;
    justify-items:start;
}

.admin-banner-sort strong{
    color:#102a43;
    font-size:18px;
    line-height:1;
}

.admin-banner-sort span{
    color:#60758f;
    font-size:12px;
    font-weight:700;
}

.admin-banner-updated{
    display:block;
    min-width:96px;
    line-height:1.45;
}

.admin-audit-grid-compact{
    grid-template-columns:1fr;
    margin-top:18px;
}

.admin-audit-grid-compact > div{
    padding:14px 16px;
    border:1px solid #dce7f1;
    background:#f9fbfe;
    border-radius:5px;
}

.store-hero-slider{
    position:relative;
    overflow:hidden;
}

.store-hero-track{
    display:flex;
    transition:transform .45s ease;
    will-change:transform;
}

.store-hero-slide{
    min-width:100%;
    flex:0 0 100%;
}

.store-home-hero.store-hero-slide{
    margin-bottom:0;
}

.store-home-hero.is-centered{
    text-align:center;
}

.store-home-hero.is-centered .store-home-hero-copy{
    margin-inline:auto;
}

.store-home-hero.is-centered .store-home-hero-copy p{
    margin-inline:auto;
}

.store-home-hero.is-centered .store-home-hero-actions{
    justify-content:center;
}

.store-home-hero.is-right{
    text-align:right;
}

.store-home-hero.is-right .store-home-hero-copy{
    grid-column:2;
    margin-left:auto;
}

.store-home-hero.is-right .store-home-hero-copy p{
    margin-left:auto;
}

.store-home-hero.is-right .store-home-hero-actions{
    justify-content:flex-end;
}

.store-home-hero-media picture{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
}

.store-hero-dots{
    justify-content:center;
}

.store-hero-dots button{
    width:10px;
    height:10px;
    border:0;
    border-radius:999px;
    background:#cbd5e1;
    transition:all .2s ease;
}

.store-hero-dots button.active{
    width:28px;
    background:#3b82f6;
}

@media(max-width:767px){
    .store-home-hero.store-hero-slide{
        grid-template-columns:1fr;
    }

    .store-home-hero-media{
        min-height:220px;
    }

    .admin-banner-updated{
        min-width:0;
    }
}

/* Final banner spacing contract (must stay after legacy hero overrides). */
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy .store-home-hero-actions{
    margin-top:var(--desktop-button-gap,14px)!important;
}
@media(max-width:767px){
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy .store-home-hero-actions{
        margin-top:var(--mobile-button-gap,12px)!important;
    }
}

/* Promotional campaign tiles use the same compact corner treatment everywhere. */
.store-promo-card{
    border-radius:5px;
}

/* Banner artwork spacing: keep the editor and storefront on the same model. */
.hero-composite-preview .hero-preview-actions{
    margin-top:var(--preview-button-gap,14px)!important;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-actions{
    margin-top:var(--desktop-button-gap,14px)!important;
}
@media(max-width:767px){
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-actions{
        margin-top:var(--mobile-button-gap,12px)!important;
    }
}

/* Storefront subcategory dropdown polish */
.storefront-app .store-category-menu-item.has-children{
    position:relative !important;
}

.storefront-app .store-category-menu-item.has-children > .store-category-menu-link{
    padding-inline:2px !important;
}

.storefront-app .store-category-menu-item.has-children > .store-category-menu-link i{
    font-size:10px !important;
    margin-top:1px;
    transition:transform .16s ease;
}

.storefront-app .store-category-menu-item.has-children:hover > .store-category-menu-link i,
.storefront-app .store-category-menu-item.has-children:focus-within > .store-category-menu-link i{
    transform:rotate(180deg);
}

.storefront-app .store-category-menu-panel{
    top:100% !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) translateY(6px) !important;
    width:280px !important;
    min-width:280px !important;
    max-width:min(280px,calc(100vw - 24px)) !important;
    padding:10px !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    border:1px solid #e5edf6 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 34px rgba(16,36,61,.13) !important;
}

.storefront-app .store-category-menu-item:hover .store-category-menu-panel,
.storefront-app .store-category-menu-item:focus-within .store-category-menu-panel{
    transform:translateX(-50%) translateY(0) !important;
}

.storefront-app .store-category-menu-panel::before{
    content:"";
    position:absolute;
    left:50%;
    top:-7px;
    width:12px;
    height:12px;
    background:#fff;
    border-left:1px solid #e5edf6;
    border-top:1px solid #e5edf6;
    transform:translateX(-50%) rotate(45deg);
}

.storefront-app .store-category-menu-panel-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:5px 7px 9px;
    border-bottom:1px solid #edf2f8;
    margin-bottom:4px;
}

.storefront-app .store-category-menu-panel-head span{
    color:#71849e;
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.storefront-app .store-category-menu-panel-head a{
    min-height:auto !important;
    padding:0 !important;
    border-radius:0 !important;
    color:#f15a24 !important;
    font-size:11px !important;
    font-weight:900 !important;
    text-decoration:none !important;
}

.storefront-app .store-category-menu-panel a.store-category-menu-child{
    display:grid !important;
    grid-template-columns:40px minmax(0,1fr) !important;
    align-items:center !important;
    gap:10px !important;
    min-height:52px !important;
    padding:7px !important;
    border-radius:10px !important;
    color:#10243d !important;
    text-decoration:none !important;
    font-weight:800 !important;
}

.storefront-app .store-category-menu-panel a.store-category-menu-child:hover,
.storefront-app .store-category-menu-panel a.store-category-menu-child:focus{
    background:#fff4ee !important;
    color:#f15a24 !important;
}

.storefront-app .store-category-menu-thumb{
    width:40px !important;
    height:40px !important;
    border-radius:999px !important;
    background:#f5f7fb !important;
    border:1px solid #eef2f8;
}

.storefront-app .store-category-menu-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

.storefront-app .store-category-menu-child-copy{
    display:block !important;
    min-width:0;
}

.storefront-app .store-category-menu-child-copy strong{
    display:block;
    color:inherit;
    font-size:13px;
    font-weight:900;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.storefront-app .store-category-menu-child-copy small{
    display:block;
    margin-top:3px;
    color:#7b8da6;
    font-size:11px;
    font-weight:750;
    line-height:1.1;
}

/* Restore original storefront layout widths; keep typography polish only */
.storefront-app{
    --store-pro-container:90vw !important;
}

.storefront-app .store-shell,
.storefront-app .main-content.product-detail-page,
.storefront-app .store-topbar-inner,
.storefront-app .store-main-header-inner,
.storefront-app .store-category-menu-inner,
.storefront-app .store-reference-footer-inner,
.storefront-app .store-reference-footer-bottom,
.storefront-app .store-newsletter-inner,
.storefront-app .store-wishlist-page,
.storefront-app .store-page-container{
    width:90vw !important;
    max-width:none !important;
}

.storefront-app .store-main-header-inner{
    min-height:82px !important;
    grid-template-columns:180px minmax(260px,1fr) auto !important;
    gap:18px !important;
}

.storefront-app .store-category-menu-bar{
    top:82px !important;
}

.storefront-app .store-category-menu-inner{
    min-height:46px !important;
    gap:24px !important;
}

.storefront-app .store-category-menu-link{
    min-height:46px !important;
}

.storefront-app .store-shell{
    padding:26px 0 48px !important;
}

.storefront-app .store-home-hero{
    min-height:unset !important;
    gap:22px !important;
    padding:28px !important;
}

.storefront-app .store-home-benefits{
    max-width:none !important;
    margin:18px 0 !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
}

.storefront-app .store-home-benefits article{
    padding:18px !important;
    display:flex !important;
    grid-template-columns:none !important;
    gap:12px !important;
    background:#fff !important;
}

.storefront-app .store-home-benefits i{
    width:42px !important;
    height:42px !important;
    border-radius:14px !important;
    font-size:inherit !important;
}

.storefront-app .store-section{
    margin-top:22px !important;
}

.storefront-app .store-section-head{
    margin-bottom:14px !important;
    align-items:center !important;
}

.storefront-app .store-home-category-grid,
.storefront-app .store-home-category-slider{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
}

.storefront-app .store-home-category-card{
    width:auto !important;
    padding:18px !important;
    border:1px solid #e6edf5 !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(15,23,42,.04) !important;
    border-radius:18px !important;
    gap:12px !important;
}

.storefront-app .store-home-category-thumb{
    width:90px !important;
    height:90px !important;
    aspect-ratio:auto !important;
    border-radius:999px !important;
}

.storefront-app .store-home-category-card strong{
    max-width:none !important;
}

.storefront-app .store-home-product-tabs{
    margin-top:22px !important;
}

.storefront-app .store-product-grid,
.storefront-app .store-product-grid.five-up,
.storefront-app .store-product-grid.six-up{
    grid-template-columns:repeat(auto-fill,minmax(210px,1fr)) !important;
    gap:16px !important;
}

.storefront-app .store-product-card{
    border-radius:18px !important;
}

.storefront-app .store-product-content{
    padding:14px !important;
}

@media(max-width:1199px){
    .storefront-app{
        --store-pro-container:min(100%,calc(100% - 24px)) !important;
    }

    .storefront-app .store-home-benefits,
    .storefront-app .store-home-category-grid,
    .storefront-app .store-home-category-slider{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:991px){
    .storefront-app .store-main-header-inner{
        grid-template-columns:auto 1fr auto !important;
        min-height:72px !important;
    }

    .storefront-app .store-category-menu-bar{
        top:72px !important;
    }

    .storefront-app .store-home-hero{
        grid-template-columns:1fr !important;
        padding:20px !important;
    }
}

@media(max-width:575px){
    .storefront-app .store-shell,
    .storefront-app .main-content.product-detail-page,
    .storefront-app .store-topbar-inner,
    .storefront-app .store-main-header-inner,
    .storefront-app .store-category-menu-inner,
    .storefront-app .store-reference-footer-inner,
    .storefront-app .store-reference-footer-bottom,
    .storefront-app .store-newsletter-inner,
    .storefront-app .store-wishlist-page,
    .storefront-app .store-page-container{
        width:min(100%,calc(100% - 16px)) !important;
    }

    .storefront-app .store-main-header-inner{
        grid-template-columns:1fr auto !important;
    }

    .storefront-app .store-home-benefits,
    .storefront-app .store-home-category-grid,
    .storefront-app .store-home-category-slider,
    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up{
        grid-template-columns:1fr !important;
    }
}

.checkout-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

.cart-checkout-note{
    margin:0 0 10px;
    color:#60758f;
    font-size:13px;
    line-height:1.5;
}

.checkout-btn.disabled{
    pointer-events:none;
    opacity:.55;
}

.store-checkout-shell{
    display:grid;
    gap:20px;
}

.store-checkout-head{
    align-items:center;
    padding-bottom:14px;
    border-bottom:1px solid #e5edf6;
}

.store-checkout-head h1{
    max-width:720px;
    margin:0;
    color:#102a43;
    font-size:32px;
    line-height:1.16;
    font-weight:800;
}

.store-checkout-head p{
    max-width:760px;
    margin:0;
    color:#60758f;
    line-height:1.65;
}

.store-checkout-grid{
    display:grid;
    grid-template-columns:minmax(340px,.96fr) minmax(380px,1.08fr) minmax(292px,.62fr);
    gap:16px;
    align-items:start;
}

.store-checkout-address-column,
.store-checkout-products-column,
.store-checkout-payment-column{
    min-width:0;
}

.store-checkout-address-column,
.store-checkout-main,
.store-checkout-summary{
    display:grid;
    gap:14px;
}

.store-checkout-summary{
    position:sticky;
    top:104px;
}

.store-checkout-products-column,
.store-checkout-payment-column .store-checkout-panel{
    display:grid;
    gap:14px;
}

.store-checkout-payment-column .store-checkout-panel{
    gap:10px;
    padding:16px;
}

.store-checkout-summary-payment{
    display:grid;
    gap:12px;
    padding-top:4px;
}

.store-checkout-payment-column .store-checkout-summary-payment{
    gap:8px;
    padding-top:0;
}

.store-checkout-panel{
    padding:20px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fff;
    box-shadow:none;
}

.store-checkout-accordion-head{
    margin-bottom:0 !important;
}

.store-checkout-accordion-toggle{
    min-height:38px;
    padding:0 12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#24405c;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-size:13px;
    font-weight:800;
}

.store-checkout-accordion-toggle i{
    color:#3b82f6;
    font-size:12px;
}

.store-checkout-accordion-summary{
    display:none;
    margin-top:12px;
    padding:10px 12px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#f8fbff;
    color:#526b86;
    font-size:13px;
    font-weight:700;
    line-height:1.45;
}

.store-checkout-accordion-body{
    margin-top:14px;
}

.store-checkout-accordion.is-collapsed .store-checkout-accordion-body{
    display:none;
}

.store-checkout-accordion.is-collapsed .store-checkout-accordion-summary{
    display:block;
}

.store-payment-shell{
    min-height:60vh;
    display:grid;
    place-items:center;
    padding:28px 0;
}

.store-payment-shell > .store-gateway-redirect-card,
.store-payment-shell > .store-payment-card{
    width:min(560px,100%);
    padding:24px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fff;
    box-shadow:0 16px 34px rgba(15,23,42,.07);
}

.store-gateway-redirect-card{
    display:grid;
    gap:14px;
}

.store-gateway-redirect-card form{
    display:grid;
    gap:12px;
}

.store-gateway-redirect-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
}

.store-payment-manual-note{
    font-size:13px;
}

.store-payment-shell h1{
    margin:6px 0 10px;
    color:#102a43;
    font-size:30px;
    line-height:1.18;
}

.store-payment-shell p{
    margin:0;
    color:#60758f;
    line-height:1.7;
}

.store-payment-summary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:20px 0;
}

.store-payment-summary div{
    padding:14px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
}

.store-payment-summary span{
    display:block;
    color:#6f84a0;
    font-size:12px;
    font-weight:700;
}

.store-payment-summary strong{
    display:block;
    margin-top:6px;
    color:#102a43;
    font-size:18px;
}

.store-payment-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
}

.store-section-head.compact{
    margin-bottom:14px;
}

.store-section-head.compact h2{
    margin:4px 0 0;
    color:#102a43;
    font-size:20px;
    line-height:1.25;
    font-weight:800;
}

.store-section-kicker{
    display:block;
    color:#6f84a0;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.store-checkout-address-book,
.store-thankyou-banner{
    padding:16px 18px;
    border:1px solid #dbe7f5;
    border-radius:7px;
    background:#fff;
}

.store-checkout-saved-grid,
.store-address-review-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:12px;
}

.store-checkout-saved-card,
.store-address-review-card{
    position:relative;
    display:grid;
    gap:10px;
    padding:14px;
    border:1px solid #dce7f1;
    border-radius:7px;
    background:#fff;
    transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.store-checkout-saved-card.is-shipping-selected,
.store-checkout-saved-card.is-billing-selected{
    border-color:#3b82f6;
    background:#f8fbff;
    box-shadow:0 0 0 3px rgba(59,130,246,.1);
}

.store-checkout-address-label{
    display:inline-flex;
    width:max-content;
    max-width:100%;
    min-height:24px;
    align-items:center;
    padding:0 8px;
    border-radius:999px;
    background:#edf4ff;
    color:#28518a;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.store-checkout-saved-card strong{
    display:block;
    margin-top:6px;
    color:#102a43;
    font-size:16px;
}

.store-checkout-saved-card p,
.store-address-review-card p,
.store-thankyou-banner p{
    margin:0;
    color:#60758f;
    line-height:1.65;
}

.store-checkout-saved-card small{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#526b87;
    font-weight:800;
}

.store-checkout-saved-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:2px;
}

.store-checkout-address-status{
    min-height:20px;
    color:#1d6b3a;
    font-size:12px;
    font-weight:900;
}

.store-checkout-address-status:empty{
    display:none;
}

.store-outline-btn,
.store-inline-btn,
.store-primary-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 14px;
    border-radius:5px;
    border:1px solid #d8e3ef;
    background:#fff;
    color:#24405c;
    text-decoration:none;
    font-weight:800;
}

.store-primary-btn{
    border-color:#3b82f6;
    background:#3b82f6;
    color:#fff;
}

.store-outline-btn.compact{
    min-height:38px;
    padding:0 12px;
}

.store-checkout-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px 14px;
}

.store-checkout-form-grid .full{
    grid-column:1/-1;
}

.store-checkout-form-grid label,
.store-checkout-notes label{
    display:block;
    margin-bottom:5px;
    color:#52677f;
    font-size:12px;
    font-weight:700;
}

.store-checkout-form-grid input,
.store-checkout-form-grid select,
.store-checkout-notes textarea{
    width:100%;
    min-height:42px;
    padding:0 12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#132a46;
}

.store-checkout-form-grid input:focus,
.store-checkout-form-grid select:focus,
.store-checkout-notes textarea:focus,
.store-checkout-coupon-controls input:focus{
    outline:none;
    border-color:#3b82f6;
    box-shadow:0 0 0 3px rgba(59,130,246,.12);
}

.store-checkout-notes textarea{
    min-height:96px;
    padding:12px;
}

.store-checkout-toggle{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
    padding:10px 12px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
    color:#24405c;
    font-weight:700;
}

.store-checkout-address-sync{
    margin:-4px 0 0;
}

.store-checkout-form-grid.is-locked{
    opacity:.88;
}

.store-payment-grid{
    display:grid;
    gap:10px;
}

.store-shipping-methods{
    display:grid;
    gap:10px;
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid #eef2f7;
}

.store-checkout-payment-column .store-shipping-methods{
    gap:8px;
    margin-top:0;
    padding-top:0;
    border-top:0;
}

.store-shipping-method-grid{
    display:grid;
    gap:8px;
}

.store-shipping-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    padding:12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
}

.store-checkout-payment-column .store-shipping-card,
.store-checkout-payment-column .store-payment-card{
    gap:9px;
    padding:10px 12px;
}

.store-shipping-card:has(input:checked),
.store-payment-card:has(input:checked){
    border-color:#3b82f6;
    background:#f7fbff;
}

.store-shipping-card span{
    display:grid;
    gap:4px;
}

.store-shipping-card strong{
    color:#102a43;
}

.store-shipping-card small{
    color:#60758f;
    line-height:1.45;
}

.store-shipping-card em{
    color:#102a43;
    font-style:normal;
    font-weight:800;
    white-space:nowrap;
}

.store-payment-card{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
}

.store-checkout-payment-column .store-payment-grid{
    gap:8px;
}

.store-payment-card span{
    display:grid;
    gap:4px;
}

.store-payment-card small{
    color:#60758f;
}

.store-checkout-items{
    display:grid;
    gap:12px;
}

.store-checkout-item{
    display:flex;
    gap:14px;
    align-items:flex-start;
    padding:12px 0;
    border-bottom:1px solid #eef2f7;
    transition:opacity .16s ease;
}

.store-checkout-item.is-updating{
    opacity:.72;
}

.store-checkout-item:last-child{
    border-bottom:0;
    padding-bottom:0;
}

.store-checkout-item img{
    width:64px;
    height:64px;
    flex:0 0 64px;
    margin-top:2px;
    border-radius:5px;
    object-fit:cover;
    background:#f3f6fb;
}

.store-checkout-item-body{
    display:grid;
    gap:6px;
    min-width:0;
    width:100%;
}

.store-checkout-item-head{
    display:grid;
    gap:3px;
}

.store-checkout-item-head strong{
    color:#102a43;
    line-height:1.35;
}

.store-checkout-item-total{
    color:#102a43!important;
    font-weight:800;
    white-space:nowrap;
}

.store-checkout-item-meta,
.store-checkout-item small{
    color:#60758f;
}

.store-checkout-item-tags{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:2px;
}

.store-checkout-tag{
    display:inline-flex;
    align-items:center;
    width:auto;
    max-width:100%;
    min-height:24px;
    padding:0 8px;
    border-radius:5px;
    background:#eef4ff;
    color:#345cdb;
    font-size:11px;
    font-weight:800;
}

.store-checkout-tag.subtle{
    background:#f3f6fb;
    color:#5f738d;
}

.store-checkout-breakup{
    line-height:1.6;
}

.store-checkout-item-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
    margin-top:6px;
}

.store-checkout-qty-control{
    display:inline-grid;
    grid-template-columns:34px 46px 34px;
    min-height:36px;
    overflow:hidden;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
}

.store-checkout-qty-control button{
    border:0;
    background:#f5f8fc;
    color:#24405c;
    font-weight:800;
}

.store-checkout-qty-control input{
    width:46px;
    border:0;
    border-left:1px solid #e6edf5;
    border-right:1px solid #e6edf5;
    text-align:center;
    color:#102a43;
    font-weight:800;
}

.store-checkout-qty-control input::-webkit-outer-spin-button,
.store-checkout-qty-control input::-webkit-inner-spin-button{
    margin:0;
    -webkit-appearance:none;
}

.store-checkout-remove-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-height:36px;
    padding:0 10px;
    border:1px solid #ffd0d7;
    border-radius:5px;
    background:#fff6f7;
    color:#d6455d;
    font-size:12px;
    font-weight:800;
}

.store-checkout-cart-message,
.store-checkout-empty{
    padding:12px;
    border:1px solid #b8e5ca;
    border-radius:5px;
    background:#f0fdf5;
    color:#17663a;
    font-weight:800;
}

.store-checkout-cart-message.is-danger{
    border-color:#ffd0d7;
    background:#fff6f7;
    color:#d6455d;
}

.store-checkout-empty{
    border-color:#dce7f1;
    background:#fbfdff;
    color:#60758f;
}

.store-checkout-coupon,
.store-checkout-coupon-form{
    margin-top:16px;
    padding:12px;
    border:1px solid #dce7f1;
    border-radius:5px;
    background:#fbfdff;
}

.store-checkout-payment-column .store-checkout-coupon,
.store-checkout-payment-column .store-checkout-coupon-form{
    margin-top:0;
    padding:10px 12px;
}

.store-checkout-coupon{
    display:grid;
    gap:8px;
}

.store-checkout-coupon-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.store-checkout-coupon-head strong,
.store-checkout-coupon-copy strong{
    display:block;
    color:#102a43;
    font-size:14px;
    font-weight:800;
}

.store-checkout-coupon-head span,
.store-checkout-coupon-copy span,
.store-checkout-coupon p{
    color:#60758f;
    line-height:1.55;
}

.store-checkout-coupon p{
    margin:0;
}

.store-checkout-coupon-form{
    display:grid;
    gap:12px;
}

.store-checkout-coupon-controls{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
}

.store-checkout-coupon-controls input{
    min-height:42px;
    padding:0 12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
}

.store-checkout-coupon-controls button{
    min-height:42px;
    padding:0 14px;
    border:1px solid #102a43;
    border-radius:5px;
    background:#102a43;
    color:#fff;
    font-weight:800;
}

.store-checkout-payment-column .store-checkout-coupon-controls{
    gap:8px;
}

.store-checkout-payment-column .store-checkout-coupon-controls input,
.store-checkout-payment-column .store-checkout-coupon-controls button{
    min-height:38px;
}

.store-checkout-totals{
    display:grid;
    gap:12px;
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid #eef2f7;
}

.store-checkout-payment-column .store-checkout-totals{
    gap:8px;
    margin-top:8px;
    padding-top:8px;
}

.store-checkout-payment-column .store-section-head.compact{
    margin-bottom:8px;
}

.store-checkout-totals > div,
.store-checkout-price-content > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.store-checkout-totals span{
    color:#60758f;
}

.store-checkout-totals .grand-total{
    margin-top:2px;
    padding-top:10px;
    border-top:1px solid #eef2f7;
    font-size:16px;
    line-height:1.3;
}

.store-checkout-payment-column .store-checkout-totals .grand-total{
    font-size:15px;
}

.store-checkout-totals .grand-total span{
    color:#60758f;
    font-weight:700;
}

.store-checkout-totals .grand-total strong{
    color:#102a43;
    font-size:16px;
    font-weight:800;
    white-space:nowrap;
}

.store-checkout-price-breakdown{
    padding:11px 12px;
    border:1px solid #dce7f1;
    border-radius:5px;
    background:#fbfdff;
}

.store-checkout-payment-column .store-checkout-price-breakdown{
    padding:9px 10px;
}

.store-checkout-price-breakdown summary{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding-bottom:12px;
    cursor:pointer;
    list-style:none;
    color:#102a43;
    font-weight:800;
}

.store-checkout-price-breakdown summary strong{
    color:#102a43;
    font-size:14px;
    font-weight:800;
    white-space:nowrap;
}

.store-checkout-price-breakdown summary::-webkit-details-marker{
    display:none;
}

.store-checkout-price-breakdown summary i{
    position:absolute;
    left:50%;
    bottom:-2px;
    transform:translateX(-50%);
    color:#60758f;
    font-size:12px;
    transition:transform .16s ease;
}

.store-checkout-price-breakdown[open] summary i{
    transform:translateX(-50%) rotate(180deg);
}

.store-checkout-price-content{
    display:grid;
    gap:10px;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #eef2f7;
}

.store-checkout-price-content .store-checkout-price-coupon{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:8px 10px;
    border:1px solid #dce7f1;
    border-radius:5px;
    background:#fff;
}

.store-checkout-price-coupon strong,
.store-checkout-price-coupon span{
    display:block;
}

.store-checkout-price-coupon strong{
    color:#102a43;
    font-size:13px;
    font-weight:800;
}

.store-checkout-price-coupon span{
    margin-top:2px;
    color:#60758f;
    font-size:12px;
    line-height:1.35;
}

.store-checkout-price-coupon .store-inline-btn{
    min-height:34px;
    padding:0 10px;
}

.store-checkout-payment-column .store-checkout-price-content{
    gap:7px;
    margin-top:9px;
    padding-top:9px;
}

.store-checkout-price-content .store-checkout-tax-heading{
    display:block;
    padding-top:10px;
    border-top:1px dashed #dce7f1;
    color:#102a43;
    font-weight:800;
}

.store-checkout-price-content .store-checkout-tax-note{
    margin:-2px 0 2px;
    padding:8px 10px;
    border:1px solid #dce7f1;
    border-radius:8px;
    background:#f8fbff;
    color:#60758f;
    font-size:12px;
    line-height:1.45;
}

.store-checkout-tax-breakdown{
    margin:4px 0 0;
    padding-top:12px;
    border-top:1px dashed #dce7f1;
}

.store-checkout-tax-breakdown summary{
    cursor:pointer;
    list-style:none;
    color:#24405c;
    font-weight:800;
}

.store-checkout-tax-breakdown summary::-webkit-details-marker{
    display:none;
}

.store-checkout-tax-content{
    display:grid;
    gap:10px;
    margin-top:12px;
}

.store-checkout-tax-content > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.store-tax-note{
    margin-top:14px;
    padding:11px 12px;
    border:1px solid #dce7f1;
    border-radius:5px;
    background:#f8fbff;
    color:#24405c;
    line-height:1.45;
}

.store-tax-note span{
    color:#60758f;
}

.store-place-order-btn{
    width:100%;
    margin-top:16px;
    min-height:48px;
    background:#102a43;
    border-color:#102a43;
}

.store-thankyou-shell .store-checkout-grid.thankyou{
    align-items:start;
    grid-template-columns:minmax(0,1fr) minmax(360px,430px);
    width:100%;
}

.store-thankyou-shell{
    width:min(1180px,100%);
    margin:0 auto;
}

.store-thankyou-statusbar{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
    padding:14px 16px;
    border:1px solid #bce8d0;
    border-radius:14px;
    background:#f2fbf6;
}

.store-thankyou-statusbar > div{
    display:grid;
    gap:2px;
    flex:1;
}

.store-thankyou-statusbar > div span{
    color:#60758d;
    font-size:13px;
}

.store-thankyou-status-icon{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    flex:0 0 38px;
    border-radius:50%;
    color:#fff;
    background:#20a464;
}

.store-order-success-modal .modal-dialog{
    max-width:540px;
}

.store-order-success-modal .modal-content{
    overflow:hidden;
    border:0;
    border-radius:24px;
    box-shadow:0 28px 80px rgba(16,42,67,.24);
}

.store-order-success-modal .modal-body{
    position:relative;
    z-index:2;
    padding:44px 42px 34px;
    text-align:center;
}

.store-success-close{
    position:absolute;
    z-index:4;
    top:18px;
    right:18px;
}

.store-success-check{
    display:grid;
    place-items:center;
    width:76px;
    height:76px;
    margin:0 auto 18px;
    border:8px solid #e5f8ed;
    border-radius:50%;
    color:#fff;
    background:#20a464;
    box-shadow:0 10px 30px rgba(32,164,100,.25);
    animation:store-success-pop .55s cubic-bezier(.2,.9,.3,1.25) both;
}

.store-success-check i{
    font-size:30px;
}

.store-order-success-modal h2{
    margin:7px 0 8px;
    color:#102a43;
    font-size:clamp(25px,4vw,34px);
}

.store-order-success-modal .modal-body > p{
    margin:0 auto;
    color:#60758d;
}

.store-success-order-card{
    margin:24px 0 14px;
    padding:15px 17px;
    border:1px dashed #9db6cf;
    border-radius:14px;
    text-align:left;
    background:#f7faff;
}

.store-success-order-card > span{
    display:block;
    margin-bottom:5px;
    color:#71869d;
    font-size:11px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.store-success-order-card > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.store-success-order-card strong{
    color:#102a43;
    font-size:18px;
}

.store-success-order-card button{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:0;
    color:#2469e8;
    background:transparent;
    font-weight:800;
}

.store-success-order-card button.is-copied{
    color:#168451;
}

.store-success-meta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-bottom:20px;
}

.store-success-meta div{
    display:grid;
    gap:3px;
    padding:12px;
    border-radius:12px;
    background:#f4f7fb;
}

.store-success-meta span{
    color:#71869d;
    font-size:12px;
}

.store-success-meta strong{
    color:#102a43;
}

.store-success-actions{
    display:grid;
    gap:10px;
}

.store-success-actions a{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:48px;
    text-decoration:none;
}

.store-success-actions .store-home-secondary-btn{
    width:100%;
}

.store-order-success-modal .store-success-help{
    margin-top:17px;
    font-size:12px;
}

.store-success-confetti{
    position:absolute;
    z-index:1;
    inset:0 0 auto;
    height:150px;
    pointer-events:none;
}

.store-success-confetti i{
    position:absolute;
    top:-18px;
    left:calc(7% * var(--confetti-index, 1));
    width:8px;
    height:14px;
    border-radius:2px;
    background:#ff6847;
    animation:store-confetti-fall 1.5s ease-out both;
}

.store-success-confetti i:nth-child(2n){background:#2469e8;transform:rotate(18deg)}
.store-success-confetti i:nth-child(3n){background:#ffbd2e;transform:rotate(40deg)}
.store-success-confetti i:nth-child(4n){background:#20a464}
.store-success-confetti i:nth-child(1){left:8%;animation-delay:.05s}
.store-success-confetti i:nth-child(2){left:16%;animation-delay:.18s}
.store-success-confetti i:nth-child(3){left:24%;animation-delay:.08s}
.store-success-confetti i:nth-child(4){left:33%;animation-delay:.25s}
.store-success-confetti i:nth-child(5){left:41%;animation-delay:.12s}
.store-success-confetti i:nth-child(6){left:49%;animation-delay:.3s}
.store-success-confetti i:nth-child(7){left:57%;animation-delay:.03s}
.store-success-confetti i:nth-child(8){left:65%;animation-delay:.2s}
.store-success-confetti i:nth-child(9){left:73%;animation-delay:.1s}
.store-success-confetti i:nth-child(10){left:81%;animation-delay:.28s}
.store-success-confetti i:nth-child(11){left:89%;animation-delay:.14s}
.store-success-confetti i:nth-child(12){left:95%;animation-delay:.23s}

@keyframes store-success-pop{
    from{opacity:0;transform:scale(.45) rotate(-12deg)}
    to{opacity:1;transform:scale(1) rotate(0)}
}

@keyframes store-confetti-fall{
    0%{opacity:0;translate:0 0}
    15%{opacity:1}
    100%{opacity:0;translate:var(--confetti-drift, 16px) 155px;rotate:220deg}
}

@media(max-width:575px){
    .store-thankyou-statusbar{
        align-items:flex-start;
        flex-wrap:wrap;
    }
    .store-thankyou-statusbar button{
        width:100%;
    }
    .store-order-success-modal .modal-dialog{
        margin:14px;
    }
    .store-order-success-modal .modal-body{
        padding:40px 20px 26px;
    }
}

@media(prefers-reduced-motion:reduce){
    .store-success-check,
    .store-success-confetti i{
        animation:none;
    }
}

.store-thankyou-banner{
    display:grid;
    justify-items:center;
    text-align:center;
}

.store-thankyou-banner h1{
    margin:6px 0 8px;
    max-width:780px;
}

.store-thankyou-banner p{
    max-width:760px;
}

@media(min-width:1181px){
    .store-checkout-products-column{
        order:1;
    }

    .store-checkout-address-column{
        order:2;
    }

    .store-checkout-payment-column{
        order:3;
    }
}

@media(max-width:1180px){
    .store-checkout-grid,
    .store-thankyou-shell .store-checkout-grid.thankyou{
        grid-template-columns:1fr;
    }

    .store-checkout-products-column{
        order:1;
    }

    .store-checkout-address-column{
        order:2;
    }

    .store-checkout-payment-column{
        order:3;
    }

    .store-checkout-summary{
        position:static;
    }
}

@media(max-width:991px){
    .store-checkout-saved-grid,
    .store-address-review-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:575px){
    .store-checkout-shell{
        gap:14px;
        padding-bottom:128px;
    }

    .store-checkout-head{
        display:flex;
        gap:10px;
        align-items:center;
        justify-content:space-between;
        padding-bottom:14px;
    }

    .store-checkout-head h1{
        font-size:22px;
        line-height:1.2;
        margin:0;
    }

    .store-checkout-head p{
        font-size:14px;
        line-height:1.55;
    }

    .store-checkout-head .store-secondary-link{
        width:auto;
        min-height:34px;
        white-space:nowrap;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:0 10px;
        border:1px solid #d8e3ef;
        border-radius:5px;
        background:#fff;
        text-decoration:none;
        font-size:12px;
    }

    .store-checkout-panel,
    .store-checkout-address-book,
    .store-thankyou-banner{
        padding:14px;
    }

    .store-checkout-accordion-head{
        align-items:center;
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:10px;
    }

    .store-checkout-accordion-toggle{
        min-width:76px;
        min-height:36px;
    }

    .store-checkout-accordion-summary{
        font-size:12px;
    }

    .store-checkout-form-grid{
        grid-template-columns:1fr;
        gap:11px;
    }

    .store-checkout-form-grid input,
    .store-checkout-form-grid select{
        min-height:46px;
        font-size:16px;
    }

    .store-checkout-toggle{
        align-items:flex-start;
        line-height:1.45;
    }

    .store-checkout-item{
        align-items:flex-start;
        padding:12px 0;
    }

    .store-checkout-item img{
        width:64px;
        height:64px;
        flex:0 0 64px;
    }

    .store-checkout-item-head{
        display:grid;
        gap:4px;
    }

    .store-checkout-item-total{
        justify-self:start;
    }

    .store-shipping-card,
    .store-payment-card{
        padding:12px;
    }

    .store-shipping-card{
        grid-template-columns:auto minmax(0,1fr);
    }

    .store-shipping-card em{
        grid-column:2;
        justify-self:start;
    }

    .store-checkout-coupon-form{
        gap:10px;
    }

    .store-checkout-coupon-head,
    .store-checkout-coupon-controls{
        grid-template-columns:1fr;
        display:grid;
    }

    .store-checkout-coupon-controls input,
    .store-checkout-coupon-controls button{
        min-height:44px;
    }

    .store-checkout-tax-breakdown:not([open]) + .grand-total{
        margin-top:2px;
    }

    .store-checkout-summary .store-place-order-btn{
        position:fixed;
        left:12px;
        right:12px;
        bottom:88px;
        z-index:1160;
        width:calc(100% - 24px);
        min-height:50px;
        margin:0;
        border-radius:5px;
        box-shadow:0 16px 34px rgba(15,23,42,.22);
    }
}

/* Brand and review modules */
.storefront-app .store-product-content{
    gap:8px;
}

.storefront-app .store-product-meta-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:18px;
    flex-wrap:nowrap;
    width:100%;
}

.storefront-app .store-product-brand{
    max-width:52%;
    color:#52677f;
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-product-meta-row .store-product-brand{
    flex:1 1 auto;
    min-width:0;
}

.storefront-app .store-product-meta-row .store-product-rating{
    flex:0 0 auto;
    margin-left:auto;
    gap:4px;
    line-height:1;
    justify-content:flex-end;
    flex-wrap:nowrap;
    white-space:nowrap;
}

.storefront-app .store-product-meta-row .store-product-rating span{
    font-size:12px;
    line-height:1;
}

.storefront-app .product-detail-rating-row{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin:-4px 0 14px;
    color:#60758f;
    font-size:13px;
    font-weight:700;
}

.storefront-app .product-detail-rating-row a{
    color:#2563eb;
    text-decoration:none;
}

.storefront-app .product-review-section{
    margin-top:22px;
    padding:24px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.storefront-app .product-review-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding-bottom:18px;
    border-bottom:1px solid #eef2f7;
}

.storefront-app .product-review-head h2,
.storefront-app .product-review-form h3,
.storefront-app .product-review-card h3{
    margin:0 0 8px;
}

.storefront-app .product-review-head p{
    margin:0;
    color:#60758f;
}

.storefront-app .product-review-score{
    min-width:150px;
    padding:14px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfcfe;
    text-align:center;
}

.storefront-app .product-review-score strong{
    display:block;
    font-size:30px;
    line-height:1;
}

.storefront-app .product-review-score .store-stars{
    justify-content:center;
    margin:8px 0;
}

.storefront-app .product-review-layout{
    display:grid;
    grid-template-columns:minmax(300px,420px) minmax(0,1fr);
    gap:18px;
    margin-top:18px;
}

.storefront-app .product-review-form,
.storefront-app .product-review-card,
.storefront-app .product-review-empty{
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfcfe;
}

.storefront-app .product-review-form{
    padding:18px;
    align-self:start;
}

.storefront-app .product-review-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.storefront-app .product-review-form-full{
    grid-column:1/-1;
}

.storefront-app .product-review-form label{
    display:block;
    margin-bottom:6px;
    color:#52677f;
    font-size:13px;
    font-weight:800;
}

.storefront-app .product-review-form input,
.storefront-app .product-review-form select,
.storefront-app .product-review-form textarea{
    width:100%;
    min-height:44px;
    padding:10px 12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
}

.storefront-app .product-review-form button{
    width:100%;
    min-height:44px;
    margin-top:14px;
    border:0;
    border-radius:5px;
    background:#102a43;
    color:#fff;
    font-weight:800;
}

.storefront-app .product-review-form small{
    display:block;
    margin-top:10px;
    color:#6f84a0;
}

.storefront-app .product-review-list{
    display:grid;
    gap:12px;
}

.storefront-app .product-review-card{
    padding:16px;
}

.storefront-app .product-review-card>div:first-child{
    display:flex;
    justify-content:space-between;
    gap:12px;
    color:#6f84a0;
    font-size:13px;
}

.storefront-app .product-review-card>div:first-child strong{
    color:#102a43;
}

.storefront-app .product-review-card .store-stars{
    margin:10px 0;
}

.storefront-app .product-review-card p{
    margin:0;
    color:#4f637b;
    line-height:1.7;
}

.storefront-app .product-review-reply{
    margin-top:12px;
    padding:12px;
    border-left:3px solid #3b82f6;
    border-radius:5px;
    background:#f4f8ff;
}

.storefront-app .product-review-reply strong,
.storefront-app .product-review-reply span{
    display:block;
}

.storefront-app .product-review-empty{
    min-height:220px;
    display:grid;
    place-items:center;
    align-content:center;
    gap:8px;
    color:#60758f;
    text-align:center;
}

.storefront-app .product-review-empty i{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:5px;
    background:#eef4ff;
    color:#3b82f6;
}

.admin-review-form{
    display:grid;
    gap:8px;
    min-width:260px;
}

.admin-review-form select,
.admin-review-form textarea{
    width:100%;
    min-height:38px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    padding:8px 10px;
    background:#fff;
}

@media(max-width:991px){
    .storefront-app .product-review-head,
    .storefront-app .product-review-layout{
        grid-template-columns:1fr;
        flex-direction:column;
    }

    .storefront-app .product-review-score{
        width:100%;
    }
}

@media(max-width:575px){
    .storefront-app .product-review-section{
        padding:16px;
    }

    .storefront-app .product-review-form-grid{
        grid-template-columns:1fr;
    }
}

.storefront-app .product-review-readonly{
    margin-top:18px;
}

.storefront-app .product-related-grid{
    grid-template-columns:repeat(auto-fit,minmax(230px,280px));
    align-items:stretch;
}

.storefront-app .product-related-section .product-related-grid{
    grid-template-columns:repeat(auto-fill,minmax(260px,320px)) !important;
    justify-content:flex-start;
}

.storefront-app .product-related-section .store-product-col{
    width:100%;
    min-width:0;
    max-width:320px;
}

.account-orders-panel{
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.account-orders-panel-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:20px 22px;
    border-bottom:1px solid #eef2f7;
}

.account-orders-panel-head h1{
    margin:4px 0 0;
    color:#102a43;
    font-size:24px;
}

.account-orders-summary{
    display:grid;
    gap:2px;
    justify-items:end;
    color:#60758f;
    font-size:13px;
}

.account-orders-summary strong{
    color:#102a43;
    font-size:18px;
}

.account-order-tabs{
    display:flex;
    gap:0;
    flex-wrap:wrap;
    padding:14px 22px;
    border-bottom:1px solid #eef2f7;
}

.account-order-tabs a{
    position:relative;
    padding:0 12px;
    min-height:28px;
    display:inline-flex;
    align-items:center;
    color:#6b7f98;
    text-decoration:none;
    font-size:13px;
    font-weight:700;
}

.account-order-tabs a:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    width:1px;
    height:12px;
    background:#d8e3ef;
}

.account-order-tabs a:first-child{
    padding-left:0;
}

.account-order-tabs a.active{
    color:#1d4ed8;
}

.account-order-history-list{
    display:grid;
    gap:16px;
    padding:18px 22px 22px;
}

.account-history-order{
    border:1px solid #e1e8f0;
    border-radius:5px;
    background:#fff;
}

.account-history-order-top{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:14px 16px;
    border-bottom:1px solid #eef2f7;
}

.account-history-status{
    min-height:28px;
    padding:0 10px;
    display:inline-flex;
    align-items:center;
    border-radius:2px;
    background:#dbeafe;
    color:#1d4ed8;
    font-size:12px;
    font-weight:800;
}

.account-history-status.status-delivered{
    background:#059669;
    color:#fff;
}

.account-history-status.status-shipped{
    background:#facc15;
    color:#4a3a00;
}

.account-history-status.status-cancelled{
    background:#e11d48;
    color:#fff;
}

.account-history-status.status-returned{
    background:#7c3aed;
    color:#fff;
}

.account-history-top-meta{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    color:#6b7f98;
    font-size:12px;
}

.account-history-total{
    display:flex;
    align-items:center;
    gap:6px;
    color:#6b7f98;
}

.account-history-total strong{
    color:#102a43;
    font-size:18px;
}

.account-history-items{
    display:grid;
}

.account-history-item{
    display:grid;
    grid-template-columns:64px minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:16px;
}

.account-history-item + .account-history-item{
    border-top:1px solid #eef2f7;
}

.account-history-item-copy{
    display:grid;
    gap:5px;
}

.account-history-item-copy strong{
    color:#102a43;
}

.account-history-item-copy span{
    color:#60758f;
    font-size:13px;
}

.account-history-item-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.account-review-link{
    border:0;
    background:transparent;
    color:#1e1b8f;
    font-weight:800;
    font-size:13px;
}

.account-review-link i{
    color:#1e1b8f;
}

.account-reviewed-note{
    color:#16854c;
    font-weight:800;
    font-size:13px;
}

.account-order-details-btn{
    min-height:36px;
    padding:0 14px;
    border:1px solid #b9c6d6;
    border-radius:2px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#40546c;
    text-decoration:none;
    font-size:12px;
    font-weight:700;
    background:#fff;
}

.account-review-stars{
    display:flex;
    flex-direction:row-reverse;
    justify-content:flex-end;
    gap:6px;
    margin-bottom:16px;
}

.account-review-stars input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.account-review-stars label{
    cursor:pointer;
    color:#d7dee8;
    font-size:26px;
}

.account-review-stars input:checked ~ label,
.account-review-stars label:hover,
.account-review-stars label:hover ~ label{
    color:#f59e0b;
}

.account-review-feedback-label{
    display:block;
    margin-bottom:8px;
    color:#52677f;
    font-size:13px;
    font-weight:800;
}

#orderReviewModal textarea{
    width:100%;
    min-height:120px;
    padding:12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    resize:vertical;
}

@media(max-width:767px){
    .account-orders-panel-head,
    .account-history-order-top,
    .account-history-item{
        grid-template-columns:1fr;
        align-items:start;
    }

    .account-orders-panel-head{
        display:grid;
    }

    .account-orders-summary,
    .account-history-item-actions{
        justify-items:start;
        justify-content:flex-start;
    }

    .account-history-total{
        justify-content:flex-start;
    }
}

.account-orders-list{
    display:grid;
    gap:18px;
}

.account-order-card{
    padding:22px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
    display:grid;
    gap:16px;
    box-shadow:0 12px 28px rgba(15,23,42,.05);
}

.account-order-head,
.account-order-footer,
.store-thankyou-actions{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
}

.account-order-identity{
    display:grid;
    gap:4px;
}

.account-order-card-actions{
    display:grid;
    gap:10px;
    justify-items:end;
}

.account-order-head h3,
.account-order-summary .grand-total strong,
.account-order-title,
.account-order-item-totals span{
    margin:6px 0 0;
    color:#102a43;
}

.account-order-total-inline strong,
.account-order-item-totals span,
.account-order-overview-item strong,
.account-order-overview-meta strong,
.account-order-overview-notes span,
.account-order-support-row strong{
    display:block;
}

.account-order-head p,
.account-order-meta,
.account-order-item small,
.account-order-item-meta,
.account-order-summary span{
    color:#60758f;
}

.account-order-statuses,
.account-order-meta,
.account-order-item-meta{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.account-order-status{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:#eef4ff;
    color:#345cdb;
    font-size:12px;
    font-weight:800;
}

.account-order-title{
    font-size:clamp(32px,4vw,48px);
    line-height:1.04;
    word-break:break-word;
}

.account-order-status.subtle,
.account-order-status.status-delivered{
    background:#e9f8ef;
    color:#1d8f4d;
}

.account-order-status.status-cancelled{
    background:#fff1f2;
    color:#d6455d;
}

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

.account-order-grid > div,
.account-order-summary,
.account-order-item{
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fff;
}

.account-order-grid > div{
    padding:16px;
}

.account-order-grid span,
.account-order-item small{
    display:block;
}

.account-order-grid strong{
    display:block;
    margin-top:8px;
    color:#102a43;
    font-size:18px;
}

.account-order-footer{
    align-items:flex-end;
    padding-top:2px;
    border-top:1px solid #eef2f7;
}

.account-order-total-inline{
    display:grid;
    gap:4px;
    justify-items:end;
}

.account-order-total-inline span{
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.account-order-detail-layout{
    grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
    align-items:start;
}

.account-order-story{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
    gap:22px;
    align-items:start;
}

.account-order-story-copy{
    display:grid;
    gap:14px;
}

.account-order-story-copy h2{
    margin:0;
    color:#102a43;
    font-size:32px;
    line-height:1.12;
}

.account-order-story-copy p{
    margin:0;
    color:#60758f;
    line-height:1.75;
    max-width:720px;
}

.account-order-story-tags{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.account-order-story-note{
    padding:16px 18px;
    border-left:3px solid #3b82f6;
    background:#f8fbff;
}

.account-order-story-note.danger{
    border-left-color:#d6455d;
    background:#fff7f8;
}

.account-order-story-note span{
    display:block;
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.account-order-story-note p{
    margin-top:8px;
}

.account-order-story-metrics{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.account-order-story-metric{
    padding:18px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
    display:grid;
    gap:6px;
}

.account-order-story-metric span,
.account-order-meta-board span{
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.account-order-story-metric strong,
.account-order-meta-board strong{
    color:#102a43;
    font-size:24px;
    line-height:1.1;
}

.account-order-story-metric small{
    color:#60758f;
    line-height:1.5;
}

.account-order-main-stack{
    display:grid;
    gap:18px;
}

.account-order-overview-block,
.account-order-support-block{
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
}

.account-order-overview-block{
    display:grid;
    gap:0;
    overflow:hidden;
}

.account-order-overview-row,
.account-order-overview-meta{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
}

.account-order-overview-item,
.account-order-overview-meta > div{
    padding:18px;
    display:grid;
    gap:8px;
    border-right:1px solid #e6edf5;
}

.account-order-overview-item:last-child,
.account-order-overview-meta > div:last-child{
    border-right:0;
}

.account-order-overview-meta{
    border-top:1px solid #e6edf5;
}

.account-order-overview-item span,
.account-order-overview-meta span,
.account-order-overview-notes span,
.account-order-item-totals small{
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.account-order-overview-item strong{
    font-size:22px;
}

.account-order-overview-item small,
.account-order-overview-meta strong,
.account-order-overview-notes p{
    color:#4f647d;
    line-height:1.6;
}

.account-order-overview-notes{
    padding:18px;
    border-top:1px solid #e6edf5;
    display:grid;
    gap:6px;
}

.account-order-items,
.account-order-note-grid{display:grid;gap:14px;}

.account-order-item{
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    gap:16px;
    padding:16px;
}

.account-order-item img{
    width:96px;
    height:96px;
    border-radius:5px;
    object-fit:cover;
    background:#f3f6fb;
    flex:0 0 auto;
}

.account-order-item-body{
    display:grid;
    gap:10px;
    width:100%;
}

.account-order-item-head,
.account-order-summary > div{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.account-order-item-copy{
    display:grid;
    gap:10px;
}

.account-order-item-head strong,
.account-order-item-head span,
.account-order-summary strong{
    color:#102a43;
}

.account-order-item-totals{
    display:grid;
    gap:6px;
    justify-items:end;
    text-align:right;
}

.account-order-item-totals span{
    font-size:24px;
}

.account-order-summary{
    display:grid;
    gap:12px;
    padding:0;
    border:0;
    background:transparent;
}

.account-order-summary-panel{
    padding:18px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
}

.account-order-summary .grand-total{
    margin-top:8px;
    padding-top:14px;
    border-top:1px solid #eef2f7;
}

.account-address-snapshot-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:16px;
    border:0;
    background:transparent;
    overflow:visible;
}

.account-order-detail-bottom{
    align-items:start;
}

.account-order-meta-board{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.account-order-meta-board > div{
    padding:16px 18px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
    display:grid;
    gap:6px;
}

.account-address-snapshot{
    padding:18px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
}

.account-address-snapshot h3{
    margin:6px 0 12px;
    color:#102a43;
}

.account-address-body.compact{
    margin-top:0;
}

.account-address-body.compact p{
    margin:0 0 8px;
}

.account-order-note-grid{
    margin-top:14px;
}

.account-cancel-card{
    border-color:#ffd6dc;
    background:#fffafa;
}

.account-cancel-card .account-card-head p{
    margin:6px 0 0;
    color:#60758f;
}

.account-cancel-form{
    display:grid;
    gap:10px;
}

.account-cancel-form label{
    color:#52677f;
    font-size:13px;
    font-weight:800;
}

.account-cancel-form select,
.account-cancel-form textarea{
    width:100%;
    padding:12px 14px;
    border:1px solid #f1c4cc;
    border-radius:5px;
    background:#fff;
    color:#132a46;
}

.account-cancel-form select{
    min-height:44px;
}

.account-cancel-form textarea{
    min-height:110px;
    resize:vertical;
}

.account-cancel-form select:focus,
.account-cancel-form textarea:focus{
    outline:none;
    border-color:#d6455d;
    box-shadow:0 0 0 3px rgba(214,69,93,.12);
}

.account-cancel-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.account-danger-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 16px;
    border:1px solid #d6455d;
    border-radius:5px;
    background:#d6455d;
    color:#fff;
    font-weight:800;
}

.account-cancel-actions span{
    color:#60758f;
    font-size:13px;
}

.account-order-timeline{
    display:grid;
    gap:12px;
}

.account-order-timeline article{
    display:grid;
    gap:5px;
    padding:14px 16px;
    border:1px solid #e6edf5;
    border-radius:5px;
    background:#fbfdff;
}

.account-order-timeline span,
.account-order-timeline time{
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.account-order-timeline strong{
    color:#102a43;
}

.account-order-timeline p,
.account-order-timeline small{
    margin:0;
    color:#60758f;
    line-height:1.55;
}

.account-side-stack .account-address-grid{
    grid-template-columns:1fr;
}

.account-side-stack .account-address-card{
    border-radius:5px;
}

.store-thankyou-actions{
    align-items:center;
    flex-wrap:wrap;
    margin-top:16px;
}

@media(max-width:1199px){
    .account-order-overview-row,
    .account-order-overview-meta,
    .account-address-snapshot-grid,
    .account-order-meta-board{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:991px){
    .account-order-detail-layout,
    .account-order-grid{
        grid-template-columns:1fr;
    }

    .account-order-overview-row,
    .account-order-overview-meta,
    .account-order-meta-board{
        grid-template-columns:1fr 1fr;
    }

    .account-order-story{
        grid-template-columns:1fr;
    }
}

@media(max-width:575px){
    .account-order-head,
    .account-order-footer,
    .store-thankyou-actions,
    .account-order-item,
    .account-order-item-head{
        flex-direction:column;
        align-items:stretch;
    }

    .account-order-card,
    .account-order-grid > div,
    .account-order-item,
    .account-order-summary,
    .account-order-overview-block,
    .account-order-summary-panel,
    .account-order-story-metric,
    .account-order-meta-board > div,
    .account-address-snapshot-grid{
        border-radius:5px;
    }

    .account-order-card-actions,
    .account-order-total-inline,
    .account-order-item-totals{
        justify-items:start;
        text-align:left;
    }

    .account-order-overview-row,
    .account-order-overview-meta,
    .account-order-story,
    .account-order-story-metrics,
    .account-order-meta-board,
    .account-address-snapshot-grid,
    .account-order-detail-bottom{
        grid-template-columns:1fr;
    }

    .account-order-overview-item + .account-order-overview-item,
    .account-order-overview-meta > div + div{
        border-top:1px solid #e6edf5;
    }

    .account-order-item{
        grid-template-columns:1fr;
    }

    .account-order-item img{
        width:100%;
        height:220px;
    }

    .account-order-story-copy h2{
        font-size:26px;
    }
}

.product-detail-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 18px;
}

.product-detail-tags a{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:#eef4ff;
    color:#345cdb;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

.store-product-tag{
    width:max-content;
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    background:#f3f7fc;
    color:#3b82f6;
    font-size:11px;
    font-weight:800;
    text-decoration:none;
}

/* UI cleanup: testimonials and customer account responsiveness */
.storefront-app .testimonials-section{
    max-width:1180px;
    margin:28px auto 0;
}

.storefront-app .testimonials-section .store-section-head{
    justify-content:flex-start;
}

.storefront-app .store-testimonial-slider{
    overflow:visible;
}

.storefront-app .store-testimonial-track{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.storefront-app .store-testimonial-card{
    min-height:190px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    border-radius:10px;
}

.storefront-app .store-testimonial-card i{
    color:#102a43;
}

.storefront-app .store-testimonial-card strong{
    margin-top:auto;
    color:#102a43;
}

.storefront-app .store-testimonial-dots{
    display:none;
}

.storefront-app .store-testimonial-dot{
    width:9px;
    height:9px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#cfd9e5;
}

.storefront-app .store-testimonial-dot.active{
    width:24px;
    background:#2f6df6;
}

.storefront-app .account-nav-head small,
.storefront-app .account-hero-stat strong,
.storefront-app .account-order-card,
.storefront-app .account-address-body{
    overflow-wrap:anywhere;
}

@media (max-width: 767px){
    .storefront-app .testimonials-section{
        max-width:none;
    }

    .storefront-app .store-testimonial-slider{
        overflow:hidden;
    }

    .storefront-app .store-testimonial-track{
        display:grid;
        grid-auto-flow:column;
        grid-auto-columns:100%;
        grid-template-columns:none;
        gap:12px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        overscroll-behavior-x:contain;
        scroll-behavior:smooth;
    }

    .storefront-app .store-testimonial-track::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-testimonial-card{
        min-height:160px;
        scroll-snap-align:start;
    }

    .storefront-app .store-testimonial-dots{
        display:flex;
        justify-content:center;
        gap:8px;
        margin-top:12px;
    }

    .storefront-app .account-hero-card,
    .storefront-app .account-grid-two,
    .storefront-app .account-form-grid,
    .storefront-app .account-address-grid{
        grid-template-columns:1fr !important;
    }

    .storefront-app .account-hero-actions,
    .storefront-app .account-hero-meta{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }

    .storefront-app .account-hero-stat,
    .storefront-app .account-hero-meta > div{
        min-width:0;
        width:100%;
    }
}

/* Dynamic catalog filter sidebar */
.storefront-app .account-nav-link{
    border-radius:8px;
}

.storefront-app .account-nav-link i{
    width:20px;
    text-align:center;
}

.storefront-app .account-nav-link.active{
    background:#edf4ff;
    color:#102a43;
}

.storefront-app .store-listing-layout{
    grid-template-columns:300px minmax(0,1fr);
    align-items:start;
    gap:20px;
}

.storefront-app .store-filter-sidebar{
    position:sticky;
    top:102px;
    max-height:calc(100vh - 120px);
    overflow:hidden;
    padding-bottom:2px;
}

.storefront-app .store-filter-sidebar::-webkit-scrollbar{
    width:0;
}

.storefront-app .store-filter-overlay,
.storefront-app .store-mobile-filter-button,
.storefront-app .store-filter-mobile-head{
    display:none;
}

body.drawer-open .store-mobile-filter-button{
    display:none !important;
}

.storefront-app .store-filter-panel{
    padding:0;
    height:100%;
    max-height:calc(100vh - 120px);
    overflow:auto;
    border-radius:10px;
    box-shadow:0 18px 42px rgba(15,23,42,.07);
    scrollbar-width:none;
}

.storefront-app .store-filter-panel::-webkit-scrollbar,
.storefront-app .store-filter-scroll-list::-webkit-scrollbar{
    width:0;
    height:0;
}

.storefront-app .store-filter-section{
    min-height:0;
}

.storefront-app .store-filter-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:14px 14px 8px;
}

.storefront-app .store-filter-card-head h3{
    margin:2px 0 0;
    font-size:17px;
    line-height:1.2;
}

.storefront-app .store-filter-kicker{
    display:block;
    color:#7287a3;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.storefront-app .store-filter-category-list,
.storefront-app .store-filter-tag-list{
    display:grid;
    gap:3px;
    padding:0 10px 10px;
}

.storefront-app .store-filter-scroll-list{
    max-height:220px;
    overflow:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
}

.storefront-app .store-filter-category-list.store-filter-scroll-list{
    max-height:190px;
}


.storefront-app .store-filter-row,
.storefront-app .store-filter-tag-list a{
    min-height:32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:0 8px;
    border-radius:7px;
    color:#102a43;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    line-height:1.2;
}

.storefront-app .store-filter-row span,
.storefront-app .store-filter-tag-list a span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-filter-row strong,
.storefront-app .store-filter-tag-list strong{
    min-width:24px;
    height:22px;
    padding:0 7px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#f1f6fd;
    color:#41617f;
    font-size:11px;
}

.storefront-app .store-filter-category-item.active > .store-filter-row,
.storefront-app .store-filter-row:hover,
.storefront-app .store-filter-row.active,
.storefront-app .store-filter-tag-list a.active,
.storefront-app .store-filter-tag-list a:hover{
    background:#edf4ff;
    color:#2f6df6;
}

.storefront-app .store-filter-category-item.active > .store-filter-row strong,
.storefront-app .store-filter-row.active strong,
.storefront-app .store-filter-tag-list a.active strong{
    background:#2f6df6;
    color:#fff;
}

.storefront-app .store-filter-sub-list{
    display:grid;
    gap:2px;
    padding:3px 0 5px 10px;
}

.storefront-app .store-filter-row.subtle{
    min-height:30px;
    color:#52677f;
    font-size:12px;
    font-weight:700;
}

.storefront-app .store-filter-divider{
    height:1px;
    margin:4px 14px;
    background:#e7eef6;
}

.storefront-app .store-filter-clear{
    min-height:32px;
    padding:0 10px;
    display:inline-flex;
    align-items:center;
    border:1px solid #d8e3ef;
    border-radius:8px;
    background:#fff;
    color:#24405c;
    text-decoration:none;
    font-size:12px;
    font-weight:800;
}

.storefront-app .store-filter-group{
    margin:0;
    padding:0 14px 14px;
}

.storefront-app .store-filter-group h4{
    margin:0 0 8px;
    font-size:16px;
    line-height:1.2;
}

.storefront-app .store-filter-group label{
    min-height:32px;
    padding:0;
    font-size:13px;
    gap:8px;
}

.storefront-app .store-dynamic-filter{
    margin:0;
}

.storefront-app .store-price-inputs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}

.storefront-app .store-price-inputs label{
    display:grid;
    gap:6px;
    min-height:0;
}

.storefront-app .store-price-inputs span{
    color:#60758f;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.storefront-app .store-price-inputs input{
    width:100%;
    min-height:38px;
    padding:0 10px;
    border:1px solid #d8e3ef;
    border-radius:8px;
    background:#fff;
    color:#102a43;
    font-weight:700;
}

.storefront-app .store-filter-group label span{
    flex:1;
    text-align:right;
}

.storefront-app .store-price-inputs label span{
    text-align:left;
}

.storefront-app .store-price-slider{
    display:grid;
    gap:12px;
}

.storefront-app .store-price-slider-values,
.storefront-app .store-price-slider-bounds{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.storefront-app .store-price-slider-values span{
    color:#102a43;
    font-size:13px;
    font-weight:800;
}

.storefront-app .store-price-slider-bounds span{
    color:#60758f;
    font-size:12px;
    font-weight:700;
}

.storefront-app .store-price-slider-track{
    position:relative;
    height:22px;
}

.storefront-app .store-price-slider-track:before,
.storefront-app .store-price-slider-track span{
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:4px;
    border-radius:999px;
    transform:translateY(-50%);
}

.storefront-app .store-price-slider-track:before{
    background:#dbe8fb;
}

.storefront-app .store-price-slider-track span{
    background:#3b82f6;
}

.storefront-app .store-price-slider-track input{
    position:absolute;
    inset:0;
    width:100%;
    height:22px;
    margin:0;
    pointer-events:none;
    appearance:none;
    background:transparent;
}

.storefront-app .store-price-slider-track input::-webkit-slider-thumb{
    width:18px;
    height:18px;
    border:3px solid #fff;
    border-radius:50%;
    background:#2f6df6;
    box-shadow:0 2px 8px rgba(47,109,246,.35);
    cursor:pointer;
    pointer-events:auto;
    appearance:none;
}

.storefront-app .store-price-slider-track input::-moz-range-thumb{
    width:14px;
    height:14px;
    border:3px solid #fff;
    border-radius:50%;
    background:#2f6df6;
    box-shadow:0 2px 8px rgba(47,109,246,.35);
    cursor:pointer;
    pointer-events:auto;
}

.storefront-app .store-price-slider-track input::-moz-range-track{
    background:transparent;
    border:0;
}

.storefront-app .store-filter-actions{
    position:sticky;
    bottom:0;
    padding:10px 14px 14px;
    background:linear-gradient(180deg,rgba(255,255,255,.86),#fff 34%);
}

.storefront-app .store-filter-apply{
    width:100%;
    min-height:42px;
    border:0;
    border-radius:8px;
    background:#102a43;
    color:#fff;
    font-weight:800;
}

.storefront-app .store-range-line{
    margin-top:4px;
}

.storefront-app .store-listing-content{
    min-width:0;
}

/* Account mobile drawer */
.storefront-app .account-mobile-drawer{
    position:fixed;
    top:0;
    left:-360px;
    width:min(340px,90vw);
    height:100vh;
    background:#fff;
    z-index:1305;
    border-right:1px solid #e6edf5;
    box-shadow:18px 0 44px rgba(15,23,42,.14);
    transition:left .24s ease;
}

.storefront-app .account-mobile-drawer.active{
    left:0;
}

.storefront-app .account-mobile-overlay{
    position:fixed;
    inset:0;
    z-index:1300;
    background:rgba(15,23,42,.42);
    opacity:0;
    visibility:hidden;
    transition:opacity .2s ease,visibility .2s ease;
}

.storefront-app .account-mobile-overlay.active{
    opacity:1;
    visibility:visible;
}

.storefront-app .account-mobile-drawer-shell{
    height:100%;
    display:flex;
    flex-direction:column;
}

.storefront-app .account-mobile-drawer-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:18px;
    border-bottom:1px solid #e6edf5;
}

.storefront-app .account-mobile-drawer-head span{
    display:block;
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.storefront-app .account-mobile-drawer-head strong{
    display:block;
    margin-top:6px;
    color:#102a43;
    font-size:20px;
}

.storefront-app .account-mobile-drawer-head small{
    display:block;
    margin-top:4px;
    color:#60758f;
    overflow-wrap:anywhere;
}

.storefront-app .account-mobile-drawer-close{
    width:40px;
    height:40px;
    border:0;
    border-radius:8px;
    background:#f4f7fb;
    color:#31465f;
}

.storefront-app .account-mobile-nav-list{
    display:grid;
    gap:8px;
    padding:12px;
    overflow:auto;
}

.storefront-app .account-mobile-nav-link{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:46px;
    padding:0 12px;
    border-radius:8px;
    color:#51657d;
    text-decoration:none;
    font-weight:800;
}

.storefront-app .account-mobile-logout-form{
    margin:0;
}

.storefront-app .account-mobile-logout-form .account-mobile-nav-link{
    width:100%;
    border:0;
    background:transparent;
    text-align:left;
}

.storefront-app .account-mobile-nav-link i{
    width:20px;
    text-align:center;
}

.storefront-app .account-mobile-nav-link.active,
.storefront-app .account-mobile-nav-link:hover{
    background:#edf4ff;
    color:#102a43;
}

.storefront-app .account-mobile-nav-link.danger{
    color:#d6455d;
}

.storefront-app .account-mobile-drawer,
.storefront-app .account-mobile-overlay{
    display:none;
}

@media (max-width: 1199px){
    .storefront-app .store-listing-layout{
        grid-template-columns:280px minmax(0,1fr);
    }
}

@media (max-width: 991px){
    .storefront-app .account-mobile-drawer,
    .storefront-app .account-mobile-overlay{
        display:block;
    }

    .storefront-app .account-layout{
        grid-template-columns:1fr !important;
    }

    .storefront-app .account-layout > .account-nav-card{
        display:none !important;
    }

    .storefront-app .account-nav-card,
    .storefront-app .store-filter-sidebar{
        position:relative;
        top:auto;
        max-height:none;
        overflow:visible;
    }

    .storefront-app .store-filter-sidebar{
        display:block;
    }

    .storefront-app .store-filter-panel{
        max-height:none;
    }

    .storefront-app .store-listing-layout{
        grid-template-columns:1fr;
    }
}

@media (max-width: 767px){
    .storefront-app .store-listing-page{
        padding-bottom:94px;
    }

    .storefront-app .store-mobile-filter-button{
        position:fixed;
        left:auto;
        right:14px;
        bottom:82px;
        z-index:1250;
        min-height:46px;
        padding:0 14px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:8px;
        border:0;
        border-radius:999px;
        background:#102a43;
        color:#fff;
        box-shadow:0 14px 30px rgba(15,23,42,.2);
        font-weight:800;
    }

    .storefront-app .store-filter-overlay{
        position:fixed;
        inset:0;
        z-index:1230;
        display:block;
        background:rgba(15,23,42,.45);
        opacity:0;
        visibility:hidden;
        transition:opacity .2s ease,visibility .2s ease;
    }

    .storefront-app .store-filter-overlay.active{
        opacity:1;
        visibility:visible;
    }

    .storefront-app .store-filter-sidebar{
        position:fixed;
        top:0;
        bottom:0;
        left:0;
        z-index:1240;
        width:min(360px,calc(100vw - 54px));
        max-height:none;
        height:100dvh;
        padding:0;
        overflow:hidden;
        background:#fff;
        border-right:1px solid #dfe8f2;
        box-shadow:18px 0 42px rgba(15,23,42,.16);
        transform:translateX(-105%);
        transition:transform .24s ease;
    }

    .storefront-app .store-filter-sidebar.active{
        transform:translateX(0);
    }

    .storefront-app .store-filter-panel{
        min-height:100%;
        height:100%;
        max-height:100dvh;
        overflow:auto;
        border:0;
        border-radius:0 !important;
        box-shadow:none;
    }

    .storefront-app .store-filter-mobile-head{
        position:sticky;
        top:0;
        z-index:2;
        min-height:66px;
        padding:14px 16px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        border-bottom:1px solid #e7eef6;
        background:#fff;
    }

    .storefront-app .store-filter-mobile-head strong{
        display:block;
        margin-top:3px;
        color:#102a43;
        font-size:20px;
        line-height:1.15;
    }

    .storefront-app .store-filter-close{
        width:40px;
        height:40px;
        border:0;
        border-radius:10px;
        background:#f3f7fc;
        color:#24405c;
    }

    .storefront-app .store-filter-category-list.store-filter-scroll-list{
        max-height:24dvh;
    }

    .storefront-app .store-filter-tag-list.store-filter-scroll-list{
        max-height:28dvh;
    }

}

@media (max-width: 575px){
    .storefront-app .store-filter-panel{
        border-radius:10px;
    }

    .storefront-app .store-filter-card-head{
        padding:16px 16px 10px;
    }

    .storefront-app .store-filter-category-list,
    .storefront-app .store-filter-tag-list{
        padding-inline:10px;
    }

    .storefront-app .store-filter-group{
        padding-inline:16px;
    }
}

/* Catalog toolbar and list/grid view behavior */
.storefront-app .store-view-icons a{
    width:38px;
    height:38px;
    border:1px solid #d8e3ef;
    border-radius:8px;
    background:#fff;
    color:#7a8da6;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

.storefront-app .store-view-icons a.active{
    background:#102a43;
    color:#fff;
    border-color:#102a43;
}

.storefront-app .listing-grid.is-list-view{
    grid-template-columns:1fr;
}

.storefront-app .listing-grid.is-list-view .store-product-card{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    min-height:220px;
}

.storefront-app .listing-grid.is-list-view .store-product-media{
    height:100%;
    min-height:220px;
}

.storefront-app .listing-grid.is-list-view .store-product-content{
    padding:18px;
    justify-content:center;
}

.storefront-app .listing-grid.is-list-view .store-product-form,
.storefront-app .listing-grid.is-list-view .store-product-button{
    max-width:240px;
}

@media (max-width: 575px){
    .storefront-app .listing-grid.is-list-view{
        grid-template-columns:1fr !important;
    }

    .storefront-app .listing-grid.is-list-view .store-product-col{
        width:100%;
    }

    .storefront-app .listing-grid.is-list-view .store-product-card{
        display:grid;
        grid-template-columns:118px minmax(0,1fr);
        min-height:150px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-media{
        min-height:150px;
        height:100% !important;
        aspect-ratio:auto;
    }

    .storefront-app .listing-grid.is-list-view .store-product-content{
        min-width:0;
        padding:10px;
        gap:6px;
        justify-content:center;
    }

    .storefront-app .listing-grid.is-list-view .store-product-title{
        font-size:14px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-meta-row{
        align-items:flex-start;
        gap:5px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-price-row strong{
        font-size:17px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-form,
    .storefront-app .listing-grid.is-list-view .store-product-button{
        width:100%;
        max-width:none;
    }

    .storefront-app .listing-grid.is-list-view .store-product-button{
        min-height:36px;
        font-size:12px;
    }
}

/* Mobile listing cleanup */
@media (max-width: 575px){
    .storefront-app .store-listing-page{
        padding-top:8px;
    }

    .storefront-app .store-listing-page .store-breadcrumbs{
        display:none;
    }

    .storefront-app .store-listing-page .store-category-hero{
        display:block;
        padding:8px 0 6px !important;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
    }

    .storefront-app .store-listing-page .store-category-hero-image{
        display:none;
    }

    .storefront-app .store-listing-page .store-category-hero-copy h1{
        margin:0 0 4px;
        font-size:22px;
        line-height:1.15;
    }

    .storefront-app .store-listing-page .store-category-hero-copy p{
        margin:0;
        font-size:12px;
        line-height:1.45;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
    }

    .storefront-app .store-listing-page .store-category-hero-features{
        display:none;
    }

    .storefront-app .store-listing-page .store-catalog-head{
        display:grid;
        grid-template-columns:1fr;
        padding:10px;
        margin:8px 0 10px;
        border-radius:10px;
        gap:8px;
    }

    .storefront-app .store-listing-page .store-catalog-head h2{
        margin:0;
        font-size:18px;
        line-height:1.2;
    }

    .storefront-app .store-listing-page .store-catalog-head p{
        margin:2px 0 0;
        font-size:12px;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:8px;
        align-items:center;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar label{
        display:block;
        gap:5px;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar label span{
        display:none;
    }

    .storefront-app .store-listing-page .store-catalog-toolbar select{
        width:100%;
        min-height:36px;
        font-size:13px;
    }

    .storefront-app .store-view-icons a{
        width:36px;
        height:36px;
        border-radius:8px;
    }
}

/* Cart drawer polish */
.storefront-app .cart-sidebar{
    width:min(420px,calc(100vw - 18px));
    background:#fff;
    overflow:hidden;
}

.storefront-app #cartSidebarContent{
    height:100%;
    min-height:0;
    display:flex;
    flex-direction:column;
}

.storefront-app .cart-sidebar.is-updating::after{
    content:"Updating cart...";
    position:absolute;
    right:18px;
    bottom:18px;
    z-index:4;
    min-height:36px;
    padding:0 14px;
    border:1px solid #dbe7f5;
    border-radius:999px;
    background:rgba(255,255,255,.96);
    box-shadow:0 10px 24px rgba(15,23,42,.12);
    color:#27415f;
    display:inline-flex;
    align-items:center;
    font-size:12px;
    font-weight:800;
}

.storefront-app .product-detail-cart-form.is-submitting,
.storefront-app .store-product-form.is-submitting{
    opacity:.82;
}

.storefront-app .cart-header{
    flex:0 0 auto;
    padding:18px 20px 16px;
    border-bottom:1px solid #e6edf5;
    background:#fff;
}

.storefront-app .cart-title-block{
    display:grid;
    gap:2px;
}

.storefront-app .cart-title-kicker{
    color:#70849e;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.storefront-app .cart-header h4{
    margin:0;
    color:#102a43;
    font-size:24px;
    line-height:1.15;
    font-weight:800;
}

.storefront-app .cart-header small{
    margin:0;
    color:#60758f;
    font-size:14px;
    font-weight:700;
}

.storefront-app .cart-close-btn{
    width:42px;
    height:42px;
    border-radius:8px;
}

.storefront-app .cart-notice-slot{
    flex:0 0 auto;
    padding:10px 20px 8px;
    background:#fff;
}

.storefront-app .cart-notice-slot:empty{
    display:none;
}

.storefront-app .cart-inline-notice{
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
    margin:0;
    padding:10px 12px;
    border:1px solid transparent;
    border-radius:8px;
    font-size:13px;
    line-height:1.35;
    font-weight:700;
    box-shadow:0 8px 20px rgba(15,23,42,.05);
}

.storefront-app .cart-inline-notice::before{
    width:18px;
    height:18px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    font-family:"Font Awesome 6 Free";
    font-size:10px;
    font-weight:900;
}

.storefront-app .cart-inline-notice.is-success{
    color:#0f7a42;
    border-color:#bfe8cf;
    background:#eefbf4;
}

.storefront-app .cart-inline-notice.is-success::before{
    content:"\f00c";
    color:#0f7a42;
    background:#d9f7e7;
}

.storefront-app .cart-inline-notice.is-danger{
    color:#b4233a;
    border-color:#f2c2cb;
    background:#fff1f3;
}

.storefront-app .cart-inline-notice.is-danger::before{
    content:"\f00d";
    color:#b4233a;
    background:#ffe1e6;
}

.storefront-app .cart-inline-notice.is-removed{
    color:#b4233a;
    border-color:#f2c2cb;
    background:#fff1f3;
}

.storefront-app .cart-inline-notice.is-removed::before{
    content:"\f2ed";
    color:#b4233a;
    background:#ffe1e6;
}

.storefront-app .cart-inline-notice.is-quantity{
    color:#1d4ed8;
    border-color:#bfdbfe;
    background:#eff6ff;
}

.storefront-app .cart-inline-notice.is-quantity::before{
    content:"\2b";
    color:#1d4ed8;
    background:#dbeafe;
}

.storefront-app .cart-inline-notice.is-coupon{
    margin:0;
}

.storefront-app .cart-body{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
    padding:18px 20px 20px;
}

.storefront-app .cart-item{
    display:grid;
    grid-template-columns:86px minmax(0,1fr);
    gap:14px;
    padding:0 0 18px;
    margin-bottom:18px;
}

.storefront-app .cart-item-image{
    width:86px;
    height:86px;
    border-radius:8px;
}

.storefront-app .cart-info{
    min-width:0;
}

.storefront-app .cart-item-title{
    display:block;
    color:#102a43;
    font-size:15px;
    font-weight:800;
    line-height:1.35;
}

.storefront-app .cart-line-meta{
    font-size:13px;
}

.storefront-app .cart-item-actions{
    flex-wrap:wrap;
    gap:8px;
}

.storefront-app .cart-qty-form,
.storefront-app .cart-remove-btn,
.storefront-app .cart-coupon-form input,
.storefront-app .cart-coupon-form button,
.storefront-app .cart-coupon-remove,
.storefront-app .checkout-btn{
    border-radius:8px;
}

.storefront-app .cart-coupon-panel{
    margin-top:0;
    padding:0;
    border-radius:8px;
    background:#fff;
    overflow:hidden;
}

.storefront-app .cart-coupon-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
}

.storefront-app .cart-coupon-form input{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:0 12px;
    border:1px solid #d8e3ef;
    background:#fff;
    color:#102a43;
    outline:0;
}

.storefront-app .cart-coupon-form input:focus{
    border-color:#3b82f6;
    box-shadow:0 0 0 3px rgba(59,130,246,.12);
}

.storefront-app .cart-coupon-form button{
    min-width:76px;
    min-height:42px;
    padding:0 14px;
    border:1px solid #102a43;
    background:#102a43;
    color:#fff;
    font-weight:800;
}

.storefront-app .cart-coupon-form button:disabled{
    border-color:#cbd5e1;
    background:#e2e8f0;
    color:#64748b;
    cursor:not-allowed;
}

.storefront-app .cart-coupon-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    width:100%;
    min-height:44px;
    margin:0;
    padding:0 12px;
    border:1px solid #e1eaf5;
    border-radius:8px;
    background:#fbfdff;
    cursor:pointer;
}

.storefront-app .cart-coupon-head > span:first-child{
    display:grid;
    gap:2px;
    text-align:left;
}

.storefront-app .cart-coupon-head small{
    color:#60758f;
    font-size:12px;
    font-weight:700;
}

.storefront-app .cart-coupon-head i{
    color:#60758f;
    transition:transform .18s ease;
}

.storefront-app .cart-coupon-head[aria-expanded="true"] i{
    transform:rotate(180deg);
}

.storefront-app .cart-coupon-head > span:not(:first-child){
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    background:#eef4ff;
    color:#345cdb;
    display:inline-flex;
    align-items:center;
    font-size:11px;
    font-weight:800;
    letter-spacing:.04em;
}

.storefront-app .cart-coupon-content{
    display:none;
    padding:8px 0 0;
}

.storefront-app .cart-coupon-content.active{
    display:block;
}

.storefront-app .cart-coupon-slider{
    display:grid;
    gap:6px;
    min-width:0;
    margin:8px 0;
    overflow:hidden;
}

.storefront-app .cart-coupon-slider-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    min-height:30px;
}

.storefront-app .cart-coupon-slider-toolbar > span{
    color:#60758f;
    font-size:11px;
    font-weight:800;
}

.storefront-app .cart-coupon-slider-actions{
    display:flex;
    align-items:center;
    gap:5px;
}

.storefront-app .cart-coupon-slider-actions button{
    display:inline-grid;
    place-items:center;
    width:28px;
    min-width:28px;
    height:28px;
    padding:0;
    border:1px solid #d8e3ef;
    border-radius:7px;
    background:#fff;
    color:#29415e;
}

.storefront-app .cart-coupon-slider-actions button[hidden]{
    display:none;
}

.storefront-app .cart-coupon-track{
    display:flex;
    gap:8px;
    width:100%;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
}

.storefront-app .cart-coupon-track::-webkit-scrollbar{
    display:none;
}

.storefront-app .cart-coupon-track .cart-coupon-option{
    flex:0 0 100%;
    grid-template-columns:minmax(0,1fr) auto;
    min-width:100%;
    min-height:76px;
    padding:9px 10px;
    scroll-snap-align:start;
    scroll-snap-stop:always;
}

.storefront-app .cart-coupon-track .cart-coupon-option small{
    display:block;
    margin-top:2px;
    white-space:normal;
}

.storefront-app .cart-coupon-track .cart-coupon-option button{
    min-width:68px;
}

.storefront-app .cart-footer{
    flex:0 0 auto;
    position:sticky;
    bottom:0;
    display:grid;
    gap:8px;
    padding:12px 18px 16px;
    border-top:1px solid #e6edf5;
    border-bottom:0;
    background:#fff;
    box-shadow:0 -12px 24px rgba(15,23,42,.06);
}

.storefront-app .cart-summary-lines{
    display:grid;
    gap:8px;
    margin-bottom:0;
}

.storefront-app .cart-summary-lines .cart-total{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0;
    font-size:14px;
}

.storefront-app .cart-summary-lines .cart-total strong{
    color:#102a43;
}

.storefront-app .cart-summary-lines .grand-total{
    padding-top:8px;
    font-size:16px;
}

.storefront-app .checkout-btn{
    min-height:48px;
    font-size:15px;
}

.storefront-app .cart-empty-state{
    min-height:260px;
    padding:20px;
}

@media (max-width:575px){
    .storefront-app .cart-sidebar{
        width:min(390px,calc(100vw - 12px));
    }

    .storefront-app .cart-header,
    .storefront-app .cart-body,
    .storefront-app .cart-footer{
        padding-left:18px;
        padding-right:18px;
    }

    .storefront-app .cart-notice-slot{
        padding-left:18px;
        padding-right:18px;
    }
}

.storefront-app .cart-coupon-content.active .cart-coupon-applied{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    align-items:center;
    padding:8px 9px;
    border:1px solid #cfe9d9;
    background:#f7fcf9;
    border-radius:8px;
}

.storefront-app .cart-coupon-applied > div{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:6px;
    min-width:0;
}

.storefront-app .cart-coupon-applied form{
    margin:0;
}

.storefront-app .cart-coupon-applied strong{
    display:block;
    margin:0;
    color:#102a43;
    font-size:12px;
    line-height:1.25;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:100%;
}

.storefront-app .cart-coupon-status{
    display:inline-flex;
    align-items:center;
    gap:5px;
    min-height:20px;
    padding:0 7px;
    border-radius:999px;
    background:#e9f8ef;
    color:#157347 !important;
    font-size:10px !important;
    font-weight:800;
}

.storefront-app .cart-coupon-code{
    display:inline-flex;
    align-items:center;
    width:fit-content;
    min-height:20px;
    margin:0;
    padding:0 7px;
    border:1px dashed #b9d7c6;
    border-radius:999px;
    background:#fff;
    color:#29415e !important;
    font-size:10px !important;
    font-weight:800;
    letter-spacing:.04em;
}

.storefront-app .cart-coupon-remove{
    width:32px;
    min-width:32px;
    min-height:32px;
    padding:0;
    border-color:#cfe0d7;
    background:#fff;
    color:#157347;
    display:inline-grid;
    place-items:center;
}

.storefront-app .cart-coupon-remove:hover{
    background:#e9f8ef;
}

@media (max-width:575px){
    .storefront-app .cart-coupon-track .cart-coupon-option{
        grid-template-columns:minmax(0,1fr) auto;
    }

    .storefront-app .cart-coupon-track .cart-coupon-option button{
        width:auto;
    }

    .storefront-app .cart-coupon-head{
        min-height:42px;
        padding:0 10px;
    }

    .storefront-app .cart-coupon-head small{
        font-size:11px;
    }

    .storefront-app .cart-coupon-applied > div{
        grid-template-columns:auto minmax(0,1fr);
    }

    .storefront-app .cart-coupon-code{
        grid-column:1 / -1;
        max-width:100%;
    }

    .storefront-app .cart-summary-lines .cart-total{
        font-size:13px;
    }

    .storefront-app .cart-summary-lines .grand-total{
        font-size:15px;
    }
}

/* Storefront width + larger merchandise cards */
@media (min-width: 992px){
    .storefront-app .main-content,
    .storefront-app .store-shell,
    .storefront-app .store-topbar-inner,
    .storefront-app .store-main-header-inner,
    .storefront-app .store-newsletter-inner,
    .storefront-app .store-reference-footer-inner,
    .storefront-app .store-reference-footer-bottom,
    .storefront-app .main-content.product-detail-page,
    .storefront-app .account-layout{
        width:90%;
        max-width:1720px;
        margin-left:auto;
        margin-right:auto;
    }

    .storefront-app .store-listing-layout{
        grid-template-columns:320px minmax(0,1fr);
        gap:24px;
    }

    .storefront-app .store-product-grid{
        grid-template-columns:repeat(auto-fill,minmax(270px,1fr));
        gap:22px;
    }

    .storefront-app .store-product-media{
        height:280px;
    }

    .storefront-app .store-product-content{
        padding:18px;
        gap:8px;
    }

    .storefront-app .store-product-title{
        font-size:17px;
    }

    .storefront-app .store-product-price-row strong{
        font-size:21px;
    }

    .storefront-app .store-product-button{
        min-height:46px;
    }

    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(auto-fill,minmax(170px,1fr));
        gap:18px;
        justify-content:stretch;
    }

    .storefront-app .store-home-category-card{
        width:auto;
        min-height:178px;
        padding:18px;
        align-items:center;
        justify-content:center;
        gap:14px;
    }

    .storefront-app .store-home-category-thumb{
        width:112px;
        height:112px;
    }

    .storefront-app .store-home-category-card strong{
        text-align:center;
        font-size:15px;
        line-height:1.35;
    }
}

@media (min-width: 1200px){
    .storefront-app .store-product-grid{
        grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
    }

    .storefront-app .store-product-media{
        height:300px;
    }
}

@media (max-width: 991px){
    .storefront-app .store-product-grid{
        grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
        gap:14px;
    }

    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }
}

/* Customer account redesign */
.storefront-app .account-page{
    padding:16px 0 44px;
    background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);
}

.storefront-app .account-layout{
    width:min(90vw,1600px);
    grid-template-columns:280px minmax(0,1fr);
    gap:22px;
    align-items:start;
}

.storefront-app .account-nav-card{
    position:sticky;
    top:12px;
    align-self:start;
    height:fit-content;
    max-height:calc(100vh - 24px);
    margin:0;
    padding:14px;
    overflow:auto;
    border-radius:8px;
    box-shadow:0 12px 30px rgba(15,23,42,.055);
}

.storefront-app .account-nav-head{
    padding:12px 12px 14px;
    margin-bottom:10px;
}

.storefront-app .account-nav-head strong{
    font-size:18px;
}

.storefront-app .account-nav-list{
    gap:4px;
}

.storefront-app .account-nav-link{
    min-height:40px;
    padding:0 12px;
    border-radius:6px;
    font-size:14px;
}

.storefront-app .account-content{
    min-width:0;
    align-self:start;
    gap:14px;
}

.storefront-app .account-hero-card{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    padding:18px 20px;
    border-radius:8px;
    box-shadow:0 10px 26px rgba(15,23,42,.045);
}

.storefront-app .account-hero-card h1{
    margin:4px 0 5px;
    font-size:clamp(30px,2.5vw,42px);
    line-height:1.05;
}

.storefront-app .account-hero-card p{
    max-width:820px;
    margin:0;
    line-height:1.55;
}

.storefront-app .account-hero-actions,
.storefront-app .account-hero-meta{
    display:flex;
    align-items:stretch;
    gap:10px;
}

.storefront-app .account-hero-meta > div,
.storefront-app .account-hero-stat{
    min-width:150px;
    padding:12px 14px;
    border-radius:6px;
}

.storefront-app .account-hero-meta strong,
.storefront-app .account-hero-stat strong{
    margin-top:7px;
    font-size:17px;
}

.storefront-app .account-card{
    padding:20px;
    border-radius:8px;
    box-shadow:0 10px 26px rgba(15,23,42,.045);
}

.storefront-app .account-card-head{
    margin-bottom:14px;
}

.storefront-app .account-card-head h2{
    margin-top:3px;
    font-size:26px;
}

.storefront-app .account-grid-two{
    grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
    gap:16px;
}

.storefront-app .account-form-grid{
    gap:12px;
}

.storefront-app .account-field input,
.storefront-app .account-field select{
    min-height:43px;
    border-radius:5px;
}

.storefront-app .account-primary-btn,
.storefront-app .account-outline-btn,
.storefront-app .account-icon-btn{
    min-height:42px;
    border-radius:5px;
}

.storefront-app .account-side-stack{
    gap:12px;
}

.storefront-app .account-mini-card{
    padding:18px;
    border-radius:6px;
    background:#fbfdff;
}

.storefront-app .account-mini-card h3{
    margin:5px 0 6px;
    font-size:23px;
}

.storefront-app .account-mini-card p{
    margin:0 0 12px;
    color:#526b86;
    line-height:1.55;
}

.storefront-app .account-address-grid{
    grid-template-columns:repeat(auto-fit,minmax(360px,1fr));
    gap:12px;
}

.storefront-app .account-address-card{
    padding:16px;
    border-radius:6px;
    background:#fff;
    box-shadow:none;
}

.storefront-app .account-address-head{
    align-items:flex-start;
}

.storefront-app .account-address-head h3{
    margin:4px 0 0;
    font-size:24px;
}

.storefront-app .account-address-body{
    margin-top:12px;
    display:grid;
    gap:4px;
    line-height:1.45;
}

.storefront-app .account-address-body p{
    margin:0;
}

.storefront-app .account-address-footer{
    margin-top:14px;
    gap:8px;
}

.storefront-app .account-orders-list{
    gap:12px;
}

.storefront-app .account-order-card{
    padding:16px 18px;
    gap:12px;
    border-radius:8px;
    box-shadow:0 10px 24px rgba(15,23,42,.04);
}

.storefront-app .account-order-head{
    align-items:center;
}

.storefront-app .account-order-head h3{
    margin:3px 0 0;
    font-size:26px;
    line-height:1.12;
}

.storefront-app .account-order-head p{
    margin:3px 0 0;
}

.storefront-app .account-order-card-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.storefront-app .account-order-status{
    min-height:26px;
    padding:0 10px;
    border-radius:999px;
    font-size:11px;
}

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

.storefront-app .account-order-grid > div{
    padding:12px;
    border-radius:6px;
    background:#fbfdff;
}

.storefront-app .account-order-grid strong{
    margin-top:5px;
    font-size:16px;
}

.storefront-app .account-order-footer{
    align-items:center;
    padding-top:10px;
}

.storefront-app .account-order-total-inline{
    display:none;
}

.storefront-app .account-cancel-card{
    border-left:3px solid #3b82f6;
}

.storefront-app .account-cancel-form{
    gap:9px;
}

.storefront-app .account-cancel-form select,
.storefront-app .account-cancel-form textarea{
    border-radius:5px;
}

@media (max-width: 1199px){
    .storefront-app .account-layout{
        grid-template-columns:1fr !important;
    }

    .storefront-app .account-nav-card{
        position:relative !important;
        top:auto !important;
    }

    .storefront-app .account-nav-list{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }

    .storefront-app .account-grid-two{
        grid-template-columns:1fr;
    }
}

@media (max-width: 767px){
    .storefront-app .account-page{
        padding:14px 0 86px;
    }

    .storefront-app .account-layout{
        width:min(100%,calc(100% - 16px)) !important;
        gap:12px;
    }

    .storefront-app .account-nav-card{
        display:none !important;
    }

    .storefront-app .account-hero-card,
    .storefront-app .account-card{
        padding:16px;
    }

    .storefront-app .account-hero-card,
    .storefront-app .account-hero-actions,
    .storefront-app .account-hero-meta,
    .storefront-app .account-form-grid,
    .storefront-app .account-address-grid,
    .storefront-app .account-order-grid{
        grid-template-columns:1fr !important;
        display:grid;
    }

    .storefront-app .account-order-head,
    .storefront-app .account-order-card-actions,
    .storefront-app .account-order-footer{
        display:grid;
        justify-items:stretch;
    }

    .storefront-app .account-order-card-actions .account-outline-btn{
        width:100%;
    }
}

.storefront-app .account-field-full{
    grid-column:1 / -1;
}

.storefront-app .account-form-grid .account-primary-btn{
    justify-self:start;
    min-width:150px;
}

.storefront-app .account-order-statuses{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}

.storefront-app .account-order-meta{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    color:#526b86;
}

.storefront-app .account-address-label{
    display:inline-flex;
    min-height:24px;
    align-items:center;
    color:#526b86;
    font-weight:700;
}

.storefront-app .account-address-footer form{
    margin:0;
}

.storefront-app .account-secondary-link{
    min-height:auto;
    padding:0;
    color:#3b5876;
    justify-content:flex-start;
}

.storefront-app .account-secondary-link:hover{
    color:#2563eb;
}

@media (min-width: 1200px){
    .storefront-app .account-card > .account-address-grid,
    .storefront-app .account-card > .account-orders-list{
        max-width:100%;
    }
}

@media (max-width: 767px){
    .storefront-app .account-layout{
        width:min(100%,calc(100% - 16px));
    }

    .storefront-app .account-hero-card h1{
        font-size:28px;
    }

    .storefront-app .account-card-head h2,
    .storefront-app .account-order-head h3,
    .storefront-app .account-address-head h3{
        font-size:21px;
    }

    .storefront-app .account-form-grid .account-primary-btn,
    .storefront-app .account-primary-btn,
    .storefront-app .account-outline-btn{
        width:100%;
    }

    .storefront-app .account-hero-stat,
    .storefront-app .account-hero-meta > div{
        min-width:0;
    }

    .storefront-app .account-order-meta{
        display:grid;
        gap:6px;
    }
}

/* Mobile homepage benefit strip */
@media (max-width: 575px){
    .storefront-app .store-home-benefits{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
        margin:10px 0 16px !important;
    }

    .storefront-app .store-home-benefits article{
        min-height:74px;
        padding:10px !important;
        gap:8px !important;
        align-items:center !important;
        border:1px solid #dfe8f4 !important;
        border-radius:5px !important;
        background:#fff !important;
        box-shadow:0 6px 14px rgba(15,23,42,.035) !important;
    }

    .storefront-app .store-home-benefits article:after{
        display:none !important;
    }

    .storefront-app .store-home-benefits i{
        width:34px !important;
        height:34px !important;
        min-width:34px;
        border-radius:5px !important;
        font-size:14px;
        background:#eef4ff !important;
        color:#2f6df6 !important;
    }

    .storefront-app .store-home-benefits article > div{
        gap:1px !important;
    }

    .storefront-app .store-home-benefits strong{
        font-size:12px !important;
        line-height:1.2 !important;
    }

    .storefront-app .store-home-benefits span{
        font-size:10.5px !important;
        line-height:1.25 !important;
    }
}

/* Support chat */
.support-chat-widget{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:1450;
    font-family:inherit;
}

.support-chat-invite{
    position:absolute;
    right:0;
    bottom:58px;
    width:246px;
    min-height:64px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border:1px solid #d7e4f2;
    border-radius:12px;
    background:#fff;
    color:#17324d;
    text-align:left;
    box-shadow:0 16px 38px rgba(15,23,42,.18);
    transition:opacity .18s ease,visibility .18s ease,transform .18s ease;
}

.support-chat-invite-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#eaf2ff;
    color:#2563eb;
}

.support-chat-invite strong,
.support-chat-invite small{
    display:block;
}

.support-chat-invite strong{
    font-size:13px;
    line-height:1.25;
}

.support-chat-invite small{
    margin-top:2px;
    color:#64748b;
    font-size:11px;
    line-height:1.3;
}

.support-chat-invite-arrow{
    color:#7c91aa;
    font-size:11px;
}

.support-chat-toggle{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:48px;
    padding:0 18px;
    border:0;
    border-radius:5px;
    background:#102f4c;
    color:#fff;
    font-weight:800;
    box-shadow:0 16px 34px rgba(15,23,42,.22);
}

.support-chat-toggle i{
    color:#fff;
}

.support-chat-toggle em{
    min-width:20px;
    height:20px;
    display:inline-grid;
    place-items:center;
    padding:0 6px;
    border-radius:999px;
    background:#ef4444;
    color:#fff;
    font-style:normal;
    font-size:11px;
    font-weight:800;
}

.support-chat-panel{
    position:absolute;
    right:0;
    bottom:62px;
    width:min(360px,calc(100vw - 28px));
    max-height:min(620px,calc(100vh - 110px));
    display:none;
    grid-template-rows:auto 1fr auto;
    overflow:hidden;
    border:1px solid #d8e3f1;
    border-radius:5px;
    background:#fff;
    box-shadow:0 24px 54px rgba(15,23,42,.22);
}

.support-chat-widget.open .support-chat-panel{
    display:grid;
}

.support-chat-widget.open .support-chat-toggle,
.support-chat-widget.open .support-chat-invite{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
}

@media(min-width:576px){
    .support-chat-widget.open .support-chat-panel{
        bottom:0;
    }
}

.support-chat-panel header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:14px 16px;
    border-bottom:1px solid #e3ebf5;
    background:#f8fbff;
}

.support-chat-panel header strong{
    display:block;
    color:#09233f;
    font-size:16px;
}

.support-chat-panel header span{
    display:block;
    color:#607390;
    font-size:12px;
}

.support-chat-panel header button{
    width:34px;
    height:34px;
    border:0;
    border-radius:5px;
    background:#eef4ff;
    color:#15324f;
}

.support-chat-body{
    min-height:160px;
    max-height:340px;
    overflow:auto;
    padding:14px;
    background:#fff;
}

.support-chat-empty{
    display:grid;
    place-items:center;
    gap:10px;
    min-height:145px;
    color:#607390;
    text-align:center;
}

.support-chat-empty i{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:5px;
    background:#eef4ff;
    color:#2f6df6;
}

.support-chat-message{
    width:fit-content;
    max-width:76%;
    margin:0 0 8px;
    padding:8px 10px;
    border-radius:5px;
    border:1px solid #dfe8f4;
    background:#f8fbff;
    color:#09233f;
    font-size:13px;
    overflow-wrap:anywhere;
}

.support-chat-message.team{
    margin-right:auto;
}

.support-chat-message.mine{
    margin-left:auto;
    background:#102f4c;
    border-color:#102f4c;
    color:#fff;
}

.support-chat-message strong{
    display:block;
    margin-bottom:2px;
    font-size:11px;
    line-height:1.2;
}

.support-chat-message p{
    margin:0;
    line-height:1.35;
}

.support-chat-attachment{
    display:block;
    margin-top:5px;
    color:inherit;
    font-size:11px;
    font-weight:800;
    text-decoration:underline;
    overflow-wrap:anywhere;
}

.support-chat-read-state{
    display:block;
    margin-top:4px;
    font-size:10px;
    font-weight:800;
    line-height:1.2;
    opacity:.72;
    text-align:right;
}

.support-chat-message.team .support-chat-read-state{
    text-align:left;
}

.support-chat-typing{
    padding:6px 12px;
    border-top:1px solid #e3ebf5;
    background:#f8fbff;
    color:#60758f;
    font-size:11px;
    font-weight:800;
}

.support-chat-start,
.support-chat-reply{
    display:grid;
    gap:8px;
    padding:12px;
    border-top:1px solid #e3ebf5;
    background:#f8fbff;
}

.support-chat-start{
    max-height:min(340px,calc(100vh - 230px));
    overflow:auto;
}

.support-chat-start .support-chat-honeypot{
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    opacity:0!important;
    pointer-events:none!important;
}

.support-chat-error{
    margin:0;
    padding:8px 10px;
    border:1px solid #fecaca;
    border-radius:5px;
    background:#fff1f2;
    color:#b42318;
    font-size:12px;
    font-weight:700;
    line-height:1.45;
}

.support-chat-reply{
    grid-template-columns:minmax(0,1fr) 42px 52px;
    align-items:stretch;
}

.support-chat-reply textarea{
    min-height:58px;
    max-height:84px;
    resize:vertical;
}

.support-chat-file{
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid #cbd9ea;
    border-radius:5px;
    background:#fff;
    color:#15324f;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
    overflow:hidden;
    white-space:nowrap;
}

.support-chat-file.compact{
    width:42px;
    min-height:42px;
    padding:0;
}

.support-chat-file input{
    display:none;
}

.support-chat-start[hidden],
.support-chat-reply[hidden]{
    display:none !important;
}

.support-chat-start input,
.support-chat-start select,
.support-chat-start textarea,
.support-chat-reply textarea{
    min-width:0;
    width:100%;
    border:1px solid #cbd9ea;
    border-radius:5px;
    padding:10px 12px;
    color:#09233f;
    background:#fff;
    outline:none;
}

.support-chat-start button,
.support-chat-reply button{
    border:0;
    border-radius:5px;
    min-height:42px;
    padding:0 14px;
    background:#2f6df6;
    color:#fff;
    font-weight:800;
}

.support-chat-reply{
    grid-template-columns:1fr 46px;
    align-items:end;
}

.store-wishlist-page{
    width:min(1380px,calc(100% - 40px));
    margin:0 auto;
    padding:28px 0 44px;
}

.store-wishlist-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.store-wishlist-kicker{
    display:block;
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.store-wishlist-head h1{
    margin:4px 0 6px;
    color:#102a43;
    font-size:34px;
    line-height:1.15;
}

.store-wishlist-head p{
    margin:0;
    color:#60758f;
}

.store-wishlist-clear button,
.store-wishlist-empty a{
    min-height:42px;
    padding:0 14px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#29415e;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    font-weight:800;
}

.store-wishlist-clear button{
    color:#d6455d;
    border-color:#ffd6de;
    background:#fff7f8;
}

.store-wishlist-empty{
    min-height:340px;
    padding:36px;
    border:1px solid #e6edf5;
    border-radius:8px;
    background:#fff;
    display:grid;
    place-items:center;
    align-content:center;
    gap:10px;
    text-align:center;
}

.store-wishlist-empty i{
    width:54px;
    height:54px;
    border-radius:5px;
    background:#fff5f8;
    color:#db2777;
    display:grid;
    place-items:center;
    font-size:22px;
}

.store-wishlist-empty strong{
    color:#102a43;
    font-size:20px;
}

.store-wishlist-empty p{
    margin:0;
    color:#60758f;
}

.product-detail-wishlist-form{
    margin:10px 0 0;
}

.product-detail-wishlist{
    min-height:42px;
    padding:0 14px;
    border:1px solid #ffd7e2;
    border-radius:5px;
    background:#fff5f8;
    color:#db2777;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-weight:800;
}

.product-detail-wishlist.is-active{
    background:#db2777;
    border-color:#db2777;
    color:#fff;
}

.product-detail-gallery-wishlist-form{
    position:absolute;
    top:16px;
    right:16px;
    z-index:5;
    margin:0;
}

.product-detail-gallery-wishlist{
    width:44px;
    height:44px;
    border:1px solid #ffd7e2;
    border-radius:999px;
    background:rgba(255,255,255,.94);
    color:#db2777;
    display:grid;
    place-items:center;
    box-shadow:0 12px 26px rgba(15,23,42,.16);
    transition:transform .18s ease, background .18s ease, color .18s ease;
}

.product-detail-gallery-wishlist:hover{
    transform:translateY(-1px);
}

.product-detail-gallery-wishlist.is-active{
    background:#db2777;
    border-color:#db2777;
    color:#fff;
}

.support-chat-reply button{
    width:52px;
    padding:0;
}

.wishlist-inline-notice{
    position:fixed;
    right:24px;
    bottom:90px;
    z-index:1500;
    max-width:min(320px,calc(100vw - 32px));
    padding:12px 14px;
    border:1px solid #bfe8cf;
    border-radius:8px;
    background:#eefbf4;
    color:#0f7a42;
    font-size:13px;
    font-weight:800;
    box-shadow:0 14px 34px rgba(15,23,42,.16);
}

.wishlist-inline-notice.is-danger{
    border-color:#f2c2cb;
    background:#fff1f3;
    color:#b4233a;
}

@media(max-width:991px){
    .storefront-app .mobile-bottom-nav{
        grid-template-columns:repeat(5,minmax(0,1fr));
    }
}

@media(max-width:575px){
    .store-wishlist-page{
        width:min(100%,calc(100% - 16px));
        padding:16px 0 24px;
    }

    .store-wishlist-head{
        align-items:center;
        flex-direction:row;
        justify-content:space-between;
        gap:10px;
    }

    .store-wishlist-head h1{
        margin:3px 0 4px;
        font-size:24px;
    }

    .store-wishlist-head p{
        font-size:13px;
        line-height:1.3;
    }

    .store-wishlist-clear{
        flex:0 0 auto;
    }

    .store-wishlist-clear button{
        min-height:38px;
        padding:0 11px;
    }

    .wishlist-inline-notice{
        right:12px;
        bottom:86px;
    }
}

@media(max-width:575px){
    .storefront-app .store-reference-footer{
        padding:26px 18px 86px;
    }

    .storefront-app .store-reference-footer-inner{
        width:100%;
        max-width:100%;
        grid-template-columns:repeat(2,minmax(0,1fr));
        align-items:start;
        gap:26px 24px;
    }

    .storefront-app .store-footer-brand-block{
        grid-column:1 / -1;
    }

    .storefront-app .store-footer-brand-block p{
        max-width:30rem;
    }

    .storefront-app .store-footer-socials{
        flex-wrap:wrap;
        gap:8px;
    }

    .storefront-app .store-reference-footer h4{
        margin-bottom:8px;
        font-size:18px;
    }

    .storefront-app .store-footer-links,
    .storefront-app .store-footer-contact{
        gap:7px;
    }

    .storefront-app .store-footer-links a,
    .storefront-app .store-footer-contact a,
    .storefront-app .store-footer-contact span{
        overflow-wrap:anywhere;
        font-size:14px;
        line-height:1.35;
    }

    .storefront-app .store-payment-icons{
        flex-wrap:wrap;
        gap:7px;
        margin-top:10px;
    }

    .storefront-app .store-reference-footer-bottom{
        width:100%;
        max-width:100%;
        margin-top:22px;
        padding:14px 0 0;
        text-align:left;
    }
}

.storefront-app.cart-open .support-chat-widget{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(16px);
}

@media(max-width:575px){
    .support-chat-widget{
        right:14px;
        bottom:78px;
    }

    .support-chat-invite{
        right:0;
        bottom:8px;
        width:min(246px,calc(100vw - 28px));
    }

    .support-chat-toggle{
        display:none;
    }

    .support-chat-panel{
        position:fixed;
        right:12px;
        bottom:82px;
        width:calc(100vw - 24px);
        max-height:calc(100vh - 160px);
    }

    .mobile-chat-trigger.chat-panel-open{
        opacity:0;
        visibility:hidden;
        pointer-events:none;
    }
}

/* Centered auth page */
.storefront-app .auth-shell{
    width:min(460px,calc(100% - 40px)) !important;
    min-height:calc(100vh - 360px);
    margin:48px auto 34px !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
}

.storefront-app .auth-box-modern{
    width:100%;
    border-radius:5px !important;
    padding:24px !important;
}

.storefront-app .auth-tabs-modern{
    gap:10px;
}

.storefront-app .auth-tab,
.storefront-app .auth-field input,
.storefront-app .auth-submit{
    border-radius:5px !important;
}

@media(max-width:575px){
    .storefront-app .auth-shell{
        width:min(100%,calc(100% - 20px)) !important;
        min-height:auto;
        margin:18px auto 26px !important;
        align-items:flex-start;
    }

    .storefront-app .auth-box-modern{
        padding:18px !important;
    }
}

/* Account orders page authoritative layout */
.storefront-app .account-orders-page{
    padding-top:16px !important;
}

.storefront-app .account-orders-panel,
.storefront-app .account-history-order,
.storefront-app .account-nav-card,
.storefront-app .account-card,
.storefront-app .account-order-panel,
.storefront-app .account-order-side-card,
.storefront-app .account-order-side-note,
.storefront-app .account-order-work-media,
.storefront-app .account-history-item-image,
.storefront-app .account-outline-btn,
.storefront-app .account-primary-btn,
.storefront-app .account-order-details-btn,
.storefront-app .account-track-order-btn,
.storefront-app .account-cancel-form select,
.storefront-app .account-cancel-form textarea{
    border-radius:0 !important;
}

.storefront-app .account-orders-panel{
    box-shadow:none !important;
}

.storefront-app .account-orders-panel-head{
    padding:18px 20px;
    gap:18px;
}

.storefront-app .account-order-tabs{
    padding:12px 20px;
}

.storefront-app .account-order-history-list{
    gap:14px;
    padding:14px 20px 20px;
}

.storefront-app .account-history-order{
    overflow:hidden;
}

.storefront-app .account-history-order-top{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:14px;
    padding:13px 16px;
}

.storefront-app .account-history-status{
    width:max-content;
    max-width:100%;
}

.storefront-app .account-history-top-meta{
    min-width:0;
}

.storefront-app .account-order-payment-note{
    margin:0;
    padding:14px 16px;
    border-bottom:1px solid #eef2f7;
    color:#36516e;
    line-height:1.6;
}

.storefront-app .account-history-items{
    gap:0;
}

.storefront-app .account-history-item{
    grid-template-columns:72px minmax(0,1fr) auto;
    gap:14px;
    padding:16px;
    min-height:110px;
}

.storefront-app .account-history-item-copy{
    align-content:center;
}

.storefront-app .account-history-item-actions{
    align-self:center;
    gap:14px;
}

.storefront-app .account-review-link,
.storefront-app .account-reviewed-note{
    white-space:nowrap;
}

@media (min-width: 1200px){
    .storefront-app .account-orders-layout{
        width:min(90vw,1600px) !important;
        max-width:1600px !important;
        margin:0 auto !important;
        display:grid !important;
        grid-template-columns:280px minmax(0,1fr) !important;
        gap:22px !important;
        align-items:start !important;
    }

    .storefront-app .account-orders-layout > .account-nav-card{
        position:sticky !important;
        top:96px !important;
        align-self:start !important;
        margin:0 !important;
        transform:none !important;
        max-height:calc(100vh - 112px) !important;
    }

    .storefront-app .account-orders-layout > .account-content{
        align-self:start !important;
        margin:0 !important;
        transform:none !important;
    }
}

@media (max-width: 1199px){
    .storefront-app .account-orders-layout{
        width:min(100%,calc(100% - 24px)) !important;
        grid-template-columns:1fr !important;
        gap:16px !important;
    }
}

@media (max-width: 767px){
    .storefront-app .account-orders-layout{
        width:min(100%,calc(100% - 16px)) !important;
        gap:12px !important;
    }

    .storefront-app .account-orders-layout > .account-nav-card{
        display:none !important;
    }
}

.storefront-app .account-history-item-image{
    width:84px;
    min-width:84px;
    height:84px;
    overflow:hidden;
    background:#f3f6fb;
    display:block;
    border:1px solid #e3ebf5;
}

.storefront-app .account-history-item-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

/* Account order detail workspace */
.storefront-app .account-order-detail-page{
    padding-top:16px !important;
}

.storefront-app .account-order-detail-screen{
    gap:12px;
}

.storefront-app .account-order-detail-topbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:start;
    padding:0 0 2px;
}

.storefront-app .account-order-detail-heading{
    display:grid;
    gap:8px;
}

.storefront-app .account-order-detail-heading h1{
    margin:0;
    color:#102a43;
    font-size:24px;
    line-height:1.2;
}

.storefront-app .account-order-detail-heading p{
    margin:0;
    color:#60758f;
    font-size:14px;
}

.storefront-app .account-order-inline-separator{
    margin:0 8px;
    color:#b2c0d1;
}

.storefront-app .account-order-detail-badges{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.storefront-app .account-order-detail-toolbar{
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
}

.storefront-app .account-order-detail-toolbar .account-outline-btn{
    min-height:40px;
    padding:0 14px;
}

.storefront-app .account-order-summary-list span,
.storefront-app .account-order-side-list span,
.storefront-app .account-order-side-note span,
.storefront-app .account-order-timeline-modern-top span,
.storefront-app .account-order-timeline-modern-top time{
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.storefront-app .account-order-summary-list strong,
.storefront-app .account-order-side-list strong{
    color:#102a43;
}

.storefront-app .account-order-workspace{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) 360px;
    gap:12px;
    align-items:start;
}

.storefront-app .account-order-workspace-main,
.storefront-app .account-order-workspace-side{
    display:grid;
    gap:12px;
}

.storefront-app .account-order-payment-alert{
    grid-column:1 / -1;
}

.storefront-app .account-order-panel,
.storefront-app .account-order-side-card{
    padding:14px;
    box-shadow:none;
}

.storefront-app .account-order-panel-head,
.storefront-app .account-order-side-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
}

.storefront-app .account-order-panel-head h2,
.storefront-app .account-order-side-head h2{
    position:relative;
    margin:0;
    padding-bottom:7px;
    font-size:14px;
    line-height:1.2;
    color:#102a43;
    font-weight:800;
}

.storefront-app .account-order-panel-head h2::after,
.storefront-app .account-order-side-head h2::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:56px;
    height:2px;
    background:#3b82f6;
}

.storefront-app .account-order-panel-head p{
    margin:4px 0 0;
    color:#60758f;
    font-size:13px;
}

.storefront-app .account-order-work-list,
.storefront-app .account-order-timeline-modern{
    display:grid;
    gap:0;
}

.storefront-app .account-order-work-item{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:14px;
    padding:12px 0;
    border-top:1px solid #eef2f7;
    border-right:0;
    border-bottom:0;
    border-left:0;
    border-radius:0;
    background:transparent;
}

.storefront-app .account-order-work-list > .account-order-work-item:first-child{
    padding-top:0;
    border-top:0;
}

.storefront-app .account-order-work-list > .account-order-work-item:last-child{
    padding-bottom:0;
}

.storefront-app .account-order-work-media{
    width:72px;
    height:72px;
    border-radius:5px;
    overflow:hidden;
    background:#f3f6fb;
    border:1px solid #e3ebf5;
}

.storefront-app .account-order-work-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.storefront-app .account-order-work-copy{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.storefront-app .account-order-work-copy-main{
    display:grid;
    gap:5px;
}

.storefront-app .account-order-work-copy-main small{
    color:#7287a3;
    font-size:12px;
    font-weight:700;
}

.storefront-app .account-order-work-copy-main p{
    margin:0;
    color:#60758f;
    font-size:14px;
}

.storefront-app .account-order-work-copy-main strong,
.storefront-app .account-order-timeline-modern strong,
.storefront-app .account-order-address-stack strong{
    color:#102a43;
}

.storefront-app .account-order-work-meta{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.storefront-app .account-order-work-meta span{
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#f4f8fc;
    color:#5d738d;
    display:inline-flex;
    align-items:center;
    font-size:12px;
    font-weight:700;
}

.storefront-app .account-order-work-total{
    display:grid;
    gap:4px;
    justify-items:end;
    text-align:right;
}

.storefront-app .account-order-work-total span{
    color:#102a43;
    font-size:18px;
    font-weight:800;
}

.storefront-app .account-order-work-total small,
.storefront-app .account-order-timeline-modern p,
.storefront-app .account-order-timeline-modern small,
.storefront-app .account-order-side-card p,
.storefront-app .account-order-address-stack p{
    color:#60758f;
    line-height:1.6;
}

.storefront-app .account-order-summary-list{
    display:grid;
    gap:0;
    background:transparent;
}

.storefront-app .account-order-summary-list > div,
.storefront-app .account-order-side-list > div{
    padding:8px 0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:10px;
}

.storefront-app .account-order-summary-list > div + div{
    border-top:1px solid #e6edf5;
}

.storefront-app .account-order-summary-list-total{
    margin-top:6px;
    padding-top:10px !important;
    border-top:1px solid #cfd9e4 !important;
    background:transparent;
}

.storefront-app .account-order-summary-list-total span,
.storefront-app .account-order-summary-list-total strong{
    color:#102a43;
}

.storefront-app .account-order-side-card{
    display:grid;
    gap:4px;
}

.storefront-app .account-order-side-list{
    display:grid;
    gap:0;
}

.storefront-app .account-order-side-list > div{
    padding:6px 0;
}

.storefront-app .account-order-side-note{
    padding:14px 16px;
    border-left:3px solid #3b82f6;
    background:#f8fbff;
}

.storefront-app .account-order-side-note.danger{
    border-left-color:#d6455d;
    background:#fff7f8;
}

.storefront-app .account-order-side-note p{
    margin:4px 0 0;
}

.storefront-app .account-order-address-stack{
    display:grid;
    gap:1px;
}

.storefront-app .account-order-address-stack a{
    color:#2563eb;
    text-decoration:none;
    font-weight:700;
    margin-top:4px;
}

.storefront-app .account-order-side-card > p{
    margin:0;
}

.storefront-app .account-order-timeline-modern article{
    padding:12px 0;
    border-top:1px solid #eef2f7;
    border-right:0;
    border-bottom:0;
    border-left:0;
    border-radius:0;
    background:transparent;
    display:grid;
    gap:6px;
}

.storefront-app .account-order-timeline-modern > article:first-child{
    padding-top:0;
    border-top:0;
}

.storefront-app .account-order-timeline-modern-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.storefront-app .account-order-bottom-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-items:start;
    margin-top:2px;
}

.storefront-app .account-order-bottom-actions > :only-child{
    grid-column:1 / -1;
}

.storefront-app .account-cancel-card{
    box-shadow:none;
}

.storefront-app .account-cancel-form{
    display:grid;
    gap:8px;
}

.storefront-app .account-cancel-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-top:2px;
}

.storefront-app .account-cancel-actions span{
    color:#60758f;
    font-size:13px;
}

.storefront-app .account-pay-now-btn{
    min-height:40px;
    padding:0 14px;
    white-space:nowrap;
}

.storefront-app .account-order-payment-note a{
    color:#2563eb;
    font-weight:800;
    text-decoration:none;
}

@media (max-width: 1199px){
    .storefront-app .account-order-workspace{
        grid-template-columns:1fr;
    }
}

@media (max-width: 991px){
    .storefront-app .account-order-detail-topbar,
    .storefront-app .account-order-bottom-actions{
        grid-template-columns:1fr;
    }

    .storefront-app .account-history-item{
        grid-template-columns:72px minmax(0,1fr);
    }

    .storefront-app .account-history-item-actions{
        grid-column:1 / -1;
        justify-content:flex-start;
        padding-left:86px;
    }

    .storefront-app .account-order-payment-note a{
        width:max-content;
        min-height:34px;
        padding:0 12px;
        margin-top:8px;
        display:flex;
        align-items:center;
        justify-content:center;
        background:#2563eb;
        color:#fff;
        text-decoration:none;
    }
}

@media (max-width: 767px){
    .storefront-app .account-order-detail-heading h1{
        font-size:24px;
    }

    .storefront-app .account-order-work-item{
        grid-template-columns:1fr;
    }

    .storefront-app .account-order-work-media{
        width:100%;
        height:220px;
    }

    .storefront-app .account-order-work-copy,
    .storefront-app .account-order-work-total,
    .storefront-app .account-order-timeline-modern-top{
        display:grid;
        grid-template-columns:1fr;
        justify-items:start;
        text-align:left;
    }

    .storefront-app .account-orders-panel,
    .storefront-app .account-card,
    .storefront-app .account-nav-card,
    .storefront-app .account-order-panel,
    .storefront-app .account-order-side-card{
        padding:14px !important;
    }

    .storefront-app .account-orders-panel-head,
    .storefront-app .account-order-tabs,
    .storefront-app .account-order-history-list{
        padding-left:0;
        padding-right:0;
    }

    .storefront-app .account-history-order-top{
        grid-template-columns:1fr;
        align-items:start;
        gap:8px;
        padding:12px;
    }

    .storefront-app .account-history-top-meta{
        display:grid;
        gap:4px;
    }

    .storefront-app .account-history-total{
        width:100%;
        justify-content:space-between;
        padding-top:4px;
        font-size:14px;
    }

    .storefront-app .account-order-payment-note{
        padding:12px;
        font-size:14px;
    }

    .storefront-app .account-history-item{
        grid-template-columns:76px minmax(0,1fr);
        gap:12px;
        align-items:start;
        padding:12px;
        min-height:auto;
    }

    .storefront-app .account-history-item-image{
        width:76px;
        min-width:76px;
        height:76px;
    }

    .storefront-app .account-history-item-actions{
        grid-column:1 / -1;
        padding-left:0;
        gap:10px;
        justify-content:stretch;
    }

    .storefront-app .account-order-details-btn,
    .storefront-app .account-review-link{
        width:100%;
        min-height:38px;
        justify-content:center;
        text-align:center;
    }

    .storefront-app .account-cancel-actions{
        display:grid;
        justify-items:start;
    }
}

/* Header action polish */
.storefront-app .store-main-actions{
    gap:12px;
}

.storefront-app .store-main-action{
    position:relative;
    min-width:46px;
    min-height:46px;
    padding:0 14px;
    border-radius:5px;
    justify-content:center;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}

.storefront-app .store-main-action:hover{
    transform:translateY(-1px);
    box-shadow:0 10px 20px rgba(15, 23, 42, 0.08);
}

.storefront-app .store-main-action span{
    display:none;
}

.storefront-app .store-main-action.store-main-action-icon,
.storefront-app .store-main-action.compact,
.storefront-app .store-main-action.cart{
    position:relative;
    width:46px;
    padding:0;
}

.storefront-app .store-main-action i{
    font-size:18px;
}

.storefront-app .store-main-action em{
    position:absolute;
    top:-7px;
    right:-7px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:#ef4444;
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-style:normal;
    font-weight:800;
    line-height:1;
}

.storefront-app .store-main-action em[hidden]{
    display:none;
}

.storefront-app .store-main-action-wishlist{
    border-color:#ffd7e2;
    background:#fff5f8;
    color:#db2777;
}

.storefront-app .store-main-action-account{
    border-color:#d9e5ff;
    background:#f3f7ff;
    color:#2563eb;
}

.storefront-app .store-main-action-user{
    width:auto;
    min-width:138px;
    justify-content:flex-start;
    gap:10px;
    padding:0 12px;
}

.storefront-app .store-main-action-user .store-user-avatar,
.storefront-app .store-main-action-user .store-user-copy{
    display:inline-flex;
}

.storefront-app .store-user-avatar{
    width:30px;
    height:30px;
    flex:0 0 30px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#2563eb;
    color:#fff;
    font-size:13px;
    font-weight:800;
}

.storefront-app .store-user-copy{
    min-width:0;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    line-height:1.1;
}

.storefront-app .store-user-copy small{
    color:#64748b;
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.storefront-app .store-user-copy strong{
    max-width:88px;
    overflow:hidden;
    color:#102a43;
    font-size:13px;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-main-action-logout{
    border-color:#ffe4d1;
    background:#fff7ef;
    color:#f97316;
}

.storefront-app .store-main-action-cart{
    border-color:#ccefd9;
    background:#f1fcf5;
    color:#16a34a;
}

.storefront-app .store-main-action-cart em{
    position:absolute;
    top:-6px;
    right:-6px;
    min-width:20px;
    height:20px;
    padding:0 6px;
    border-radius:999px;
    background:#ef4444;
    color:#fff;
    font-size:11px;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 12px rgba(239, 68, 68, 0.3);
}

.storefront-app .store-main-action-cart i{
    color:inherit;
}

.storefront-app .store-brand.has-logo{
    width:160px;
    min-width:160px;
    min-height:58px;
    display:flex;
    align-items:center;
}

.storefront-app .store-brand.has-logo img{
    width:150px !important;
    height:auto !important;
    max-height:54px;
    object-fit:contain;
    object-position:left center;
    border-radius:0 !important;
    display:block;
    background:transparent;
}

@media (max-width: 991px){
    .storefront-app .store-main-actions{
        gap:8px;
    }

    .storefront-app .store-main-action-user{
        min-width:46px;
        width:46px;
        padding:0;
        justify-content:center;
    }

    .storefront-app .store-main-action-user .store-user-copy{
        display:none;
    }

    .storefront-app .store-brand.has-logo{
        width:138px;
        min-width:138px;
        min-height:48px;
    }

    .storefront-app .store-brand.has-logo img{
        width:128px !important;
        max-height:44px;
    }
}

@media (max-width: 575px){
    .storefront-app .store-brand.has-logo{
        width:98px;
        min-width:98px;
        min-height:40px;
    }

    .storefront-app .store-brand.has-logo img{
        width:90px !important;
        max-height:34px;
    }
}

/* Header active state and product detail refresh */
.storefront-app .store-main-action.is-active{
    box-shadow:inset 0 0 0 1px currentColor, 0 10px 20px rgba(15, 23, 42, 0.08);
}

.storefront-app .store-main-action-account.is-active{
    background:#e8f0ff;
    color:#1d4ed8;
}

.storefront-app .store-main-action-cart.is-active{
    background:#ddf8e6;
    color:#15803d;
}

.storefront-app .product-detail-shell-modern{
    grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr);
    gap:28px;
    padding:28px;
    border-radius:5px;
    box-shadow:none;
}

.storefront-app .product-detail-gallery-modern{
    display:grid;
    grid-template-columns:100px minmax(0, 1fr);
    gap:18px;
    align-items:start;
}

.storefront-app .product-detail-thumb-rail{
    display:grid;
    gap:14px;
    max-height:560px;
    overflow:auto;
    padding-right:4px;
    scrollbar-width:none;
    -ms-overflow-style:none;
}

.storefront-app .product-detail-thumb-rail::-webkit-scrollbar{
    display:none;
}

.storefront-app .product-detail-thumb{
    width:100px;
    height:100px;
    border-radius:5px;
    border:1px solid #e2e8f0;
    background:#fff;
}

.storefront-app .product-detail-thumb.active{
    border-color:#ff7a59;
    box-shadow:inset 0 0 0 1px #ff7a59;
}

.storefront-app .product-detail-stage{
    min-width:0;
}

.storefront-app .product-detail-main-image-modern{
    position:relative;
    border-radius:5px;
    background:#f7f8fb;
    min-height:560px;
    display:grid;
    place-items:center;
    overflow:hidden;
}

.storefront-app .product-detail-main-image-modern img{
    width:100%;
    height:100%;
    max-height:560px;
    object-fit:contain;
    aspect-ratio:auto;
}

.storefront-app .product-detail-info-modern{
    display:grid;
    gap:16px;
    align-content:start;
}

.storefront-app .product-detail-info-modern h1{
    margin:0;
    font-size:40px;
    line-height:1.1;
}

.storefront-app .product-detail-rating-row{
    margin:0;
}

.storefront-app .product-detail-feature-list{
    display:grid;
    gap:8px;
    margin:0;
    padding-left:18px;
    color:#4f637b;
}

.storefront-app .product-detail-feature-list li{
    line-height:1.6;
}

.storefront-app .product-detail-price-block{
    display:grid;
    gap:6px;
}

.storefront-app .product-detail-price-block small{
    color:#6b7f98;
    font-size:12px;
}

.storefront-app .product-detail-actions-modern{
    flex-wrap:wrap;
    align-items:stretch;
}

.storefront-app .product-detail-buy-now{
    min-width:140px;
    min-height:48px;
    padding:0 20px;
    border:1px solid #f97316;
    border-radius:5px;
    background:#f97316;
    color:#fff;
    font-weight:800;
}

.storefront-app .product-detail-cart{
    min-width:160px;
    border-radius:5px;
}

.storefront-app .product-detail-purchase-meta{
    display:grid;
    gap:14px;
    padding-top:4px;
}

.storefront-app .product-detail-info-list{
    display:grid;
    gap:8px;
    margin:0;
    padding:0;
    list-style:none;
}

.storefront-app .product-detail-info-list li{
    display:flex;
    align-items:baseline;
    gap:8px;
    flex-wrap:wrap;
}

.storefront-app .product-detail-info-list span{
    color:#7287a3;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    min-width:96px;
}

.storefront-app .product-detail-info-list strong{
    color:#102a43;
    font-size:15px;
    font-weight:700;
}

.storefront-app .product-detail-tags-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.storefront-app .product-detail-tag-chip{
    min-height:30px;
    padding:0 12px;
    border:1px solid #e6edf5;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    text-decoration:none;
    background:#f8fbff;
    color:#35506f;
    font-size:12px;
    font-weight:800;
}

.storefront-app .product-detail-tag-chip:hover{
    border-color:#bfd7ff;
    background:#eef4ff;
    color:#2563eb;
}

.storefront-app .product-detail-tabs-shell{
    margin-top:28px;
    padding:0;
    border-top:1px solid #eef2f7;
}

.storefront-app .product-detail-tabs-nav{
    display:flex;
    justify-content:center;
    gap:40px;
    padding:22px 0 0;
}

.storefront-app .product-detail-tab-btn{
    min-height:44px;
    padding:0 4px;
    border:0;
    border-bottom:2px solid transparent;
    background:transparent;
    color:#41566f;
    font-size:16px;
    font-weight:700;
}

.storefront-app .product-detail-tab-btn.active{
    color:#102a43;
    border-bottom-color:#ff7a59;
}

.storefront-app .product-detail-tab-panel{
    display:none;
    padding:22px 0 0;
}

.storefront-app .product-detail-tab-panel.active{
    display:block;
}

.storefront-app .product-detail-spec-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    border-top:1px solid #eef2f7;
}

.storefront-app .product-detail-spec-card{
    display:grid;
    grid-template-columns:minmax(170px, 220px) minmax(0, 1fr);
    align-items:center;
    gap:28px;
    padding:20px 0;
    border-bottom:1px solid #eef2f7;
    border-radius:0;
    background:transparent;
}

.storefront-app .product-detail-spec-card span{
    display:block;
    margin:0;
    color:#7287a3;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    flex:0 0 auto;
}

.storefront-app .product-detail-spec-card strong{
    color:#102a43;
    font-size:16px;
    text-align:left;
    justify-self:start;
}

.storefront-app .product-description-content{
    max-width:980px;
    margin:0 auto;
}

.storefront-app .product-review-section{
    margin-top:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
}

.storefront-app .product-related-section{
    margin-top:28px;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

.storefront-app .product-related-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.storefront-app .product-related-head h2{
    margin:0;
}

.storefront-app .product-related-controls{
    display:flex;
    align-items:center;
    gap:8px;
}

.storefront-app .product-related-arrow{
    width:38px;
    height:38px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#35506f;
}

.storefront-app .product-related-slider{
    overflow:hidden;
}

.storefront-app .product-related-track{
    display:flex;
    gap:18px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    padding-bottom:8px;
    scrollbar-width:none;
}

.storefront-app .product-related-track::-webkit-scrollbar{
    display:none;
}

.storefront-app .product-related-slide{
    flex:0 0 calc(25% - 14px);
    min-width:260px;
    scroll-snap-align:start;
}

.storefront-app .product-related-section .product-related-grid{
    display:block;
}

.storefront-app .product-related-section .store-product-col{
    max-width:none;
    width:100%;
}

.storefront-app .product-related-section .store-product-card{
    border-radius:5px;
}

@media (max-width: 1199px){
    .storefront-app .product-detail-shell-modern{
        grid-template-columns:1fr;
    }

    .storefront-app .product-related-slide{
        flex-basis:calc(33.333% - 12px);
    }
}

@media (max-width: 991px){
    .storefront-app .product-detail-gallery-modern{
        grid-template-columns:1fr;
        grid-template-areas:
            "stage"
            "thumbs";
    }

    .storefront-app .product-detail-stage{
        grid-area:stage;
    }

    .storefront-app .product-detail-thumb-rail{
        grid-area:thumbs;
        display:flex;
        gap:12px;
        max-height:none;
        overflow-x:auto;
        overflow-y:hidden;
        padding:6px 2px 4px;
        scroll-snap-type:x proximity;
    }

    .storefront-app .product-detail-thumb{
        flex:0 0 84px;
        width:84px;
        height:84px;
        scroll-snap-align:start;
    }

    .storefront-app .product-detail-main-image-modern{
        min-height:420px;
    }

    .storefront-app .product-related-slide{
        flex-basis:calc(50% - 9px);
        min-width:220px;
    }
}

@media (max-width: 767px){
    .storefront-app .product-detail-shell-modern{
        padding:18px;
        gap:20px;
    }

    .storefront-app .product-detail-info-modern h1{
        font-size:28px;
    }

    .storefront-app .product-detail-main-image-modern{
        min-height:300px;
    }

    .storefront-app .product-detail-actions-modern{
        display:grid;
        grid-template-columns:minmax(0, 150px) minmax(0, 1fr);
        gap:10px;
    }

    .storefront-app .product-detail-cart{
        width:100%;
    }

    .storefront-app .product-detail-buy-now{
        width:100%;
        grid-column:1 / -1;
        order:3;
    }

    .storefront-app .product-qty-control{
        order:1;
    }

    .storefront-app .product-detail-cart{
        order:2;
    }

    .storefront-app .product-detail-info-list li{
        gap:6px;
    }

    .storefront-app .product-detail-info-list span{
        min-width:unset;
    }

    .storefront-app .product-detail-tabs-nav{
        justify-content:flex-start;
        gap:18px;
        overflow:auto;
        padding-top:18px;
    }

    .storefront-app .product-detail-spec-grid{
        gap:0;
    }

    .storefront-app .product-detail-spec-card{
        grid-template-columns:1fr;
        align-items:flex-start;
        gap:6px;
    }

    .storefront-app .product-detail-spec-card strong{
        text-align:left;
    }

    .storefront-app .product-related-head{
        align-items:flex-start;
    }

    .storefront-app .product-related-slide{
        flex-basis:calc(50% - 9px);
        min-width:168px;
    }
}

.store-page-shell{
    padding:48px 0 72px;
}

.store-page-container{
    width:min(1100px, 90vw);
    margin:0 auto;
    display:grid;
    gap:28px;
}

.store-page-hero{
    display:grid;
    gap:10px;
    padding-top:8px;
}

.store-page-kicker{
    margin:0;
    font-size:0.75rem;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:#6f88af;
}

.store-page-hero h1{
    margin:0;
    font-size:clamp(2rem, 4vw, 3.25rem);
    color:#10335b;
}

.store-page-excerpt{
    margin:0;
    max-width:760px;
    font-size:1.02rem;
    line-height:1.75;
    color:#5c769a;
}

.store-page-content{
    padding:28px 32px;
    border:1px solid #dce6f5;
    border-radius:5px;
    background:#fff;
    color:#17385f;
    line-height:1.8;
    box-shadow:0 18px 46px rgba(18, 55, 98, 0.08);
}

.store-page-content > :first-child{
    margin-top:0;
}

.store-page-content > :last-child{
    margin-bottom:0;
}

.store-page-content h2,
.store-page-content h3,
.store-page-content h4{
    color:#10335b;
    margin-top:1.5em;
    margin-bottom:0.5em;
}

.store-page-content p,
.store-page-content ul,
.store-page-content ol,
.store-page-content blockquote{
    margin-bottom:1rem;
}

.store-page-content a{
    color:#2f6fed;
}

.page-rich-editor{
    min-height:360px;
    background:#fff;
}

.ql-toolbar.ql-snow,
.ql-container.ql-snow{
    border-color:#d6e2f2;
}

.ql-toolbar.ql-snow{
    border-radius:5px 5px 0 0;
}

.ql-container.ql-snow{
    border-radius:0 0 5px 5px;
    font-family:inherit;
    min-height:280px;
}

@media (max-width: 767px){
    .store-page-shell{
        padding:28px 0 56px;
    }

    .store-page-content{
        padding:22px 18px;
    }
}

.auth-social-stack{
    display:grid;
    gap:14px;
    margin-bottom:18px;
}

.auth-social-divider{
    position:relative;
    text-align:center;
}

.auth-social-divider::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:1px;
    background:#e4ebf3;
}

.auth-social-divider span{
    position:relative;
    display:inline-block;
    padding:0 12px;
    background:#fff;
    color:#7a8da6;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.auth-social-buttons{
    display:grid;
    gap:10px;
}

.auth-social-btn{
    min-height:46px;
    padding:0 16px;
    border:1px solid #d8e3ef;
    border-radius:14px;
    background:#fff;
    color:#23364d;
    text-decoration:none;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
}

.auth-social-btn i{
    font-size:18px;
}

.auth-social-btn-google:hover{
    border-color:#cddcfb;
    background:#f8fbff;
    color:#1d4ed8;
}

.store-not-found-shell{
    width:min(1380px,calc(100% - 40px));
    margin:0 auto;
    padding:40px 0 56px;
}

.store-not-found-card{
    min-height:360px;
    padding:42px;
    border:1px solid #e6edf5;
    border-radius:28px;
    background:linear-gradient(135deg,#eff6ff 0%,#ffffff 62%);
    display:grid;
    align-content:center;
    gap:16px;
}

.store-not-found-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    background:#dbeafe;
    color:#1d4ed8;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.store-not-found-card h1{
    margin:0;
    color:#102a43;
    font-size:48px;
    line-height:1;
}

.store-not-found-card p{
    max-width:640px;
    margin:0;
    color:#60758f;
    font-size:17px;
    line-height:1.8;
}

.store-not-found-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-top:4px;
}

@media(max-width:991px){
    .store-not-found-card{
        min-height:300px;
        padding:30px;
    }

    .store-not-found-card h1{
        font-size:40px;
    }
}

@media(max-width:575px){
    .store-not-found-shell{
        width:min(100%,calc(100% - 16px));
        padding:20px 0 32px;
    }

    .store-not-found-card{
        min-height:auto;
        padding:22px;
    }

    .store-not-found-card h1{
        font-size:32px;
    }

    .store-not-found-card p{
        font-size:15px;
        line-height:1.7;
    }

    .store-not-found-actions{
        flex-direction:column;
        align-items:stretch;
    }
}

.store-search-input-wrap { position: relative; }
.store-search-suggestions { position: absolute; top: calc(100% + 8px); left: 0; right: 0; z-index: 60; background: #fff; border: 1px solid rgba(17,24,39,.12); box-shadow: 0 18px 45px rgba(17,24,39,.16); border-radius: 8px; padding: 10px; max-height: 430px; overflow: auto; }
.store-search-suggest-section { display: grid; gap: 6px; padding: 6px 0; }
.store-search-suggest-section + .store-search-suggest-section { border-top: 1px solid rgba(17,24,39,.08); }
.store-search-suggest-section > strong { font-size: 11px; text-transform: uppercase; color: #6b7280; letter-spacing: 0; }
.store-search-suggest-section a { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 6px; color: #111827; text-decoration: none; }
.store-search-suggest-section a:hover { background: #f3f4f6; }
.store-search-suggest-product img { width: 42px; height: 42px; object-fit: cover; border-radius: 6px; }
.store-search-suggest-product span { display: grid; min-width: 0; flex: 1; font-weight: 700; }
.store-search-suggest-product small { font-weight: 500; color: #6b7280; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.store-search-suggest-product em { font-style: normal; font-weight: 800; color: #0f766e; }
.product-detail-option-block { display: grid; gap: 8px; margin-bottom: 14px; }
.product-detail-option-block > label { font-weight: 800; color: #111827; }
.product-detail-option-block select, .product-detail-option-block input, .product-detail-option-block textarea { width: 100%; border: 1px solid rgba(17,24,39,.16); border-radius: 8px; padding: 10px 12px; }
.product-variant-picker { gap: 14px; }
.product-variant-group { display: grid; gap: 8px; }
.product-variant-group-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.product-variant-group-head label { margin: 0; font-weight: 800; color: #132a46; }
.product-variant-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.product-variant-choice { min-height: 42px; padding: 0 14px; border: 1px solid #cbd9ea; border-radius: 5px; background: #fff; color: #263d57; font-weight: 800; }
.product-variant-choice.active { border-color: #132a46; background: #132a46; color: #fff; box-shadow: 0 8px 18px rgba(19,42,70,.16); }
.product-variant-choice.is-unavailable, .product-variant-choice:disabled { opacity: .42; cursor: not-allowed; text-decoration: line-through; background: #f4f7fb; }
.product-variant-message { min-height: 18px; color: #d6455d; font-weight: 700; }
.storefront-app .store-product-card.is-out-of-stock .store-product-image { filter: grayscale(.2); opacity: .72; }
.storefront-app .store-product-badge.out { background: #d6455d; color: #fff; }
.storefront-app .store-product-button.out-of-stock { cursor: default; color: #9f1239; background: #fff1f2; border-color: #fecdd3; }
.storefront-app .product-stock-alert { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 12px; font-weight: 800; }
.storefront-app .product-stock-alert.out { background: #fff1f2; color: #be123c; border: 1px solid #fecdd3; }
.storefront-app .cart-stock-warning { display: inline-flex; align-items: center; min-height: 24px; width: fit-content; margin: 0 0 6px; padding: 0 8px; border-radius: 999px; background: #fff1f2; color: #be123c; font-size: 12px; font-weight: 800; }
.product-personalization-row { display: grid; gap: 6px; margin-bottom: 10px; }
.product-personalization-row span { font-size: 13px; font-weight: 700; color: #374151; }
.product-review-image-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.product-review-image-row img { width: 76px; height: 76px; object-fit: cover; border-radius: 8px; border: 1px solid rgba(17,24,39,.12); }
.store-popular-searches { display: none; }
.store-search-state { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0; padding: 12px 14px; border: 1px solid #dbe5f0; border-radius: 8px; background: #f8fbff; }
.store-search-state div { display: grid; gap: 2px; min-width: 0; }
.store-search-state span { color: #64748b; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.store-search-state strong { max-width: 100%; overflow: hidden; color: #102a43; font-size: 15px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.store-search-state a { flex: 0 0 auto; min-height: 34px; padding: 0 12px; border: 1px solid #d8e3ef; border-radius: 6px; display: inline-flex; align-items: center; color: #27415f; text-decoration: none; font-size: 12px; font-weight: 800; background: #fff; }
.store-search-state a:hover { border-color: #3b82f6; color: #1d4ed8; }
.store-auth-modal .modal-dialog { max-width: 520px; }
.store-auth-modal .modal-content { border: 1px solid #dbe5f0; border-radius: 12px; overflow: hidden; box-shadow: 0 28px 70px rgba(15,23,42,.22); }
.store-auth-modal-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 22px; border-bottom: 1px solid #eef2f7; }
.store-auth-modal-head span { display: block; color: #6f84a0; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.store-auth-modal-head h2 { margin: 4px 0 0; color: #102a43; font-size: 24px; font-weight: 800; }
.store-auth-modal-head button { width: 38px; height: 38px; border: 0; border-radius: 8px; background: #f4f7fb; color: #31465f; }
.store-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 18px 22px 0; }
.store-auth-tabs button { min-height: 42px; border: 1px solid #d8e3ef; border-radius: 8px; background: #fff; color: #405872; font-weight: 800; }
.store-auth-tabs button.is-active { background: #102a43; border-color: #102a43; color: #fff; }
.store-auth-panel { display: none; padding: 14px 22px 22px; }
.store-auth-panel.is-active { display: block; }
.store-auth-note { margin: 0 0 14px; color: #60758f; line-height: 1.6; }
.store-auth-socials { padding: 14px 22px 0; display: grid; gap: 10px; }
.auth-google-signin { width: 100%; min-height: 44px; display: flex; justify-content: stretch; }
.auth-google-signin > div, .auth-google-signin iframe { width: 100% !important; max-width: 100% !important; }
.store-auth-divider { display: flex; align-items: center; gap: 12px; padding: 14px 22px 0; color: #7a8da6; font-size: 12px; font-weight: 800; text-align: center; text-transform: uppercase; letter-spacing: .06em; }
.store-auth-divider::before, .store-auth-divider::after { content: ""; flex: 1; height: 1px; background: #e5edf6; }
.store-auth-divider span { flex: 0 0 auto; }
.auth-social-message { padding: 10px 12px; border: 1px solid #fecdd3; border-radius: 8px; background: #fff1f2; color: #be123c; font-size: 13px; font-weight: 700; }
.store-auth-resend { margin-top: 10px; text-align: center; }
.store-auth-resend button { border: 0; background: transparent; color: #2563eb; font-weight: 800; }
@media(max-width: 575px){ .store-auth-modal .modal-dialog { margin: 12px; } .store-auth-modal-head, .store-auth-tabs, .store-auth-panel, .store-auth-socials, .store-auth-divider { padding-left: 16px; padding-right: 16px; } .store-auth-divider { gap: 8px; font-size: 11px; } }

/* Search autocomplete and order personalization visibility */
.storefront-app .store-main-header,
.storefront-app .store-main-header-inner,
.storefront-app .store-search-shell {
    overflow: visible;
}
.storefront-app .store-search-shell {
    position: relative;
    z-index: 1105;
}
.storefront-app .store-search-input-wrap {
    position: relative;
    min-width: 0;
}
.storefront-app .store-search-suggestions {
    z-index: 2000;
}

@media(max-width:575px){
    .storefront-app .store-main-header-inner{
        position:relative;
    }

    .storefront-app .store-search-shell,
    .storefront-app .store-search-input-wrap{
        position:static;
    }

    .storefront-app .store-search-suggestions{
        top:calc(100% + 6px);
        left:0;
        right:0;
        width:auto;
        max-height:min(68vh, 420px);
    }
}

/* Homepage interaction polish */
.storefront-app .store-hero-slider{
    position:relative;
    overflow:hidden;
    background:#fff;
}

.storefront-app .store-hero-track{
    display:flex;
    transition:transform .36s ease;
}

.storefront-app .store-hero-slide{
    flex:0 0 100%;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
}

.storefront-app .store-home-hero-copy{
    align-self:center;
}

.storefront-app .store-home-quick-links{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin-top:14px;
}

.storefront-app .store-home-quick-links a{
    min-height:32px;
    padding:0 10px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    display:inline-flex;
    align-items:center;
    background:#fff;
    color:#27415f;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

.storefront-app .store-home-quick-links a:hover{
    border-color:#3b82f6;
    color:#1d4ed8;
}

.storefront-app .store-hero-arrow,
.storefront-app .store-section-icon-btn{
    width:38px;
    height:38px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#24405c;
    display:inline-grid;
    place-items:center;
}

.storefront-app .store-hero-arrow{
    position:absolute;
    top:50%;
    z-index:5;
    transform:translateY(-50%);
    box-shadow:0 12px 28px rgba(16,42,67,.14);
}

.storefront-app .store-hero-arrow.prev{
    left:14px;
}

.storefront-app .store-hero-arrow.next{
    right:14px;
}

.storefront-app .store-hero-arrow:hover,
.storefront-app .store-section-icon-btn:hover{
    border-color:#3b82f6;
    background:#eef4ff;
    color:#1d4ed8;
}

.storefront-app .store-home-dots{
    position:absolute;
    left:50%;
    bottom:14px;
    z-index:6;
    transform:translateX(-50%);
    margin:0;
    padding:6px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    box-shadow:0 8px 22px rgba(16,42,67,.12);
}

.storefront-app .store-home-dots button,
.storefront-app .store-home-dots span{
    width:9px;
    height:9px;
    border:0;
    border-radius:999px;
    background:#cbd5e1;
    padding:0;
}

.storefront-app .store-home-dots button.active,
.storefront-app .store-home-dots .active{
    width:26px;
    background:#3b82f6;
}

.storefront-app .store-hero-counter{
    position:absolute;
    right:18px;
    bottom:14px;
    z-index:6;
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    gap:2px;
    background:rgba(255,255,255,.9);
    box-shadow:0 8px 22px rgba(16,42,67,.12);
    color:#102a43;
    font-size:12px;
    font-weight:900;
}

.storefront-app .store-hero-progress{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:7;
    height:3px;
    background:rgba(219,234,254,.6);
}

.storefront-app .store-hero-progress span{
    display:block;
    width:0;
    height:100%;
    background:#3b82f6;
}

@keyframes storeHeroProgress{
    from{width:0}
    to{width:100%}
}

.storefront-app .store-home-section-actions,
.storefront-app .store-home-tab-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.storefront-app .store-home-tab-actions button{
    min-height:36px;
    padding:0 12px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#405872;
    font-size:13px;
    font-weight:900;
}

.storefront-app .store-home-tab-actions button.active{
    border-color:#102a43;
    background:#102a43;
    color:#fff;
}

.storefront-app .store-home-tab-panel{
    animation:storeHomeFade .18s ease both;
}

@keyframes storeHomeFade{
    from{opacity:.01; transform:translateY(4px)}
    to{opacity:1; transform:translateY(0)}
}

@media(min-width:576px){
    .storefront-app .store-home-category-slider{
        display:flex;
        gap:18px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        padding-bottom:2px;
    }

    .storefront-app .store-home-category-slider::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-home-category-slider .store-home-category-card{
        flex:0 0 164px;
        scroll-snap-align:start;
    }
}

@media(max-width:575px){
    .storefront-app .store-hero-slide{
        padding:16px;
        gap:14px;
    }

    .storefront-app .store-home-quick-links{
        overflow:auto;
        flex-wrap:nowrap;
        scrollbar-width:none;
    }

    .storefront-app .store-home-quick-links::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-home-quick-links a{
        flex:0 0 auto;
    }

    .storefront-app .store-hero-arrow{
        display:none;
    }

    .storefront-app .store-home-section-actions .store-section-icon-btn{
        display:none;
    }

    .storefront-app .store-hero-counter{
        right:12px;
        bottom:10px;
    }

    .storefront-app .store-home-tab-head{
        align-items:flex-start;
        display:grid;
        gap:10px;
    }

    .storefront-app .store-home-tab-actions{
        width:100%;
        overflow:auto;
        scrollbar-width:none;
    }

    .storefront-app .store-home-tab-actions::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .store-home-tab-actions button,
    .storefront-app .store-home-tab-actions a{
        flex:0 0 auto;
    }
}

.storefront-app .store-section-kicker{
    display:block;
    margin-bottom:4px;
    color:#7186a0;
    font-size:11px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.storefront-app .store-dynamic-offers-grid,
.storefront-app .store-help-card-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.storefront-app .store-help-card-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.storefront-app .store-dynamic-offer,
.storefront-app .store-help-card,
.storefront-app .store-faq-accordion details{
    border:1px solid #dbe5f0;
    border-radius:8px;
    background:#fff;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.storefront-app .store-dynamic-offer{
    min-height:124px;
    padding:16px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
}

.storefront-app .store-dynamic-offer.is-muted{
    opacity:.72;
}

.storefront-app .store-dynamic-offer-icon{
    width:44px;
    height:44px;
    border-radius:8px;
    display:grid;
    place-items:center;
    background:#eef4ff;
    color:#2563eb;
}

.storefront-app .store-dynamic-offer span,
.storefront-app .store-help-card span{
    display:block;
    color:#5f738d;
    font-size:13px;
    line-height:1.5;
}

.storefront-app .store-dynamic-offer strong{
    display:block;
    margin:4px 0;
    color:#102a43;
    font-size:18px;
}

.storefront-app .store-dynamic-offer small{
    color:#6c7f95;
    font-size:12px;
}

.storefront-app .store-dynamic-offer form{
    margin:0;
}

.storefront-app .store-dynamic-offer button{
    min-height:38px;
    padding:0 14px;
    border:1px solid #102a43;
    border-radius:6px;
    background:#102a43;
    color:#fff;
    font-weight:900;
}

.storefront-app .store-dynamic-offer.is-applied button{
    border-color:#dbe5f0;
    background:#fff;
    color:#102a43;
}

.storefront-app .store-dynamic-offer button:disabled{
    cursor:not-allowed;
    opacity:.55;
}

.storefront-app .store-help-card{
    min-height:142px;
    padding:16px;
    display:grid;
    align-content:start;
    gap:8px;
    color:#102a43;
    text-decoration:none;
}

.storefront-app .store-help-card i{
    width:38px;
    height:38px;
    border-radius:8px;
    display:grid;
    place-items:center;
    background:#eef4ff;
    color:#2563eb;
}

.storefront-app .store-help-card strong{
    color:#102a43;
    font-size:16px;
}

.storefront-app .store-faq-accordion{
    display:grid;
    gap:10px;
    margin-bottom:14px;
}

.storefront-app .store-faq-accordion details{
    padding:0;
    overflow:hidden;
}

.storefront-app .store-faq-accordion summary{
    cursor:pointer;
    padding:14px 16px;
    color:#102a43;
    font-weight:900;
}

.storefront-app .store-faq-accordion p{
    margin:0;
    padding:0 16px 16px;
    color:#5f738d;
    line-height:1.7;
}

@media(max-width:991px){
    .storefront-app .store-dynamic-offers-grid,
    .storefront-app .store-help-card-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:575px){
    .storefront-app .store-dynamic-offers-grid,
    .storefront-app .store-help-card-grid{
        grid-template-columns:1fr;
    }

    .storefront-app .store-dynamic-offer{
        grid-template-columns:auto minmax(0,1fr);
    }

    .storefront-app .store-dynamic-offer form{
        grid-column:1/-1;
    }

    .storefront-app .store-dynamic-offer button{
        width:100%;
    }
}
.order-customization-list {
    display: grid;
    gap: 4px;
    margin-top: 6px;
}
.order-customization-list small {
    color: #60758f;
    line-height: 1.45;
}
.order-customization-list a {
    color: #2563eb;
    font-weight: 700;
    text-decoration: none;
}
.product-personalization-row input[type="file"] {
    padding: 10px 12px;
    min-height: 48px;
}
.product-personalization-row small {
    display: block;
    margin-top: 5px;
    color: #60758f;
}
.store-pagination{margin-top:24px;padding:18px 0}.app-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;flex-wrap:wrap}.app-pagination-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;min-width:220px}.app-pagination-summary{display:inline-flex;align-items:center;gap:4px;color:#60758f;font-size:13px;font-weight:800;line-height:1;white-space:nowrap}.app-pagination-summary strong{color:#10233d}.app-pagination-size{margin:0}.app-pagination-size label{align-items:center;display:flex;gap:8px;margin:0;color:#60758f;font-size:12px;font-weight:900;text-transform:uppercase}.app-pagination-size select{height:36px;min-width:70px;border:1px solid #d8e3ef;border-radius:12px;background:#fff;color:#27415f;font-size:13px;font-weight:900;padding:0 26px 0 10px}.app-pagination-links{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.app-pagination-page-form{display:inline-flex;margin:0}.app-pagination-link,.app-pagination-ellipsis{min-width:40px;height:40px;border:1px solid #d8e3ef;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:#fff;color:#27415f;cursor:pointer;font-size:13px;font-weight:900;font-family:inherit;text-decoration:none}.app-pagination-link:hover{background:#eef4ff;color:#3b82f6}.app-pagination-link.active{border-color:#3b82f6;background:#3b82f6;color:#fff}.app-pagination-link.disabled,.app-pagination-ellipsis{color:#9aadc7;pointer-events:none}@media(max-width:768px){.app-pagination{align-items:stretch;flex-direction:column}.app-pagination-meta,.app-pagination-links{width:100%}.app-pagination-links{justify-content:flex-start;overflow-x:auto;padding-bottom:2px}}

/* Mobile auth modal hardening */
.store-auth-modal .modal-dialog{
    width:min(520px, calc(100vw - 24px));
}

.store-auth-modal .auth-form-stack{
    gap:12px;
}

.store-auth-modal .auth-field input,
.store-auth-modal .auth-submit{
    min-height:46px;
}

.storefront-app .store-product-price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:6px;
    width:100%;
    flex-wrap:nowrap;
    min-width:0;
}

.storefront-app .store-product-price-main{
    display:flex;
    align-items:baseline;
    gap:4px;
    min-width:max-content;
    flex:0 0 auto;
    flex-wrap:nowrap;
    overflow:visible;
}

.storefront-app .store-product-price-main strong{
    flex:0 0 auto;
    font-size:18px;
    line-height:1;
    white-space:nowrap;
}

.storefront-app .store-product-price-main span{
    flex:0 0 auto;
    min-width:max-content;
    overflow:visible;
    text-overflow:clip;
    white-space:nowrap;
    font-size:10px;
}

.storefront-app .store-product-price-main em{
    flex:0 0 auto;
    white-space:nowrap;
    font-size:10px;
}

.store-product-coupon{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex:1 1 auto;
    min-width:0;
    margin-left:auto;
    color:#405870;
    font-size:10.5px;
    font-weight:700;
    line-height:1.2;
}

.store-product-coupon span{
    display:inline-flex;
    align-items:center;
    max-width:100%;
    min-height:22px;
    padding:0 5px;
    border-radius:4px;
    background:#c8f5b8;
    color:#14532d;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.product-detail-coupon-offer{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    width:fit-content;
    max-width:100%;
    margin:14px 0 4px;
    padding:8px 10px;
    border:1px solid #b8e9a8;
    border-radius:6px;
    background:#f1fde9;
    color:#24405c;
}

.product-detail-coupon-offer > div{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
}

.product-detail-coupon-offer span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 8px;
    border-radius:5px;
    background:#c8f5b8;
    color:#14532d;
    font-weight:900;
    white-space:nowrap;
}

.product-detail-coupon-offer strong{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 8px;
    border:1px dashed #79be65;
    border-radius:5px;
    background:#fff;
    color:#14532d;
    font-size:12px;
    letter-spacing:.08em;
}

.product-detail-coupon-offer small{
    color:#60758f;
    font-size:11px;
    font-weight:700;
    text-align:left;
    white-space:nowrap;
}

.storefront-app .product-detail-info-modern .product-detail-coupon-offer,
.storefront-app .product-detail-info-modern .product-detail-option-block,
.storefront-app .product-detail-info-modern .product-detail-actions-modern{
    max-width:620px;
}

@media(max-width:575px){
    .store-auth-modal{
        --bs-modal-margin:8px;
    }

    .store-auth-modal .modal-dialog{
        width:calc(100vw - 16px);
        max-width:calc(100vw - 16px);
        margin:8px auto;
        min-height:calc(100dvh - 16px);
        display:flex;
        align-items:center;
    }

    .store-auth-modal .modal-content{
        max-height:calc(100dvh - 16px);
        overflow-y:auto;
        border-radius:10px;
    }

    .store-auth-modal-head{
        gap:10px;
        padding:16px;
    }

    .store-auth-modal-head h2{
        font-size:22px;
        line-height:1.15;
    }

    .store-auth-modal-head button{
        width:36px;
        height:36px;
        flex:0 0 auto;
    }

    .store-auth-tabs{
        padding:14px 16px 0;
    }

    .store-auth-tabs button{
        min-height:40px;
        font-size:14px;
    }

    .store-auth-panel{
        padding:12px 16px 16px;
    }

    .store-auth-socials{
        padding:12px 16px 0;
    }

    .auth-google-signin{
        min-width:0;
        overflow:hidden;
    }

    .store-auth-divider{
        padding:12px 16px 0;
        white-space:normal;
    }

    .store-auth-modal .auth-form-stack{
        gap:10px;
    }

    .store-auth-modal .auth-field label{
        margin-bottom:5px;
        font-size:12px;
    }

    .store-auth-modal .auth-field input{
        min-height:44px;
        font-size:16px;
    }

    .store-auth-modal .auth-submit{
        min-height:46px;
    }

    .product-detail-coupon-offer{
        align-items:flex-start;
        flex-direction:column;
    }

    .product-detail-coupon-offer small{
        text-align:left;
    }

    .storefront-app .store-product-content{
        gap:7px;
        padding:10px;
    }

    .storefront-app .store-product-meta-row{
        align-items:flex-start;
        gap:4px;
    }

    .storefront-app .store-product-price-row{
        display:grid;
        grid-template-columns:minmax(0,1fr);
        align-items:start;
        gap:4px;
        width:100%;
    }

    .storefront-app .store-product-price-main{
        width:100%;
        gap:3px;
    }

    .storefront-app .store-product-price-main strong{
        font-size:16px;
        line-height:1.05;
    }

    .storefront-app .store-product-price-main span{
        max-width:44px;
        font-size:9px;
    }

    .storefront-app .store-product-price-main em{
        font-size:9px;
    }

    .storefront-app .store-product-coupon{
        width:100%;
        justify-content:flex-start;
        margin-left:0;
        font-size:9.5px;
        line-height:1.1;
    }

    .storefront-app .store-product-coupon span{
        max-width:100%;
        min-height:20px;
        padding:0 5px;
        overflow:hidden;
        text-overflow:ellipsis;
    }
}

/* Final storefront overrides after legacy mobile rules */
.storefront-app .product-detail-shell{
    border:0;
    box-shadow:none;
}

.storefront-app .store-product-meta-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    width:100%;
    min-width:0;
}

.storefront-app .store-product-brand{
    flex:0 0 auto;
    max-width:46%;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-product-coupon{
    flex:1 1 auto;
    width:auto;
    max-width:60%;
    min-width:0;
    margin-left:auto;
    justify-content:flex-end;
}

.storefront-app .store-product-price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    width:100%;
    min-width:0;
    flex-wrap:nowrap;
}

.storefront-app .store-product-price-main{
    flex:1 1 auto;
    width:auto;
    min-width:0;
}

.storefront-app .store-product-price-main span{
    min-width:0;
}

.storefront-app .store-product-rating{
    flex:0 0 auto;
    justify-content:flex-end;
    min-width:max-content;
}

@media (max-width:575px){
    .storefront-app .store-product-content{
        gap:7px;
        padding:10px;
    }

    .storefront-app .store-product-meta-row{
        align-items:center;
        gap:5px;
    }

    .storefront-app .store-product-brand{
        flex:0 0 auto;
        max-width:52%;
        min-width:32px;
        font-size:11px;
        line-height:1.2;
    }

    .storefront-app .store-product-coupon{
        flex:1 1 auto;
        width:auto;
        max-width:54%;
        margin-left:auto;
        justify-content:flex-end;
        font-size:8.5px;
        line-height:1;
    }

    .storefront-app .store-product-coupon span{
        max-width:100%;
        min-height:18px;
        padding:0 4px;
        border-radius:4px;
    }

    .storefront-app .store-product-price-row{
        display:flex;
        align-items:center;
        gap:5px;
        flex-wrap:nowrap;
    }

    .storefront-app .store-product-price-main{
        width:auto;
        gap:3px;
    }

    .storefront-app .store-product-price-main strong{
        font-size:15px;
        line-height:1.05;
    }

    .storefront-app .store-product-price-main span{
        max-width:40px;
        overflow:hidden;
        text-overflow:ellipsis;
        font-size:8.5px;
    }

    .storefront-app .store-product-price-main em{
        font-size:8.5px;
    }

    .storefront-app .store-product-rating{
        gap:2px;
        min-width:auto;
    }

    .storefront-app .store-product-rating .store-stars{
        gap:0;
        font-size:9px;
    }

    .storefront-app .store-product-rating span{
        font-size:9px;
    }
}

/* Mobile product cards: prevent price/review collisions in two-column grids */
@media (max-width:575px){
    .storefront-app .store-product-price-row{
        display:grid;
        grid-template-columns:minmax(0,1fr) 44px;
        align-items:start;
        column-gap:5px;
        row-gap:2px;
    }

    .storefront-app .store-product-price-main{
        display:grid;
        grid-template-columns:auto minmax(0,1fr);
        align-items:baseline;
        column-gap:3px;
        row-gap:1px;
        min-width:0;
        width:100%;
    }

    .storefront-app .store-product-price-main strong{
        grid-column:1 / -1;
        font-size:15px;
        line-height:1.1;
    }

    .storefront-app .store-product-price-main span{
        grid-column:1;
        max-width:48px;
        overflow:hidden;
        text-overflow:ellipsis;
        font-size:8px;
        line-height:1.1;
    }

    .storefront-app .store-product-price-main em{
        grid-column:2;
        min-width:0;
        overflow:hidden;
        text-overflow:ellipsis;
        font-size:8px;
        line-height:1.1;
        white-space:nowrap;
    }

    .storefront-app .store-product-rating{
        display:grid;
        justify-items:end;
        align-content:start;
        gap:1px;
        width:44px;
        min-width:44px;
        padding-top:1px;
        overflow:hidden;
    }

    .storefront-app .store-product-rating .store-stars{
        display:flex;
        justify-content:flex-end;
        gap:0;
        width:44px;
        overflow:hidden;
        font-size:7.5px;
        line-height:1;
    }

    .storefront-app .store-product-rating span{
        width:44px;
        overflow:hidden;
        text-align:right;
        text-overflow:ellipsis;
        white-space:nowrap;
        font-size:8px;
        line-height:1;
    }
}

/* Final storefront product, category, coupon, and OTP refinements */
.storefront-app .store-home-category-card{
    border:0;
    box-shadow:none;
    background:#fff;
}

.storefront-app .store-home-category-thumb{
    width:116px;
    height:82px;
    border-radius:8px;
    background:transparent;
    overflow:hidden;
}

.storefront-app .store-home-category-thumb img{
    border-radius:8px;
    object-fit:cover;
}

.storefront-app .store-product-card{
    border-radius:8px;
}

.storefront-app .store-product-content{
    display:grid;
    grid-template-rows:minmax(42px,auto) 22px 32px auto;
    gap:7px;
}

.storefront-app .store-product-title{
    min-height:42px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.storefront-app .store-product-meta-row{
    min-height:22px;
    align-items:center;
}

.storefront-app .store-product-price-row{
    min-height:32px;
    align-items:center;
}

.storefront-app .store-product-form,
.storefront-app .store-product-button{
    align-self:end;
}

.storefront-app .store-product-price-main span{
    text-decoration:line-through;
}

.storefront-app .store-product-rating span,
.storefront-app .store-product-rating span *,
.storefront-app .store-product-coupon,
.storefront-app .store-product-coupon *{
    text-decoration:none;
}

.storefront-app .store-product-coupon span{
    white-space:nowrap;
}

.auth-otp-shell{
    display:grid;
    gap:7px;
}

.auth-otp-grid{
    display:grid;
    grid-template-columns:repeat(var(--otp-length, 6), minmax(0, 1fr));
    gap:8px;
    width:100%;
}

.store-auth-modal .auth-field .auth-otp-box{
    width:100%;
    min-width:0;
    height:52px;
    min-height:52px;
    padding:0;
    border:1px solid #cfe0f2;
    border-radius:8px;
    background:#fff;
    color:#102a43;
    text-align:center;
    font-size:20px;
    font-weight:900;
    line-height:1;
}

.store-auth-modal .auth-field .auth-otp-box:focus{
    border-color:#3b82f6;
    box-shadow:0 0 0 3px rgba(59,130,246,.14);
    outline:0;
}

.store-auth-modal .auth-field .auth-otp-box.is-invalid{
    border-color:#ef4444;
    box-shadow:0 0 0 3px rgba(239,68,68,.12);
}

.auth-otp-error{
    color:#dc2626;
    font-weight:700;
}

.product-detail-coupon-notice{
    margin-top:8px;
    padding:9px 12px;
    border-radius:8px;
    font-size:12px;
    font-weight:800;
}

.product-detail-coupon-notice.is-success{
    background:#ecfdf3;
    color:#087a36;
}

.product-detail-coupon-notice.is-danger{
    background:#fff1f2;
    color:#be123c;
}

.store-category-menu-bar{
    position:relative;
    z-index:998;
    border-bottom:1px solid #e6edf5;
    background:#fff;
}

.store-category-menu-inner{
    width:min(1380px,calc(100% - 40px));
    min-height:50px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    overflow:visible;
}

.store-category-menu-item{
    position:relative;
}

.store-category-menu-link{
    min-height:50px;
    padding:0 14px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#263d57;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}

.store-category-menu-link:hover,
.store-category-menu-item:focus-within > .store-category-menu-link,
.store-category-menu-item:hover > .store-category-menu-link{
    color:#1d4ed8;
    background:#f6f9fd;
}

.store-category-menu-all{
    color:#102a43;
}

.store-category-menu-panel{
    position:absolute;
    top:calc(100% + 1px);
    left:50%;
    width:min(520px,calc(100vw - 32px));
    padding:14px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    border:1px solid #e1e9f2;
    border-radius:8px;
    background:#fff;
    box-shadow:0 20px 50px rgba(15,23,42,.16);
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,8px);
    pointer-events:none;
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.store-category-menu-item:hover .store-category-menu-panel,
.store-category-menu-item:focus-within .store-category-menu-panel{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
    pointer-events:auto;
}

.store-category-menu-panel a{
    min-height:54px;
    padding:8px;
    display:flex;
    align-items:center;
    gap:10px;
    border-radius:7px;
    color:#2d435e;
    text-decoration:none;
    font-weight:800;
}

.store-category-menu-panel a:hover{
    background:#f4f8fd;
    color:#1d4ed8;
}

.store-category-menu-thumb{
    width:38px;
    height:38px;
    border-radius:999px;
    display:grid;
    place-items:center;
    overflow:hidden;
    background:#f1f5f9;
    color:#64748b;
    flex:0 0 auto;
}

.store-category-menu-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.storefront-app .store-coupon-slider{
    position:relative;
    min-width:0;
    max-width:100%;
    overflow:hidden;
}

.storefront-app .store-coupon-track,
.storefront-app .product-detail-coupon-track{
    display:flex;
    gap:14px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    padding:2px 2px 6px;
}

.storefront-app .store-coupon-track::-webkit-scrollbar,
.storefront-app .product-detail-coupon-track::-webkit-scrollbar{
    display:none;
}

.storefront-app .store-coupon-card{
    flex:0 0 clamp(300px, 31vw, 430px);
    scroll-snap-align:start;
    min-width:0;
    box-sizing:border-box;
}

.storefront-app .store-dynamic-offers-section .store-section-head{
    align-items:flex-end;
}

.storefront-app .store-coupon-slider-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
}

.storefront-app .store-coupon-slider-actions a{
    white-space:nowrap;
}

.storefront-app .store-coupon-slider-btn,
.storefront-app .product-detail-coupon-controls button{
    width:38px;
    height:38px;
    border:1px solid #d8e3ef;
    border-radius:5px;
    background:#fff;
    color:#35506f;
    display:inline-grid;
    place-items:center;
}

.storefront-app .store-coupon-slider-btn:disabled,
.storefront-app .product-detail-coupon-controls button:disabled{
    opacity:.45;
    cursor:not-allowed;
}

.storefront-app .store-dynamic-offers-grid{
    display:flex;
    grid-template-columns:none;
}

.storefront-app .store-dynamic-offers-slider .store-dynamic-offers-grid{
    display:flex;
    gap:14px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    padding:2px 2px 6px;
}

.storefront-app .store-dynamic-offers-slider .store-dynamic-offers-grid::-webkit-scrollbar{
    display:none;
}

.storefront-app .store-dynamic-offer.store-coupon-card,
.storefront-app .product-detail-coupon-offer.store-coupon-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    width:auto;
    margin:0;
    padding:14px;
    border:1px solid #cfe8c8;
    border-radius:6px;
    background:#f6fff3;
    color:#24405c;
    box-shadow:0 8px 20px rgba(21, 115, 71, .06);
}

.storefront-app .product-detail-coupon-offer.store-coupon-card{
    grid-template-columns:minmax(0,1fr);
    align-items:stretch;
    flex:0 0 min(320px,100%);
    max-width:100%;
}

.storefront-app .store-dynamic-offer.store-coupon-card.is-applied,
.storefront-app .product-detail-coupon-offer.store-coupon-card.is-applied{
    border-color:#97d7a8;
    background:#effdf4;
}

.storefront-app .store-dynamic-offer.store-coupon-card.is-muted{
    border-color:#e2e8f0;
    background:#f8fafc;
    opacity:.82;
}

.storefront-app .store-coupon-card > div:not(.store-dynamic-offer-icon){
    display:grid;
    gap:5px;
    min-width:0;
}

.storefront-app .store-dynamic-offer-icon{
    width:38px;
    height:38px;
    border-radius:6px;
    display:grid;
    place-items:center;
    background:#e8f7df;
    color:#157347;
}

.storefront-app .store-coupon-card span,
.storefront-app .product-detail-coupon-offer.store-coupon-card span{
    display:block;
    min-height:0;
    padding:0;
    border-radius:0;
    background:transparent;
    color:#33506d;
    font-size:12px;
    font-weight:800;
    line-height:1.25;
    white-space:normal;
}

.storefront-app .store-coupon-card strong,
.storefront-app .product-detail-coupon-offer.store-coupon-card strong{
    display:inline-flex;
    align-items:center;
    width:fit-content;
    min-height:24px;
    padding:0 8px;
    border:1px dashed #79be65;
    border-radius:5px;
    background:#fff;
    color:#14532d;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
}

.storefront-app .store-coupon-card small,
.storefront-app .product-detail-coupon-offer.store-coupon-card small{
    display:block;
    color:#60758f;
    font-size:11px;
    font-weight:700;
    line-height:1.35;
    white-space:normal;
}

.storefront-app .store-coupon-status-text{
    color:#157347 !important;
}

.storefront-app .store-coupon-card form,
.storefront-app .product-detail-coupon-offer.store-coupon-card form{
    margin:0;
}

.storefront-app .store-coupon-card button[type="submit"],
.storefront-app .product-detail-coupon-offer.store-coupon-card button[type="submit"]{
    min-width:76px;
    min-height:38px;
    padding:0 14px;
    border:1px solid #157347;
    border-radius:5px;
    background:#157347;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.storefront-app .store-coupon-card.is-applied button[type="submit"],
.storefront-app .product-detail-coupon-offer.store-coupon-card.is-applied button[type="submit"]{
    border-color:#c7dfd0;
    background:#fff;
    color:#157347;
}

.storefront-app .store-coupon-card button[type="submit"]:disabled{
    border-color:#cbd5e1;
    background:#e2e8f0;
    color:#64748b;
}

.storefront-app .product-detail-coupon-offers.product-detail-coupon-slider{
    display:grid;
    gap:10px;
    width:100%;
    max-width:620px;
    margin:14px 0 10px;
    overflow:hidden;
}

.storefront-app .product-detail-coupon-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
}

.storefront-app .product-detail-coupon-head > div:first-child{
    display:grid;
    gap:2px;
    min-width:0;
}

.storefront-app .product-detail-coupon-controls{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    justify-self:end;
}

.storefront-app .product-detail-coupon-track .store-coupon-card{
    flex-basis:min(320px,100%);
}

.storefront-app .product-detail-coupon-track .store-coupon-card button[type="submit"]{
    width:100%;
}

@media(max-width:991px){
    .store-category-menu-bar{
        display:none;
    }
}

@media(max-width:575px){
    .storefront-app .store-dynamic-offers-section .store-section-head{
        align-items:flex-start;
    }

    .storefront-app .store-coupon-track,
    .storefront-app .product-detail-coupon-track{
        gap:10px;
        padding:2px 0 6px;
        max-width:100%;
    }

    .storefront-app .store-coupon-slider-actions{
        width:100%;
        justify-content:space-between;
    }

    .storefront-app .product-detail-coupon-head{
        grid-template-columns:minmax(0,1fr) auto;
        gap:8px;
    }

    .storefront-app .product-detail-coupon-controls{
        gap:6px;
    }

    .storefront-app .product-detail-coupon-controls button{
        width:34px;
        height:34px;
    }

    .storefront-app .store-dynamic-offer.store-coupon-card,
    .storefront-app .product-detail-coupon-offer.store-coupon-card{
        grid-template-columns:minmax(0,1fr);
        align-items:start;
        padding:12px;
        max-width:100%;
    }

    .storefront-app .store-coupon-card,
    .storefront-app .product-detail-coupon-track .store-coupon-card{
        flex:0 0 100%;
        max-width:100%;
    }

    .storefront-app .store-dynamic-offer-icon{
        display:none;
    }

    .storefront-app .store-coupon-card button[type="submit"],
    .storefront-app .product-detail-coupon-offer.store-coupon-card button[type="submit"]{
        width:100%;
    }
}

@media (max-width:575px){
    .storefront-app .store-home-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .storefront-app .store-home-category-card{
        width:auto;
        min-height:118px;
        padding:10px;
        gap:8px;
    }

    .storefront-app .store-home-category-thumb{
        width:100%;
        height:70px;
    }

    .storefront-app .store-home-category-card strong{
        text-align:left;
        font-size:12px;
    }

    .storefront-app .store-product-content{
        grid-template-rows:minmax(40px,auto) 19px 34px auto;
        gap:4px;
        padding:9px;
    }

    .storefront-app .store-product-title{
        min-height:40px;
        font-size:12px;
        line-height:1.25;
    }

    .storefront-app .store-product-meta-row{
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(80px,auto);
        gap:5px;
        min-height:19px;
    }

    .storefront-app .store-product-brand{
        max-width:100%;
    }

    .storefront-app .store-product-coupon{
        max-width:100%;
        justify-content:flex-end;
    }

    .storefront-app .store-product-coupon span{
        font-size:7.5px;
        line-height:1;
        min-height:16px;
        padding:0 3px;
    }

    .storefront-app .store-product-price-row{
        min-height:34px;
        grid-template-columns:minmax(0,1fr) 62px;
        align-items:start;
    }

    .storefront-app .store-product-rating,
    .storefront-app .store-product-rating .store-stars,
    .storefront-app .store-product-rating span{
        width:62px;
        min-width:62px;
    }

    .storefront-app .store-product-rating .store-stars{
        font-size:8.5px;
    }

    .storefront-app .store-product-rating span{
        font-size:8.5px;
    }

    .storefront-app .store-product-button{
        min-height:36px;
        border-radius:6px;
        font-size:11px;
    }

    .auth-otp-grid{
        gap:6px;
    }

    .store-auth-modal .auth-field .auth-otp-box{
        height:46px;
        min-height:46px;
        border-radius:7px;
        font-size:18px;
    }
}

/* Modal stacking must always cover fixed storefront chrome. */
.storefront-app .modal-backdrop{
    z-index:4000 !important;
}

.storefront-app .modal{
    z-index:4010 !important;
}

.storefront-app.modal-open .store-main-header,
.storefront-app.modal-open .mobile-bottom-nav,
.storefront-app.modal-open .store-mobile-filter-button,
.storefront-app.modal-open .wishlist-inline-notice,
.storefront-app.modal-open .support-chat-widget,
.storefront-app.modal-open .cart-sidebar,
.storefront-app.modal-open .cart-overlay,
.storefront-app.modal-open .store-category-drawer,
.storefront-app.modal-open .store-overlay{
    z-index:1000 !important;
}


/* Mobile product cards: keep coupon, price and reviews readable. */
@media (max-width:575px){
    .storefront-app .store-product-card{
        border-radius:7px;
    }

    .storefront-app .store-product-content{
        display:grid;
        grid-template-rows:minmax(30px, auto) 18px 34px auto;
        gap:2px;
        padding:8px;
    }

    .storefront-app .store-product-title{
        margin:0;
        font-size:12px;
        line-height:1.22;
    }

    .storefront-app .store-product-meta-row{
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:center;
        gap:6px;
        min-height:18px;
    }

    .storefront-app .store-product-brand{
        max-width:100%;
        min-width:0;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        font-size:10px;
        line-height:1.1;
    }

    .storefront-app .store-product-coupon{
        max-width:88px;
        justify-content:flex-end;
    }

    .storefront-app .store-product-coupon span{
        min-height:17px;
        padding:0 5px;
        border-radius:4px;
        font-size:8px;
        line-height:17px;
        white-space:nowrap;
    }

    .storefront-app .store-product-price-row{
        display:grid;
        grid-template-columns:minmax(0, 1fr) 72px;
        align-items:center;
        gap:5px;
        min-height:34px;
    }

    .storefront-app .store-product-price-main{
        display:flex;
        align-items:baseline;
        gap:3px;
        min-width:0;
        flex-wrap:wrap;
        row-gap:0;
    }

    .storefront-app .store-product-price-row strong{
        font-size:14px;
        line-height:1.1;
        white-space:nowrap;
    }

    .storefront-app .store-product-price-row span{
        font-size:7px;
        line-height:1;
        white-space:nowrap;
    }

    .storefront-app .store-product-price-row em{
        font-size:8px;
        line-height:1;
        white-space:nowrap;
    }

    .storefront-app .store-product-rating{
        width:72px;
        min-width:72px;
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:2px;
        overflow:visible;
    }

    .storefront-app .store-product-rating .store-stars{
        width:auto;
        min-width:0;
        flex:0 0 auto;
        gap:1px;
        font-size:9.5px;
        line-height:1;
    }

    .storefront-app .store-product-rating span{
        width:auto;
        min-width:0;
        flex:0 0 auto;
        font-size:8.5px;
        line-height:1;
        text-decoration:none;
        white-space:nowrap;
    }
}

.storefront-app .store-logout-form,
.storefront-app .account-mobile-logout-form{
    margin:0;
}

.storefront-app .store-logout-form{
    display:flex;
}

.storefront-app .account-mobile-logout-form .account-mobile-nav-link{
    width:100%;
    border:0;
    background:transparent;
    text-align:left;
}

/* Homepage testimonial live slider */
.storefront-app .testimonials-section{
    max-width:none;
    margin:28px 0 0;
}

.storefront-app .testimonials-section .store-section-head{
    justify-content:space-between;
    text-align:left;
}

.storefront-app .store-testimonial-slider{
    overflow:hidden;
    margin-inline:-2px;
    padding:2px;
}

.storefront-app .store-testimonial-track{
    display:flex;
    grid-template-columns:none;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    overscroll-behavior-x:contain;
    scroll-behavior:smooth;
}

.storefront-app .store-testimonial-track::-webkit-scrollbar{
    display:none;
}

.storefront-app .store-testimonial-card{
    flex:0 0 calc((100% - 28px) / 3);
    min-height:210px;
    padding:20px;
    scroll-snap-align:start;
    border-radius:8px;
}

.storefront-app .store-testimonial-stars{
    display:flex;
    gap:3px;
    margin:10px 0 8px;
    color:#f59e0b;
    font-size:12px;
}

.storefront-app .store-testimonial-card p{
    margin:0;
    color:#566d87;
    line-height:1.7;
}

.storefront-app .store-testimonial-author{
    margin-top:auto;
    padding-top:16px;
    display:grid;
    gap:3px;
}

.storefront-app .store-testimonial-author strong{
    margin:0;
    color:#102a43;
}

.storefront-app .store-testimonial-author span{
    color:#6b7f98;
    font-size:12px;
    font-weight:800;
}

.storefront-app .store-testimonial-dots{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:14px;
}

@media(max-width:991px){
    .storefront-app .store-testimonial-card{
        flex-basis:calc((100% - 14px) / 2);
    }
}

@media(max-width:575px){
    .storefront-app .store-testimonial-card{
        flex-basis:100%;
        min-height:174px;
        padding:16px;
    }

    .storefront-app .testimonials-section .store-section-head{
        display:flex;
        align-items:center;
    }

    .storefront-app .testimonials-section .store-home-section-actions{
        display:flex;
    }
}

@media(max-width:575px){
    .storefront-app .main-content.product-detail-page{
        padding-bottom:104px;
    }

    .storefront-app.is-product-detail-route{
        padding-bottom:76px;
    }

    .storefront-app.is-product-detail-route .mobile-bottom-nav{
        display:grid !important;
        transition:transform .18s ease, opacity .18s ease;
        will-change:transform;
    }

    .storefront-app.is-product-detail-route.product-purchase-row-active .mobile-bottom-nav{
        opacity:0;
        pointer-events:none;
        transform:translateY(110%);
    }

    .storefront-app.is-product-detail-route .product-detail-actions-modern{
        position:fixed !important;
        left:0 !important;
        right:0 !important;
        bottom:76px !important;
        z-index:1210;
        display:grid !important;
        grid-template-columns:92px minmax(0,1fr) minmax(0,1fr) !important;
        align-items:stretch;
        gap:8px;
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:10px 10px max(10px,env(safe-area-inset-bottom));
        border:1px solid #dfe8f3;
        border-right:0;
        border-bottom:0;
        border-left:0;
        border-radius:0;
        background:#fff;
        box-shadow:0 -10px 24px rgba(15,23,42,.12);
        opacity:0;
        pointer-events:none;
        transform:translateY(110%);
        transition:transform .18s ease, opacity .18s ease;
        will-change:transform;
    }

    .storefront-app.is-product-detail-route.product-purchase-row-active .product-detail-actions-modern{
        bottom:0 !important;
        opacity:1;
        pointer-events:auto;
        transform:translateY(0);
    }

    .storefront-app .product-detail-actions-modern .product-qty-control{
        order:1;
        width:92px;
        min-width:92px;
        height:48px;
        border-radius:5px !important;
        background:#f8fbff;
    }

    .storefront-app .product-detail-actions-modern .product-qty-control button{
        width:29px;
        height:46px;
        font-size:16px;
        font-weight:800;
    }

    .storefront-app .product-detail-actions-modern .product-qty-control input{
        width:34px;
        height:46px;
        font-size:15px;
        font-weight:800;
    }

    .storefront-app .product-detail-actions-modern .product-detail-cart,
    .storefront-app .product-detail-actions-modern .product-detail-buy-now{
        width:100% !important;
        min-width:0;
        min-height:48px;
        padding:0 10px;
        border-radius:5px !important;
        font-size:12px;
        line-height:1.1;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .storefront-app .product-detail-actions-modern .product-detail-cart{
        order:2;
        gap:6px;
        background:#2f6df6;
        border-color:#2f6df6;
    }

    .storefront-app .product-detail-actions-modern .product-detail-buy-now{
        order:3;
        grid-column:auto !important;
        background:#f97316;
        border-color:#f97316;
        color:#fff;
    }

    .storefront-app .product-detail-actions-modern .product-detail-cart i{
        font-size:13px;
    }

    .storefront-app.is-product-detail-route .store-reference-footer{
        padding-bottom:calc(86px + env(safe-area-inset-bottom));
    }
}

/* Storefront polish: reference-style service strip and smart desktop category row. */
.storefront-app .store-home-benefits{
    width:min(1180px, 100%);
    margin:36px auto 28px !important;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:34px;
    align-items:center;
}

.storefront-app .store-home-benefits article{
    min-height:88px;
    padding:0 !important;
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    align-items:center;
    gap:18px;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.storefront-app .store-home-benefits i{
    width:72px !important;
    height:72px !important;
    border-radius:50% !important;
    display:grid;
    place-items:center;
    flex:0 0 72px;
    background:#f5f5f5 !important;
    color:#f4512c !important;
    font-size:25px;
}

.storefront-app .store-home-benefits article > div{
    display:grid;
    gap:6px;
    min-width:0;
}

.storefront-app .store-home-benefits strong{
    color:#0f2137;
    font-size:17px;
    font-weight:900;
    line-height:1.25;
}

.storefront-app .store-home-benefits span{
    max-width:260px;
    color:#5f7189;
    font-size:13px;
    font-weight:600;
    line-height:1.55;
}

.store-category-menu-bar{
    position:sticky !important;
    top:var(--store-header-height, 82px);
    z-index:999;
    border:0 !important;
    background:rgba(255,255,255,.96);
    box-shadow:0 10px 28px rgba(15,23,42,.055);
    backdrop-filter:saturate(140%) blur(14px);
    transition:transform .22s ease, opacity .22s ease, box-shadow .22s ease;
}

.storefront-app.store-category-menu-hidden .store-category-menu-bar,
body.store-category-menu-hidden .store-category-menu-bar{
    transform:translateY(calc(-100% - 8px));
    opacity:0;
    pointer-events:none;
    box-shadow:none;
}

.store-category-menu-inner{
    min-height:48px !important;
    gap:22px !important;
    justify-content:center;
    overflow:visible;
}

.store-category-menu-link{
    position:relative;
    min-height:48px !important;
    padding:0 !important;
    gap:7px;
    color:#102a43;
    background:transparent !important;
    font-size:13px;
    font-weight:900;
    letter-spacing:.01em;
}

.store-category-menu-link:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:8px;
    height:2px;
    border-radius:999px;
    background:#f4512c;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .18s ease;
}

.store-category-menu-link:hover,
.store-category-menu-item:focus-within > .store-category-menu-link,
.store-category-menu-item:hover > .store-category-menu-link{
    color:#f4512c !important;
    background:transparent !important;
}

.store-category-menu-link:hover:after,
.store-category-menu-item:focus-within > .store-category-menu-link:after,
.store-category-menu-item:hover > .store-category-menu-link:after{
    transform:scaleX(1);
}

.store-category-menu-all{
    color:#102a43;
}

.store-category-menu-all i{
    color:#102a43;
}

.store-category-menu-link .fa-chevron-down{
    font-size:10px;
    transition:transform .18s ease;
}

.store-category-menu-item:hover .store-category-menu-link .fa-chevron-down,
.store-category-menu-item:focus-within .store-category-menu-link .fa-chevron-down{
    transform:rotate(180deg);
}

.store-category-menu-panel{
    top:calc(100% + 10px) !important;
    width:min(560px, calc(100vw - 48px)) !important;
    padding:18px !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px !important;
    border:0 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 24px 70px rgba(15,23,42,.18) !important;
    transform:translate(-50%,12px) !important;
}

.store-category-menu-item:hover .store-category-menu-panel,
.store-category-menu-item:focus-within .store-category-menu-panel{
    transform:translate(-50%,0) !important;
}

.store-category-menu-panel:before{
    content:"";
    position:absolute;
    top:-8px;
    left:50%;
    width:16px;
    height:16px;
    background:#fff;
    transform:translateX(-50%) rotate(45deg);
    box-shadow:-4px -4px 12px rgba(15,23,42,.03);
}

.store-category-menu-panel a{
    position:relative;
    min-height:62px !important;
    padding:10px 12px !important;
    gap:12px !important;
    border-radius:14px !important;
    color:#1b304a;
    background:#fff;
    font-size:13px;
    font-weight:850;
}

.store-category-menu-panel a:hover{
    background:#fff7f4 !important;
    color:#f4512c !important;
}

.store-category-menu-thumb{
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    background:#f4f6f9 !important;
    color:#f4512c !important;
}

@media(max-width:1199px){
    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:24px 34px;
    }
}

@media(max-width:991px){
    .store-category-menu-bar{
        display:none !important;
    }
}

@media(max-width:575px){
    .storefront-app .store-home-benefits{
        grid-template-columns:1fr;
        gap:18px;
        margin:24px auto 20px !important;
    }

    .storefront-app .store-home-benefits article{
        min-height:68px;
        grid-template-columns:56px minmax(0,1fr);
        gap:14px;
    }

    .storefront-app .store-home-benefits i{
        width:56px !important;
        height:56px !important;
        font-size:20px;
    }

    .storefront-app .store-home-benefits strong{
        font-size:15px;
    }

    .storefront-app .store-home-benefits span{
        font-size:12px;
    }
}

/* Storefront clean mode: remove card-like outlines and shadows from customer pages. */
.storefront-app{
    --store-border-soft:transparent;
    --store-shadow-soft:none;
}

.storefront-app .store-main-header,
.storefront-app .store-home-hero,
.storefront-app .store-category-hero,
.storefront-app .store-catalog-head,
.storefront-app .store-filter-card,
.storefront-app .store-product-card,
.storefront-app .store-home-category-card,
.storefront-app .store-testimonial-card,
.storefront-app .store-customize-banner,
.storefront-app .product-detail-shell,
.storefront-app .product-detail-shell-modern,
.storefront-app .product-description-section,
.storefront-app .product-related-section,
.storefront-app .store-checkout-panel,
.storefront-app .store-checkout-address-book,
.storefront-app .account-card,
.storefront-app .account-nav-card,
.storefront-app .account-hero-card,
.storefront-app .account-mini-card,
.storefront-app .account-address-card,
.storefront-app .store-track-order-hero,
.storefront-app .store-track-order-summary div,
.storefront-app .store-track-shipment-card,
.storefront-app .store-track-timeline,
.storefront-app .store-track-items{
    border-color:transparent !important;
    box-shadow:none !important;
}

.storefront-app .store-home-hero,
.storefront-app .store-category-hero,
.storefront-app .store-catalog-head,
.storefront-app .product-detail-shell,
.storefront-app .product-detail-shell-modern,
.storefront-app .product-description-section,
.storefront-app .product-related-section{
    border-width:0 !important;
}

.storefront-app .store-home-benefits{
    border:0 !important;
    border-top:0 !important;
    border-bottom:0 !important;
    box-shadow:none !important;
}

.storefront-app .store-home-benefits article,
.storefront-app .store-home-benefits article + article,
.storefront-app .store-home-benefits article:after,
.storefront-app .store-home-benefits article:nth-child(even),
.storefront-app .store-home-benefits article:nth-child(n+3){
    border:0 !important;
    box-shadow:none !important;
}

.store-category-menu-bar,
.store-category-menu-panel,
.store-category-menu-panel:before{
    border:0 !important;
    box-shadow:none !important;
}

.store-category-menu-panel{
    filter:none !important;
}

.storefront-app .store-product-wishlist,
.storefront-app .product-detail-gallery-wishlist,
.storefront-app .store-whatsapp-help,
.storefront-app .chat-widget-toggle,
.storefront-app .store-section-icon-btn,
.storefront-app .store-hero-arrow{
    box-shadow:none !important;
}

.storefront-app .store-listing-page .store-category-hero,
.storefront-app .store-listing-page .store-catalog-head,
.storefront-app .store-listing-page .store-filter-card,
.storefront-app .store-listing-page .store-product-card{
    border-color:transparent !important;
    box-shadow:none !important;
}

.storefront-app .store-product-card,
.storefront-app .product-related-section .store-product-card,
.storefront-app .store-listing-page .store-product-card{
    background:transparent !important;
}

.storefront-app .store-product-content,
.storefront-app .product-related-section .store-product-content,
.storefront-app .store-listing-page .store-product-content{
    background:#f8f8f8 !important;
    border-radius:0 0 10px 10px;
}

.storefront-app .store-product-media + .store-product-content{
    margin-top:0;
}

.storefront-app{
    --store-header-surface:#fffaf8;
    --store-category-surface:#fff4ef;
}

.storefront-app .store-main-header{
    background:var(--store-header-surface) !important;
}

.store-category-menu-bar{
    background:var(--store-category-surface) !important;
    backdrop-filter:none !important;
}

.storefront-app .store-home-product-tabs .store-product-card,
.storefront-app .store-listing-content .store-product-card,
.storefront-app .product-recommendation-section .store-product-card,
.storefront-app .product-related-section .store-product-card{
    overflow:hidden;
    border-radius:10px;
}

.storefront-app .listing-grid.is-list-view{
    display:grid;
    grid-template-columns:1fr !important;
    gap:18px;
}

.storefront-app .listing-grid.is-list-view .store-product-col{
    width:100%;
}

.storefront-app .listing-grid.is-list-view .store-product-card{
    display:grid !important;
    grid-template-columns:minmax(190px,260px) minmax(0,1fr) !important;
    min-height:220px;
    background:#f8f8f8 !important;
    align-items:stretch;
}

.storefront-app .listing-grid.is-list-view .store-product-media{
    height:100% !important;
    min-height:220px;
    aspect-ratio:auto;
    border-radius:10px 0 0 10px;
}

.storefront-app .listing-grid.is-list-view .store-product-content{
    display:grid !important;
    grid-template-rows:auto auto auto auto !important;
    align-content:center;
    justify-content:start;
    justify-items:start;
    text-align:left;
    min-width:0;
    max-width:560px;
    padding:24px 30px !important;
    border-radius:0 10px 10px 0;
}

.storefront-app .listing-grid.is-list-view .store-product-title,
.storefront-app .listing-grid.is-list-view .store-product-meta-row,
.storefront-app .listing-grid.is-list-view .store-product-price-row,
.storefront-app .listing-grid.is-list-view .store-product-form{
    width:100%;
}

.storefront-app .listing-grid.is-list-view .store-product-price-row{
    justify-content:flex-start;
}

.storefront-app .listing-grid.is-list-view .store-product-form,
.storefront-app .listing-grid.is-list-view .store-product-button{
    max-width:260px;
}

.storefront-app .store-listing-content .store-pagination{
    width:100%;
    margin:24px 0 0;
    padding:16px 0 0;
    clear:both;
}

.storefront-app .store-listing-content .app-pagination-meta{
    width:100%;
}

@media(max-width:767px){
    .storefront-app .listing-grid.is-list-view .store-product-card{
        grid-template-columns:130px minmax(0,1fr) !important;
        min-height:160px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-media{
        min-height:160px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-content{
        padding:12px !important;
        max-width:none;
    }

    .storefront-app .listing-grid.is-list-view .store-product-form,
    .storefront-app .listing-grid.is-list-view .store-product-button{
        max-width:none;
    }
}

.storefront-app .product-description-section,
.storefront-app .product-related-section,
.storefront-app .store-newsletter-band,
.storefront-app .store-reference-footer{
    content-visibility:auto;
    contain-intrinsic-size:1px 520px;
}

/* Storefront UX System v2 reverted on user request.
.storefront-app{
    --surji-primary:#f15a24;
    --surji-primary-dark:#d94712;
    --surji-primary-soft:#fff3ed;
    --surji-ink:#10243d;
    --surji-text:#243b55;
    --surji-muted:#667b96;
    --surji-line:#e3ebf5;
    --surji-line-strong:#cddbea;
    --surji-panel:#ffffff;
    --surji-soft:#f7fafd;
    --surji-soft-2:#fbf7f4;
    --surji-success:#12843d;
    --surji-radius-sm:10px;
    --surji-radius:14px;
    --surji-radius-lg:22px;
    --surji-shadow:0 16px 42px rgba(16,36,61,.08);
    --surji-shadow-soft:0 8px 24px rgba(16,36,61,.06);
    --surji-container:90vw;
    background:#fff;
    color:var(--surji-text);
    font-family:Manrope,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    font-size:15px;
    line-height:1.55;
    letter-spacing:-.01em;
}

.storefront-app *,
.storefront-app *::before,
.storefront-app *::after{
    box-sizing:border-box;
}

.storefront-app img{
    max-width:100%;
}

.storefront-app :where(h1,h2,h3,h4,h5,h6){
    color:var(--surji-ink);
    letter-spacing:-.035em;
    line-height:1.08;
}

.storefront-app :where(p){
    color:var(--surji-muted);
    line-height:1.72;
}

.storefront-app :where(a){
    color:inherit;
}

.storefront-app :where(button,input,select,textarea){
    font:inherit;
}

.storefront-app :where(input,select,textarea){
    color:var(--surji-ink);
}

.storefront-app :where(input,select,textarea):focus{
    outline:0;
    border-color:rgba(241,90,36,.72) !important;
    box-shadow:0 0 0 4px rgba(241,90,36,.12) !important;
}

.storefront-app .store-shell,
.storefront-app .main-content.product-detail-page,
.storefront-app .store-topbar-inner,
.storefront-app .store-main-header-inner,
.storefront-app .store-category-menu-inner,
.storefront-app .store-reference-footer-inner,
.storefront-app .store-reference-footer-bottom,
.storefront-app .store-newsletter-inner,
.storefront-app .account-layout,
.storefront-app .auth-shell,
.storefront-app .store-page-container,
.storefront-app .store-wishlist-page{
    width:var(--surji-container) !important;
    max-width:1600px;
}

.storefront-app .store-shell,
.storefront-app .main-content.product-detail-page,
.storefront-app .account-page,
.storefront-app .store-page-shell,
.storefront-app .store-wishlist-page{
    padding-block:18px 52px;
}

.storefront-app .store-topbar{
    background:#0f2742;
    color:#eef6ff;
    font-size:12px;
    letter-spacing:0;
}

.storefront-app .store-topbar-inner{
    min-height:36px;
}

.storefront-app .store-main-header{
    background:rgba(255,250,248,.96) !important;
    border-bottom:1px solid rgba(227,235,245,.86) !important;
    box-shadow:0 8px 26px rgba(16,36,61,.05) !important;
    backdrop-filter:saturate(140%) blur(12px);
}

.storefront-app .store-main-header-inner{
    min-height:76px;
    grid-template-columns:170px minmax(280px,1fr) auto !important;
    gap:16px;
}

.storefront-app .store-brand{
    min-width:0;
}

.storefront-app .store-brand img{
    width:auto;
    max-width:128px;
    height:auto;
    max-height:54px;
    border-radius:0;
    object-fit:contain;
}

.storefront-app .store-brand span{
    color:var(--surji-primary);
    font-size:28px;
    font-weight:900;
    letter-spacing:-.06em;
}

.storefront-app .store-search-shell{
    min-height:46px;
    border:1px solid var(--surji-line-strong);
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 22px rgba(16,36,61,.04);
}

.storefront-app .store-search-select,
.storefront-app .store-search-input,
.storefront-app .store-search-button{
    min-height:46px;
    height:46px;
}

.storefront-app .store-search-select{
    color:var(--surji-muted);
    font-size:13px;
    font-weight:800;
}

.storefront-app .store-search-input{
    font-size:14px;
}

.storefront-app .store-search-button{
    width:54px;
    background:#2563eb;
    color:#fff;
    transition:background .18s ease, transform .18s ease;
}

.storefront-app .store-search-button:hover{
    background:#1d4ed8;
}

.storefront-app .store-main-actions{
    gap:8px;
}

.storefront-app .store-main-action{
    min-height:44px;
    border:1px solid var(--surji-line-strong);
    border-radius:12px;
    background:#fff;
    color:var(--surji-ink);
    font-size:13px;
    font-weight:900;
    box-shadow:none;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}

.storefront-app .store-main-action:hover,
.storefront-app .store-main-action.is-active{
    background:var(--surji-primary-soft);
    border-color:#ffd4c3;
    color:var(--surji-primary-dark);
    transform:translateY(-1px);
}

.storefront-app .store-main-action.cart{
    background:#ecfdf3;
    border-color:#bde8ce;
    color:#0f8d43;
}

.storefront-app .store-main-action.cart em,
.storefront-app .store-main-action em{
    min-width:22px;
    height:22px;
    padding-inline:7px;
    border-radius:999px;
    background:var(--surji-primary);
    color:#fff;
    font-size:11px;
    font-style:normal;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
}

.store-category-menu-bar{
    background:#fff6f1 !important;
    border-bottom:1px solid #ffe1d3 !important;
}

.storefront-app .store-category-menu-inner{
    min-height:44px;
    justify-content:center;
    gap:22px;
}

.storefront-app .store-category-menu-link{
    min-height:44px;
    color:var(--surji-ink);
    font-size:13px;
    font-weight:900;
    letter-spacing:-.01em;
    white-space:nowrap;
}

.storefront-app .store-category-menu-link:hover{
    color:var(--surji-primary);
}

.storefront-app .store-category-menu-panel{
    border:1px solid var(--surji-line) !important;
    border-radius:18px;
    box-shadow:var(--surji-shadow) !important;
}

.storefront-app .store-section{
    margin-top:28px;
}

.storefront-app .store-section-head,
.storefront-app .store-checkout-head,
.storefront-app .store-wishlist-head{
    align-items:flex-end;
    margin-bottom:16px;
}

.storefront-app .store-section-head h2,
.storefront-app .store-catalog-head h2,
.storefront-app .store-checkout-head h1,
.storefront-app .store-wishlist-head h1,
.storefront-app .store-page-hero h1{
    margin:0;
    color:var(--surji-ink);
    font-size:clamp(24px,2vw,34px);
    font-weight:900;
}

.storefront-app .store-section-head p,
.storefront-app .store-catalog-head p,
.storefront-app .store-wishlist-head p{
    margin:5px 0 0;
    color:var(--surji-muted);
    font-size:14px;
}

.storefront-app .store-section-kicker,
.storefront-app .store-filter-kicker,
.storefront-app .store-wishlist-kicker,
.storefront-app .store-page-kicker,
.storefront-app .product-detail-kicker,
.storefront-app .account-kicker,
.storefront-app .auth-brand-kicker,
.storefront-app .auth-form-kicker{
    color:#7b8da6;
    font-size:11px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.storefront-app .store-home-hero{
    min-height:430px;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
    gap:28px;
    padding:34px;
    border:1px solid #ffe0d1 !important;
    border-radius:26px;
    background:
        radial-gradient(circle at 12% 14%, rgba(241,90,36,.13), transparent 28%),
        linear-gradient(135deg,#fff6f0 0%,#fff 58%,#eef6ff 100%) !important;
    box-shadow:var(--surji-shadow-soft) !important;
    overflow:hidden;
}

.storefront-app .store-home-kicker{
    min-height:30px;
    padding-inline:12px;
    background:#fff;
    color:var(--surji-primary-dark);
    border:1px solid #ffd7c7;
    font-size:11px;
}

.storefront-app .store-home-hero h1{
    max-width:760px;
    margin:14px 0 12px;
    color:var(--surji-ink);
    font-size:clamp(34px,4.35vw,64px);
    font-weight:900;
    line-height:.98;
}

.storefront-app .store-home-hero h1 small{
    margin-top:5px;
    color:#31516f;
    font-size:clamp(20px,2.2vw,32px);
    font-weight:800;
    line-height:1.16;
}

.storefront-app .store-home-hero p{
    max-width:640px;
    color:#55708f;
    font-size:16px;
}

.storefront-app .store-home-hero-media{
    min-height:360px;
    border-radius:22px;
    background:#fff;
    box-shadow:none;
}

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

.storefront-app .store-home-primary-btn,
.storefront-app .store-home-secondary-btn,
.storefront-app .store-primary-btn,
.storefront-app .store-outline-btn,
.storefront-app .account-primary-btn,
.storefront-app .account-outline-btn,
.storefront-app .product-detail-cart,
.storefront-app .product-detail-buy-now,
.storefront-app .checkout-btn,
.storefront-app .auth-submit,
.storefront-app .store-product-button,
.storefront-app .store-filter-apply,
.storefront-app .store-wishlist-empty a{
    min-height:44px;
    border-radius:12px;
    padding:0 16px;
    font-size:13px;
    font-weight:900;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.storefront-app .store-home-primary-btn,
.storefront-app .store-primary-btn,
.storefront-app .account-primary-btn,
.storefront-app .product-detail-cart,
.storefront-app .checkout-btn,
.storefront-app .auth-submit,
.storefront-app .store-product-button,
.storefront-app .store-filter-apply,
.storefront-app .store-wishlist-empty a{
    border:1px solid var(--surji-primary);
    background:var(--surji-primary);
    color:#fff;
    box-shadow:0 10px 24px rgba(241,90,36,.18);
}

.storefront-app .store-home-primary-btn:hover,
.storefront-app .store-primary-btn:hover,
.storefront-app .account-primary-btn:hover,
.storefront-app .product-detail-cart:hover,
.storefront-app .checkout-btn:hover,
.storefront-app .auth-submit:hover,
.storefront-app .store-product-button:hover,
.storefront-app .store-filter-apply:hover,
.storefront-app .store-wishlist-empty a:hover{
    background:var(--surji-primary-dark);
    border-color:var(--surji-primary-dark);
    color:#fff;
    transform:translateY(-1px);
}

.storefront-app .store-home-secondary-btn,
.storefront-app .store-outline-btn,
.storefront-app .account-outline-btn,
.storefront-app .product-detail-buy-now,
.storefront-app .store-product-button.secondary{
    border:1px solid var(--surji-line-strong);
    background:#fff;
    color:var(--surji-ink);
    box-shadow:none;
}

.storefront-app .store-home-secondary-btn:hover,
.storefront-app .store-outline-btn:hover,
.storefront-app .account-outline-btn:hover,
.storefront-app .product-detail-buy-now:hover,
.storefront-app .store-product-button.secondary:hover{
    border-color:#ffd4c3;
    background:var(--surji-primary-soft);
    color:var(--surji-primary-dark);
}

.storefront-app .store-home-quick-links a,
.storefront-app .product-detail-tag-chip,
.storefront-app .store-checkout-tag,
.storefront-app .account-default-tag,
.storefront-app .account-address-tags span{
    border:1px solid var(--surji-line);
    border-radius:999px;
    background:#fff;
    color:var(--surji-text);
    font-size:12px;
    font-weight:900;
}

.storefront-app .store-home-benefits{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:18px 0 8px;
}

.storefront-app .store-home-benefits article{
    min-height:78px;
    padding:16px;
    border:1px solid var(--surji-line) !important;
    border-radius:16px;
    background:#fff !important;
    box-shadow:var(--surji-shadow-soft) !important;
}

.storefront-app .store-home-benefits i{
    width:42px;
    height:42px;
    border-radius:12px;
    background:var(--surji-primary-soft);
    color:var(--surji-primary);
}

.storefront-app .store-home-benefits strong{
    display:block;
    color:var(--surji-ink);
    font-size:14px;
    font-weight:900;
}

.storefront-app .store-home-benefits span{
    display:block;
    margin-top:2px;
    color:var(--surji-muted);
    font-size:12px;
}

.storefront-app .store-home-category-grid{
    gap:14px;
}

.storefront-app .store-home-category-card,
.storefront-app .store-testimonial-card,
.storefront-app .store-customize-banner,
.storefront-app .store-filter-card,
.storefront-app .store-catalog-head,
.storefront-app .store-category-hero,
.storefront-app .product-detail-shell,
.storefront-app .product-description-section,
.storefront-app .product-related-section,
.storefront-app .product-detail-tabs-shell,
.storefront-app .store-checkout-panel,
.storefront-app .store-checkout-address-book,
.storefront-app .store-wishlist-head,
.storefront-app .store-wishlist-empty,
.storefront-app .store-page-hero,
.storefront-app .store-page-content,
.storefront-app .account-card,
.storefront-app .account-nav-card,
.storefront-app .account-hero-card,
.storefront-app .account-mini-card,
.storefront-app .account-address-card,
.storefront-app .auth-hero-panel,
.storefront-app .auth-box-modern{
    border:1px solid var(--surji-line) !important;
    border-radius:var(--surji-radius-lg) !important;
    background:#fff !important;
    box-shadow:var(--surji-shadow-soft) !important;
}

.storefront-app .store-home-category-card{
    min-height:156px;
    justify-content:center;
    padding:16px;
}

.storefront-app .store-home-category-thumb{
    width:86px;
    height:86px;
    border:1px solid var(--surji-line);
    background:var(--surji-soft);
}

.storefront-app .store-home-category-card strong{
    color:var(--surji-ink);
    font-size:14px;
    font-weight:900;
}

.storefront-app .store-product-grid,
.storefront-app .store-product-grid.five-up,
.storefront-app .store-product-grid.six-up,
.storefront-app .store-wishlist-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(218px,1fr));
    gap:18px;
}

.storefront-app .store-product-col{
    min-width:0;
}

.storefront-app .store-product-card,
.storefront-app .product-related-section .store-product-card,
.storefront-app .store-listing-page .store-product-card{
    height:100%;
    display:grid;
    grid-template-rows:auto 1fr;
    overflow:hidden;
    border:1px solid var(--surji-line) !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(16,36,61,.06) !important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.storefront-app .store-product-card:hover{
    transform:translateY(-3px);
    border-color:#ffd0bd !important;
    box-shadow:0 18px 42px rgba(16,36,61,.1) !important;
}

.storefront-app .store-product-media{
    position:relative;
    aspect-ratio:1/1;
    height:auto !important;
    min-height:0 !important;
    border-radius:0;
    background:linear-gradient(180deg,#fbfcff,#f5f8fc);
    overflow:hidden;
}

.storefront-app .store-product-image-link{
    display:block;
    width:100%;
    height:100%;
}

.storefront-app .store-product-image{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .28s ease;
}

.storefront-app .store-product-card:hover .store-product-image{
    transform:scale(1.035);
}

.storefront-app .store-product-badge{
    top:10px;
    left:10px;
    min-height:24px;
    padding-inline:9px;
    border:1px solid rgba(255,255,255,.55);
    border-radius:999px;
    background:rgba(16,36,61,.92);
    color:#fff;
    font-size:10px;
    font-weight:900;
    backdrop-filter:blur(8px);
}

.storefront-app .store-product-badge.out{
    background:#b42318;
}

.storefront-app .store-product-wishlist{
    top:10px;
    right:10px;
    width:36px;
    height:36px;
    border:1px solid rgba(227,235,245,.9) !important;
    background:#fff;
    color:var(--surji-ink);
    box-shadow:0 8px 20px rgba(16,36,61,.12) !important;
}

.storefront-app .store-product-wishlist.is-active,
.storefront-app .store-product-wishlist:hover{
    color:#e11d48;
}

.storefront-app .store-product-content,
.storefront-app .product-related-section .store-product-content,
.storefront-app .store-listing-page .store-product-content{
    display:grid;
    grid-template-rows:auto auto auto 1fr;
    align-content:start;
    gap:9px;
    min-height:174px;
    padding:13px;
    background:#fff !important;
    border-radius:0 !important;
}

.storefront-app .store-product-title{
    min-height:42px;
    margin:0;
    font-size:14px;
    font-weight:900;
    line-height:1.35;
}

.storefront-app .store-product-title a{
    color:var(--surji-ink);
    text-decoration:none;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.storefront-app .store-product-title a:hover{
    color:var(--surji-primary);
}

.storefront-app .store-product-meta-row{
    min-height:24px;
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
}

.storefront-app .store-product-brand{
    color:#4f6b89;
    font-size:11px;
    font-weight:900;
    text-decoration:none;
}

.storefront-app .store-product-coupon{
    border-radius:999px;
    background:#ecfdf3;
    color:var(--surji-success);
    font-size:10px;
    font-weight:900;
    padding:3px 7px;
}

.storefront-app .store-product-price-row{
    display:grid;
    gap:5px;
    align-items:start;
}

.storefront-app .store-product-price-main{
    display:flex;
    align-items:baseline;
    gap:7px;
    flex-wrap:wrap;
}

.storefront-app .store-product-price-main strong{
    color:var(--surji-ink);
    font-size:18px;
    font-weight:900;
}

.storefront-app .store-product-price-main span{
    color:#9aaabc;
    font-size:12px;
    text-decoration:line-through;
}

.storefront-app .store-product-price-main em{
    color:var(--surji-success);
    font-size:11px;
    font-style:normal;
    font-weight:900;
}

.storefront-app .store-product-rating{
    display:flex;
    align-items:center;
    gap:5px;
    color:var(--surji-muted);
    font-size:11px;
}

.storefront-app .store-product-form{
    align-self:end;
    margin-top:4px;
}

.storefront-app .store-product-button{
    width:100%;
    min-height:40px;
    border-radius:11px;
    font-size:12px;
}

.storefront-app .store-listing-layout{
    grid-template-columns:276px minmax(0,1fr);
    gap:20px;
}

.storefront-app .store-breadcrumbs,
.storefront-app .product-breadcrumb{
    margin-bottom:14px;
    color:#778aa3;
    font-size:12px;
    font-weight:800;
}

.storefront-app .store-breadcrumbs a,
.storefront-app .product-breadcrumb a{
    color:#315f9d;
    text-decoration:none;
}

.storefront-app .store-category-hero{
    grid-template-columns:minmax(0,1fr) minmax(240px,34%);
    gap:20px;
    padding:22px;
    background:linear-gradient(135deg,#fff,#f6f9fd) !important;
}

.storefront-app .store-category-hero h1{
    margin:0 0 8px;
    font-size:clamp(28px,3vw,44px);
    font-weight:900;
}

.storefront-app .store-category-hero p{
    max-width:620px;
    margin:0;
    font-size:15px;
}

.storefront-app .store-category-hero-features{
    margin-top:14px;
}

.storefront-app .store-category-hero-features article{
    min-height:32px;
    border:1px solid var(--surji-line);
    background:#fff;
    color:var(--surji-text);
}

.storefront-app .store-category-hero-image{
    height:210px;
    border-radius:16px;
    background:var(--surji-soft);
}

.storefront-app .store-catalog-head{
    padding:16px;
    margin:16px 0;
}

.storefront-app .store-catalog-toolbar label{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--surji-muted);
    font-size:12px;
    font-weight:900;
}

.storefront-app .store-catalog-toolbar select,
.storefront-app .store-checkout-form-grid input,
.storefront-app .store-checkout-form-grid select,
.storefront-app .store-checkout-form-grid textarea,
.storefront-app .account-field input,
.storefront-app .account-field select,
.storefront-app .auth-field input,
.storefront-app .product-personalization-row input,
.storefront-app .product-personalization-row textarea{
    min-height:44px;
    border:1px solid var(--surji-line-strong);
    border-radius:12px;
    background:#fff;
    padding:0 13px;
    font-size:14px;
}

.storefront-app .store-checkout-form-grid textarea,
.storefront-app .product-personalization-row textarea{
    min-height:84px;
    padding-block:10px;
}

.storefront-app .store-view-icons a,
.storefront-app .store-view-icons button,
.storefront-app .store-section-icon-btn,
.storefront-app .store-filter-close,
.storefront-app .store-checkout-accordion-toggle,
.storefront-app .product-detail-gallery-wishlist{
    border:1px solid var(--surji-line-strong) !important;
    border-radius:12px;
    background:#fff;
    color:var(--surji-ink);
    box-shadow:none !important;
}

.storefront-app .store-view-icons a.active,
.storefront-app .store-view-icons button.active,
.storefront-app .store-section-icon-btn:hover,
.storefront-app .store-checkout-accordion-toggle:hover{
    background:var(--surji-primary);
    border-color:var(--surji-primary) !important;
    color:#fff;
}

.storefront-app .store-filter-card{
    padding:16px;
    position:sticky;
    top:136px;
}

.storefront-app .store-filter-card h3,
.storefront-app .store-filter-group h4{
    color:var(--surji-ink);
    font-size:16px;
    font-weight:900;
}

.storefront-app .store-filter-row,
.storefront-app .store-filter-tag-list a{
    min-height:34px;
    border-radius:10px;
    color:var(--surji-text);
    font-size:13px;
}

.storefront-app .store-filter-category-item.active>.store-filter-row,
.storefront-app .store-filter-row.active,
.storefront-app .store-filter-tag-list a.active{
    background:var(--surji-primary-soft);
    color:var(--surji-primary-dark);
}

.storefront-app .product-detail-shell{
    grid-template-columns:minmax(360px,.92fr) minmax(360px,1.08fr);
    gap:28px;
    padding:24px;
}

.storefront-app .product-detail-gallery-modern{
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    gap:14px;
}

.storefront-app .product-detail-thumb-rail{
    display:grid;
    gap:10px;
    align-content:start;
}

.storefront-app .product-detail-thumb{
    width:72px;
    height:72px;
    border:1px solid var(--surji-line-strong) !important;
    border-radius:13px;
}

.storefront-app .product-detail-thumb.active,
.storefront-app .product-detail-thumb:hover{
    border-color:var(--surji-primary) !important;
}

.storefront-app .product-detail-main-image,
.storefront-app .product-detail-main-image-modern{
    border:1px solid var(--surji-line);
    border-radius:20px;
    background:var(--surji-soft);
}

.storefront-app .product-detail-info h1{
    margin:0 0 10px;
    color:var(--surji-ink);
    font-size:clamp(28px,3vw,42px);
    font-weight:900;
}

.storefront-app .product-detail-rating-row{
    display:flex;
    align-items:center;
    gap:9px;
    color:var(--surji-muted);
    font-size:13px;
    margin-bottom:14px;
}

.storefront-app .product-detail-feature-list{
    display:grid;
    gap:8px;
    margin:14px 0;
    padding:14px 16px;
    border:1px solid var(--surji-line);
    border-radius:16px;
    background:var(--surji-soft);
    color:var(--surji-text);
}

.storefront-app .product-detail-feature-list li{
    margin-left:18px;
}

.storefront-app .product-detail-price-block{
    margin:14px 0;
    padding:16px;
    border:1px solid #ffe0d1;
    border-radius:18px;
    background:#fff8f4;
}

.storefront-app .product-detail-price-block small{
    color:var(--surji-muted);
    font-weight:800;
}

.storefront-app .product-detail-price-row strong{
    color:var(--surji-ink);
    font-size:clamp(28px,3vw,38px);
    font-weight:900;
}

.storefront-app .product-detail-price-row em{
    border-radius:999px;
    background:#e9f8ef;
    color:var(--surji-success);
    padding:5px 9px;
    font-size:12px;
}

.storefront-app .product-detail-coupon-offer,
.storefront-app .product-detail-option-block,
.storefront-app .product-personalization-preview,
.storefront-app .product-detail-spec-card,
.storefront-app .product-review-card{
    border:1px solid var(--surji-line) !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:none !important;
}

.storefront-app .product-detail-actions-modern{
    gap:10px;
    align-items:stretch;
    flex-wrap:wrap;
}

.storefront-app .product-qty-control{
    height:46px;
    border:1px solid var(--surji-line-strong);
    border-radius:12px;
}

.storefront-app .product-qty-control button{
    background:var(--surji-soft);
    color:var(--surji-ink);
}

.storefront-app .product-detail-cart,
.storefront-app .product-detail-buy-now{
    min-width:156px;
    flex:1 1 156px;
}

.storefront-app .product-detail-tabs-shell{
    margin-top:22px;
    padding:18px;
}

.storefront-app .product-detail-tabs-nav{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:16px;
}

.storefront-app .product-detail-tab-btn{
    min-height:40px;
    border:1px solid var(--surji-line);
    border-radius:999px;
    background:#fff;
    color:var(--surji-text);
    padding:0 14px;
    font-weight:900;
}

.storefront-app .product-detail-tab-btn.active,
.storefront-app .product-detail-tab-btn:hover{
    background:var(--surji-primary);
    border-color:var(--surji-primary);
    color:#fff;
}

.storefront-app .product-description-content{
    color:var(--surji-text);
    font-size:15px;
    line-height:1.8;
}

.storefront-app .store-checkout-shell{
    max-width:1600px;
    margin-inline:auto;
}

.storefront-app .store-checkout-grid{
    gap:18px;
}

.storefront-app .store-checkout-panel,
.storefront-app .store-checkout-address-book{
    padding:18px;
}

.storefront-app .store-checkout-form-grid{
    gap:13px;
}

.storefront-app .store-checkout-form-grid label,
.storefront-app .account-field label,
.storefront-app .auth-field label,
.storefront-app .product-personalization-row span{
    display:block;
    margin-bottom:5px;
    color:#536a86;
    font-size:12px;
    font-weight:900;
}

.storefront-app .store-checkout-saved-card,
.storefront-app .store-checkout-item,
.storefront-app .store-checkout-summary,
.storefront-app .store-checkout-payment-option{
    border:1px solid var(--surji-line) !important;
    border-radius:16px !important;
    background:#fff !important;
}

.storefront-app .store-checkout-saved-card.is-shipping-selected,
.storefront-app .store-checkout-saved-card.is-billing-selected{
    border-color:#ffcab5 !important;
    background:var(--surji-primary-soft) !important;
}

.storefront-app .store-checkout-item img{
    border-radius:12px;
    background:var(--surji-soft);
}

.storefront-app .store-checkout-item-head strong{
    color:var(--surji-ink);
    font-weight:900;
}

.storefront-app .store-checkout-summary{
    position:sticky;
    top:138px;
}

.storefront-app .cart-sidebar{
    border-left:1px solid var(--surji-line);
    box-shadow:-18px 0 44px rgba(16,36,61,.13) !important;
}

.storefront-app .cart-header,
.storefront-app .cart-footer{
    background:#fff;
}

.storefront-app .cart-item{
    border-bottom:1px solid var(--surji-line);
}

.storefront-app .cart-item-image{
    border:1px solid var(--surji-line);
    border-radius:13px;
}

.storefront-app .store-wishlist-page{
    margin:0 auto;
}

.storefront-app .store-wishlist-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:22px;
}

.storefront-app .store-wishlist-empty{
    min-height:340px;
    display:grid;
    place-items:center;
    text-align:center;
    padding:34px;
}

.storefront-app .store-wishlist-empty i{
    width:64px;
    height:64px;
    border-radius:20px;
    display:grid;
    place-items:center;
    background:var(--surji-primary-soft);
    color:var(--surji-primary);
    font-size:26px;
}

.storefront-app .store-page-container{
    margin-inline:auto;
    display:grid;
    gap:18px;
}

.storefront-app .store-page-hero,
.storefront-app .store-page-content{
    padding:26px;
}

.storefront-app .store-page-excerpt{
    max-width:760px;
    margin:10px 0 0;
    font-size:16px;
}

.storefront-app .wysiwyg-content{
    color:var(--surji-text);
    font-size:15px;
    line-height:1.82;
}

.storefront-app .wysiwyg-content :where(h2,h3,h4){
    margin:1.35em 0 .55em;
}

.storefront-app .wysiwyg-content :where(p,ul,ol){
    margin-block:.75em;
}

.storefront-app .account-layout{
    gap:20px;
}

.storefront-app .account-nav-card{
    top:138px;
}

.storefront-app .account-nav-link{
    border:1px solid transparent;
}

.storefront-app .account-nav-link.active,
.storefront-app .account-nav-link:hover{
    border-color:#ffd4c3;
    background:var(--surji-primary-soft);
    color:var(--surji-primary-dark);
}

.storefront-app .auth-shell{
    margin-inline:auto;
}

.storefront-app .auth-hero-panel{
    background:linear-gradient(135deg,#fff4ed,#fff 70%) !important;
}

.storefront-app .auth-tab.active{
    background:var(--surji-primary);
}

.storefront-app .store-customize-banner{
    grid-template-columns:auto minmax(200px,1fr) minmax(320px,1.35fr) auto;
    padding:22px;
    background:linear-gradient(135deg,#fff6f1,#f7fbff) !important;
}

.storefront-app .store-customize-icon{
    background:var(--surji-primary-soft);
    color:var(--surji-primary);
}

.storefront-app .store-customize-steps article{
    border:1px solid var(--surji-line);
}

.storefront-app .store-reference-footer{
    margin-top:24px;
    padding-top:34px;
    border-top:1px solid var(--surji-line);
    background:#fff !important;
}

.storefront-app .store-reference-footer-inner{
    gap:24px;
}

.storefront-app .store-reference-footer h3,
.storefront-app .store-reference-footer h4{
    color:var(--surji-ink);
    font-weight:900;
}

.storefront-app .store-footer-links a,
.storefront-app .store-footer-contact a,
.storefront-app .store-footer-contact span{
    color:var(--surji-muted);
    font-size:14px;
}

.storefront-app .store-footer-links a:hover,
.storefront-app .store-footer-contact a:hover{
    color:var(--surji-primary);
}

.storefront-app .mobile-bottom-nav{
    box-shadow:0 -12px 28px rgba(16,36,61,.08);
}

.storefront-app .mobile-nav-item.active,
.storefront-app .mobile-nav-item:hover{
    color:var(--surji-primary);
}

@media(max-width:1199px){
    .storefront-app{
        --surji-container:min(100%,calc(100% - 28px));
    }

    .storefront-app .store-main-header-inner{
        grid-template-columns:142px minmax(240px,1fr) auto !important;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .storefront-app .store-listing-layout{
        grid-template-columns:250px minmax(0,1fr);
    }

    .storefront-app .store-customize-banner{
        grid-template-columns:auto 1fr;
    }

    .storefront-app .store-customize-steps{
        grid-column:1/-1;
    }
}

@media(max-width:991px){
    .storefront-app{
        --surji-container:min(100%,calc(100% - 24px));
    }

    .storefront-app .store-main-header-inner{
        grid-template-columns:auto 1fr auto !important;
        min-height:70px;
    }

    .storefront-app .store-brand img{
        max-width:116px;
        max-height:48px;
    }

    .storefront-app .store-category-trigger{
        display:inline-flex;
        border:1px solid var(--surji-line);
        background:#fff;
        color:var(--surji-ink);
        border-radius:12px;
        font-weight:900;
    }

    .storefront-app .store-search-shell{
        grid-column:1/-1;
        order:4;
        width:100%;
    }

    .storefront-app .store-category-menu-bar{
        display:none;
    }

    .storefront-app .store-home-hero,
    .storefront-app .store-category-hero,
    .storefront-app .product-detail-shell,
    .storefront-app .store-listing-layout,
    .storefront-app .store-checkout-grid,
    .storefront-app .auth-shell,
    .storefront-app .account-layout{
        grid-template-columns:1fr !important;
    }

    .storefront-app .store-filter-card,
    .storefront-app .store-checkout-summary,
    .storefront-app .account-nav-card{
        position:static;
    }

    .storefront-app .store-filter-sidebar{
        display:block;
    }

    .storefront-app .product-detail-gallery-modern{
        grid-template-columns:1fr;
    }

    .storefront-app .product-detail-thumb-rail{
        order:2;
        display:flex;
        overflow-x:auto;
    }

    .storefront-app .store-reference-footer-inner{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:767px){
    .storefront-app{
        --surji-container:min(100%,calc(100% - 20px));
        font-size:14px;
    }

    .storefront-app .store-shell,
    .storefront-app .main-content.product-detail-page,
    .storefront-app .account-page,
    .storefront-app .store-page-shell,
    .storefront-app .store-wishlist-page{
        padding-block:12px 86px;
    }

    .storefront-app .store-topbar{
        display:none;
    }

    .storefront-app .store-main-header{
        top:0;
    }

    .storefront-app .store-main-header-inner{
        width:var(--surji-container) !important;
        grid-template-columns:110px 1fr auto !important;
        gap:8px;
        min-height:64px;
    }

    .storefront-app .store-brand img{
        max-width:98px;
        max-height:42px;
    }

    .storefront-app .store-main-actions{
        gap:5px;
    }

    .storefront-app .store-main-action{
        width:40px;
        min-width:40px;
        min-height:40px;
        padding:0;
        justify-content:center;
    }

    .storefront-app .store-main-action span{
        display:none;
    }

    .storefront-app .store-main-action em{
        position:absolute;
        right:-5px;
        top:-6px;
        min-width:18px;
        height:18px;
        padding-inline:5px;
        font-size:10px;
    }

    .storefront-app .store-search-select{
        display:none;
    }

    .storefront-app .store-search-shell{
        min-height:42px;
    }

    .storefront-app .store-search-input,
    .storefront-app .store-search-button{
        height:42px;
        min-height:42px;
    }

    .storefront-app .store-home-hero{
        min-height:0;
        padding:20px;
        gap:18px;
        border-radius:20px;
    }

    .storefront-app .store-home-hero h1{
        font-size:clamp(31px,10vw,42px);
    }

    .storefront-app .store-home-hero p{
        font-size:14px;
    }

    .storefront-app .store-home-hero-media{
        min-height:220px;
        border-radius:18px;
    }

    .storefront-app .store-section-head,
    .storefront-app .store-wishlist-head,
    .storefront-app .store-catalog-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .storefront-app .store-home-benefits,
    .storefront-app .store-customize-steps,
    .storefront-app .account-grid-two,
    .storefront-app .account-form-grid,
    .storefront-app .account-address-grid,
    .storefront-app .store-checkout-form-grid{
        grid-template-columns:1fr;
    }

    .storefront-app .store-home-category-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up,
    .storefront-app .store-wishlist-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px;
    }

    .storefront-app .store-product-content{
        min-height:166px;
        padding:11px;
    }

    .storefront-app .store-product-title{
        min-height:38px;
        font-size:13px;
    }

    .storefront-app .store-product-price-main strong{
        font-size:16px;
    }

    .storefront-app .store-product-button{
        min-height:38px;
        font-size:11px;
        padding-inline:8px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-card{
        grid-template-columns:118px minmax(0,1fr) !important;
        min-height:158px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-media{
        min-height:158px;
    }

    .storefront-app .listing-grid.is-list-view .store-product-content{
        padding:10px !important;
    }

    .storefront-app .store-category-hero{
        padding:18px;
    }

    .storefront-app .store-category-hero-image{
        height:190px;
    }

    .storefront-app .product-detail-shell,
    .storefront-app .product-detail-tabs-shell,
    .storefront-app .store-checkout-panel,
    .storefront-app .store-checkout-address-book,
    .storefront-app .store-page-hero,
    .storefront-app .store-page-content,
    .storefront-app .account-card,
    .storefront-app .account-nav-card,
    .storefront-app .account-hero-card,
    .storefront-app .auth-box-modern,
    .storefront-app .auth-hero-panel{
        padding:16px;
        border-radius:18px !important;
    }

    .storefront-app .product-detail-actions-modern{
        display:grid;
        grid-template-columns:1fr;
    }

    .storefront-app .product-detail-cart,
    .storefront-app .product-detail-buy-now,
    .storefront-app .store-home-primary-btn,
    .storefront-app .store-home-secondary-btn{
        width:100%;
    }

    .storefront-app .store-reference-footer-inner{
        grid-template-columns:1fr;
    }
}

@media(max-width:420px){
    .storefront-app{
        --surji-container:min(100%,calc(100% - 16px));
    }

    .storefront-app .store-main-header-inner{
        grid-template-columns:96px 1fr auto !important;
    }

    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up,
    .storefront-app .store-wishlist-grid{
        gap:10px;
    }

    .storefront-app .store-product-title{
        font-size:12px;
    }

    .storefront-app .store-product-price-main strong{
        font-size:15px;
    }
}
*/

/* Storefront professional typography polish: same theme, cleaner formatting */
.storefront-app{
    --store-pro-ink:#10243d;
    --store-pro-text:#2d4058;
    --store-pro-muted:#637996;
    --store-pro-line:#dfe8f3;
    --store-pro-orange:#f15a24;
    --store-pro-container:90vw;
    color:var(--store-pro-text);
    font-family:Manrope,Inter,"Segoe UI",Roboto,Arial,sans-serif;
    font-size:15px;
    line-height:1.55;
    letter-spacing:-0.012em;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.storefront-app h1,
.storefront-app h2,
.storefront-app h3,
.storefront-app h4,
.storefront-app h5,
.storefront-app h6{
    color:var(--store-pro-ink);
    letter-spacing:-0.035em;
    line-height:1.12;
    text-wrap:balance;
}

.storefront-app p{
    color:var(--store-pro-muted);
    line-height:1.7;
}

.storefront-app .store-shell,
.storefront-app .main-content,
.storefront-app .main-content.product-detail-page,
.storefront-app .store-topbar-inner,
.storefront-app .store-main-header-inner,
.storefront-app .store-category-nav,
.storefront-app .store-category-menu-inner,
.storefront-app .store-reference-footer-inner,
.storefront-app .store-reference-footer-bottom,
.storefront-app .store-newsletter-inner,
.storefront-app .store-wishlist-page,
.storefront-app .store-not-found-shell,
.storefront-app .account-layout,
.storefront-app .store-page-container{
    width:var(--store-pro-container) !important;
    max-width:none !important;
}

.storefront-app .store-main-header-inner{
    min-height:74px !important;
    grid-template-columns:154px minmax(360px,1fr) auto !important;
    gap:18px !important;
}

.storefront-app .store-brand img{
    max-width:118px !important;
    max-height:54px !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
    border-radius:0 !important;
}

.storefront-app .store-search-shell{
    min-height:46px !important;
    border-radius:6px !important;
    border-color:#d8e2ee !important;
}

.storefront-app .store-search-input{
    min-height:46px !important;
    font-size:14px !important;
    font-weight:500 !important;
    letter-spacing:-.01em;
}

.storefront-app .store-search-button{
    height:46px !important;
}

.storefront-app .store-main-action{
    min-height:44px !important;
    height:44px !important;
    border-radius:6px !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.storefront-app .store-category-menu-bar{
    top:74px !important;
}

.storefront-app .store-category-menu-inner{
    min-height:44px !important;
    gap:26px !important;
}

.storefront-app .store-category-menu-link{
    min-height:44px !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:-.015em;
}

.storefront-app .store-shell{
    padding-top:0 !important;
}

.storefront-app .store-home-hero{
    min-height:405px !important;
    align-items:center !important;
    gap:44px !important;
    padding:38px 42px !important;
    border-radius:0 !important;
}

.storefront-app .store-home-hero h1{
    max-width:720px;
    margin:14px 0 8px !important;
    font-size:clamp(42px,4.15vw,62px) !important;
    font-weight:500 !important;
    line-height:1.03 !important;
}

.storefront-app .store-home-hero h1 small{
    margin-top:4px !important;
    font-size:clamp(22px,2vw,32px) !important;
    font-weight:800 !important;
    line-height:1.18 !important;
    letter-spacing:-.03em;
}

.storefront-app .store-home-hero p{
    max-width:640px !important;
    margin:0 !important;
    font-size:16px !important;
    line-height:1.72 !important;
}

.storefront-app .store-home-kicker,
.storefront-app .store-section-kicker,
.storefront-app .store-filter-kicker,
.storefront-app .store-wishlist-kicker,
.storefront-app .store-page-kicker,
.storefront-app .product-detail-kicker{
    font-size:11px !important;
    font-weight:900 !important;
    letter-spacing:.09em !important;
    text-transform:uppercase;
}

.storefront-app .store-home-hero-actions{
    margin-top:20px !important;
    gap:10px !important;
}

.storefront-app .store-home-primary-btn,
.storefront-app .store-home-secondary-btn,
.storefront-app .store-product-button,
.storefront-app .product-detail-cart,
.storefront-app .product-detail-buy-now,
.storefront-app .checkout-btn,
.storefront-app .store-primary-btn,
.storefront-app .store-outline-btn{
    min-height:42px !important;
    border-radius:6px !important;
    font-size:13px !important;
    font-weight:850 !important;
    letter-spacing:-.01em;
}

.storefront-app .store-home-quick-links{
    gap:7px !important;
    margin-top:14px !important;
}

.storefront-app .store-home-quick-links a{
    min-height:32px !important;
    border-radius:6px !important;
    padding:0 11px !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.storefront-app .store-home-benefits{
    max-width:1280px;
    margin:34px auto 28px !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:34px !important;
}

.storefront-app .store-home-benefits article{
    min-width:0;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:56px minmax(0,1fr) !important;
    gap:14px !important;
    align-items:center !important;
    background:transparent !important;
}

.storefront-app .store-home-benefits i{
    width:56px !important;
    height:56px !important;
    border-radius:999px !important;
    font-size:20px !important;
}

.storefront-app .store-home-benefits strong{
    font-size:16px !important;
    font-weight:850 !important;
    line-height:1.2 !important;
    letter-spacing:-.02em;
}

.storefront-app .store-home-benefits span{
    margin-top:5px !important;
    font-size:13px !important;
    line-height:1.35 !important;
}

.storefront-app .store-section{
    margin-top:28px !important;
}

.storefront-app .store-section-head{
    margin-bottom:18px !important;
    align-items:flex-end !important;
}

.storefront-app .store-section-head h2,
.storefront-app .store-catalog-head h2,
.storefront-app .store-wishlist-head h1,
.storefront-app .store-page-hero h1{
    margin:0 !important;
    font-size:clamp(28px,2.25vw,38px) !important;
    font-weight:500 !important;
    line-height:1.15 !important;
}

.storefront-app .store-section-head a,
.storefront-app .store-home-section-actions a,
.storefront-app .store-home-tab-actions a{
    font-size:14px !important;
    font-weight:850 !important;
    color:#617590 !important;
}


.storefront-app .store-home-product-tabs{
    margin-top:34px !important;
}

.storefront-app .store-home-tab-actions button{
    min-height:38px !important;
    padding:0 14px !important;
    border-radius:5px !important;
    font-size:13px !important;
    font-weight:850 !important;
}

.storefront-app .store-product-grid,
.storefront-app .store-product-grid.five-up,
.storefront-app .store-product-grid.six-up{
    grid-template-columns:repeat(auto-fill,minmax(230px,1fr)) !important;
    gap:18px !important;
}

.storefront-app .store-product-card{
    border-radius:6px !important;
}

.storefront-app .store-product-content{
    gap:8px !important;
    padding:12px 2px 0 !important;
    background:#fff !important;
}

.storefront-app .store-product-title{
    margin:0 !important;
    min-height:40px;
    font-size:14px !important;
    font-weight:850 !important;
    line-height:1.35 !important;
}

.storefront-app .store-product-title a{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    color:var(--store-pro-ink) !important;
}

.storefront-app .store-product-price-main strong,
.storefront-app .store-product-price-row strong{
    font-size:17px !important;
    font-weight:900 !important;
    letter-spacing:-.02em;
}

.storefront-app .store-product-rating,
.storefront-app .store-product-meta-row,
.storefront-app .store-product-price-main span,
.storefront-app .store-product-price-row span{
    font-size:12px !important;
}

.storefront-app .product-detail-info h1,
.storefront-app .store-category-hero h1{
    font-size:clamp(18px,3vw,44px) !important;
    font-weight:650 !important;
    line-height:1.12 !important;
}

.storefront-app .product-description-content,
.storefront-app .store-page-content,
.storefront-app .wysiwyg-content,
.storefront-app .account-card,
.storefront-app .store-checkout-panel{
    font-size:15px !important;
    line-height:1.72 !important;
}

.storefront-app .store-checkout-form-grid label,
.storefront-app .account-field label,
.storefront-app .auth-field label{
    font-size:12px !important;
    font-weight:850 !important;
    color:#536a86 !important;
}

.storefront-app .store-checkout-form-grid input,
.storefront-app .store-checkout-form-grid select,
.storefront-app .account-field input,
.storefront-app .account-field select,
.storefront-app .auth-field input{
    min-height:44px !important;
    border-radius:6px !important;
    font-size:14px !important;
}

@media(max-width:1199px){
    .storefront-app{
        --store-pro-container:min(100%,calc(100% - 36px));
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        max-width:720px;
    }
}

@media(max-width:991px){
    .storefront-app .store-main-header-inner{
        grid-template-columns:120px 1fr auto !important;
        min-height:68px !important;
    }

    .storefront-app .store-category-menu-bar{
        top:68px !important;
    }

    .storefront-app .store-home-hero{
        grid-template-columns:1fr !important;
        padding:26px !important;
        gap:22px !important;
    }
}

@media(max-width:767px){
    .storefront-app{
        --store-pro-container:min(100%,calc(100% - 20px));
        font-size:14px;
    }

    .storefront-app .store-main-header-inner{
        grid-template-columns:98px 1fr auto !important;
        gap:8px !important;
    }

    .storefront-app .store-brand img{
        max-width:92px !important;
        max-height:42px !important;
    }

    .storefront-app .store-home-hero h1{
        font-size:clamp(32px,9vw,42px) !important;
    }

    .storefront-app .store-home-hero h1 small{
        font-size:clamp(19px,5vw,24px) !important;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:1fr !important;
        gap:16px !important;
        max-width:none;
        margin:24px 0 !important;
    }

    .storefront-app .store-home-category-grid,
    .storefront-app .store-home-category-slider{
        grid-template-columns:repeat(3,minmax(92px,1fr)) !important;
        gap:16px !important;
    }

    .storefront-app .store-home-category-card{
        width:auto !important;
    }

    .storefront-app .store-home-category-thumb{
        width:100% !important;
        height:auto !important;
        aspect-ratio:1/1 !important;
    }

    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:14px !important;
    }
}

/* Storefront final guard: keep category dropdown attached to the active nav item */
.storefront-app .store-category-menu-item.has-children{
    position:relative !important;
}

.storefront-app .store-category-menu-panel{
    top:100% !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) translateY(6px) !important;
    width:280px !important;
    min-width:280px !important;
    max-width:min(280px,calc(100vw - 24px)) !important;
    margin-top:0 !important;
    padding:10px !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    border:1px solid #e5edf6 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 14px 34px rgba(16,36,61,.13) !important;
}

.storefront-app .store-category-menu-item:hover .store-category-menu-panel,
.storefront-app .store-category-menu-item:focus-within .store-category-menu-panel{
    display:grid !important;
    transform:translateX(-50%) translateY(0) !important;
}

.storefront-app .store-category-menu-panel::before{
    content:"";
    position:absolute;
    left:50%;
    top:-7px;
    width:12px;
    height:12px;
    background:#fff;
    border-left:1px solid #e5edf6;
    border-top:1px solid #e5edf6;
    transform:translateX(-50%) rotate(45deg);
}

/* Storefront product card standard: use the previous correct card UI everywhere */
.storefront-app{
    --store-pro-container:90vw !important;
}

.storefront-app .store-shell,
.storefront-app .main-content,
.storefront-app .main-content.product-detail-page,
.storefront-app .store-topbar-inner,
.storefront-app .store-main-header-inner,
.storefront-app .store-category-nav,
.storefront-app .store-category-menu-inner,
.storefront-app .store-reference-footer-inner,
.storefront-app .store-reference-footer-bottom,
.storefront-app .store-newsletter-inner,
.storefront-app .store-wishlist-page,
.storefront-app .store-not-found-shell,
.storefront-app .account-layout,
.storefront-app .store-page-container{
    width:90vw !important;
    max-width:none !important;
}

.storefront-app .store-product-grid,
.storefront-app .store-product-grid.four-up,
.storefront-app .store-product-grid.five-up,
.storefront-app .store-product-grid.six-up,
.storefront-app .store-wishlist-grid,
.storefront-app .product-recommendation-section .store-product-grid.compact-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr)) !important;
    gap:24px !important;
    align-items:stretch !important;
    overflow:visible !important;
}

.storefront-app .store-product-col,
.storefront-app .product-related-section .store-product-grid.compact-grid .store-product-col,
.storefront-app .product-recommendation-section .store-product-grid.compact-grid .store-product-col{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:initial !important;
}

.storefront-app .product-related-track{
    gap:24px !important;
    align-items:stretch !important;
}

.storefront-app .product-related-slide,
.storefront-app .product-related-section .product-related-slide,
.storefront-app .product-recommendation-section .product-related-slide{
    flex:0 0 300px !important;
    width:300px !important;
    min-width:300px !important;
    max-width:300px !important;
}

.storefront-app .store-product-card,
.storefront-app .store-listing-page .store-product-card,
.storefront-app .product-related-section .store-product-card,
.storefront-app .product-recommendation-section .store-product-card,
.storefront-app .store-home-product-tabs .store-product-card{
    height:100% !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
    position:relative !important;
    border:0 !important;
    border-radius:5px !important;
    background:#fff !important;
    box-shadow:none !important;
    transform:none !important;
}

.storefront-app .store-product-card:hover{
    transform:none !important;
    box-shadow:none !important;
}

.storefront-app .store-product-media,
.storefront-app .product-related-section .store-product-media,
.storefront-app .product-recommendation-section .store-product-media{
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:1/1 !important;
    overflow:hidden !important;
    border-radius:0 !important;
    background:#f8f8f8 !important;
}

.storefront-app .store-product-image-link{
    display:block !important;
    width:100% !important;
    height:100% !important;
    color:inherit !important;
    text-decoration:none !important;
}

.storefront-app .store-product-image{
    display:block !important;
    width:100% !important;
    height:100% !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    transform:none !important;
}

.storefront-app .store-product-content,
.storefront-app .store-listing-page .store-product-content,
.storefront-app .product-related-section .store-product-content,
.storefront-app .product-recommendation-section .store-product-content{
    flex:1 1 auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    min-height:0 !important;
    padding:18px !important;
    background:#f8f8f8 !important;
    border-radius:0 !important;
}

.storefront-app .store-product-title,
.storefront-app .product-related-section .store-product-title{
    min-height:44px !important;
    margin:0 !important;
    color:#102a43 !important;
    font-size:16px !important;
    font-weight:500 !important;
    line-height:1.35 !important;
}

.storefront-app .store-product-title a{
    display:-webkit-box !important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    color:#102a43 !important;
    text-decoration:none !important;
}

.storefront-app .store-product-meta-row,
.storefront-app .store-product-price-row,
.storefront-app .product-related-section .store-product-price-row{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:10px !important;
    flex-wrap:nowrap !important;
    min-height:0 !important;
}

.storefront-app .store-product-brand,
.storefront-app .product-related-section .store-product-brand{
    color:#5f7896 !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1.2 !important;
    text-decoration:none !important;
}

.storefront-app .store-product-coupon,
.storefront-app .product-related-section .store-product-coupon{
    justify-self:stretch !important;
    max-width:none !important;
    overflow:hidden !important;
    border-radius:5px !important;
    background:#b8f3a9 !important;
    color:#0b682f !important;
    border:0 !important;
    padding:7px 12px !important;
    font-size:10px !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    text-align:center !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
}

.storefront-app .store-product-coupon span,
.storefront-app .product-related-section .store-product-coupon span{
    display:block !important;
    min-height:0 !important;
    padding:0 !important;
    font-size:inherit !important;
    line-height:inherit !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}

.storefront-app .store-product-meta-row{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    gap:8px !important;
}

.storefront-app .store-product-price-main strong,
.storefront-app .store-product-price-row strong,
.storefront-app .product-related-section .store-product-price-main strong{
    color:#102a43 !important;
    font-size:21px !important;
    font-weight:900 !important;
    line-height:1.1 !important;
}

.storefront-app .store-product-price-main{
    min-width:0 !important;
    flex:1 1 auto !important;
    display:grid !important;
    gap:3px !important;
    align-content:start !important;
}

.storefront-app .store-product-savings{
    display:flex !important;
    align-items:center !important;
    gap:4px !important;
    min-height:14px !important;
    line-height:1 !important;
}

.storefront-app .store-product-savings span,
.storefront-app .product-related-section .store-product-savings span{
    color:#9aabc0 !important;
    font-size:12px !important;
    text-decoration:line-through !important;
}

.storefront-app .store-product-savings em,
.storefront-app .product-related-section .store-product-savings em{
    color:#129447 !important;
    font-size:12px !important;
    font-style:normal !important;
    font-weight:900 !important;
}

.storefront-app .store-product-rating,
.storefront-app .product-related-section .store-product-rating{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:4px !important;
    flex:0 0 auto !important;
    min-width:0 !important;
}

.storefront-app .store-stars,
.storefront-app .product-related-section .store-stars{
    gap:1px !important;
    color:#d7dee8 !important;
    font-size:11px !important;
}

.storefront-app .store-product-rating span,
.storefront-app .product-related-section .store-product-rating span{
    color:#9aabc0 !important;
    font-size:11px !important;
}

.storefront-app .store-product-form{
    width:100% !important;
    margin-top:auto !important;
}

.storefront-app .store-product-button,
.storefront-app .product-related-section .store-product-button{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:100% !important;
    min-height:46px !important;
    margin-top:4px !important;
    padding:0 12px !important;
    border:0 !important;
    border-radius:5px !important;
    background:#102a43 !important;
    color:#fff !important;
    font-size:16px !important;
    font-weight:900 !important;
    text-decoration:none !important;
}

.storefront-app .store-product-badge,
.storefront-app .product-related-section .store-product-badge{
    position:absolute !important;
    left:14px !important;
    top:14px !important;
    z-index:3 !important;
    min-height:auto !important;
    border:0 !important;
    border-radius:999px !important;
    background:#102a43 !important;
    color:#fff !important;
    padding:7px 10px !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist,
.storefront-app .product-related-section .store-product-wishlist{
    position:absolute !important;
    right:14px !important;
    top:14px !important;
    z-index:3 !important;
    width:40px !important;
    height:40px !important;
    border:0 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#102a43 !important;
    box-shadow:none !important;
}

.storefront-app .store-category-drawer{
    width:min(360px,calc(100vw - 28px)) !important;
    background:#fff !important;
}

.storefront-app .store-drawer-list{
    padding:8px 10px 18px !important;
}

.storefront-app .store-drawer-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 38px !important;
    gap:8px !important;
    align-items:center !important;
}

.storefront-app .store-drawer-group.no-children .store-drawer-row{
    grid-template-columns:1fr !important;
}

.storefront-app .store-drawer-arrow{
    width:38px !important;
    height:38px !important;
    border:1px solid #d8e3ef !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#53677f !important;
}

.storefront-app .store-listing-page .store-breadcrumbs{
    margin:22px 0 34px !important;
}

.storefront-app .store-listing-page .store-listing-layout{
    gap:42px !important;
}

.storefront-app .store-listing-page .store-category-hero{
    margin-top:0 !important;
    margin-bottom:40px !important;
}

.storefront-app .store-listing-page .store-catalog-head{
    margin-top:0 !important;
    margin-bottom:24px !important;
}

@media(max-width:575px){
    .storefront-app{
        --store-pro-container:min(100%,calc(100% - 20px)) !important;
    }

    .storefront-app .store-shell,
    .storefront-app .main-content,
    .storefront-app .main-content.product-detail-page,
    .storefront-app .store-topbar-inner,
    .storefront-app .store-main-header-inner,
    .storefront-app .store-category-nav,
    .storefront-app .store-category-menu-inner,
    .storefront-app .store-reference-footer-inner,
    .storefront-app .store-reference-footer-bottom,
    .storefront-app .store-newsletter-inner,
    .storefront-app .store-wishlist-page,
    .storefront-app .store-not-found-shell,
    .storefront-app .account-layout,
    .storefront-app .store-page-container{
        width:min(100%,calc(100% - 20px)) !important;
    }

    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.four-up,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up,
    .storefront-app .store-wishlist-grid,
    .storefront-app .product-recommendation-section .store-product-grid.compact-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .storefront-app .product-related-track{
        gap:10px !important;
    }

    .storefront-app .product-related-slide,
    .storefront-app .product-related-section .product-related-slide,
    .storefront-app .product-recommendation-section .product-related-slide{
        flex:0 0 calc(50% - 5px) !important;
        width:calc(50% - 5px) !important;
        min-width:calc(50% - 5px) !important;
        max-width:calc(50% - 5px) !important;
    }

    .storefront-app .store-product-content,
    .storefront-app .store-listing-page .store-product-content,
    .storefront-app .product-related-section .store-product-content,
    .storefront-app .product-recommendation-section .store-product-content{
        gap:8px !important;
        padding:9px 8px !important;
    }

    .storefront-app .store-product-title,
    .storefront-app .product-related-section .store-product-title{
        min-height:38px !important;
        font-size:13px !important;
        line-height:1.3 !important;
    }

    .storefront-app .store-product-meta-row{
        display:grid !important;
        grid-template-columns:auto minmax(0,1fr) !important;
        gap:5px !important;
        align-items:center !important;
    }

    .storefront-app .store-product-coupon,
    .storefront-app .product-related-section .store-product-coupon{
        max-width:none !important;
        width:auto !important;
        padding:7px 9px !important;
        font-size:9px !important;
    }

    .storefront-app .store-product-price-row,
    .storefront-app .product-related-section .store-product-price-row{
        display:flex !important;
        align-items:flex-start !important;
        justify-content:space-between !important;
        flex-wrap:nowrap !important;
        gap:6px !important;
    }

    .storefront-app .store-product-price-main strong,
    .storefront-app .store-product-price-row strong,
    .storefront-app .product-related-section .store-product-price-main strong{
        font-size:17px !important;
    }

    .storefront-app .store-product-price-main{
        max-width:calc(100% - 58px) !important;
    }

    .storefront-app .store-product-savings{
        gap:3px !important;
    }

    .storefront-app .store-product-savings span,
    .storefront-app .product-related-section .store-product-savings span,
    .storefront-app .store-product-savings em,
    .storefront-app .product-related-section .store-product-savings em{
        font-size:10px !important;
    }

    .storefront-app .store-product-rating,
    .storefront-app .product-related-section .store-product-rating{
        justify-content:flex-end !important;
        flex:0 0 auto !important;
    }

    .storefront-app .store-stars,
    .storefront-app .product-related-section .store-stars{
        font-size:10px !important;
    }

    .storefront-app .store-product-button,
    .storefront-app .product-related-section .store-product-button{
        min-height:38px !important;
        margin-top:2px !important;
        font-size:12px !important;
    }

    .storefront-app .store-product-badge,
    .storefront-app .product-related-section .store-product-badge{
        left:8px !important;
        top:8px !important;
        padding:6px 8px !important;
        font-size:10px !important;
    }

    .storefront-app .store-product-wishlist,
    .storefront-app .product-related-section .store-product-wishlist{
        right:8px !important;
        top:8px !important;
        width:34px !important;
        height:34px !important;
    }

    .storefront-app .store-home-page .store-home-benefits{
        width:100% !important;
        max-width:none !important;
        margin:18px 0 24px !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .storefront-app .store-home-page .store-home-benefits article{
        min-width:0 !important;
        min-height:104px !important;
        padding:12px 10px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:8px !important;
        align-content:start !important;
        justify-items:start !important;
        border:1px solid #edf2f8 !important;
        border-radius:12px !important;
        background:#fff !important;
        box-shadow:none !important;
    }

    .storefront-app .store-home-page .store-home-benefits i{
        width:38px !important;
        height:38px !important;
        border-radius:999px !important;
        font-size:16px !important;
    }

    .storefront-app .store-home-page .store-home-benefits strong{
        font-size:13px !important;
        line-height:1.15 !important;
    }

    .storefront-app .store-home-page .store-home-benefits span{
        margin-top:3px !important;
        font-size:11px !important;
        line-height:1.25 !important;
    }

    .storefront-app .store-home-page .store-home-categories-section .store-section-head{
        align-items:center !important;
        flex-direction:row !important;
        gap:10px !important;
        margin-bottom:12px !important;
    }

    .storefront-app .store-home-page .store-home-categories-section .store-section-head h2{
        font-size:25px !important;
        line-height:1.15 !important;
    }

    .storefront-app .store-home-page .store-home-categories-section .store-home-section-actions a{
        white-space:nowrap !important;
        font-size:12px !important;
    }


    .storefront-app .store-home-page .store-section{
        margin-top:24px !important;
    }

    .storefront-app .store-home-page .store-section-head{
        width:100% !important;
        margin-bottom:14px !important;
        gap:10px !important;
    }

    .storefront-app .store-home-page .store-section-kicker{
        display:block !important;
        margin-bottom:3px !important;
        font-size:10px !important;
        line-height:1 !important;
        letter-spacing:.11em !important;
    }

    .storefront-app .store-home-page .store-section-head h2{
        margin:0 !important;
        color:#10243d !important;
        font-size:25px !important;
        font-weight:500 !important;
        line-height:1.08 !important;
        letter-spacing:-.04em !important;
        text-wrap:initial !important;
    }

    .storefront-app .store-home-page .store-dynamic-offers-section .store-section-head{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        align-items:end !important;
    }

    .storefront-app .store-home-page .store-dynamic-offers-section .store-section-head h2{
        white-space:nowrap !important;
        font-size:24px !important;
    }

    .storefront-app .store-home-page .store-coupon-slider-actions{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        gap:6px !important;
        min-width:max-content !important;
    }

    .storefront-app .store-home-page .store-coupon-slider-actions a,
    .storefront-app .store-home-page .store-home-tab-actions a,
    .storefront-app .store-home-page .store-home-section-actions a{
        color:#5f7896 !important;
        font-size:12px !important;
        font-weight:850 !important;
        line-height:1 !important;
        white-space:nowrap !important;
        text-decoration:none !important;
    }

    .storefront-app .store-home-page .store-coupon-card{
        padding:12px !important;
        border-radius:8px !important;
    }

    .storefront-app .store-home-page .store-coupon-card span{
        font-size:11px !important;
    }

    .storefront-app .store-home-page .store-coupon-card strong{
        font-size:14px !important;
    }

    .storefront-app .store-home-page .store-coupon-card small{
        font-size:11px !important;
        line-height:1.35 !important;
    }

    .storefront-app .store-home-page .store-coupon-card button[type="submit"]{
        min-height:38px !important;
        border-radius:5px !important;
        font-size:12px !important;
    }

    .storefront-app .store-home-page .store-home-tab-head{
        display:block !important;
        margin-bottom:12px !important;
    }

    .storefront-app .store-home-page .store-home-tab-head h2{
        white-space:nowrap !important;
        font-size:25px !important;
    }

    .storefront-app .store-home-page .store-home-tab-actions{
        display:flex !important;
        align-items:center !important;
        gap:8px !important;
        width:100% !important;
        margin-top:10px !important;
        overflow-x:auto !important;
        padding-bottom:2px !important;
        scrollbar-width:none !important;
    }

    .storefront-app .store-home-page .store-home-tab-actions::-webkit-scrollbar{
        display:none !important;
    }

    .storefront-app .store-home-page .store-home-tab-actions button{
        min-height:36px !important;
        padding:0 13px !important;
        border-radius:5px !important;
        font-size:12px !important;
        font-weight:850 !important;
        white-space:nowrap !important;
    }

    .storefront-app .store-home-page .store-home-tab-panel .store-product-grid{
        margin-top:6px !important;
    }

    .storefront-app .store-listing-page .store-breadcrumbs{
        margin:16px 0 22px !important;
    }

    .storefront-app .store-listing-page .store-category-hero{
        margin-bottom:26px !important;
    }
}

/* Storefront final typography + product overlay alignment
   Final rule-set: keeps the layout, normalizes font rhythm, and aligns product-card controls. */
.storefront-app{
    font-family:"Inter","Segoe UI",Roboto,Arial,sans-serif !important;
    color:#102a43 !important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.storefront-app .store-home-hero h1{
    max-width:680px !important;
    margin:12px 0 10px !important;
    font-size:clamp(38px,3.15vw,52px) !important;
    font-weight:650 !important;
    line-height:1.06 !important;
    letter-spacing:-.045em !important;
}

.storefront-app .store-home-hero h1 small{
    margin-top:6px !important;
    font-size:clamp(21px,1.65vw,28px) !important;
    font-weight:650 !important;
    line-height:1.2 !important;
    letter-spacing:-.025em !important;
}

.storefront-app .store-home-hero p{
    max-width:600px !important;
    font-size:15px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
}

.storefront-app .store-home-kicker,
.storefront-app .store-section-kicker{
    font-size:10.5px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
}

.storefront-app .store-section-head{
    align-items:flex-end !important;
    gap:16px !important;
    margin-bottom:18px !important;
}

.storefront-app .store-section-head h2,
.storefront-app .store-home-page .store-section-head h2,
.storefront-app .store-home-page .store-home-categories-section .store-section-head h2,
.storefront-app .store-home-page .store-home-tab-head h2,
.storefront-app .product-recommendation-section .store-section-head h2{
    margin:0 !important;
    color:#102a43 !important;
    font-size:clamp(28px,2.05vw,36px) !important;
    font-weight:600 !important;
    line-height:1.12 !important;
    letter-spacing:-.04em !important;
}

.storefront-app .store-section-head a,
.storefront-app .store-home-section-actions a,
.storefront-app .store-coupon-slider-actions a,
.storefront-app .store-home-tab-actions a{
    color:#5f7896 !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.storefront-app .store-home-benefits strong{
    font-size:15px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    letter-spacing:-.015em !important;
}

.storefront-app .store-home-benefits span{
    font-size:12.5px !important;
    font-weight:400 !important;
    line-height:1.35 !important;
}

.storefront-app .store-home-category-card strong{
    color:#102a43 !important;
    font-size:13.5px !important;
    font-weight:700 !important;
    line-height:1.18 !important;
    letter-spacing:-.01em !important;
}

.storefront-app .store-coupon-card span{
    color:#31516f !important;
    font-size:12px !important;
    font-weight:750 !important;
    line-height:1.25 !important;
}

.storefront-app .store-coupon-card strong{
    color:#11733f !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:.05em !important;
}

.storefront-app .store-coupon-card small{
    color:#536b88 !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
}

.storefront-app .store-coupon-card button[type="submit"]{
    font-size:13px !important;
    font-weight:800 !important;
}

.storefront-app .store-home-tab-actions,
.storefront-app .store-coupon-slider-actions,
.storefront-app .store-home-section-actions{
    align-items:center !important;
}

.storefront-app .store-home-tab-actions button{
    min-height:38px !important;
    padding:0 15px !important;
    border-radius:5px !important;
    font-size:13px !important;
    font-weight:800 !important;
}

.storefront-app .store-product-badge,
.storefront-app .product-related-section .store-product-badge,
.storefront-app .product-recommendation-section .store-product-badge{
    top:12px !important;
    left:12px !important;
    min-height:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 10px !important;
    font-size:11px !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist,
.storefront-app .product-related-section .store-product-wishlist,
.storefront-app .product-recommendation-section .store-product-wishlist{
    top:12px !important;
    right:12px !important;
    width:38px !important;
    height:38px !important;
    display:grid !important;
    place-items:center !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist i,
.storefront-app .product-related-section .store-product-wishlist i,
.storefront-app .product-recommendation-section .store-product-wishlist i{
    display:block !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1 !important;
}

@media(max-width:575px){
    .storefront-app .store-home-hero h1{
        max-width:100% !important;
        margin:9px 0 7px !important;
        font-size:32px !important;
        font-weight:650 !important;
        line-height:1.08 !important;
        letter-spacing:-.045em !important;
    }

    .storefront-app .store-home-hero h1 small{
        font-size:18px !important;
        line-height:1.2 !important;
    }

    .storefront-app .store-home-hero p{
        font-size:13px !important;
        line-height:1.45 !important;
    }

    .storefront-app .store-home-page .store-section{
        margin-top:26px !important;
    }

    .storefront-app .store-section-head,
    .storefront-app .store-home-page .store-section-head,
    .storefront-app .store-home-page .store-dynamic-offers-section .store-section-head,
    .storefront-app .store-home-page .store-home-categories-section .store-section-head{
        display:flex !important;
        flex-direction:row !important;
        align-items:flex-end !important;
        justify-content:space-between !important;
        gap:10px !important;
        margin-bottom:12px !important;
    }

    .storefront-app .store-section-head h2,
    .storefront-app .store-home-page .store-section-head h2,
    .storefront-app .store-home-page .store-home-categories-section .store-section-head h2,
    .storefront-app .store-home-page .store-dynamic-offers-section .store-section-head h2,
    .storefront-app .store-home-page .store-home-tab-head h2,
    .storefront-app .product-recommendation-section .store-section-head h2{
        font-size:23px !important;
        font-weight:600 !important;
        line-height:1.12 !important;
        letter-spacing:-.04em !important;
        white-space:normal !important;
    }

    .storefront-app .store-home-page .store-dynamic-offers-section .store-section-head h2,
    .storefront-app .store-home-page .store-home-tab-head h2{
        white-space:nowrap !important;
        font-size:22px !important;
    }

    .storefront-app .store-section-kicker,
    .storefront-app .store-home-page .store-section-kicker{
        margin-bottom:4px !important;
        font-size:9.5px !important;
        line-height:1 !important;
    }

    .storefront-app .store-section-head a,
    .storefront-app .store-home-section-actions a,
    .storefront-app .store-coupon-slider-actions a,
    .storefront-app .store-home-tab-actions a{
        font-size:12px !important;
        font-weight:750 !important;
    }

    .storefront-app .store-home-benefits strong{
        font-size:12.5px !important;
        line-height:1.2 !important;
    }

    .storefront-app .store-home-benefits span{
        font-size:11px !important;
        line-height:1.25 !important;
    }

    .storefront-app .store-home-category-card strong,
    .storefront-app .store-home-page .store-home-category-card strong,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-card strong{
        min-height:28px !important;
        font-size:11.5px !important;
        font-weight:700 !important;
        line-height:1.15 !important;
    }

    .storefront-app .store-coupon-card span,
    .storefront-app .store-home-page .store-coupon-card span{
        font-size:11px !important;
        line-height:1.25 !important;
    }

    .storefront-app .store-coupon-card strong,
    .storefront-app .store-home-page .store-coupon-card strong{
        font-size:12px !important;
    }

    .storefront-app .store-coupon-card small,
    .storefront-app .store-home-page .store-coupon-card small{
        font-size:10.5px !important;
        line-height:1.3 !important;
    }

    .storefront-app .store-home-tab-actions button{
        min-height:34px !important;
        padding:0 12px !important;
        font-size:12px !important;
    }

    .storefront-app .store-product-badge,
    .storefront-app .product-related-section .store-product-badge,
    .storefront-app .product-recommendation-section .store-product-badge{
        top:8px !important;
        left:8px !important;
        min-height:24px !important;
        padding:0 8px !important;
        font-size:10px !important;
    }

    .storefront-app .store-product-wishlist,
    .storefront-app .product-related-section .store-product-wishlist,
    .storefront-app .product-recommendation-section .store-product-wishlist{
        top:8px !important;
        right:8px !important;
        width:34px !important;
        height:34px !important;
    }
}

/* FINAL product-card row alignment: badge/wishlist one visual row + readable brand. */
.storefront-app .store-product-media,
.storefront-app .product-related-section .store-product-media,
.storefront-app .product-recommendation-section .store-product-media{
    position:relative !important;
}

.storefront-app .store-product-badge,
.storefront-app .product-related-section .store-product-badge,
.storefront-app .product-recommendation-section .store-product-badge{
    position:absolute !important;
    top:16px !important;
    left:12px !important;
    right:auto !important;
    z-index:5 !important;
    min-height:28px !important;
    height:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 10px !important;
    margin:0 !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist-form,
.storefront-app .product-related-section .store-product-wishlist-form,
.storefront-app .product-recommendation-section .store-product-wishlist-form{
    position:absolute !important;
    top:12px !important;
    right:12px !important;
    left:auto !important;
    z-index:5 !important;
    width:36px !important;
    height:36px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist,
.storefront-app .product-related-section .store-product-wishlist,
.storefront-app .product-recommendation-section .store-product-wishlist{
    position:static !important;
    inset:auto !important;
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    padding:0 !important;
    margin:0 !important;
    display:grid !important;
    place-items:center !important;
    border:0 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#102a43 !important;
    box-shadow:none !important;
    line-height:1 !important;
}

.storefront-app .store-product-wishlist i,
.storefront-app .product-related-section .store-product-wishlist i,
.storefront-app .product-recommendation-section .store-product-wishlist i{
    display:block !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1 !important;
}

.storefront-app .store-product-meta-row,
.storefront-app .product-related-section .store-product-meta-row,
.storefront-app .product-recommendation-section .store-product-meta-row{
    display:grid !important;
    grid-template-columns:minmax(46px,max-content) minmax(0,1fr) !important;
    align-items:center !important;
    column-gap:8px !important;
    min-height:26px !important;
}

.storefront-app .store-product-brand,
.storefront-app .product-related-section .store-product-brand,
.storefront-app .product-recommendation-section .store-product-brand{
    min-width:46px !important;
    max-width:none !important;
    width:auto !important;
    overflow:visible !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
}

.storefront-app .store-product-coupon,
.storefront-app .product-related-section .store-product-coupon,
.storefront-app .product-recommendation-section .store-product-coupon{
    min-width:0 !important;
    width:100% !important;
    justify-self:stretch !important;
}

@media(max-width:575px){
    .storefront-app .store-product-badge,
    .storefront-app .product-related-section .store-product-badge,
    .storefront-app .product-recommendation-section .store-product-badge{
        top:13px !important;
        left:8px !important;
        height:24px !important;
        min-height:24px !important;
        padding:0 8px !important;
    }

    .storefront-app .store-product-wishlist-form,
    .storefront-app .product-related-section .store-product-wishlist-form,
    .storefront-app .product-recommendation-section .store-product-wishlist-form{
        top:8px !important;
        right:8px !important;
        width:34px !important;
        height:34px !important;
    }

    .storefront-app .store-product-wishlist,
    .storefront-app .product-related-section .store-product-wishlist,
    .storefront-app .product-recommendation-section .store-product-wishlist{
        width:34px !important;
        height:34px !important;
        min-width:34px !important;
        min-height:34px !important;
    }

    .storefront-app .store-product-meta-row,
    .storefront-app .product-related-section .store-product-meta-row,
    .storefront-app .product-recommendation-section .store-product-meta-row{
        grid-template-columns:minmax(38px,max-content) minmax(0,1fr) !important;
        column-gap:6px !important;
    }

    .storefront-app .store-product-brand,
    .storefront-app .product-related-section .store-product-brand,
    .storefront-app .product-recommendation-section .store-product-brand{
        min-width:38px !important;
        font-size:10.5px !important;
    }
}

/* FINAL mobile category thumbnails: equal compact tiles. */
@media(max-width:575px){
    .storefront-app .store-home-page .store-home-categories-section{
        overflow:hidden !important;
    }

    .storefront-app .store-home-page .store-home-category-grid,
    .storefront-app .store-home-page .store-home-category-slider,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-grid{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:10px !important;
        align-items:start !important;
        overflow:visible !important;
        padding:0 !important;
    }

    .storefront-app .store-home-page .store-home-category-card,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-card{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        min-height:0 !important;
        padding:0 !important;
        display:grid !important;
        grid-template-rows:auto 28px !important;
        gap:6px !important;
        align-items:start !important;
        justify-items:center !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        text-decoration:none !important;
    }

    .storefront-app .store-home-page .store-home-category-thumb,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-thumb{
        width:100% !important;
        height:auto !important;
        aspect-ratio:1/1 !important;
        max-height:none !important;
        border-radius:7px !important;
        background:#f1f4f8 !important;
        overflow:hidden !important;
        display:grid !important;
        place-items:center !important;
    }

    .storefront-app .store-home-page .store-home-category-thumb img,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-thumb img{
        display:block !important;
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .storefront-app .store-home-page .store-home-category-card strong,
    .storefront-app .store-home-page .store-home-categories-section .store-home-category-card strong{
        min-height:0 !important;
        height:28px !important;
        max-width:100% !important;
        margin:0 !important;
        color:#102a43 !important;
        font-size:10.5px !important;
        font-weight:800 !important;
        line-height:1.12 !important;
        text-align:center !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }
}

/* FINAL cart drawer coupon UX: compact state-aware applied/offers/code UI. */
.storefront-app .cart-coupon-panel{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    overflow:visible !important;
}

.storefront-app .cart-coupon-head{
    min-height:42px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:center !important;
    gap:8px !important;
    width:100% !important;
    padding:8px 10px !important;
    border:1px solid #dce6f2 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:none !important;
}

.storefront-app .cart-coupon-head.is-applied{
    border-color:#bfe5ca !important;
    background:#f8fff9 !important;
}

.storefront-app .cart-coupon-head > span:first-child{
    display:grid !important;
    gap:1px !important;
    min-width:0 !important;
}

.storefront-app .cart-coupon-head strong{
    margin:0 !important;
    color:#102a43 !important;
    font-size:14px !important;
    font-weight:850 !important;
    line-height:1.15 !important;
}

.storefront-app .cart-coupon-head small{
    color:#60758f !important;
    font-size:11px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
}

.storefront-app .cart-coupon-head.is-applied small{
    color:#137647 !important;
}

.storefront-app .cart-coupon-head-code,
.storefront-app .cart-coupon-head > span:not(:first-child){
    min-height:22px !important;
    padding:0 8px !important;
    border:1px dashed #9fcfb2 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#29415e !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
}

.storefront-app .cart-coupon-head i{
    color:#60758f !important;
    font-size:12px !important;
}

.storefront-app .cart-coupon-content{
    display:none !important;
    padding:7px 0 0 !important;
}

.storefront-app .cart-coupon-content.active{
    display:grid !important;
    gap:8px !important;
}

.storefront-app .cart-coupon-applied-smart{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:center !important;
    gap:8px !important;
    padding:10px !important;
    border:1px solid #bfe5ca !important;
    border-radius:10px !important;
    background:#f4fff7 !important;
}

.storefront-app .cart-coupon-applied-main{
    display:grid !important;
    gap:3px !important;
    min-width:0 !important;
}

.storefront-app .cart-coupon-applied-main strong{
    color:#102a43 !important;
    font-size:13px !important;
    font-weight:850 !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}

.storefront-app .cart-coupon-applied-main small{
    color:#37624a !important;
    font-size:11px !important;
    font-weight:650 !important;
    line-height:1.25 !important;
}

.storefront-app .cart-coupon-status{
    width:max-content !important;
    min-height:20px !important;
    padding:0 7px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
    border-radius:999px !important;
    background:#dff8e7 !important;
    color:#157347 !important;
    font-size:10px !important;
    font-weight:900 !important;
}

.storefront-app .cart-coupon-code{
    min-height:24px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 8px !important;
    border:1px dashed #9fcfb2 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#29415e !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
}

.storefront-app .cart-coupon-applied-smart form{
    margin:0 !important;
}

.storefront-app .cart-coupon-remove{
    width:auto !important;
    min-width:64px !important;
    min-height:32px !important;
    padding:0 10px !important;
    border:1px solid #d7e3ee !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#d92d20 !important;
    font-size:12px !important;
    font-weight:850 !important;
}

.storefront-app .cart-coupon-remove:hover{
    border-color:#ffd0ca !important;
    background:#fff5f4 !important;
}

.storefront-app .cart-coupon-slider{
    display:grid !important;
    gap:6px !important;
    margin:0 !important;
}

.storefront-app .cart-coupon-slider-toolbar{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:8px !important;
    min-height:26px !important;
}

.storefront-app .cart-coupon-slider-toolbar > span{
    color:#102a43 !important;
    font-size:12px !important;
    font-weight:850 !important;
}

.storefront-app .cart-coupon-slider-toolbar > small{
    color:#60758f !important;
    font-size:11px !important;
    font-weight:750 !important;
}

.storefront-app .cart-coupon-slider-actions{
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
}

.storefront-app .cart-coupon-slider-actions button{
    width:28px !important;
    min-width:28px !important;
    height:28px !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
    border:1px solid #d8e3ef !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#29415e !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option{
    min-height:70px !important;
    padding:9px 10px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    border:1px solid #cfe9d9 !important;
    border-radius:10px !important;
    background:#f7fcf9 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option strong{
    color:#102a43 !important;
    font-size:12px !important;
    font-weight:850 !important;
    line-height:1.2 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option span{
    display:block !important;
    margin-top:2px !important;
    color:#31516f !important;
    font-size:11px !important;
    font-weight:750 !important;
    line-height:1.2 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option small{
    display:block !important;
    margin-top:2px !important;
    color:#157347 !important;
    font-size:10.5px !important;
    font-weight:750 !important;
    line-height:1.25 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option button{
    min-width:64px !important;
    min-height:34px !important;
    padding:0 12px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#147a4b !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:850 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option button:disabled{
    background:#d8e0e8 !important;
    color:#6b7c93 !important;
}

.storefront-app .cart-coupon-form{
    display:grid !important;
    gap:5px !important;
}

.storefront-app .cart-coupon-form label{
    color:#60758f !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-form > div{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
}

.storefront-app .cart-coupon-form input{
    min-height:38px !important;
    padding:0 11px !important;
    border:1px solid #d8e3ef !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#102a43 !important;
    font-size:13px !important;
}

.storefront-app .cart-coupon-form button{
    min-width:70px !important;
    min-height:38px !important;
    padding:0 12px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#102a43 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:850 !important;
}

@media(max-width:575px){
    .storefront-app .cart-coupon-applied-smart{
        grid-template-columns:minmax(0,1fr) auto !important;
    }

    .storefront-app .cart-coupon-applied-smart .cart-coupon-code{
        grid-column:1 / 2 !important;
        justify-self:start !important;
    }

    .storefront-app .cart-coupon-applied-smart form{
        grid-column:2 / 3 !important;
        grid-row:1 / span 2 !important;
    }

    .storefront-app .cart-coupon-slider-toolbar{
        grid-template-columns:auto 1fr auto !important;
    }

    .storefront-app .cart-coupon-track .cart-coupon-option{
        min-height:66px !important;
        padding:8px !important;
    }

    .storefront-app .cart-coupon-form > div{
        gap:6px !important;
    }
}

/* FINAL cart coupon polish pass: cleaner spacing, label placement, and disabled offer clarity. */
.storefront-app .cart-footer{
    gap:10px !important;
}

.storefront-app .cart-coupon-head{
    min-height:40px !important;
    padding:8px 10px !important;
    border-color:#d9e4f0 !important;
    border-radius:9px !important;
    background:#fff !important;
}

.storefront-app .cart-coupon-head strong{
    font-size:13px !important;
    font-weight:900 !important;
}

.storefront-app .cart-coupon-head small{
    margin-top:1px !important;
    font-size:11px !important;
}

.storefront-app .cart-coupon-content.active{
    gap:7px !important;
    padding-top:7px !important;
}

.storefront-app .cart-coupon-slider-toolbar{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    min-height:28px !important;
}

.storefront-app .cart-coupon-slider-toolbar > span{
    font-size:12px !important;
    font-weight:900 !important;
}

.storefront-app .cart-coupon-slider-toolbar > small{
    margin-right:auto !important;
    color:#6c7f96 !important;
    font-size:11px !important;
    font-weight:800 !important;
}

.storefront-app .cart-coupon-slider-actions{
    margin-left:auto !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option{
    min-height:68px !important;
    padding:9px 10px !important;
    border-color:#d4eadb !important;
    background:#f8fff9 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option.is-disabled{
    border-color:#e0e8f1 !important;
    background:#f8fafc !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option.is-disabled strong{
    color:#4b617a !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option.is-disabled span,
.storefront-app .cart-coupon-track .cart-coupon-option.is-disabled small{
    color:#6f8196 !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option button{
    min-width:64px !important;
    height:34px !important;
    min-height:34px !important;
    border-radius:8px !important;
}

.storefront-app .cart-coupon-track .cart-coupon-option button:disabled{
    min-width:86px !important;
    background:#e5ebf2 !important;
    color:#7c8da2 !important;
}

.storefront-app .cart-coupon-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    width:100% !important;
    margin:1px 0 0 !important;
    padding:8px !important;
    border:1px solid #edf2f7 !important;
    border-radius:10px !important;
    background:#fbfdff !important;
}

.storefront-app .cart-coupon-form label{
    display:block !important;
    grid-column:1 / -1 !important;
    margin:0 !important;
    color:#506783 !important;
    font-size:11px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-form > div{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 74px !important;
    gap:7px !important;
    width:100% !important;
}

.storefront-app .cart-coupon-form input{
    width:100% !important;
    min-height:38px !important;
    font-size:13px !important;
}

.storefront-app .cart-coupon-form button{
    min-width:74px !important;
    min-height:38px !important;
}

.storefront-app .cart-summary-lines{
    gap:7px !important;
    padding-top:2px !important;
}

@media(max-width:575px){
    .storefront-app .cart-coupon-head{
        min-height:38px !important;
    }

    .storefront-app .cart-coupon-track .cart-coupon-option{
        min-height:66px !important;
    }

    .storefront-app .cart-coupon-form{
        padding:7px !important;
    }
}

/* FINAL cart coupon minimalist mode: no boxed accordion, no arrows. */
.storefront-app .cart-coupon-panel{
    display:grid !important;
    gap:7px !important;
}

.storefront-app .cart-coupon-head,
.storefront-app .cart-coupon-slider-actions{
    display:none !important;
}

.storefront-app .cart-coupon-mini-head{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    width:100% !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    cursor:pointer !important;
    text-align:left !important;
}

.storefront-app .cart-coupon-collapse-toggle{
    width:28px !important;
    height:28px !important;
    min-height:28px !important;
    margin:0 0 0 auto !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
    border:0 !important;
    border-radius:6px !important;
    background:#f1f5f9 !important;
    color:#516a86 !important;
    cursor:pointer !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-collapse-toggle i{
    font-size:12px !important;
    line-height:1 !important;
    transition:color .18s ease !important;
}

.storefront-app .cart-coupon-mini-head > div{
    display:flex !important;
    align-items:baseline !important;
    gap:7px !important;
    min-width:0 !important;
}

.storefront-app .cart-coupon-mini-head strong{
    color:#102a43 !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-mini-head small{
    color:#60758f !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-mini-head i{
    flex:0 0 auto !important;
    color:#60758f !important;
    font-size:12px !important;
    line-height:1 !important;
    transition:transform .18s ease !important;
}

.storefront-app .cart-coupon-mini-head[aria-expanded="false"] i{
    transform:rotate(180deg) !important;
}

.storefront-app .cart-coupon-content{
    display:none !important;
    gap:7px !important;
    padding:0 !important;
}

.storefront-app .cart-coupon-content.active{
    display:grid !important;
    gap:7px !important;
    padding:0 !important;
}

.storefront-app .cart-coupon-slider{
    display:grid !important;
    gap:5px !important;
    margin:0 !important;
    overflow:visible !important;
}

.storefront-app .cart-coupon-slider-toolbar{
    min-height:0 !important;
    display:flex !important;
    align-items:baseline !important;
    gap:7px !important;
}

.storefront-app .cart-coupon-slider-toolbar > span{
    color:#102a43 !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-slider-toolbar > small{
    margin:0 !important;
    color:#6d8098 !important;
    font-size:11px !important;
    font-weight:800 !important;
    line-height:1 !important;
}

.storefront-app .cart-coupon-list{
    display:grid !important;
    gap:0 !important;
}

.storefront-app .cart-coupon-list .cart-coupon-option,
.storefront-app .cart-coupon-track .cart-coupon-option{
    min-width:0 !important;
    width:100% !important;
    min-height:64px !important;
    padding:9px 10px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    border:1px solid #d1ead9 !important;
    border-radius:9px !important;
    background:#f7fff8 !important;
    scroll-snap-align:unset !important;
}

.storefront-app .cart-coupon-list .cart-coupon-option.is-disabled,
.storefront-app .cart-coupon-track .cart-coupon-option.is-disabled{
    border-color:#dfe7f0 !important;
    background:#f8fafc !important;
}

.storefront-app .cart-coupon-form{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
}

.storefront-app .cart-coupon-form label{
    margin-bottom:1px !important;
}

.storefront-app .cart-coupon-form > div{
    grid-template-columns:minmax(0,1fr) 72px !important;
}

@media(max-width:575px){
    .storefront-app .cart-coupon-mini-head > div{
        gap:6px !important;
    }

    .storefront-app .cart-coupon-list .cart-coupon-option,
    .storefront-app .cart-coupon-track .cart-coupon-option{
        min-height:62px !important;
        padding:8px 9px !important;
    }
}

/* FINAL coupon slider + product-card coupon chip sizing. */
.storefront-app .cart-coupon-track.cart-coupon-list{
    display:flex !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    scroll-behavior:smooth !important;
    scrollbar-width:none !important;
}

.storefront-app .cart-coupon-track.cart-coupon-list::-webkit-scrollbar{
    display:none !important;
}

.storefront-app .cart-coupon-track.cart-coupon-list .cart-coupon-option{
    flex:0 0 100% !important;
    min-width:100% !important;
    width:100% !important;
    scroll-snap-align:start !important;
    scroll-snap-stop:always !important;
}

.storefront-app .cart-coupon-dots{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:16px !important;
    margin:2px 0 0 !important;
}

.storefront-app .cart-coupon-dots button{
    width:7px !important;
    height:7px !important;
    min-width:7px !important;
    min-height:7px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:#cbd7e6 !important;
    opacity:1 !important;
    transition:width .18s ease,background .18s ease !important;
}

.storefront-app .cart-coupon-dots button.active{
    width:18px !important;
    background:#102a43 !important;
}

.storefront-app .store-product-meta-row,
.storefront-app .product-related-section .store-product-meta-row,
.storefront-app .product-recommendation-section .store-product-meta-row{
    grid-template-columns:minmax(38px,max-content) minmax(0,max-content) !important;
    justify-content:space-between !important;
}

.storefront-app .store-product-coupon,
.storefront-app .product-related-section .store-product-coupon,
.storefront-app .product-recommendation-section .store-product-coupon{
    width:max-content !important;
    max-width:100% !important;
    min-width:0 !important;
    justify-self:end !important;
    padding:6px 10px !important;
}

.storefront-app .store-product-coupon span,
.storefront-app .product-related-section .store-product-coupon span,
.storefront-app .product-recommendation-section .store-product-coupon span{
    width:auto !important;
    max-width:100% !important;
}

@media(max-width:575px){
    .storefront-app .store-product-meta-row,
    .storefront-app .product-related-section .store-product-meta-row,
    .storefront-app .product-recommendation-section .store-product-meta-row{
        grid-template-columns:minmax(34px,max-content) minmax(0,max-content) !important;
        column-gap:6px !important;
    }

    .storefront-app .store-product-coupon,
    .storefront-app .product-related-section .store-product-coupon,
    .storefront-app .product-recommendation-section .store-product-coupon{
        padding:6px 8px !important;
        font-size:8.5px !important;
    }
}

/* FINAL storefront coupon modal UI. */
body.store-coupon-modal-open{
    overflow:hidden;
}

.storefront-app .product-detail-coupon-summary{
    display:grid !important;
    gap:10px !important;
    margin:18px 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.storefront-app .product-detail-coupon-head{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
}

.storefront-app .product-detail-coupon-head strong,
.storefront-app .cart-coupon-best-line strong{
    color:#102a43 !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1.2 !important;
}

.storefront-app .product-detail-coupon-head small{
    display:block !important;
    margin-top:2px !important;
    color:#60758f !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1.35 !important;
}

.storefront-app .store-coupon-view-btn,
.storefront-app .cart-coupon-view-all,
.storefront-app .cart-coupon-best-line button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:32px !important;
    width:auto !important;
    padding:0 11px !important;
    border:1px solid #d8e3ef !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#102a43 !important;
    font-size:12px !important;
    font-weight:900 !important;
    text-decoration:none !important;
}

.storefront-app .cart-coupon-view-all{
    justify-self:start !important;
    margin-top:6px !important;
}

.storefront-app .store-coupon-preview-card{
    width:100% !important;
    min-height:64px !important;
    padding:10px 12px !important;
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    border:1px solid #cfead7 !important;
    border-radius:12px !important;
    background:#f6fff7 !important;
    color:#102a43 !important;
    text-align:left !important;
}

.storefront-app .store-coupon-preview-card.is-disabled{
    border-color:#dfe7f0 !important;
    background:#f8fafc !important;
}

.storefront-app .store-coupon-preview-icon{
    width:34px !important;
    height:34px !important;
    border-radius:10px !important;
    display:grid !important;
    place-items:center !important;
    background:#e9f8ef !important;
    color:#157347 !important;
    font-size:14px !important;
}

.storefront-app .store-coupon-preview-card strong{
    display:block !important;
    color:#102a43 !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1.25 !important;
}

.storefront-app .store-coupon-preview-card small{
    display:block !important;
    margin-top:2px !important;
    color:#526b86 !important;
    font-size:11px !important;
    font-weight:750 !important;
    line-height:1.28 !important;
}

.storefront-app .store-coupon-preview-card em{
    display:inline-flex !important;
    align-items:center !important;
    min-height:24px !important;
    padding:0 8px !important;
    border:1px dashed #a8d8b7 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#157347 !important;
    font-size:10px !important;
    font-style:normal !important;
    font-weight:900 !important;
    letter-spacing:.04em !important;
    white-space:nowrap !important;
}

.storefront-app .cart-coupon-best-line{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    margin-top:2px !important;
}

.storefront-app .cart-coupon-preview-card{
    min-height:70px !important;
}

.storefront-app .cart-coupon-preview-card > span:nth-child(2) small:last-child{
    color:#157347 !important;
}

.storefront-app .store-coupon-modal[hidden]{
    display:none !important;
}

.storefront-app .store-coupon-modal{
    position:fixed !important;
    inset:0 !important;
    z-index:1500 !important;
    display:grid !important;
    place-items:center !important;
    padding:18px !important;
}

.storefront-app .cart-sidebar .store-coupon-modal{
    z-index:5 !important;
    place-items:end center !important;
    padding:12px !important;
}

.storefront-app .store-coupon-modal-backdrop{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:rgba(15,23,42,.42) !important;
}

.storefront-app .cart-sidebar .store-coupon-modal-backdrop{
    background:rgba(15,23,42,.18) !important;
}

.storefront-app .store-coupon-modal-sheet{
    position:relative !important;
    z-index:1 !important;
    width:min(560px,100%) !important;
    max-height:min(720px,86vh) !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    overflow:hidden !important;
    border:1px solid #e1eaf4 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 28px 80px rgba(15,23,42,.24) !important;
}

.storefront-app .cart-sidebar .store-coupon-modal-sheet{
    width:100% !important;
    max-height:82vh !important;
    border-radius:16px !important;
    box-shadow:0 18px 48px rgba(15,23,42,.2) !important;
}

.storefront-app .store-coupon-modal-head{
    min-height:62px !important;
    padding:14px 16px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    border-bottom:1px solid #edf2f7 !important;
}

.storefront-app .store-coupon-modal-head strong{
    display:block !important;
    color:#102a43 !important;
    font-size:17px !important;
    font-weight:950 !important;
    line-height:1.15 !important;
}

.storefront-app .store-coupon-modal-head small{
    display:block !important;
    margin-top:3px !important;
    color:#60758f !important;
    font-size:12px !important;
    font-weight:750 !important;
    line-height:1.25 !important;
}

.storefront-app .store-coupon-modal-head button{
    width:36px !important;
    height:36px !important;
    flex:0 0 36px !important;
    display:grid !important;
    place-items:center !important;
    border:1px solid #d8e3ef !important;
    border-radius:10px !important;
    background:#f8fafc !important;
    color:#29415e !important;
}

.storefront-app .store-coupon-modal-list{
    display:grid !important;
    gap:10px !important;
    padding:14px 16px 16px !important;
    overflow:auto !important;
}

.storefront-app .store-coupon-modal-card,
.storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
    width:100% !important;
    margin:0 !important;
    min-height:96px !important;
    padding:13px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:12px !important;
    border:1px solid #cfead7 !important;
    border-radius:13px !important;
    background:#f6fff7 !important;
    box-shadow:none !important;
}

.storefront-app .store-coupon-modal-card.is-applied,
.storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card.is-applied{
    border-color:#97d7a8 !important;
    background:#effdf4 !important;
}

.storefront-app .store-coupon-modal-card.is-disabled{
    border-color:#e0e8f2 !important;
    background:#f8fafc !important;
    opacity:1 !important;
}

.storefront-app .store-coupon-modal-card > div{
    display:grid !important;
    gap:3px !important;
    min-width:0 !important;
}

.storefront-app .store-coupon-modal-eyebrow{
    width:max-content !important;
    min-height:20px !important;
    padding:0 8px !important;
    display:inline-flex !important;
    align-items:center !important;
    border-radius:999px !important;
    background:#e9f8ef !important;
    color:#157347 !important;
    font-size:10px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.storefront-app .store-coupon-modal-card.is-disabled .store-coupon-modal-eyebrow{
    background:#eef2f7 !important;
    color:#64748b !important;
}

.storefront-app .store-coupon-modal-card strong{
    color:#102a43 !important;
    font-size:14px !important;
    font-weight:950 !important;
    line-height:1.2 !important;
}

.storefront-app .store-coupon-modal-card em{
    width:max-content !important;
    min-height:24px !important;
    padding:0 8px !important;
    display:inline-flex !important;
    align-items:center !important;
    border:1px dashed #9bd5ac !important;
    border-radius:7px !important;
    background:#fff !important;
    color:#157347 !important;
    font-size:12px !important;
    font-style:normal !important;
    font-weight:950 !important;
    letter-spacing:.06em !important;
}

.storefront-app .store-coupon-modal-card small{
    color:#526b86 !important;
    font-size:11px !important;
    font-weight:750 !important;
    line-height:1.3 !important;
}

.storefront-app .store-coupon-modal-card .store-coupon-status-text{
    color:#157347 !important;
}

.storefront-app .store-coupon-modal-card form{
    margin:0 !important;
}

.storefront-app .store-coupon-modal-card button[type="submit"]{
    min-width:86px !important;
    min-height:40px !important;
    padding:0 14px !important;
    border:1px solid #157347 !important;
    border-radius:10px !important;
    background:#157347 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:950 !important;
}

.storefront-app .store-coupon-modal-card button[type="submit"]:disabled{
    border-color:#d7e0ea !important;
    background:#e8edf3 !important;
    color:#738197 !important;
    cursor:not-allowed !important;
}

.storefront-app .store-coupon-modal-card.is-applied button[type="submit"]{
    border-color:#d1ead9 !important;
    background:#fff !important;
    color:#157347 !important;
}

.storefront-app .product-detail-coupon-notice{
    margin:10px 16px 0 !important;
    padding:9px 11px !important;
    border-radius:10px !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.storefront-app .product-detail-coupon-summary .product-detail-coupon-notice{
    margin:0 !important;
}

.storefront-app .product-detail-coupon-notice.is-success{
    background:#e9f8ef !important;
    color:#157347 !important;
}

.storefront-app .product-detail-coupon-notice.is-danger{
    background:#fff1f2 !important;
    color:#d6455d !important;
}

@media(max-width:575px){
    .storefront-app .product-detail-coupon-head{
        align-items:flex-start !important;
    }

    .storefront-app .store-coupon-view-btn,
    .storefront-app .cart-coupon-best-line button{
        min-height:30px !important;
        padding:0 9px !important;
        font-size:11px !important;
    }

    .storefront-app .store-coupon-preview-card{
        grid-template-columns:30px minmax(0,1fr) auto !important;
        min-height:60px !important;
        padding:9px 10px !important;
        border-radius:11px !important;
    }

    .storefront-app .store-coupon-preview-icon{
        width:30px !important;
        height:30px !important;
        border-radius:9px !important;
    }

    .storefront-app .store-coupon-preview-card strong{
        font-size:12px !important;
    }

    .storefront-app .store-coupon-preview-card small{
        font-size:10px !important;
    }

    .storefront-app .store-coupon-preview-card em{
        max-width:86px !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        font-size:9px !important;
    }

    .storefront-app .store-coupon-modal{
        align-items:end !important;
        padding:0 !important;
    }

    .storefront-app .store-coupon-modal-sheet,
    .storefront-app .cart-sidebar .store-coupon-modal-sheet{
        width:100% !important;
        max-height:82vh !important;
        border-right:0 !important;
        border-bottom:0 !important;
        border-left:0 !important;
        border-radius:18px 18px 0 0 !important;
    }

    .storefront-app .store-coupon-modal-head{
        min-height:58px !important;
        padding:13px 14px !important;
    }

    .storefront-app .store-coupon-modal-head strong{
        font-size:16px !important;
    }

    .storefront-app .store-coupon-modal-list{
        padding:12px 14px 16px !important;
        gap:9px !important;
    }

    .storefront-app .store-coupon-modal-card,
    .storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
        grid-template-columns:minmax(0,1fr) !important;
        align-items:start !important;
        gap:10px !important;
        min-height:0 !important;
    }

    .storefront-app .store-coupon-modal-card button[type="submit"]{
        width:100% !important;
    }
}

/* FINAL storefront mobile category grid + page-level coupon dialog polish. */
.storefront-app .store-coupon-modal-portal{
    position:relative !important;
    z-index:1700 !important;
}

.storefront-app .store-coupon-modal-portal .store-coupon-modal.is-open,
.storefront-app .store-coupon-modal.is-open{
    position:fixed !important;
    inset:0 !important;
    z-index:1700 !important;
    display:grid !important;
    place-items:center !important;
    padding:18px !important;
}

.storefront-app .store-coupon-modal-portal .store-coupon-modal-backdrop{
    background:rgba(15,23,42,.54) !important;
    backdrop-filter:blur(2px) !important;
}

.storefront-app .store-coupon-modal-portal .store-coupon-modal-sheet,
.storefront-app .store-coupon-modal.is-open .store-coupon-modal-sheet{
    width:min(620px,calc(100vw - 32px)) !important;
    max-height:min(680px,82vh) !important;
    border-radius:18px !important;
}

.storefront-app .store-coupon-modal-head{
    background:#fff !important;
}

.storefront-app .store-coupon-modal-list{
    background:#fff !important;
}

.storefront-app .store-coupon-modal-card,
.storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
    min-height:0 !important;
    padding:14px !important;
    grid-template-columns:minmax(0,1fr) 112px !important;
    border-color:#dbe8dd !important;
    background:#fbfffb !important;
}

.storefront-app .store-coupon-modal-card.is-disabled{
    background:#f8fafc !important;
    border-color:#e2e8f0 !important;
}

.storefront-app .store-coupon-modal-card > div{
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    column-gap:8px !important;
    row-gap:4px !important;
}

.storefront-app .store-coupon-modal-card .store-coupon-modal-eyebrow{
    grid-column:1 / 2 !important;
    grid-row:1 !important;
}

.storefront-app .store-coupon-modal-card strong{
    grid-column:2 / 3 !important;
    grid-row:1 !important;
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#102a43 !important;
    letter-spacing:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}

.storefront-app .store-coupon-modal-card em{
    grid-column:1 / -1 !important;
    width:max-content !important;
    margin-top:2px !important;
}

.storefront-app .store-coupon-modal-card small{
    grid-column:1 / -1 !important;
    display:block !important;
    max-width:100% !important;
}

.storefront-app .store-coupon-modal-card form{
    justify-self:end !important;
    width:100% !important;
}

.storefront-app .store-coupon-modal-card button[type="submit"]{
    width:100% !important;
    min-width:0 !important;
}

@media(max-width:575px){
    .storefront-app .store-home-categories-section{
        margin-top:18px !important;
    }

    .storefront-app .store-home-categories-section .store-section-head{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        align-items:center !important;
        gap:8px !important;
        margin-bottom:10px !important;
    }

    .storefront-app .store-home-categories-section .store-section-head h2{
        margin:0 !important;
        font-size:20px !important;
        line-height:1.15 !important;
        letter-spacing:-.02em !important;
    }

    .storefront-app .store-home-categories-section .store-home-section-actions{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        min-width:0 !important;
    }

    .storefront-app .store-home-categories-section .store-section-icon-btn{
        display:none !important;
    }

    .storefront-app .store-home-categories-section .store-home-section-actions a{
        display:inline-flex !important;
        align-items:center !important;
        gap:4px !important;
        font-size:11px !important;
        font-weight:900 !important;
        white-space:nowrap !important;
    }


    .storefront-app .store-coupon-modal-portal .store-coupon-modal.is-open,
    .storefront-app .store-coupon-modal.is-open{
        align-items:center !important;
        padding:14px !important;
    }

    .storefront-app .store-coupon-modal-portal .store-coupon-modal-sheet,
    .storefront-app .store-coupon-modal.is-open .store-coupon-modal-sheet{
        width:100% !important;
        max-height:82vh !important;
        border:1px solid #e1eaf4 !important;
        border-radius:16px !important;
    }

    .storefront-app .store-coupon-modal-card,
    .storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
        grid-template-columns:minmax(0,1fr) !important;
        padding:12px !important;
    }

    .storefront-app .store-coupon-modal-card > div{
        grid-template-columns:1fr !important;
    }

    .storefront-app .store-coupon-modal-card .store-coupon-modal-eyebrow,
    .storefront-app .store-coupon-modal-card strong,
    .storefront-app .store-coupon-modal-card em,
    .storefront-app .store-coupon-modal-card small{
        grid-column:1 / -1 !important;
        grid-row:auto !important;
        white-space:normal !important;
    }
}


/* FINAL mobile coupon dialog row alignment. */
@media(max-width:575px){
    .storefront-app .store-coupon-modal-portal .store-coupon-modal,
    .storefront-app .store-coupon-modal.is-open{
        align-items:center !important;
        justify-items:center !important;
        padding:10px !important;
    }

    .storefront-app .store-coupon-modal-portal .store-coupon-modal-sheet,
    .storefront-app .store-coupon-modal.is-open .store-coupon-modal-sheet{
        width:min(100%,388px) !important;
        max-height:calc(100dvh - 74px) !important;
        border-radius:14px !important;
    }

    .storefront-app .store-coupon-modal-head{
        min-height:54px !important;
        padding:11px 12px !important;
    }

    .storefront-app .store-coupon-modal-head strong{
        font-size:15px !important;
    }

    .storefront-app .store-coupon-modal-head small{
        font-size:11px !important;
    }

    .storefront-app .store-coupon-modal-head button{
        width:34px !important;
        height:34px !important;
        flex-basis:34px !important;
    }

    .storefront-app .store-coupon-modal-list{
        gap:8px !important;
        padding:10px 12px 12px !important;
    }

    .storefront-app .store-coupon-modal-card,
    .storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) 92px !important;
        align-items:center !important;
        gap:8px !important;
        min-height:0 !important;
        padding:10px 11px !important;
        border-radius:10px !important;
    }

    .storefront-app .store-coupon-modal-card > div{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:3px !important;
        min-width:0 !important;
    }

    .storefront-app .store-coupon-modal-card .store-coupon-modal-eyebrow,
    .storefront-app .store-coupon-modal-card strong,
    .storefront-app .store-coupon-modal-card em,
    .storefront-app .store-coupon-modal-card small{
        grid-column:1 / -1 !important;
        grid-row:auto !important;
        white-space:normal !important;
    }

    .storefront-app .store-coupon-modal-eyebrow{
        min-height:18px !important;
        width:max-content !important;
        padding:0 7px !important;
        font-size:9px !important;
    }

    .storefront-app .store-coupon-modal-card strong{
        font-size:12.5px !important;
        line-height:1.18 !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
    }

    .storefront-app .store-coupon-modal-card em{
        min-height:22px !important;
        max-width:100% !important;
        padding:0 7px !important;
        font-size:10.5px !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
    }

    .storefront-app .store-coupon-modal-card small{
        font-size:9.5px !important;
        line-height:1.22 !important;
    }

    .storefront-app .store-coupon-modal-card form{
        width:92px !important;
        justify-self:end !important;
    }

    .storefront-app .store-coupon-modal-card button[type="submit"]{
        width:92px !important;
        min-width:0 !important;
        min-height:38px !important;
        padding:0 8px !important;
        border-radius:9px !important;
        font-size:11.5px !important;
        line-height:1.1 !important;
        white-space:normal !important;
    }
}

@media(max-width:359px){
    .storefront-app .store-coupon-modal-card,
    .storefront-app .store-coupon-modal-card.product-detail-coupon-offer.store-coupon-card{
        grid-template-columns:minmax(0,1fr) !important;
    }

    .storefront-app .store-coupon-modal-card form,
    .storefront-app .store-coupon-modal-card button[type="submit"]{
        width:100% !important;
    }
}

/* Customer shipment tracking */
.storefront-app .account-track-order-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    padding:8px 13px;
    border:1px solid #b8d2fa;
    border-radius:7px;
    background:#edf5ff;
    color:#1769dc;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}
.storefront-app .account-track-order-btn:hover{
    border-color:#1769dc;
    background:#1769dc;
    color:#fff;
}
.storefront-app .account-tracking-card{
    grid-column:1/-1;
    scroll-margin-top:110px;
    padding:26px;
    border:1px solid #cfe0f5;
    border-radius:12px;
    background:linear-gradient(135deg,#fff 0%,#f7fbff 100%);
}
.storefront-app .account-tracking-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}
.storefront-app .account-tracking-head h2{
    margin:4px 0 5px;
    color:#102a43;
    font-size:22px;
}
.storefront-app .account-tracking-head p{
    margin:0;
    color:#60758f;
}
.storefront-app .account-courier-track-btn{
    flex:none;
    gap:8px;
}
.storefront-app .account-tracking-meta{
    display:flex;
    flex-wrap:wrap;
    gap:14px 30px;
    margin-top:22px;
    padding:15px 18px;
    border:1px solid #dce8f6;
    border-radius:9px;
    background:#fff;
}
.storefront-app .account-tracking-meta div{
    display:grid;
    gap:3px;
}
.storefront-app .account-tracking-meta span{
    color:#6b7f97;
    font-size:11px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.storefront-app .account-tracking-meta strong{
    color:#102a43;
    font-size:13px;
}
.storefront-app .account-shipment-timeline{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin:28px 0 0;
    padding:0;
    list-style:none;
}
.storefront-app .account-shipment-timeline li{
    position:relative;
    min-width:0;
    padding-right:16px;
    color:#8b9aae;
}
.storefront-app .account-shipment-timeline li::before{
    content:"";
    position:absolute;
    top:16px;
    left:34px;
    right:0;
    height:3px;
    background:#dce6f1;
}
.storefront-app .account-shipment-timeline li:last-child::before{
    display:none;
}
.storefront-app .account-shipment-marker{
    position:relative;
    z-index:1;
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border:3px solid #dce6f1;
    border-radius:50%;
    background:#fff;
    color:#9aabba;
    font-size:9px;
}
.storefront-app .account-shipment-timeline li>div{
    margin-top:12px;
}
.storefront-app .account-shipment-timeline strong{
    display:block;
    color:#667b91;
    font-size:13px;
}
.storefront-app .account-shipment-timeline p{
    margin:4px 0;
    font-size:11px;
    line-height:1.45;
}
.storefront-app .account-shipment-timeline time{
    display:block;
    color:#7890aa;
    font-size:10px;
}
.storefront-app .account-shipment-timeline .is-complete::before{
    background:#24a865;
}
.storefront-app .account-shipment-timeline .is-complete .account-shipment-marker,
.storefront-app .account-shipment-timeline .is-current .account-shipment-marker{
    border-color:#24a865;
    background:#24a865;
    color:#fff;
}
.storefront-app .account-shipment-timeline .is-current .account-shipment-marker{
    box-shadow:0 0 0 6px rgba(36,168,101,.14);
}
.storefront-app .account-shipment-timeline .is-complete strong,
.storefront-app .account-shipment-timeline .is-current strong{
    color:#102a43;
}
.storefront-app .account-shipment-timeline .is-exception .account-shipment-marker{
    border-color:#dc4c64;
    background:#dc4c64;
    color:#fff;
}
.storefront-app .account-shipment-timeline .is-exception strong{
    color:#bd2944;
}
@media(max-width:767px){
    .storefront-app .account-tracking-card{
        padding:20px 16px;
    }
    .storefront-app .account-tracking-head{
        display:grid;
    }
    .storefront-app .account-courier-track-btn{
        width:100%;
    }
    .storefront-app .account-shipment-timeline{
        display:block;
        margin-top:24px;
    }
    .storefront-app .account-shipment-timeline li{
        display:grid;
        grid-template-columns:36px minmax(0,1fr);
        gap:13px;
        min-height:92px;
        padding:0;
    }
    .storefront-app .account-shipment-timeline li::before{
        top:34px;
        bottom:0;
        left:16px;
        right:auto;
        width:3px;
        height:auto;
    }
    .storefront-app .account-shipment-timeline li>div{
        margin:2px 0 16px;
    }
}

/* Keep the coupon in the right metadata column when a product has no brand. */
.storefront-app .store-product-meta-row > .store-product-coupon:only-child,
.storefront-app .product-related-section .store-product-meta-row > .store-product-coupon:only-child,
.storefront-app .product-recommendation-section .store-product-meta-row > .store-product-coupon:only-child{
    grid-column:2;
    justify-self:end !important;
    margin-left:auto;
}

.account-reward-hero .account-hero-meta,
.account-affiliate-hero .account-hero-meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.account-soft-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:#eef5ff;
    color:#2563eb;
    font-size:12px;
    font-weight:900;
}

.account-ledger-list{
    display:grid;
    gap:10px;
}

.account-ledger-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:13px 14px;
    border:1px solid #dbe7f5;
    border-radius:14px;
    background:#fff;
}

.account-ledger-row > div{
    display:grid;
    gap:3px;
    min-width:0;
}

.account-ledger-row strong{
    color:#102a43;
    font-weight:900;
}

.account-ledger-row span,
.account-card-head p{
    color:#5f7896;
    font-size:13px;
}

.account-ledger-row.credit > strong{
    color:#138a46;
}

.account-ledger-row.debit > strong{
    color:#dc2626;
}

.account-empty-state.compact{
    min-height:180px;
    padding:28px 20px;
}

.account-copy-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
}

.account-copy-row input{
    min-height:48px;
    border:1px solid #d8e3ef;
    border-radius:10px;
    padding:0 14px;
    color:#102a43;
    font-weight:800;
}

@media(max-width:767px){
    .account-copy-row,
    .account-reward-hero .account-hero-meta,
    .account-affiliate-hero .account-hero-meta{
        grid-template-columns:1fr;
    }

    .account-ledger-row{
        align-items:flex-start;
        padding:12px;
    }
}

/* FINAL wallet + affiliate payout form polish */
.storefront-app .store-main-action-wallet{
    border-color:#d8f1df !important;
    background:#f1fcf5 !important;
    color:#0f8d43 !important;
}

.storefront-app .store-main-action-wallet:hover,
.storefront-app .store-main-action-wallet.is-active{
    border-color:#a7e8bd !important;
    background:#e7f9ee !important;
    color:#087235 !important;
}

.storefront-app .mobile-nav-item.mobile-wallet-trigger i{
    border-color:#ccefd9 !important;
    background:#f1fcf5 !important;
    color:#0f8d43 !important;
}

.storefront-app .mobile-nav-item.mobile-wallet-trigger.active i{
    border-color:#9de0b2 !important;
    background:#e7f9ee !important;
    color:#087235 !important;
}

.storefront-app .account-field textarea{
    width:100% !important;
    min-height:104px !important;
    padding:12px 14px !important;
    border:1px solid #d8e3ef !important;
    border-radius:14px !important;
    background:#fff !important;
    color:#102a43 !important;
    font:inherit !important;
    line-height:1.55 !important;
    resize:vertical !important;
}

.storefront-app .account-field textarea:focus,
.storefront-app .account-field input:focus,
.storefront-app .account-field select:focus{
    border-color:#3b82f6 !important;
    box-shadow:0 0 0 3px rgba(59,130,246,.12) !important;
    outline:0 !important;
}

.storefront-app .account-payout-card{
    padding:24px !important;
}

.storefront-app .account-payout-card .account-card-head{
    margin-bottom:22px !important;
}

.storefront-app .account-payout-card .account-card-head h2{
    margin-bottom:6px !important;
}

.storefront-app .account-payout-form{
    align-items:start !important;
    gap:16px 18px !important;
}

.storefront-app .account-payout-form .account-field-full{
    grid-column:1 / -1 !important;
}

.storefront-app .account-payout-form .account-primary-btn{
    width:auto !important;
    min-width:180px !important;
}

.storefront-app .store-main-action-wallet{
    position:relative !important;
}

.storefront-app .store-main-action-wallet .store-wallet-badge{
    position:absolute !important;
    top:-8px !important;
    right:-8px !important;
    min-width:21px !important;
    height:21px !important;
    padding:0 6px !important;
    border-radius:999px !important;
    background:#16a34a !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:900 !important;
    line-height:21px !important;
    text-align:center !important;
    box-shadow:0 6px 16px rgba(22,163,74,.22) !important;
}

.storefront-app .store-main-action-wallet .store-wallet-badge.has-pending,
.storefront-app .mobile-wallet-badge.has-pending{
    background:#f59e0b !important;
    color:#102a43 !important;
    box-shadow:0 6px 16px rgba(245,158,11,.24) !important;
}

.storefront-app .account-ledger-status{
    display:inline-flex !important;
    align-items:center !important;
    min-height:22px !important;
    margin-left:8px !important;
    padding:0 8px !important;
    border-radius:999px !important;
    background:#eef5ff !important;
    color:#2563eb !important;
    font-size:11px !important;
    font-style:normal !important;
    font-weight:900 !important;
    vertical-align:middle !important;
}

.storefront-app .account-ledger-status.order_reward_pending{
    background:#fff7df !important;
    color:#9a5b00 !important;
}

.storefront-app .account-ledger-status.order_reward_pending_posted{
    background:#e8f8ef !important;
    color:#13763a !important;
}

.storefront-app .account-ledger-status.order_reward_pending_cancelled{
    background:#fff1f2 !important;
    color:#d6455d !important;
}

.storefront-app .account-rewards-modern{
    gap:16px !important;
}

.storefront-app .account-reward-hero-compact{
    align-items:center !important;
    min-height:auto !important;
}

.storefront-app .account-reward-metrics{
    grid-template-columns:repeat(3,minmax(130px,1fr)) !important;
}

.storefront-app .account-reward-smart-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr) !important;
    gap:16px !important;
}

.storefront-app .account-wallet-smart-card,
.storefront-app .account-points-summary-card{
    min-height:0 !important;
}

.storefront-app .account-wallet-smart-icon{
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
    display:grid !important;
    place-items:center !important;
    background:#e8f8ef !important;
    color:#13763a !important;
}

.storefront-app .account-wallet-balance-large{
    margin:8px 0 16px !important;
    color:#102a43 !important;
    font-size:34px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:-.04em !important;
}

.storefront-app .account-wallet-actions{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    flex-wrap:wrap !important;
}

.storefront-app .account-wallet-note{
    margin:14px 0 0 !important;
    color:#60758f !important;
    font-size:13px !important;
    line-height:1.55 !important;
}

.storefront-app .account-points-meter{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
}

.storefront-app .account-points-meter > div{
    padding:16px !important;
    border-radius:16px !important;
    background:#f8fbff !important;
    border:1px solid #e6edf5 !important;
}

.storefront-app .account-points-meter span{
    display:block !important;
    color:#7287a3 !important;
    font-size:11px !important;
    font-weight:900 !important;
    letter-spacing:.1em !important;
    text-transform:uppercase !important;
}

.storefront-app .account-points-meter strong{
    display:block !important;
    margin-top:8px !important;
    color:#102a43 !important;
    font-size:28px !important;
    line-height:1 !important;
}

.storefront-app .account-reward-ledger-grid{
    align-items:start !important;
}

.storefront-app .account-ledger-list-compact{
    gap:10px !important;
}

.storefront-app .account-ledger-list-compact .account-ledger-row{
    min-height:auto !important;
    padding:14px !important;
    border-radius:16px !important;
}

.storefront-app .account-empty-state-slim{
    min-height:170px !important;
}

.storefront-app .account-reward-activity-row{
    align-items:center !important;
}

.storefront-app .account-reward-activity-value{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:6px !important;
    text-align:right !important;
}

.storefront-app .account-reward-activity-value strong{
    color:#13763a !important;
    white-space:nowrap !important;
}

.storefront-app .account-reward-activity-row.cancelled .account-reward-activity-value strong{
    color:#d6455d !important;
}

.storefront-app .account-ledger-status.pending{
    background:#fff7df !important;
    color:#9a5b00 !important;
}

.storefront-app .account-ledger-status.deposited,
.storefront-app .account-ledger-status.released{
    background:#e8f8ef !important;
    color:#13763a !important;
}

.storefront-app .account-ledger-status.cancelled{
    background:#fff1f2 !important;
    color:#d6455d !important;
}

.storefront-app .store-checkout-wallet-option{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    gap:12px !important;
    margin-bottom:14px !important;
    padding:14px !important;
    border:1px solid #cfeedd !important;
    border-radius:16px !important;
    background:#f2fbf5 !important;
    cursor:pointer !important;
}

.storefront-app .store-checkout-wallet-option input{
    position:absolute !important;
    opacity:0 !important;
    pointer-events:none !important;
}

.storefront-app .store-checkout-wallet-icon{
    width:38px !important;
    height:38px !important;
    border-radius:12px !important;
    display:grid !important;
    place-items:center !important;
    background:#dcfce7 !important;
    color:#13763a !important;
}

.storefront-app .store-checkout-wallet-option strong,
.storefront-app .store-checkout-wallet-option small{
    display:block !important;
}

.storefront-app .store-checkout-wallet-option small{
    margin-top:3px !important;
    color:#60758f !important;
    line-height:1.4 !important;
}

.storefront-app .store-checkout-wallet-option:has(input:checked){
    border-color:#86d9a5 !important;
    background:#eaf9ef !important;
}

.storefront-app .store-checkout-price-content .wallet-row strong{
    color:#13763a !important;
}

.storefront-app .cart-wallet-mini{
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    margin:10px 0 12px !important;
    padding:10px 12px !important;
    border:1px solid #ccebd8 !important;
    border-radius:10px !important;
    background:#f4fff7 !important;
}

.storefront-app .cart-wallet-mini span{
    width:34px !important;
    height:34px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:9px !important;
    color:#15803d !important;
    background:#dcfce7 !important;
}

.storefront-app .cart-wallet-mini strong,
.storefront-app .cart-wallet-mini small{
    display:block !important;
}

.storefront-app .cart-wallet-mini strong{
    color:#102a43 !important;
    font-size:13px !important;
    font-weight:900 !important;
}

.storefront-app .cart-wallet-mini small{
    margin-top:2px !important;
    color:#60758f !important;
    font-size:11px !important;
    font-weight:700 !important;
}

.storefront-app .cart-wallet-mini a{
    min-height:34px !important;
    padding:0 12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:8px !important;
    color:#fff !important;
    background:#15803d !important;
    font-size:12px !important;
    font-weight:900 !important;
    text-decoration:none !important;
}

@media(max-width:991px){
    .storefront-app .mobile-bottom-nav{
        grid-template-columns:repeat(var(--mobile-nav-item-count, 5),minmax(0,1fr)) !important;
        min-height:72px !important;
        padding-inline:4px !important;
    }

    .storefront-app .mobile-bottom-nav .mobile-nav-item{
        min-width:0 !important;
        gap:3px !important;
        overflow:visible !important;
        font-size:clamp(9.5px,2.65vw,11px) !important;
    }

    .storefront-app .mobile-bottom-nav .mobile-nav-item i{
        width:30px !important;
        height:30px !important;
        font-size:13px !important;
    }

    .storefront-app .mobile-wallet-trigger{
        position:relative !important;
    }

    .storefront-app .account-reward-metrics,
    .storefront-app .account-reward-smart-grid,
    .storefront-app .account-points-meter{
        grid-template-columns:1fr !important;
    }
}

@media(max-width:767px){
    .storefront-app .account-payout-card{
        padding:18px !important;
    }

    .storefront-app .account-payout-form .account-primary-btn{
        width:100% !important;
        min-width:0 !important;
    }
}
/* FINAL storefront tablet stabilizer: iPad / tab layouts should not inherit cramped phone UI. */
@media (min-width:768px) and (max-width:1199px){
    .storefront-app .store-shell,
    .storefront-app .main-content,
    .storefront-app .main-content.product-detail-page,
    .storefront-app .store-topbar-inner,
    .storefront-app .store-main-header-inner,
    .storefront-app .store-category-menu-inner,
    .storefront-app .store-reference-footer-inner,
    .storefront-app .store-reference-footer-bottom,
    .storefront-app .store-newsletter-inner,
    .storefront-app .account-layout,
    .storefront-app .auth-shell{
        width:min(94vw,1180px) !important;
        max-width:1180px !important;
    }

    .storefront-app .store-main-header-inner{
        min-height:74px !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:150px minmax(260px,1fr) auto !important;
        gap:12px !important;
        align-items:center !important;
    }

    .storefront-app .store-brand{
        min-width:0 !important;
    }

    .storefront-app .store-brand img{
        width:auto !important;
        max-width:124px !important;
        max-height:54px !important;
        object-fit:contain !important;
        border-radius:0 !important;
    }

    .storefront-app .store-search-shell{
        order:initial !important;
        grid-column:auto !important;
        min-width:0 !important;
        grid-template-columns:minmax(0,1fr) 50px !important;
    }

    .storefront-app .store-search-input{
        min-width:0 !important;
        font-size:14px !important;
    }

    .storefront-app .store-search-button{
        width:50px !important;
    }

    .storefront-app .store-main-actions{
        display:flex !important;
        gap:7px !important;
        min-width:0 !important;
    }

    .storefront-app .store-category-trigger{
        display:none !important;
    }

    .storefront-app .store-main-action{
        min-width:42px !important;
        min-height:42px !important;
        height:42px !important;
        padding:0 11px !important;
        white-space:nowrap !important;
    }

    .storefront-app .store-main-action span,
    .storefront-app .store-topbar-links{
        display:none !important;
    }

    .storefront-app .mobile-bottom-nav{
        display:none !important;
    }

    .storefront-app .store-category-menu-bar{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        transform:none !important;
        pointer-events:auto !important;
        top:74px !important;
        min-height:44px !important;
        background:#fff1eb !important;
    }

    .storefront-app.store-category-menu-hidden .store-category-menu-bar,
    body.store-category-menu-hidden .store-category-menu-bar{
        opacity:1 !important;
        transform:none !important;
        pointer-events:auto !important;
    }

    .storefront-app .store-category-menu-inner{
        display:flex !important;
        min-height:44px !important;
        justify-content:flex-start !important;
        overflow-x:auto !important;
        gap:20px !important;
        padding:0 !important;
        scrollbar-width:none !important;
    }

    .storefront-app .store-category-menu-inner::-webkit-scrollbar{
        display:none !important;
    }

    .storefront-app .store-category-menu-link{
        min-height:44px !important;
        white-space:nowrap !important;
        font-size:13px !important;
    }

    .storefront-app .store-category-menu-panel{
        display:none !important;
    }

    .storefront-app .store-home-hero{
        min-height:0 !important;
        grid-template-columns:minmax(0,1fr) minmax(260px,.82fr) !important;
        gap:22px !important;
        padding:24px !important;
        align-items:center !important;
    }

    .storefront-app .store-home-hero h1{
        font-size:clamp(34px,5vw,48px) !important;
        line-height:1.04 !important;
    }

    .storefront-app .store-home-hero h1 small{
        font-size:clamp(18px,2.6vw,25px) !important;
    }

    .storefront-app .store-home-hero-media{
        min-height:280px !important;
        height:auto !important;
        aspect-ratio:1 / 1 !important;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
    }

    .storefront-app .store-home-benefits article{
        min-height:78px !important;
        padding:14px !important;
    }


    .storefront-app .store-product-grid,
    .storefront-app .store-product-grid.four-up,
    .storefront-app .store-product-grid.five-up,
    .storefront-app .store-product-grid.six-up,
    .storefront-app .store-product-grid.compact-grid,
    .storefront-app .store-home-tab-panel .store-product-grid,
    .storefront-app .product-related-section .store-product-grid,
    .storefront-app .product-recommendation-section .store-product-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:16px !important;
    }

    .storefront-app .store-listing-layout{
        display:block !important;
    }

    .storefront-app .store-filter-sidebar{
        display:none !important;
    }

    .storefront-app .store-catalog-head{
        display:flex !important;
        flex-direction:row !important;
        align-items:flex-end !important;
    }

    .storefront-app .store-catalog-toolbar{
        width:auto !important;
        flex-wrap:nowrap !important;
    }

    .storefront-app .store-newsletter-inner{
        grid-template-columns:minmax(0,1fr) minmax(300px,420px) !important;
    }

    .storefront-app .store-reference-footer-inner{
        grid-template-columns:1.2fr repeat(2,minmax(0,1fr)) !important;
    }

    .storefront-app .store-checkout-grid,
    .storefront-app .store-thankyou-shell .store-checkout-grid.thankyou{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .storefront-app .store-checkout-form-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media (min-width:900px) and (max-width:1199px){
    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    }

    .storefront-app .product-detail-shell-modern,
    .storefront-app .product-detail-shell{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(340px,.86fr) !important;
        gap:20px !important;
    }

    .storefront-app .product-detail-gallery-modern,
    .storefront-app .product-detail-gallery{
        display:grid !important;
        grid-template-columns:76px minmax(0,1fr) !important;
        gap:12px !important;
    }

    .storefront-app .product-detail-thumb-rail,
    .storefront-app .product-detail-thumbs{
        flex-direction:column !important;
        overflow:visible !important;
        margin:0 !important;
    }

    .storefront-app .product-detail-info h1{
        font-size:clamp(28px,3.5vw,38px) !important;
    }
}

@media (min-width:768px) and (max-width:899px){
    .storefront-app .product-detail-shell-modern,
    .storefront-app .product-detail-shell{
        display:block !important;
        padding:18px !important;
    }

    .storefront-app .product-detail-gallery-modern,
    .storefront-app .product-detail-gallery{
        display:block !important;
    }

    .storefront-app .product-detail-thumb-rail,
    .storefront-app .product-detail-thumbs{
        display:flex !important;
        flex-direction:row !important;
        gap:10px !important;
        overflow-x:auto !important;
        margin:0 0 12px !important;
        padding-bottom:4px !important;
    }

    .storefront-app .product-detail-info{
        margin-top:18px !important;
    }
}

@media (max-width:767px){
    .storefront-app .mobile-bottom-nav{
        display:grid !important;
    }
}

/* Minimal product information tabs. */
.storefront-app .product-detail-tabs-nav{
    gap:8px !important;
    justify-content:center !important;
    padding-top:18px !important;
}

.storefront-app .product-detail-tab-btn{
    min-height:40px !important;
    padding:0 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:7px !important;
    border:1px solid transparent !important;
    border-radius:999px !important;
    color:#5f7188 !important;
    font-size:13px !important;
    font-weight:800 !important;
}

.storefront-app .product-detail-tab-btn em{
    min-width:20px;
    height:20px;
    padding:0 6px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#edf2f7;
    color:#5f7188;
    font-size:10px;
    font-style:normal;
}

.storefront-app .product-detail-tab-btn.active,
.storefront-app .product-detail-tab-btn:hover{
    border-color:#dbe4ef !important;
    background:#f7f9fc !important;
    color:#102a43 !important;
}

.storefront-app .product-detail-tab-btn.active em{
    background:#102a43;
    color:#fff;
}

.storefront-app .product-detail-tab-panel{
    width:min(100%,1040px);
    margin-inline:auto;
    padding-top:20px !important;
}

.storefront-app .product-description-content{
    max-width:860px !important;
    margin-inline:auto !important;
}

.storefront-app .product-detail-spec-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    border:0 !important;
}

.storefront-app .product-detail-spec-card{
    min-width:0;
    min-height:82px;
    display:flex !important;
    flex-direction:column;
    align-items:flex-start !important;
    justify-content:center;
    gap:7px !important;
    padding:16px 18px !important;
    border:1px solid #e5ebf2 !important;
    border-radius:8px !important;
    background:#fafbfd !important;
}

.storefront-app .product-detail-spec-card span{
    color:#7a8ba1 !important;
    font-size:10px !important;
    letter-spacing:.1em !important;
}

.storefront-app .product-detail-spec-card strong{
    max-width:100%;
    color:#172b43 !important;
    font-size:15px !important;
    line-height:1.35;
    overflow-wrap:anywhere;
}

.storefront-app .product-review-section{
    padding:0 !important;
}

.storefront-app .product-review-head{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 132px minmax(230px,300px);
    align-items:center !important;
    gap:24px !important;
    padding:18px 0 !important;
}

.storefront-app .product-review-score{
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
}

.storefront-app .product-review-distribution{
    display:grid;
    gap:6px;
}

.storefront-app .product-review-distribution-row{
    display:grid;
    grid-template-columns:30px minmax(0,1fr) 22px;
    align-items:center;
    gap:8px;
    color:#71839a;
    font-size:11px;
}

.storefront-app .product-review-distribution-row>span i{
    color:#f5a623;
    font-size:9px;
}

.storefront-app .product-review-distribution-row>div{
    height:5px;
    overflow:hidden;
    border-radius:999px;
    background:#edf1f5;
}

.storefront-app .product-review-distribution-row b{
    height:100%;
    display:block;
    border-radius:inherit;
    background:#f5a623;
}

.storefront-app .product-review-distribution-row em{
    font-style:normal;
    text-align:right;
}

.storefront-app .product-review-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px !important;
    margin-top:14px;
}

.storefront-app .product-review-card{
    padding:18px !important;
    border-color:#e5ebf2 !important;
    border-radius:8px !important;
    background:#fff !important;
}

.storefront-app .product-review-card-head{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:12px;
}

.storefront-app .product-review-card-head strong,
.storefront-app .product-review-card-head small{
    display:block;
}

.storefront-app .product-review-card-head small,
.storefront-app .product-review-card-head time{
    margin-top:3px;
    color:#8493a6;
    font-size:11px;
}

.storefront-app .product-review-empty{
    grid-column:1/-1;
}

.storefront-app .product-detail-faq-panel .store-faq-section{
    margin:0 !important;
}

.storefront-app .product-detail-faq-panel .store-faq-accordion{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start;
    gap:12px !important;
}

.storefront-app .product-detail-faq-panel .store-faq-accordion details{
    margin:0 !important;
    border:1px solid #e5ebf2 !important;
    border-radius:8px !important;
    background:#fafbfd !important;
}

@media (max-width:767px){
    .storefront-app .product-detail-tabs-nav{
        justify-content:flex-start !important;
        gap:4px !important;
        overflow-x:auto;
        padding:14px 0 2px !important;
        scrollbar-width:none;
    }

    .storefront-app .product-detail-tabs-nav::-webkit-scrollbar{
        display:none;
    }

    .storefront-app .product-detail-tab-btn{
        flex:0 0 auto;
        min-height:36px !important;
        padding:0 7px !important;
        font-size:11.5px !important;
    }

    .storefront-app .product-detail-tab-panel{
        padding-top:14px !important;
    }

    .storefront-app .product-detail-spec-grid,
    .storefront-app .product-review-list,
    .storefront-app .product-detail-faq-panel .store-faq-accordion{
        grid-template-columns:1fr !important;
    }

    .storefront-app .product-detail-spec-card{
        min-height:70px;
        padding:13px 14px !important;
    }

    .storefront-app .product-review-head{
        grid-template-columns:1fr 110px !important;
        gap:14px !important;
    }

    .storefront-app .product-review-distribution{
        grid-column:1/-1;
    }
}

.storefront-app .account-update-portal{
    display:grid;
    gap:18px;
}

.storefront-app .account-update-hero-card{
    align-items:center;
}

.storefront-app .account-update-card-list{
    display:grid;
    gap:18px;
}

.storefront-app .account-update-site-card,
.storefront-app .account-update-empty-card{
    display:grid;
    gap:18px;
}

.storefront-app .account-update-site-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
}

.storefront-app .account-update-site-head h2{
    margin:4px 0 4px;
    color:#102a43;
    font-size:clamp(22px,2vw,30px);
    line-height:1.15;
}

.storefront-app .account-update-site-head a{
    color:#58708e;
    font-weight:700;
    text-decoration:none;
    word-break:break-all;
}

.storefront-app .account-update-status{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:#eef5ff;
    color:#2563eb;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.storefront-app .account-update-status-active{
    background:#e8f8ee;
    color:#0f7a3d;
}

.storefront-app .account-update-status-suspended,
.storefront-app .account-update-status-inactive{
    background:#fff4e5;
    color:#a15c00;
}

.storefront-app .account-update-version-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border:1px solid #dbe7f5;
    background:#f8fbff;
}

.storefront-app .account-update-version-grid article{
    padding:14px 16px;
    border-right:1px solid #dbe7f5;
}

.storefront-app .account-update-version-grid article:last-child{
    border-right:0;
}

.storefront-app .account-update-version-grid span,
.storefront-app .account-update-copy-grid span{
    display:block;
    color:#6f86a7;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.storefront-app .account-update-version-grid strong{
    display:block;
    margin-top:6px;
    color:#102a43;
    font-size:18px;
    line-height:1.2;
}

.storefront-app .account-update-copy-grid{
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:12px;
}

.storefront-app .account-update-copy-grid label{
    display:grid;
    gap:7px;
}

.storefront-app .account-update-copy-grid input{
    width:100%;
    min-height:46px;
    padding:10px 12px;
    border:1px solid #c9d9ec;
    border-radius:10px;
    background:#fff;
    color:#102a43;
    font-weight:800;
}

.storefront-app .account-secret-field{
    position:relative;
    display:block;
}

.storefront-app .account-secret-field input{
    padding-right:48px;
}

.storefront-app .account-secret-toggle{
    position:absolute;
    top:50%;
    right:7px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    transform:translateY(-50%);
    border:0;
    border-radius:7px;
    background:#eef4fb;
    color:#526f90;
    cursor:pointer;
}

.storefront-app .account-secret-toggle:hover,
.storefront-app .account-secret-toggle:focus-visible{
    background:#e1ecfa;
    color:#1769dc;
    outline:0;
}

.storefront-app .account-update-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.storefront-app .account-update-help-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:16px;
    padding:16px;
    border:1px solid #dbe7f5;
    background:#fbfdff;
}

.storefront-app .account-update-help-grid ol{
    margin:10px 0 0;
    padding-left:20px;
    color:#405a78;
    line-height:1.65;
}

.storefront-app .account-update-help-grid strong{
    display:block;
    margin-top:10px;
    color:#102a43;
    font-size:16px;
}

.storefront-app .account-update-help-grid p,
.storefront-app .account-update-help-grid small{
    display:block;
    margin:7px 0 0;
    color:#5e7898;
    line-height:1.55;
}

.storefront-app .account-update-help-grid code{
    padding:2px 6px;
    border-radius:6px;
    background:#eef5ff;
    color:#0f3d72;
    font-weight:800;
}

@media (max-width:900px){
    .storefront-app .account-update-site-head,
    .storefront-app .account-update-actions{
        align-items:flex-start;
        flex-direction:column;
    }

    .storefront-app .account-update-version-grid,
    .storefront-app .account-update-copy-grid,
    .storefront-app .account-update-help-grid{
        grid-template-columns:1fr;
    }

    .storefront-app .account-update-version-grid article{
        border-right:0;
        border-bottom:1px solid #dbe7f5;
    }

    .storefront-app .account-update-version-grid article:last-child{
        border-bottom:0;
    }

    .storefront-app .account-update-actions .account-primary-btn,
    .storefront-app .account-update-actions .account-outline-btn{
        width:100%;
        justify-content:center;
    }
}

/* Customer-visible consistency pass
   One final storefront layer for surface radius, card rhythm, text clamps,
   mobile density, and recommendation/category sizing. Keep new customer UI
   fixes here so old historical blocks do not fight each other. */
.storefront-app{
    --store-surface-radius:8px;
    --store-card-gap:16px;
    --store-card-bg:#f8f8f8;
    --store-card-ink:#102a43;
    --store-card-muted:#60758f;
}

.storefront-app :where(.store-section-head h2,.store-home-tab-head h2,.product-recommendation-section .store-section-head h2,.product-related-section .store-section-head h2){
    color:var(--store-card-ink);
    font-size:clamp(24px,2.1vw,36px);
    line-height:1.12;
    letter-spacing:-.035em;
    font-weight:500;
}

.storefront-app .store-product-card{
    border-radius:var(--store-surface-radius) !important;
    overflow:hidden;
}

.storefront-app .store-product-title a,
.storefront-app .store-product-title{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:42px;
}

.storefront-app .store-product-meta-row{
    min-height:21px;
}

.storefront-app .store-product-brand{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.storefront-app .store-product-coupon{
    width:max-content !important;
    max-width:100%;
    justify-self:end;
    padding:5px 10px !important;
}

.storefront-app .store-product-price-row{
    min-height:24px;
    align-items:center;
}

.storefront-app .store-product-rating{
    min-height:18px;
    justify-content:flex-end;
}

.storefront-app .store-product-button{
    width:100%;
}

.storefront-app .product-related-slider{
    overflow:hidden;
}

.storefront-app .product-related-track{
    display:flex;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
}

.storefront-app .product-related-track::-webkit-scrollbar{
    display:none;
}

.storefront-app .product-related-section .product-related-slide{
    flex:0 0 260px;
    min-width:0;
    scroll-snap-align:start;
}

.storefront-app .store-product-grid.compact-grid .store-product-col{
    min-width:0;
}


.storefront-app .store-home-benefits article{
    border-radius:var(--store-surface-radius);
}

@media (max-width:575px){
    .storefront-app{
        --store-card-gap:10px;
    }

    .storefront-app .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .storefront-app .store-home-benefits article{
        min-height:84px !important;
        padding:12px !important;
        gap:9px !important;
    }


    .storefront-app .store-product-grid.compact-grid,
    .storefront-app .product-recommendation-section .store-product-grid.compact-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .storefront-app .store-product-grid.compact-grid .store-product-col{
        width:100%;
    }

    .storefront-app .product-related-section .product-related-slide{
        flex:0 0 calc(50% - 5px);
        min-width:0;
    }

    .storefront-app .product-detail-actions-modern{
        position:fixed !important;
        left:0 !important;
        right:0 !important;
        bottom:76px;
        z-index:1120;
        display:grid !important;
        grid-template-columns:92px minmax(0,1fr) minmax(0,1fr);
        gap:8px !important;
        padding:8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
        background:#fff;
        border-top:1px solid #e4ebf3;
        box-shadow:0 -12px 28px rgba(15,23,42,.08);
    }

    .storefront-app .product-detail-actions-modern .product-qty-control,
    .storefront-app .product-detail-actions-modern .product-detail-cart,
    .storefront-app .product-detail-actions-modern .product-detail-buy-now{
        min-width:0 !important;
        width:100% !important;
    }
}

/* Storefront clarity layer: simple, predictable product gallery + category strip. */
.storefront-app .product-detail-shell-modern,
.storefront-app .product-detail-shell{
    align-items:start !important;
}

.storefront-app .product-detail-gallery-modern,
.storefront-app .product-detail-gallery{
    min-width:0 !important;
}

.storefront-app .product-detail-gallery-modern.is-single-image,
.storefront-app .product-detail-gallery.is-single-image{
    display:block !important;
}

.storefront-app .product-detail-gallery-modern.is-single-image .product-detail-stage,
.storefront-app .product-detail-gallery.is-single-image .product-detail-stage{
    width:100% !important;
    max-width:720px !important;
    margin:0 !important;
}

.storefront-app .product-detail-main-image,
.storefront-app .product-detail-main-image-modern{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;
    border-radius:10px !important;
    background:#f6f8fb !important;
}

.storefront-app .product-detail-main-image img,
.storefront-app .product-detail-main-image-modern img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:1 / 1 !important;
    object-fit:contain !important;
    object-position:center !important;
    background:#f6f8fb !important;
    padding:18px !important;
}

.storefront-app .product-detail-gallery-modern.is-single-image .product-detail-main-image,
.storefront-app .product-detail-gallery.is-single-image .product-detail-main-image,
.storefront-app .product-detail-gallery-modern.is-single-image .product-detail-main-image-modern,
.storefront-app .product-detail-gallery.is-single-image .product-detail-main-image-modern{
    min-height:0 !important;
}

.storefront-app .product-detail-gallery-wishlist-form{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    z-index:5 !important;
    margin:0 !important;
}

.storefront-app .product-detail-gallery-wishlist{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#102a43 !important;
    box-shadow:0 10px 22px rgba(15,23,42,.12) !important;
}

.storefront-app .product-detail-main-image > span,
.storefront-app .product-detail-main-image-modern > span{
    position:absolute !important;
    top:14px !important;
    left:14px !important;
    z-index:5 !important;
    min-height:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    padding:0 10px !important;
    border-radius:999px !important;
    background:#102a43 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
}

.storefront-app .store-home-categories-section{
    overflow:hidden !important;
}

.storefront-app .store-home-categories-section [data-category-strip],
.storefront-app .store-home-page .store-home-category-grid.store-home-category-slider{
    display:flex !important;
    flex-flow:row nowrap !important;
    gap:14px !important;
    align-items:flex-start !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x !important;
    padding:0 1px 10px !important;
    scrollbar-width:none !important;
}

.storefront-app .store-home-categories-section [data-category-strip]::-webkit-scrollbar,
.storefront-app .store-home-page .store-home-category-grid.store-home-category-slider::-webkit-scrollbar{
    display:none !important;
}

.storefront-app .store-home-categories-section .store-home-category-card{
    flex:0 0 112px !important;
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:8px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    text-align:center !important;
    text-decoration:none !important;
    scroll-snap-align:start !important;
}

.storefront-app .store-home-categories-section .store-home-category-thumb{
    width:112px !important;
    height:112px !important;
    min-width:112px !important;
    min-height:112px !important;
    max-width:112px !important;
    max-height:112px !important;
    aspect-ratio:1 / 1 !important;
    display:grid !important;
    place-items:center !important;
    overflow:hidden !important;
    border:1px solid #e7edf5 !important;
    border-radius:10px !important;
    background:#f3f6fa !important;
}

.storefront-app .store-home-categories-section .store-home-category-thumb img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

.storefront-app .store-home-categories-section .store-home-category-thumb.is-fallback span{
    color:#102a43 !important;
    font-size:18px !important;
    font-weight:900 !important;
}

.storefront-app .store-home-categories-section .store-home-category-card strong{
    width:100% !important;
    min-height:30px !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    color:#102a43 !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    text-align:center !important;
}

@media (min-width:900px){
    .storefront-app .store-home-categories-section [data-category-strip],
    .storefront-app .store-home-page .store-home-category-grid.store-home-category-slider{
        flex-wrap:nowrap !important;
        gap:18px !important;
    }
}

@media (max-width:767px){
    .storefront-app .product-detail-main-image img,
    .storefront-app .product-detail-main-image-modern img{
        padding:12px !important;
    }

    .storefront-app .product-detail-gallery-wishlist-form{
        top:10px !important;
        right:10px !important;
    }

    .storefront-app .product-detail-gallery-wishlist{
        width:36px !important;
        height:36px !important;
        min-width:36px !important;
        min-height:36px !important;
    }

    .storefront-app .store-home-categories-section [data-category-strip],
    .storefront-app .store-home-page .store-home-category-grid.store-home-category-slider{
        gap:10px !important;
        margin-inline:0 !important;
        padding-bottom:10px !important;
    }

    .storefront-app .store-home-categories-section .store-home-category-card{
        flex-basis:82px !important;
        width:82px !important;
        min-width:82px !important;
        max-width:82px !important;
    }

    .storefront-app .store-home-categories-section .store-home-category-thumb{
        width:82px !important;
        height:82px !important;
        min-width:82px !important;
        min-height:82px !important;
        max-width:82px !important;
        max-height:82px !important;
        border-radius:8px !important;
    }

    .storefront-app .store-home-categories-section .store-home-category-card strong{
        min-height:28px !important;
        font-size:11px !important;
    }
}


.store-software-download{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px;margin:18px 0;padding:22px 24px;border:1px solid #cfe0f5;border-radius:20px;background:linear-gradient(135deg,#eff6ff,#fff);box-shadow:0 12px 30px rgba(15,23,42,.05)}
.store-software-download-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:#dbeafe;color:#2563eb;font-size:22px}
.store-software-download-copy span{color:#64748b;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.store-software-download-copy h2{margin:5px 0 6px;color:#102a43;font-size:24px}
.store-software-download-copy p{margin:0;color:#60758f;line-height:1.6}
.store-software-download-meta{padding:10px 16px;border-left:1px solid #d8e3ef}
.store-software-download-meta strong,.store-software-download-meta span{display:block}
.store-software-download-meta strong{color:#102a43}
.store-software-download-meta span{margin-top:4px;color:#60758f;font-size:12px}
@media(max-width:900px){.store-software-download{grid-template-columns:auto minmax(0,1fr)}.store-software-download-meta{grid-column:2;border-left:0;padding:0}.store-software-download>a{grid-column:1/-1}}
@media(max-width:575px){.store-software-download{grid-template-columns:1fr;text-align:center}.store-software-download-icon{margin:0 auto}.store-software-download-meta,.store-software-download>a{grid-column:auto}}

@media (min-width:992px){
    .storefront-app .product-detail-info h1,
    .storefront-app .store-category-hero h1{
        font-size:clamp(24px,1.8vw,26px) !important;
    }

    .storefront-app .product-breadcrumb{
        margin-bottom:6px !important;
    }

    .storefront-app .product-detail-shell,
    .storefront-app .product-detail-shell-modern{
        padding-top:12px !important;
    }
}

/* Mobile product detail: one aligned content column with compact spacing. */
@media (max-width:767px){
    .storefront-app .main-content.product-detail-page{
        padding-top:14px !important;
    }

    .storefront-app .product-breadcrumb{
        margin-bottom:8px !important;
    }

    .storefront-app .product-detail-shell,
    .storefront-app .product-detail-shell-modern{
        display:block !important;
        width:100% !important;
        padding:0 !important;
        border:0 !important;
        border-radius:0 !important;
        background:transparent !important;
        box-shadow:none !important;
    }

    .storefront-app .product-detail-gallery,
    .storefront-app .product-detail-gallery-modern,
    .storefront-app .product-detail-stage,
    .storefront-app .product-detail-info,
    .storefront-app .product-detail-info-modern{
        width:100% !important;
        max-width:none !important;
        margin-inline:0 !important;
    }

    .storefront-app .product-detail-gallery,
    .storefront-app .product-detail-gallery-modern{
        gap:10px !important;
    }

    .storefront-app .product-detail-thumb-rail,
    .storefront-app .product-detail-thumbs{
        margin:10px 0 0 !important;
        padding:0 0 2px !important;
        gap:10px !important;
    }

    .storefront-app .product-detail-info,
    .storefront-app .product-detail-info-modern{
        margin-top:12px !important;
        gap:10px !important;
    }

    .storefront-app .product-detail-info h1,
    .storefront-app .product-detail-rating-row,
    .storefront-app .product-detail-feature-list,
    .storefront-app .product-detail-price-block{
        margin-top:0 !important;
        margin-bottom:0 !important;
    }

    .storefront-app .product-detail-feature-list,
    .storefront-app .product-detail-price-block,
    .storefront-app .product-detail-coupon-offers,
    .storefront-app .product-detail-option-block{
        width:100% !important;
        max-width:none !important;
        box-sizing:border-box !important;
    }

    .storefront-app .product-detail-tabs-shell{
        width:100% !important;
        margin-top:16px !important;
    }
}

/* Shared product-card contract: section layout may differ, card UI does not. */
.storefront-app .store-listing-page .store-product-card,
.storefront-app .store-home-product-tabs .store-product-card,
.storefront-app .product-recommendation-section .store-product-card,
.storefront-app .product-related-section .store-product-card,
.storefront-app .store-recently-viewed-section .store-product-card,
.storefront-app .store-wishlist-page .store-product-card{
    height:100% !important;
    border:0 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:none !important;
}

.storefront-app .store-listing-page .store-product-media,
.storefront-app .store-home-product-tabs .store-product-media,
.storefront-app .product-recommendation-section .store-product-media,
.storefront-app .product-related-section .store-product-media,
.storefront-app .store-recently-viewed-section .store-product-media,
.storefront-app .store-wishlist-page .store-product-media{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:1 / 1 !important;
    border-radius:0 !important;
    background:#f8f8f8 !important;
}

.storefront-app .store-listing-page .store-product-image,
.storefront-app .store-home-product-tabs .store-product-image,
.storefront-app .product-recommendation-section .store-product-image,
.storefront-app .product-related-section .store-product-image,
.storefront-app .store-recently-viewed-section .store-product-image,
.storefront-app .store-wishlist-page .store-product-image{
    width:100% !important;
    height:100% !important;
    aspect-ratio:1 / 1 !important;
    object-fit:cover !important;
}

.storefront-app .store-listing-page .store-product-content,
.storefront-app .store-home-product-tabs .store-product-content,
.storefront-app .product-recommendation-section .store-product-content,
.storefront-app .product-related-section .store-product-content,
.storefront-app .store-recently-viewed-section .store-product-content,
.storefront-app .store-wishlist-page .store-product-content{
    display:flex !important;
    flex-direction:column !important;
    padding:14px !important;
    gap:4px !important;
    background:#f8f8f8 !important;
}

.storefront-app .store-listing-page .store-product-title,
.storefront-app .store-home-product-tabs .store-product-title,
.storefront-app .product-recommendation-section .store-product-title,
.storefront-app .product-related-section .store-product-title,
.storefront-app .store-recently-viewed-section .store-product-title,
.storefront-app .store-wishlist-page .store-product-title{
    min-height:0 !important;
    height:21px !important;
    margin:0 !important;
    overflow:hidden !important;
    font-size:15px !important;
    font-weight:600 !important;
    line-height:1.4 !important;
}

.storefront-app .store-listing-page .store-product-title a,
.storefront-app .store-home-product-tabs .store-product-title a,
.storefront-app .product-recommendation-section .store-product-title a,
.storefront-app .product-related-section .store-product-title a,
.storefront-app .store-recently-viewed-section .store-product-title a,
.storefront-app .store-wishlist-page .store-product-title a{
    display:block !important;
    min-height:0 !important;
    height:21px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    -webkit-line-clamp:1 !important;
}

.storefront-app .store-product-content > .store-product-form,
.storefront-app .store-product-content > .store-product-button{
    margin-top:auto !important;
}

.storefront-app .store-listing-page .store-product-button,
.storefront-app .store-home-product-tabs .store-product-button,
.storefront-app .product-recommendation-section .store-product-button,
.storefront-app .product-related-section .store-product-button,
.storefront-app .store-recently-viewed-section .store-product-button,
.storefront-app .store-wishlist-page .store-product-button{
    min-height:42px !important;
    font-size:14px !important;
}

@media (max-width:575px){
    .storefront-app .store-listing-page .store-product-media,
    .storefront-app .store-home-product-tabs .store-product-media,
    .storefront-app .product-recommendation-section .store-product-media,
    .storefront-app .product-related-section .store-product-media,
    .storefront-app .store-recently-viewed-section .store-product-media,
    .storefront-app .store-wishlist-page .store-product-media{
        height:auto !important;
        aspect-ratio:1 / 1 !important;
    }

    .storefront-app .store-listing-page .store-product-content,
    .storefront-app .store-home-product-tabs .store-product-content,
    .storefront-app .product-recommendation-section .store-product-content,
    .storefront-app .product-related-section .store-product-content,
    .storefront-app .store-recently-viewed-section .store-product-content,
    .storefront-app .store-wishlist-page .store-product-content{
        padding:10px !important;
        gap:4px !important;
    }

    .storefront-app .store-listing-page .store-product-title,
    .storefront-app .store-home-product-tabs .store-product-title,
    .storefront-app .product-recommendation-section .store-product-title,
    .storefront-app .product-related-section .store-product-title,
    .storefront-app .store-recently-viewed-section .store-product-title,
    .storefront-app .store-wishlist-page .store-product-title{
        min-height:0 !important;
        height:18px !important;
        font-size:13px !important;
        line-height:1.35 !important;
    }

    .storefront-app .store-listing-page .store-product-title a,
    .storefront-app .store-home-product-tabs .store-product-title a,
    .storefront-app .product-recommendation-section .store-product-title a,
    .storefront-app .product-related-section .store-product-title a,
    .storefront-app .store-recently-viewed-section .store-product-title a,
    .storefront-app .store-wishlist-page .store-product-title a{
        height:18px !important;
    }

    .storefront-app .store-listing-page .store-product-button,
    .storefront-app .store-home-product-tabs .store-product-button,
    .storefront-app .product-recommendation-section .store-product-button,
    .storefront-app .product-related-section .store-product-button,
    .storefront-app .store-recently-viewed-section .store-product-button,
    .storefront-app .store-wishlist-page .store-product-button{
        min-height:38px !important;
        font-size:12px !important;
    }
}

@media (min-width:768px){
    .storefront-app .store-product-grid:not(.is-list-view),
    .storefront-app .product-recommendation-section .store-product-grid,
    .storefront-app .product-recommendation-section .store-product-grid.compact-grid,
    .storefront-app .product-related-section .store-product-grid,
    .storefront-app .store-recently-viewed-section .store-product-grid,
    .storefront-app .store-wishlist-page .store-product-grid,
    .storefront-app .store-listing-page .store-product-grid{
        grid-template-columns:repeat(auto-fill,300px) !important;
        justify-content:start !important;
    }

    .storefront-app .product-related-section .product-related-slide{
        flex-basis:300px !important;
    }
}

/* Storefront micro-interactions: clear feedback without delaying actions. */
.storefront-app .store-product-card .store-product-wishlist,
.storefront-app .product-detail-gallery-wishlist{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    display:grid !important;
    place-items:center !important;
    border:1px solid #ffd2c7 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#f4512c !important;
}

.storefront-app .store-product-card .store-product-wishlist i,
.storefront-app .product-detail-gallery-wishlist i{
    font-size:19px !important;
    transform-origin:center;
}

.storefront-app .store-product-card .store-product-wishlist.is-active,
.storefront-app .product-detail-gallery-wishlist.is-active{
    background:#fff1ec !important;
    color:#f4512c !important;
}

.storefront-app .store-product-card .store-product-wishlist:hover,
.storefront-app .store-product-card .store-product-wishlist.is-active:hover,
.storefront-app .product-detail-gallery-wishlist:hover,
.storefront-app .product-detail-gallery-wishlist.is-active:hover{
    color:#df3f1d !important;
}

.storefront-app .store-product-card .store-product-wishlist.is-heart-popping,
.storefront-app .product-detail-gallery-wishlist.is-heart-popping{
    animation:store-heart-button-pop .58s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .store-product-card .store-product-wishlist.is-heart-popping i,
.storefront-app .product-detail-gallery-wishlist.is-heart-popping i{
    animation:store-heart-icon-pop .58s cubic-bezier(.2,.9,.2,1);
}

.storefront-app .store-product-card .store-product-wishlist.is-heart-popping::after,
.storefront-app .product-detail-gallery-wishlist.is-heart-popping::after{
    content:"";
    position:absolute;
    inset:-5px;
    border:2px solid rgba(244,81,44,.42);
    border-radius:999px;
    pointer-events:none;
    animation:store-action-ring .58s ease-out both;
}

.storefront-app .is-action-popping{
    animation:store-action-pop .5s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .is-action-popping i{
    animation:store-action-icon .5s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .is-coupon-popping{
    animation:store-coupon-pop .55s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .cart-qty-btn.is-cart-qty-pressed{
    animation:store-cart-qty-press .34s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .cart-qty-form.is-cart-qty-changing{
    animation:store-cart-qty-control .5s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .cart-qty-form.is-cart-quantity-updated{
    animation:store-cart-qty-success .58s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .cart-item.is-cart-removing{
    pointer-events:none;
    animation:store-cart-row-remove .42s cubic-bezier(.4,0,1,1) both;
}

.storefront-app .cart-item.is-cart-removing .cart-remove-btn{
    color:#fff;
    background:#dc4c64;
}

.storefront-app .cart-item.is-cart-removing .cart-remove-btn i{
    animation:store-cart-trash .42s ease both;
}

.storefront-app .cart-coupon-status.is-cart-coupon-updated,
.storefront-app .cart-coupon-head-code.is-cart-coupon-updated,
.storefront-app .cart-coupon-mini-head.is-cart-coupon-updated{
    animation:store-cart-coupon-updated .68s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .cart-coupon-form button i,
.storefront-app .cart-coupon-remove i{
    transform-origin:center;
}

.storefront-app .is-coupon-popping i{
    animation:store-cart-ticket-pop .55s cubic-bezier(.2,.8,.2,1);
}

.storefront-app .is-cart-add-success{
    background:#19a463 !important;
    border-color:#19a463 !important;
    color:#fff !important;
    animation:store-cart-add-success .65s cubic-bezier(.2,.8,.2,1) !important;
}

.storefront-app .is-cart-add-success i{
    animation:store-cart-check-pop .65s cubic-bezier(.2,.9,.2,1);
}

@keyframes store-heart-button-pop{
    0%,100%{transform:scale(1)}
    38%{transform:scale(.9)}
    68%{transform:scale(1.12)}
}

@keyframes store-heart-icon-pop{
    0%,100%{transform:scale(1) rotate(0)}
    35%{transform:scale(.72) rotate(-10deg)}
    70%{transform:scale(1.3) rotate(7deg)}
}

@keyframes store-action-ring{
    0%{opacity:.85;transform:scale(.72)}
    100%{opacity:0;transform:scale(1.24)}
}

@keyframes store-action-pop{
    0%,100%{transform:translateY(0) scale(1)}
    42%{transform:translateY(1px) scale(.975)}
    72%{transform:translateY(-2px) scale(1.015)}
}

@keyframes store-action-icon{
    0%,100%{transform:translateX(0) rotate(0)}
    45%{transform:translateX(3px) rotate(-5deg)}
    72%{transform:translateX(-1px) rotate(4deg)}
}

@keyframes store-coupon-pop{
    0%,100%{transform:scale(1);box-shadow:inherit}
    42%{transform:scale(.96);box-shadow:0 0 0 0 rgba(244,81,44,0)}
    72%{transform:scale(1.025);box-shadow:0 0 0 5px rgba(244,81,44,.14)}
}

@keyframes store-cart-qty-press{
    0%,100%{transform:scale(1)}
    45%{transform:scale(.78);background:#dbeafe;color:#1d4ed8}
}

@keyframes store-cart-qty-control{
    0%,100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}
    50%{box-shadow:0 0 0 4px rgba(37,99,235,.14)}
}

@keyframes store-cart-qty-success{
    0%,100%{transform:scale(1);border-color:#d8e3ef}
    45%{transform:scale(1.06);border-color:#3b82f6}
}

@keyframes store-cart-row-remove{
    0%{opacity:1;transform:translateX(0);max-height:260px}
    70%{opacity:0;transform:translateX(24px);max-height:260px}
    100%{opacity:0;transform:translateX(24px);max-height:0}
}

@keyframes store-cart-coupon-updated{
    0%,100%{transform:scale(1)}
    45%{transform:scale(1.12);color:#138a46}
}

@keyframes store-cart-trash{
    0%{transform:rotate(0) scale(1)}
    35%{transform:rotate(-14deg) scale(.86)}
    70%{transform:rotate(12deg) scale(1.16)}
    100%{transform:rotate(0) scale(1)}
}

@keyframes store-cart-ticket-pop{
    0%,100%{transform:rotate(0) scale(1)}
    38%{transform:rotate(-10deg) scale(.78)}
    72%{transform:rotate(8deg) scale(1.22)}
}

@keyframes store-cart-add-success{
    0%,100%{transform:scale(1)}
    38%{transform:scale(.96)}
    68%{transform:scale(1.035)}
}

@keyframes store-cart-check-pop{
    0%{opacity:0;transform:scale(.35) rotate(-30deg)}
    65%{opacity:1;transform:scale(1.3) rotate(7deg)}
    100%{opacity:1;transform:scale(1) rotate(0)}
}

@media (prefers-reduced-motion:reduce){
    .storefront-app .is-heart-popping,
    .storefront-app .is-heart-popping i,
    .storefront-app .is-heart-popping::after,
    .storefront-app .is-action-popping,
    .storefront-app .is-action-popping i,
    .storefront-app .is-coupon-popping,
    .storefront-app .is-cart-qty-pressed,
    .storefront-app .is-cart-qty-changing,
    .storefront-app .is-cart-quantity-updated,
    .storefront-app .is-cart-removing,
    .storefront-app .is-cart-coupon-updated,
    .storefront-app .is-cart-add-success,
    .storefront-app .is-cart-add-success i{
        animation:none !important;
    }
}

/* Product actions use distinct colors from the shared storefront palette. */
.storefront-app .store-product-card .store-product-button.is-add-to-cart{
    background:#f4512c !important;
    border-color:#f4512c !important;
    color:#fff !important;
}

.storefront-app .store-product-card .store-product-button.is-add-to-cart:hover{
    background:#df3f1d !important;
    border-color:#df3f1d !important;
}

.storefront-app .store-product-card .store-product-button.is-customize{
    background:#102a43 !important;
    border-color:#102a43 !important;
    color:#fff !important;
}

.storefront-app .store-product-card .store-product-button.is-customize:hover{
    background:#173b5c !important;
    border-color:#173b5c !important;
}

.storefront-app .store-product-card .store-product-button.is-choose-options{
    background:#2563eb !important;
    border-color:#2563eb !important;
    color:#fff !important;
}

.storefront-app .store-product-card .store-product-button.is-choose-options:hover{
    background:#1d4ed8 !important;
    border-color:#1d4ed8 !important;
}

/* Native scrolling defaults shared by all storefront pages. */
html{
    scroll-behavior:smooth;
    scrollbar-gutter:stable;
}

.storefront-app{
    overscroll-behavior-y:none;
}

.storefront-app .store-main-header{
    backface-visibility:hidden;
    transform:translateZ(0);
}

@media (prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto;
    }
}

.storefront-app .ui-password-field{position:relative;display:block;width:100%;min-width:0}
.storefront-app .ui-password-field>input{width:100%!important;padding-right:48px!important}
.storefront-app .ui-password-field.has-secret-status>input{padding-right:116px!important}
.storefront-app .ui-password-toggle{position:absolute;top:50%;right:7px;width:34px;height:34px;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:8px;background:#eef4fb;color:#58718d;cursor:pointer;z-index:2}
.storefront-app .ui-password-toggle:hover,.storefront-app .ui-password-toggle:focus-visible{background:#e0ebf8;color:#1769dc;outline:0}
.storefront-app .ui-password-toggle[aria-pressed="true"]{color:#1769dc;background:#e8f1ff}
.storefront-app .store-secret-saved{position:absolute;right:49px;top:50%;z-index:2;display:inline-flex;align-items:center;min-height:24px;padding:0 9px;transform:translateY(-50%);border-radius:999px;background:#e8f8ee;color:#14803d;font-size:11px;font-weight:800;white-space:nowrap;pointer-events:none}

/* Deterministic storefront grids.
   Avoid late auto-fill minimums that leave an unused column on common devices. */
@media(min-width:1400px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view){
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:20px !important;
    }
}
@media(min-width:1200px) and (max-width:1399px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view){
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:18px !important;
    }
}
@media(min-width:992px) and (max-width:1199px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view){
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:18px !important;
    }
}
@media(min-width:1200px){
    .storefront-app .store-product-grid:not(.listing-grid):not(.compact-grid),
    .storefront-app .store-product-grid.four-up:not(.listing-grid),
    .storefront-app .store-product-grid.five-up:not(.listing-grid),
    .storefront-app .store-product-grid.six-up:not(.listing-grid),
    .storefront-app .store-wishlist-grid{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    }
}
@media(min-width:768px) and (max-width:1199px){
    .storefront-app .store-product-grid:not(.listing-grid):not(.compact-grid),
    .storefront-app .store-wishlist-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}
@media(min-width:768px) and (max-width:991px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view){
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:16px !important;
    }
}
@media(max-width:767px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view),
    .storefront-app .store-product-grid:not(.is-list-view):not(.compact-grid),
    .storefront-app .store-wishlist-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
    }
}
@media(max-width:359px){
    .storefront-app .store-listing-page .listing-grid:not(.is-list-view),
    .storefront-app .store-product-grid:not(.is-list-view):not(.compact-grid),
    .storefront-app .store-wishlist-grid{
        grid-template-columns:1fr !important;
    }
}
.store-home-hero{background:var(--hero-theme,#edf5ff)}
.store-home-hero.is-image-only{display:block;padding:0;min-height:0;overflow:hidden}
.store-hero-image-link{display:block;width:100%;line-height:0}
.store-hero-image-link picture,.store-hero-image-link img{display:block;width:100%}
.store-hero-image-link img{height:auto;max-height:620px;object-fit:cover}
@media(max-width:767px){
 .store-home-hero.is-image-only{border-radius:0}
 .store-hero-image-link img{max-height:none;object-fit:cover}
}

/* Unified edge-to-edge homepage hero */
.storefront-app .store-home-page .store-hero-slider{
    width:100vw;
    height:clamp(360px,37.5vw,600px);
    aspect-ratio:auto;
    margin-left:calc(50% - 50vw);
    border-radius:0;
    overflow:hidden;
}
.storefront-app .store-home-page .store-hero-track,
.storefront-app .store-home-page .store-hero-slide{
    height:100%;
}
.storefront-app .store-home-page .store-hero-slide{
    box-sizing:border-box;
    height:100%!important;
    min-height:0!important;
    padding:clamp(28px,4vw,64px) max(24px,calc((100vw - 1380px)/2 + 20px));
    border:0;
    border-radius:0;
}
.storefront-app .store-home-page .store-hero-slide.is-image-only{
    padding:0!important;
}
.storefront-app .store-home-page .store-hero-image-link,
.storefront-app .store-home-page .store-hero-image-link picture,
.storefront-app .store-home-page .store-hero-image-link img{
    width:100%;
    height:100%;
}
.storefront-app .store-home-page .store-hero-image-link img{
    max-height:none;
    object-fit:cover;
    object-position:var(--desktop-crop-x,50%) var(--desktop-crop-y,50%);
    transform-origin:var(--desktop-crop-x,50%) var(--desktop-crop-y,50%);
    transform:scale(var(--desktop-crop-zoom,1));
}
.storefront-app .store-home-page .store-home-hero-media{
    height:100%;
    min-height:0;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only){
    position:relative;
    display:flex;
    align-items:center;
    isolation:isolate;
    overflow:hidden;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only)::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg,rgb(255 255 255 / var(--hero-shade-opacity,.58)),rgb(255 255 255 / var(--hero-shade-opacity,.58)) 35%,transparent 82%);
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media{
    position:absolute;
    inset:0;
    z-index:0;
    width:100%;
    height:100%;
    min-height:100%!important;
    max-height:none!important;
    border-radius:0;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media picture,
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media img{
    display:block;
    width:100%;
    height:100%;
    min-height:100%!important;
    max-height:none!important;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media img{
    object-fit:cover;
    object-position:var(--desktop-crop-x,50%) var(--desktop-crop-y,50%);
    transform-origin:var(--desktop-crop-x,50%) var(--desktop-crop-y,50%);
    transform:scale(var(--desktop-crop-zoom,1));
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy{
    position:absolute;
    z-index:2;
    width:min(46%,620px);
    left:var(--desktop-content-x,24%)!important;
    right:auto!important;
    top:var(--desktop-content-y,50%);
    transform:translate(-50%,-50%)!important;
    padding:clamp(10px,1.5vw,22px);
    border-radius:14px;
    background:color-mix(in srgb,var(--desktop-panel-color,#fff) calc(var(--desktop-panel-opacity,0) * 100%),transparent);
    box-shadow:0 16px 42px rgb(15 42 67 / var(--desktop-panel-opacity,0));
}
.storefront-app .store-home-page .store-home-hero.is-desktop-left .store-home-hero-copy{left:7%;right:auto;margin:0;text-align:left}
.storefront-app .store-home-page .store-home-hero.is-desktop-center .store-home-hero-copy{left:50%;right:auto;margin:0;text-align:center;transform:translate(-50%,-50%)}
.storefront-app .store-home-page .store-home-hero.is-desktop-center .store-home-hero-copy p{margin-inline:auto}
.storefront-app .store-home-page .store-home-hero.is-desktop-center .store-home-hero-actions{justify-content:center}
.storefront-app .store-home-page .store-home-hero.is-desktop-right .store-home-hero-copy{right:7%;left:auto;margin:0;text-align:right}
.storefront-app .store-home-page .store-home-hero.is-desktop-right .store-home-hero-copy p{margin-left:auto}
.storefront-app .store-home-page .store-home-hero.is-desktop-right .store-home-hero-actions{justify-content:flex-end}
.storefront-app .store-home-page .store-hero-arrow,
.storefront-app .store-home-page .store-hero-dots,
.storefront-app .store-home-page .store-hero-counter,
.storefront-app .store-home-page .store-hero-progress{
    display:none!important;
}
@media(max-width:767px){
    .storefront-app .store-home-page .store-hero-slider{
        height:auto;
        aspect-ratio:1/1;
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only){
        position:relative;
        display:flex;
        align-items:center;
        padding:24px 18px!important;
        isolation:isolate;
        overflow:hidden;
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only)::after{
        content:"";
        position:absolute;
        inset:0;
        z-index:1;
        background:linear-gradient(90deg,rgb(255 255 255 / var(--hero-shade-opacity,.58)) 0%,rgb(255 255 255 / var(--hero-shade-opacity,.58)) 35%,transparent 88%);
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy{
        position:absolute!important;
        z-index:2;
        width:74%;
        left:var(--mobile-content-x,50%)!important;
        right:auto!important;
        padding-bottom:66px;
        top:var(--mobile-content-y,50%)!important;
        transform:translate(-50%,-50%)!important;
        background:color-mix(in srgb,var(--mobile-panel-color,#fff) calc(var(--mobile-panel-opacity,0) * 100%),transparent);
        box-shadow:0 16px 42px rgb(15 42 67 / var(--mobile-panel-opacity,0));
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media{
        position:absolute!important;
        inset:0!important;
        z-index:0;
        width:100%!important;
        height:100%!important;
        min-height:100%!important;
        max-height:none!important;
        margin:0!important;
        border-radius:0!important;
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media picture,
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media img{
        display:block!important;
        width:100%!important;
        height:100%!important;
        min-height:100%!important;
        max-height:none!important;
    }
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-media img{
        object-fit:cover!important;
        object-position:var(--mobile-crop-x,50%) var(--mobile-crop-y,50%)!important;
        transform-origin:var(--mobile-crop-x,50%) var(--mobile-crop-y,50%)!important;
        transform:scale(var(--mobile-crop-zoom,1))!important;
    }
    .storefront-app .store-home-page .store-hero-image-link img{
        object-position:var(--mobile-crop-x,50%) var(--mobile-crop-y,50%)!important;
        transform-origin:var(--mobile-crop-x,50%) var(--mobile-crop-y,50%)!important;
        transform:scale(var(--mobile-crop-zoom,1))!important;
    }
    .storefront-app .store-home-page .store-home-hero h1{
        font-size:clamp(30px,9vw,40px);
    }
    .storefront-app .store-home-page .store-home-quick-links{
        display:none;
    }
    .storefront-app .store-home-page .store-home-hero-copy{
        margin:0;
        text-align:center;
    }
    .storefront-app .store-home-page .store-home-hero.is-mobile-left .store-home-hero-copy{
        left:8%;
        right:auto;
        text-align:left;
    }
    .storefront-app .store-home-page .store-home-hero.is-mobile-center .store-home-hero-copy{
        left:50%;
        right:auto;
        text-align:center;
        transform:translate(-50%,-50%);
    }
    .storefront-app .store-home-page .store-home-hero.is-mobile-right .store-home-hero-copy{
        right:8%;
        left:auto;
        text-align:right;
    }
    .storefront-app .store-home-page .store-home-hero-copy p{
        margin-left:auto;
        margin-right:auto;
    }
    .storefront-app .store-home-page .store-home-hero-actions{
        position:absolute;
        left:18px;
        right:18px;
        bottom:22px;
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr));
        align-items:stretch!important;
        gap:10px;
        width:auto;
        margin:0!important;
    }
    .storefront-app .store-home-page .store-home-hero-actions .store-home-primary-btn,
    .storefront-app .store-home-page .store-home-hero-actions .store-home-secondary-btn{
        width:100%!important;
        min-width:0;
        min-height:44px;
        padding:0 10px;
        border-radius:8px;
        font-size:12px;
        line-height:1.2;
        text-align:center;
    }
    .storefront-app .store-home-page .store-home-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
        margin:12px 0!important;
    }
    .storefront-app .store-home-page .store-home-benefits article{
        min-height:112px;
        padding:12px 8px!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:7px!important;
        border:0!important;
        border-radius:0!important;
        box-shadow:none!important;
        background:transparent!important;
        text-align:center;
    }
    .storefront-app .store-home-page .store-home-benefits article>div{
        width:100%;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        text-align:center;
    }
    .storefront-app .store-home-page .store-home-benefits i{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        flex:0 0 38px;
        width:38px!important;
        height:38px!important;
        margin:0 auto!important;
        padding:0!important;
        line-height:1!important;
        text-align:center!important;
    }
    .storefront-app .store-home-page .store-home-benefits i::before{
        display:block;
        width:1em;
        line-height:1;
        text-align:center;
    }
    .storefront-app .store-home-page .store-home-benefits strong,
    .storefront-app .store-home-page .store-home-benefits span{
        display:block;
        width:100%;
        text-align:center;
    }
}
.store-promo-section{position:relative;margin:24px 0}.store-promo-track{display:grid;gap:16px}.store-promo-track.is-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.store-promo-card{position:relative;display:block;min-width:0;height:100%;overflow:hidden;border-radius:18px;background:#edf4fb;color:#fff;isolation:isolate}.store-promo-card.is-large{grid-row:span 2}.store-promo-card picture,.store-promo-card img{display:block;width:100%;height:100%}.store-promo-card img{object-fit:cover;transition:transform .35s ease}.store-promo-card:hover img{transform:scale(1.025)}.store-promo-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,22,42,.7),rgba(4,22,42,.08) 72%)}.store-promo-content{position:absolute;left:clamp(18px,3vw,42px);bottom:clamp(18px,3vw,38px);z-index:2;display:flex;max-width:72%;align-items:flex-start;flex-direction:column;gap:8px}.store-promo-content strong{font-size:clamp(22px,2.5vw,42px);line-height:1.04}.store-promo-content small{font-size:14px;line-height:1.5}.store-promo-content b{display:inline-flex;align-items:center;gap:8px;margin-top:4px;padding:10px 14px;border-radius:8px;background:#fff;color:#102c49;font-size:13px}.store-promo-track.is-slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(360px,48%);overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px}.store-promo-track.is-slider::-webkit-scrollbar{display:none}.store-promo-track.is-slider .store-promo-card{height:230px;scroll-snap-align:start}.store-promo-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.store-promo-controls button{width:38px;height:38px;border:1px solid #d6e1ed;border-radius:50%;background:#fff;color:#102c49}.admin-form-image-preview{display:block;width:160px;height:90px;object-fit:cover;margin-top:10px;border-radius:10px}
@media (min-width:900px){.store-promo-track.is-grid:has(.store-promo-card.is-large){grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr)}}
@media (max-width:767px){.store-promo-section{margin:16px 0}.store-promo-track.is-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px;gap:10px}.store-promo-card.is-large{grid-column:1/-1;grid-row:auto;height:210px}.store-promo-track.is-slider{grid-auto-columns:86%;gap:12px}.store-promo-track.is-slider .store-promo-card{height:190px}.store-promo-content{left:14px;bottom:14px;max-width:84%;gap:5px}.store-promo-content strong{font-size:21px}.store-promo-content small{font-size:12px}.store-promo-content b{padding:8px 10px}}
.store-promo-track.is-grid[data-tile-count="3"]:has(.store-promo-card.is-large){grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);grid-template-rows:repeat(2,240px)}.store-promo-track.is-grid[data-tile-count="3"] .store-promo-card.is-large{grid-row:span 2}.store-promo-track.is-grid[data-tile-count="4"]:has(.store-promo-card.is-large){grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);grid-template-rows:repeat(3,170px)}.store-promo-track.is-grid[data-tile-count="4"] .store-promo-card.is-large{grid-row:span 3}.store-promo-track.is-grid[data-tile-count="5"],.store-promo-track.is-grid[data-tile-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:200px}.store-promo-track.is-grid[data-tile-count="5"] .store-promo-card.is-large,.store-promo-track.is-grid[data-tile-count="6"] .store-promo-card.is-large{grid-column:span 2;grid-row:span 2}.store-promo-track.is-grid[data-tile-count="7"],.store-promo-track.is-grid[data-tile-count="8"],.store-promo-track.is-grid[data-tile-count="9"]{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:190px}
@media(max-width:767px){.store-promo-track.is-grid[data-tile-count]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:170px}.store-promo-track.is-grid[data-tile-count] .store-promo-card.is-large{grid-column:1/-1;grid-row:auto;height:220px}}
.store-promo-card{border-radius:5px}.store-promo-card picture{position:absolute;inset:0;overflow:hidden;border-radius:inherit}.store-promo-card img{object-position:var(--promo-dx,50%) var(--promo-dy,50%);transform-origin:var(--promo-dx,50%) var(--promo-dy,50%);transform:scale(var(--promo-dz,1))}.store-promo-card:hover img{filter:brightness(.98)}.store-promo-content{left:var(--promo-dcx,18%);top:var(--promo-dcy,76%);bottom:auto;transform:translate(-50%,-50%)}@media(max-width:767px){.store-promo-card img{object-position:var(--promo-mx,50%) var(--promo-my,50%);transform-origin:var(--promo-mx,50%) var(--promo-my,50%);transform:scale(var(--promo-mz,1))}.store-promo-card:hover img{filter:brightness(.98)}.store-promo-content{left:var(--promo-mcx,50%);top:var(--promo-mcy,72%);bottom:auto}}
.storefront-app .store-home-page .store-home-hero-copy{color:var(--hero-text-color,#102a43);font-family:var(--hero-font-family,inherit)}
.storefront-app .store-home-page .store-home-hero-copy{box-shadow:0 12px 34px rgb(15 42 67 / var(--hero-shadow-opacity,.2))!important}
.storefront-app .store-home-page .store-home-hero-copy h1{color:inherit;font-size:calc(var(--hero-title-size,48px) * var(--desktop-text-scale,1));font-style:var(--hero-font-style,normal);font-weight:var(--hero-font-weight,800);line-height:var(--desktop-line-height,1.1)}
.storefront-app .store-home-page .store-home-hero-copy p,.storefront-app .store-home-page .store-home-hero-copy h1 small{color:inherit}
.storefront-app .store-home-page .store-home-hero-copy p,.storefront-app .store-home-page .store-home-hero-copy h1 small{line-height:var(--desktop-line-height,1.1)}
.storefront-app .store-home-page .store-home-primary-btn{background:var(--hero-primary-bg,#3478ed);border-color:var(--hero-primary-bg,#3478ed);color:var(--hero-primary-color,#fff)}
.storefront-app .store-home-page .store-home-secondary-btn{background:var(--hero-secondary-bg,#fff);border-color:var(--hero-secondary-bg,#fff);color:var(--hero-secondary-color,#213b59)}
.storefront-app .store-home-page .store-home-primary-btn,.storefront-app .store-home-page .store-home-secondary-btn{font-size:calc(14px * var(--desktop-button-scale,1));min-height:calc(44px * var(--desktop-button-scale,1));padding-inline:calc(16px * var(--desktop-button-scale,1))}
@media(max-width:767px){.storefront-app .store-home-page .store-home-hero-copy h1{font-size:clamp(20px,calc(var(--hero-title-size,48px) * var(--mobile-text-scale,.82)),52px);line-height:var(--mobile-line-height,1.15)}.storefront-app .store-home-page .store-home-hero-copy p,.storefront-app .store-home-page .store-home-hero-copy h1 small{line-height:var(--mobile-line-height,1.15)}.storefront-app .store-home-page .store-home-primary-btn,.storefront-app .store-home-page .store-home-secondary-btn{font-size:calc(12px * var(--mobile-button-scale,.92));min-height:calc(42px * var(--mobile-button-scale,.92));padding-inline:calc(12px * var(--mobile-button-scale,.92))}}

/* The saved artwork model is the single source of truth for storefront rendering. */
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy{
    left:var(--desktop-content-x,24%)!important;
    top:var(--desktop-content-y,50%)!important;
    right:auto!important;
    transform:translate(-50%,-50%)!important;
    background:color-mix(in srgb,var(--desktop-panel-color,#fff) calc(var(--desktop-panel-opacity,0) * 100%),transparent)!important;
}
@media(max-width:767px){
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy{
        left:var(--mobile-content-x,50%)!important;
        top:var(--mobile-content-y,50%)!important;
        right:auto!important;
        width:min(78%,340px)!important;
        padding:clamp(10px,3vw,16px)!important;
        transform:translate(-50%,-50%)!important;
        background:color-mix(in srgb,var(--mobile-panel-color,#fff) calc(var(--mobile-panel-opacity,0) * 100%),transparent)!important;
    }
    .storefront-app .store-home-page .store-home-hero-actions{
        position:static!important;
        display:flex!important;
        justify-content:center!important;
        width:auto!important;
        margin-top:12px!important;
    }
    .storefront-app .store-home-page .store-home-hero-actions .store-home-primary-btn,
    .storefront-app .store-home-page .store-home-hero-actions .store-home-secondary-btn{
        width:auto!important;
    }
}

/* Final banner spacing contract (kept after every legacy hero override). */
.hero-composite-preview .hero-preview-actions{
    margin-top:var(--preview-button-gap,14px)!important;
}
.storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy .store-home-hero-actions{
    margin-top:var(--desktop-button-gap,14px)!important;
}
@media(max-width:767px){
    .storefront-app .store-home-page .store-hero-slide:not(.is-image-only) .store-home-hero-copy .store-home-hero-actions{
        margin-top:var(--mobile-button-gap,12px)!important;
    }
}
/* Mobile catalog explorer and facet drawer */
.store-category-explorer-shell{height:100%;display:flex;flex-direction:column;background:#fff}
.store-category-explorer-head{height:68px;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:0 10px;border-bottom:1px solid #e5e7eb}
.store-category-explorer-head h2{font-size:18px;margin:0;font-weight:800}
.store-category-back,.store-category-search-toggle{width:40px;height:40px;border:0;background:transparent;border-radius:5px;color:#102a43}
.store-category-search{display:flex;align-items:center;gap:10px;margin:10px 12px;padding:0 12px;height:44px;border:1px solid #d9e2ec;border-radius:5px}
.store-category-search input{border:0;outline:0;width:100%;height:100%;background:transparent}
.store-category-explorer{min-height:0;flex:1;display:grid;grid-template-columns:104px minmax(0,1fr)}
.store-category-rail{overflow-y:auto;background:#faf8f3;border-right:1px solid #e9e5dc}
.store-category-rail-item{position:relative;width:100%;min-height:96px;padding:10px 6px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#605b55;font-size:12px;line-height:1.2}
.store-category-rail-item.active{background:#fff;color:#18120c;font-weight:700}
.store-category-rail-item.active:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:5px;border-radius:0 5px 5px 0;background:#ffbd23}
.store-category-rail-thumb{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:#f2eee6}
.store-category-rail-thumb img,.store-category-tile-image img{width:100%;height:100%;object-fit:cover}
.store-category-panels{overflow-y:auto;padding:18px 12px 32px}
.store-category-panel{padding-bottom:24px;scroll-margin-top:12px}
.store-category-panel + .store-category-panel{padding-top:8px;border-top:1px solid #eee7df}
.store-category-panel-title{display:flex;align-items:center;gap:10px;color:#9b8372;font-size:13px;font-weight:800;letter-spacing:.08em}
.store-category-panel-title:after{content:"";height:1px;background:#e5ded6;flex:1}
.store-category-panel h3{margin:12px 0;font-size:16px}
.store-category-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}
.store-category-tile{min-width:0;color:#251b15;text-align:center;text-decoration:none;font-size:12px;line-height:1.25}
.store-category-tile-image{display:grid;place-items:center;aspect-ratio:1;border-radius:18px;overflow:hidden;margin-bottom:7px;background:#f2eee8;color:#102a43;font-size:22px}
.store-filter-mobile-tabs,.store-filter-mobile-actions{display:none}

@media(max-width:767px){
  body.category-drawer-open .mobile-bottom-nav,
  body.category-drawer-open .store-mobile-filter-button,
  body.store-filter-open .mobile-bottom-nav,
  body.store-filter-open .store-mobile-filter-button{display:none!important}
  .store-category-drawer{top:0!important;right:auto!important;bottom:0!important;left:-100%!important;width:100%!important;max-width:none!important;border-radius:0!important}
  .store-category-drawer.active{left:0!important}
  .store-category-explorer-head{padding-top:env(safe-area-inset-top);height:calc(62px + env(safe-area-inset-top))}
  .store-filter-sidebar{position:fixed!important;inset:0!important;width:100%!important;max-width:none!important;transform:translateX(-105%);z-index:1200;background:#fff;overflow:hidden!important}
  .store-filter-sidebar.active{transform:translateX(0)}
  .store-filter-sidebar .store-filter-panel{height:100%;padding:0!important;border:0!important;border-radius:0!important;display:grid;grid-template-columns:116px minmax(0,1fr);grid-template-rows:64px minmax(0,1fr) 72px;overflow:hidden}
  .store-filter-mobile-head{grid-column:1/-1;display:flex!important;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e5e7eb}
  .store-filter-mobile-head strong{font-size:24px}
  .store-filter-mobile-tabs{display:flex;flex-direction:column;align-items:stretch;background:#f5f4f0;border-right:1px solid #e1e0dc;overflow-y:auto}
  .store-filter-mobile-tabs button{min-height:58px;padding:12px 14px;border:0;background:transparent;text-align:left;font-size:14px}
  .store-filter-mobile-tabs button.active{background:#fff;font-weight:800}
  .store-filter-tab-panel{display:none!important;grid-column:2;grid-row:2;overflow-y:auto;margin:0!important;padding:0 12px!important}
  .store-filter-tab-panel.active{display:block!important}
  .store-filter-tab-panel .store-filter-divider,.store-filter-tab-panel .store-filter-kicker{display:none}
  .store-filter-tab-panel .store-filter-card-head{padding-top:14px}
  .store-filter-category-list,.store-filter-tag-list{max-height:none!important;overflow:visible!important}
  .store-filter-row,.store-filter-tag-list a{min-height:54px;border-bottom:1px solid #ececec;padding:12px 2px!important}
  .store-filter-sub-list{padding-left:8px!important}
  .store-filter-mobile-actions{display:grid;grid-column:1/-1;grid-row:3;grid-template-columns:112px 1fr;gap:12px;align-items:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -5px 18px rgba(15,23,42,.08)}
  .store-filter-mobile-actions a,.store-filter-mobile-actions button{height:48px;border-radius:5px;display:grid;place-items:center;font-weight:800;text-decoration:none}
  .store-filter-mobile-actions a{border:1px solid #8c8c8c;color:#111;background:#fff}
  .store-filter-mobile-actions button{border:0;background:#ffd978;color:#2f291f}
  .store-filter-actions{display:none}
}
