.csw-product-page {
    width:100%;
    background:#fff
}
 .csw-product-container {
    margin:0 auto
}
 .csw-product-breadcrumb {
    color:#6b7280
}
 .csw-product-breadcrumb a {
    color:#6b7280;
    text-decoration:none
}
 .csw-product-breadcrumb a:hover {
    color:#146ef5
}
 .csw-product-breadcrumb span {
    margin:0 7px
}
 .csw-gallery-main {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center
}
 .csw-gallery-main img {
    display:block
}
 .csw-gallery-placeholder {
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#edf3fb,#f8fafc);
    color:#94a3b8;
    font-size:16px
}
 .csw-gallery-thumbs {
    margin-top:14px
}
 .csw-gallery-thumb {
    border:1px solid #e5e7eb;
    overflow:hidden;
    cursor:pointer
}
 .csw-gallery-thumb img {
    width:100%;
    height:100%;
    object-fit:contain
}
 .csw-gallery-labels {
    display:flex;
    flex-wrap:wrap
}
 .csw-gallery-label {
    border:1px solid #e5e7eb;
    border-radius:5px;
    background:#fff;
    color:#4b5563
}
 .csw-gallery-label.active {
    color:#fff;
    background:#146ef5;
    border-color:#146ef5
}
 .csw-product-category {
    color:#6b7280;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.08em
}
 .csw-product-title {
    color:#0f172a;
    overflow-wrap:anywhere
}
 .csw-product-rating {
    display:flex;
    flex-wrap:wrap;
    align-items:center
}
 .csw-stars {
    color:#f5b301
}
 .csw-review-count {
    color:#64748b
}
 .csw-product-price strong {
    color:#111827;
    font-size:31px
}
 .csw-price-label {
    margin-right:6px;
    color:#64748b;
    font-size:13px
}
 .csw-product-intro {
    color:#64748b
}
 .csw-product-benefits {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr))
}
 .csw-benefit {
    color:#334155;
    overflow-wrap:anywhere
}
 .csw-benefit::before {
    content:"✓";
    color:#16a34a;
    font-weight:700
}
 .csw-wholesale-box {
    border:1px solid #e5e7eb
}
 .csw-section-mini-title {
    color:#111827;
    font-weight:800
}
 .csw-price-tiers {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px
}
 .csw-price-tier {
    min-width:0;
    border:1px solid #d9dee7;
    background:#fff;
    text-align:center;
    cursor:pointer;
    transition:border-color .2s,background-color .2s
}
 .csw-price-tier:hover {
    border-color:#146ef5
}
 .csw-price-tier.active {
    color:#fff;
    background:#111827;
    border-color:#111827
}
 .csw-price-tier strong {
    display:block
}
 .csw-price-tier span {
    display:block;
    opacity:.75
}
 .csw-step {
    min-width:0;
    border:1px solid #e1e5eb;
    background:#fff
}
 .csw-step-header {
    display:flex;
    align-items:center;
    border-bottom:1px solid #eef0f3;
    font-weight:700
}
 .csw-step-number {
    flex:0 0 24px;
    border-radius:50%;
    background:#146ef5;
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center
}
 .csw-step-content {
    min-width:0;
    -webkit-overflow-scrolling:touch
}
 .csw-player-table {
    border-collapse:collapse
}
 .csw-player-table th {
    background:#f8fafc;
    border-bottom:1px solid #e5e7eb;
    color:#374151;
    text-align:left;
    font-weight:700
}
 .csw-player-table td {
    border-bottom:1px solid #f1f5f9
}
 .csw-player-input,.csw-player-select {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:42px;
    padding:0 10px;
    border:1px solid #d9dee7;
    border-radius:4px;
    background:#fff;
    font-size:13px;
    color:#111827
}
 .csw-player-input:focus,.csw-player-select:focus {
    outline:none;
    border-color:#146ef5
}
 .csw-remove-player {
    border:0;
    background:transparent;
    color:#9ca3af;
    cursor:pointer
}
 .csw-remove-player:hover {
    color:#ef4444
}
 .csw-add-player {
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #9ca3af;
    border-radius:50%;
    background:#fff;
    color:#111827;
    cursor:pointer
}
 .csw-add-player:hover {
    color:#146ef5;
    border-color:#146ef5
}
 .csw-player-note {
    color:#6b7280
}
 .csw-upload-row {
    grid-template-columns:125px minmax(0,1fr);
    margin-bottom:12px
}
 .csw-upload-row label {
    color:#374151;
    font-weight:600
}
 .csw-upload-row input[type=file] {
    width:100%;
    min-width:0;
    max-width:100%;
    font-size:12px
}
 .csw-upload-note {
    color:#6b7280
}
 .csw-price-summary {
    border:1px solid #e5e7eb;
    background:#f8fafc;
    text-align:center
}
 .csw-price-summary strong {
    color:#111827;
    font-size:15px;
    font-weight:700
}
 .csw-price-summary-line {
    color:#374151;
    font-size:14px
}
 .csw-price-summary-total {
    color:#111827;
    font-weight:800
}
 .csw-product-actions {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr))
}
 .csw-product-actions button,.csw-product-actions a {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:10px;
    border-radius:5px;
    font-size:14px;
    font-weight:700;
    text-align:center;
    text-decoration:none;
    cursor:pointer
}
 .csw-add-cart {
    border:1px solid #111827;
    background:#fff;
    color:#111827
}
 .csw-buy-now {
    border:1px solid #111827;
    background:#111827;
    color:#fff
}
 .csw-add-cart:hover,.csw-buy-now:hover {
    opacity:.9
}
 .csw-help {
    margin-top:14px;
    text-align:center;
    color:#64748b;
    font-size:12px;
    overflow-wrap:anywhere
}
 .csw-help a {
    color:#146ef5;
    font-weight:600
}
 .csw-product-section {
    padding:70px 0;
    border-top:1px solid #edf0f4
}
 .csw-section-title {
    margin:0 0 10px;
    color:#0f172a;
    font-size:30px;
    font-weight:800;
    text-align:center
}
 .csw-section-subtitle {
    max-width:650px;
    margin:0 auto 35px;
    color:#64748b;
    font-size:14px;
    line-height:1.7;
    text-align:center
}
 .csw-process-layout {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) repeat(4,minmax(0,1fr));
    gap:0;
    align-items:center
}
 .csw-process-intro {
    padding-right:35px
}
 .csw-process-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px
}
 .csw-process-card {
    min-width:0;
    padding:25px 20px;
    text-align:center
}
 .csw-process-layout .csw-process-card {
    position:relative;
    padding:5px 20px;
    text-align:left
}
 .csw-process-layout .csw-process-card:not(:last-child)::after {
    content:"›";
    position:absolute;
    right:-4px;
    top:30px;
    color:#cbd5e1;
    font-size:22px
}
 .csw-process-icon {
    width:48px;
    height:48px;
    margin:0 0 10px;
    border:0;
    border-radius:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    color:#146ef5;
    font-size:14px;
    font-weight:800
}
 .csw-process-card h3 {
    margin:0 0 7px;
    color:#0f172a;
    font-size:13px;
    line-height:1.3
}
 .csw-process-card p {
    margin:0;
    color:#64748b;
    font-size:11px;
    line-height:1.55
}
 .csw-benefits-section {
    padding-top:35px;
    padding-bottom:35px
}
 .csw-benefit-intro {
    padding-right:20px
}
 .csw-benefit-intro h2 {
    overflow-wrap:anywhere
}
 .csw-benefit-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px
}
 .csw-benefit-card {
    min-width:0;
    padding:25px 18px;
    border:1px solid #e8ebef;
    border-radius:7px;
    text-align:center
}
 .csw-benefit-icon {
    margin-bottom:10px;
    color:#146ef5;
    font-size:27px;
    line-height:1
}
 .csw-benefit-card strong {
    display:block;
    margin-bottom:6px;
    font-size:13px
}
 .csw-benefit-layout .csw-benefit-card strong {
    color:#0f172a;
    font-size:11px;
    line-height:1.3
}
 .csw-benefit-card span {
    color:#64748b;
    font-size:11px
}
 .csw-benefit-layout .csw-benefit-card span {
    font-size:10px;
    line-height:1.4
}
 .csw-details-layout {
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:28px;
    align-items:center
}
 .csw-details-table {
    width:100%;
    border-collapse:collapse
}
 .csw-details-table td {
    padding:8px 12px;
    border:1px solid #e2e8f0;
    font-size:12px;
    line-height:1.3;
    overflow-wrap:anywhere
}
 .csw-details-table td:first-child {
    width:36%;
    background:#f8fafc;
    color:#1e293b;
    font-weight:700
}
 .csw-details-table td:last-child {
    color:#475569
}
 .csw-detail-images {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    min-width:0
}
 .csw-detail-image {
    height:290px;
    min-height:0;
    border-radius:6px;
    background:#f5f7fa;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:#94a3b8
}
 .csw-detail-image img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain
}
 .csw-size-layout {
    display:grid;
    grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);
    gap:35px;
    align-items:start;
    min-width:0
}
 .csw-size-layout>div:first-child {
    min-width:0;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
}
 .csw-size-table {
    width:100%;
    border-collapse:collapse
}
 .csw-size-table th,.csw-size-table td {
    padding:11px 9px;
    border:1px solid #e2e8f0;
    text-align:center;
    font-size:12px
}
 .csw-size-table th {
    background:#f8fafc;
    font-weight:700
}
 .csw-size-table-vertical {
    width:100%;
    min-width:680px;
    border-collapse:collapse;
    table-layout:auto;
    background:#fff
}
 .csw-size-table-vertical th,.csw-size-table-vertical td {
    padding:11px 12px;
    border:1px solid #e2e8f0;
    text-align:center;
    font-size:12px;
    line-height:1.5;
    white-space:nowrap
}
 .csw-size-table-vertical thead th {
    background:#f1f5f9;
    color:#0f172a;
    font-weight:700
}
 .csw-size-table-vertical th:first-child,.csw-size-table-vertical td:first-child {
    position:sticky;
    left:0;
    z-index:1;
    background:#f8fafc;
    font-weight:700
}
 .csw-size-table-vertical thead th:first-child {
    z-index:2;
    background:#eaf0f8
}
 .csw-size-table-vertical tbody tr:nth-child(even) td {
    background:#f8fafc
}
 .csw-size-table-vertical tbody tr:nth-child(even) td:first-child {
    background:#eef2f7
}
 .csw-size-note {
    min-width:0;
    padding:25px;
    border-radius:7px;
    background:#f8fafc
}
 .csw-size-note strong {
    display:block;
    margin-bottom:8px
}
 .csw-size-note p {
    margin:0;
    color:#64748b;
    font-size:12px;
    line-height:1.7
}
 .csw-size-note a {
    overflow-wrap:anywhere
}
 .csw-design-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
 .csw-design-card {
    height:190px;
    border-radius:7px;
    background:linear-gradient(135deg,#eff6ff,#f8fafc);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#94a3b8;
    font-size:12px;
    overflow:hidden
}
 .csw-design-card img {
    width:100%;
    height:100%;
    object-fit:cover
}
 .csw-review-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px
}
 .csw-review-card {
    min-width:0;
    padding:25px;
    border:1px solid #e5e7eb;
    border-radius:7px
}
 .csw-review-stars {
    margin-bottom:12px;
    color:#f5b301;
    letter-spacing:2px
}
 .csw-review-card p {
    margin:0 0 16px;
    color:#475569;
    font-size:13px;
    line-height:1.7
}
 .csw-review-author {
    color:#111827;
    font-size:12px;
    font-weight:700
}
 .csw-faq-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 18px
}
 .csw-faq-item {
    min-width:0;
    border:1px solid #e5e7eb;
    border-radius:5px
}
 .csw-faq-question {
    padding:15px 17px;
    display:flex;
    justify-content:space-between;
    gap:12px;
    color:#111827;
    font-size:13px;
    font-weight:600;
    overflow-wrap:anywhere
}
 .csw-final-cta {
    margin-top:0;
    padding:70px 30px;
    background:linear-gradient(rgba(5,30,70,.88),rgba(5,30,70,.88)),linear-gradient(135deg,#0b3b78,#111827);
    color:#fff;
    text-align:center
}
 .csw-final-cta h2 {
    margin:0 0 10px;
    color:#fff;
    font-size:32px
}
 .csw-final-cta p {
    margin:0 auto 22px;
    color:rgba(255,255,255,.8);
    font-size:14px
}
 .csw-final-cta a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 25px;
    border-radius:5px;
    background:#fff;
    color:#111827;
    font-size:13px;
    font-weight:700;
    text-decoration:none
}
 @media (max-width:1024px) {
    .csw-product-hero {
        grid-template-columns:minmax(0,1fr);
        gap:35px
    }
     .csw-gallery {
        position:static
    }
     .csw-process-grid,.csw-benefit-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
     .csw-design-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
     .csw-details-layout,.csw-size-layout {
        grid-template-columns:minmax(0,1fr)
    }
     .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:25px 10px
    }
     .csw-process-intro {
        grid-column:span 2;
        padding-right:0
    }
     .csw-benefit-layout {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
     .csw-benefit-intro {
        grid-column:span 2;
        padding-right:0
    }
     .csw-size-layout {
        gap:24px
    }

}
 @media (max-width:700px) {
    .csw-product-container {
        width:calc(100% - 24px);
        max-width:1280px
    }
     .csw-product-breadcrumb {
        padding:14px 0;
        overflow-wrap:anywhere
    }
     .csw-product-hero {
        gap:26px;
        padding-bottom:38px
    }
     .csw-product-title {
        font-size:29px
    }
     .csw-gallery-main,.csw-gallery-placeholder {
        min-height:0;
        aspect-ratio:4/5
    }
     .csw-gallery-main img {
        height:100%;
        max-height:480px
    }
     .csw-gallery-thumbs {
        gap:8px
    }
     .csw-gallery-thumb {
        flex-basis:68px;
        width:68px;
        height:68px
    }
     .csw-gallery-label {
        padding:7px 12px
    }
     .csw-product-benefits {
        grid-template-columns:repeat(2,minmax(0,1fr));
        column-gap:12px;
        row-gap:6px
    }
     .csw-wholesale-box {
        padding:12px
    }
     .csw-price-tiers {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
     .csw-price-tier:last-child {
        grid-column:span 2
    }
     .csw-step-header {
        padding:12px;
        align-items:flex-start
    }
     .csw-step-content {
        padding:12px;
        overflow-x:auto
    }
     .csw-player-table {
        min-width:600px
    }
     .csw-upload-row {
        grid-template-columns:minmax(0,1fr);
        gap:6px
    }
     .csw-upload-row input[type=file] {
        max-width:100%
    }
     .csw-price-summary {
        padding:15px 10px
    }
     .csw-product-actions {
        grid-template-columns:minmax(0,1fr);
        gap:10px
    }
     .csw-product-actions button,.csw-product-actions a {
        min-height:48px
    }
     .csw-product-section {
        padding:42px 0
    }
     .csw-section-title {
        font-size:25px
    }
     .csw-section-subtitle {
        margin-bottom:24px
    }
     .csw-process-layout {
        grid-template-columns:minmax(0,1fr);
        gap:14px
    }
     .csw-process-intro,.csw-benefit-intro {
        grid-column:auto;
        padding-right:0
    }
     .csw-process-intro h2 {
        font-size:21px
    }
     .csw-process-layout .csw-process-card {
        padding:10px 0
    }
     .csw-process-layout .csw-process-card:not(:last-child)::after {
        display:none
    }
     .csw-benefit-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px
    }
     .csw-benefit-intro {
        grid-column:span 2
    }
     .csw-benefit-intro h2 {
        font-size:18px
    }
     .csw-benefit-layout .csw-benefit-card {
        min-height:120px;
        padding:16px 8px
    }
     .csw-details-layout {
        grid-template-columns:minmax(0,1fr);
        gap:20px
    }
     .csw-details-table {
        table-layout:fixed
    }
     .csw-details-table td {
        padding:8px;
        font-size:12px;
        overflow-wrap:anywhere
    }
     .csw-details-table td:first-child {
        width:38%
    }
     .csw-detail-images {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px
    }
     .csw-detail-image {
        height:auto;
        aspect-ratio:1/1
    }
     .csw-size-layout {
        grid-template-columns:minmax(0,1fr);
        gap:18px
    }
     .csw-size-layout>div:first-child {
        width:100%;
        overflow-x:auto
    }
     .csw-size-table-vertical {
        min-width:640px
    }
     .csw-size-table-vertical th,.csw-size-table-vertical td {
        padding:9px 10px;
        font-size:11px
    }
     .csw-size-note {
        padding:18px
    }
     .csw-design-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px
    }
     .csw-design-card {
        height:150px
    }
     .csw-review-grid,.csw-faq-grid {
        grid-template-columns:minmax(0,1fr)
    }
     .csw-review-card {
        padding:18px
    }
     .csw-faq-grid {
        gap:10px
    }
     .csw-faq-question {
        padding:13px
    }
     .csw-final-cta {
        padding:42px 18px
    }
     .csw-final-cta h2 {
        font-size:25px;
        overflow-wrap:anywhere
    }
     .csw-final-cta p {
        line-height:1.6
    }

}
 .csw-product-page,.csw-product-page * {
    box-sizing:border-box
}
 .csw-product-page img {
    max-width:100%
}
 .csw-product-page table {
    max-width:100%
}
 .csw-product-page button,.csw-product-page input,.csw-product-page select {
    max-width:100%
}
 .csw-product-meta {
    line-height:1.5;
    color:#888
}
 .csw-customize-section {
    background:#f3f7fc;
    border-top:1px solid #e8eef6;
    border-bottom:1px solid #e8eef6;
    overflow:hidden
}
 .csw-customize-section .csw-product-container {
    width:100%;
    margin:0 auto
}
 .csw-customize-section .csw-process-layout {
    display:grid !important;
    align-items:stretch
}
 .csw-process-intro {
    align-self:center;
    min-width:0
}
 .csw-process-eyebrow {
    display:block;
    color:#1261e8;
    font-weight:800;
    letter-spacing:2px
}
 .csw-process-intro h2 {
    margin:0;
    color:#14233b;
    font-weight:850;
    letter-spacing:-0.7px
}
 .csw-process-intro h2 span {
    display:block;
    color:#1261e8
}
 .csw-process-line {
    width:46px;
    height:4px;
    border-radius:4px;
    background:#1261e8
}
 .csw-process-intro p {
    margin:0;
    color:#64748b
}
 .csw-customize-section .csw-process-card {
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:0;
    overflow:visible;
    border:1px solid #edf1f7;
    background:#fff;
    box-shadow:0 8px 24px rgba(32,65,110,0.06);
    transition:transform 0.25s ease,box-shadow 0.25s ease
}
 .csw-customize-section .csw-process-card:hover {
    transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(32,65,110,0.11)
}
 .csw-process-visual {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    overflow:hidden;
    border-radius:15px 15px 0 0;
    background:linear-gradient(145deg,#f7faff,#edf4ff)
}
 .csw-customize-section .csw-process-icon {
    position:absolute;
    top:-13px;
    left:-10px;
    z-index:5;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    border:3px solid #fff;
    border-radius:50%;
    background:#1261e8;
    color:#fff;
    font-weight:800;
    box-shadow:0 4px 12px rgba(18,97,232,0.18)
}
 .csw-process-card-content {
    padding:17px 17px 20px
}
 .csw-process-card-content h3 {
    margin:0 0 9px;
    color:#15233b;
    font-size:16px;
    font-weight:800;
    line-height:1.3
}
 .csw-process-card-content p {
    margin:0;
    color:#64748b;
    font-size:12px;
    line-height:1.65
}
 .csw-visual-window {
    width:76%;
    max-width:220px;
    padding:9px;
    border:5px solid #243b5b;
    border-radius:10px;
    background:#fff;
    box-shadow:0 10px 20px rgba(30,57,92,0.12);
    transform:perspective(500px) rotateY(-5deg)
}
 .csw-window-bar {
    display:flex;
    gap:4px;
    padding-bottom:8px;
    border-bottom:1px solid #e7edf5
}
 .csw-window-bar i {
    width:5px;
    height:5px;
    border-radius:50%;
    background:#9db4d5
}
 .csw-window-content {
    display:flex;
    align-items:center;
    justify-content:space-around;
    gap:8px;
    min-height:90px
}
 .csw-color-list {
    display:grid;
    grid-template-columns:repeat(2,10px);
    gap:6px
}
 .csw-color-list i,.csw-detail-colors i {
    display:block;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#1261e8
}
 .csw-color-list i:nth-child(2),.csw-detail-colors i:nth-child(2) {
    background:#e7444e
}
 .csw-color-list i:nth-child(3),.csw-detail-colors i:nth-child(3) {
    background:#172b49
}
 .csw-color-list i:nth-child(4),.csw-detail-colors i:nth-child(4) {
    background:#dce5f1
}
 .csw-visual-details {
    gap:10px;
    flex-wrap:wrap;
    align-content:center;
    padding:25px 12px
}
 .csw-detail-logo {
    display:flex;
    align-items:center;
    justify-content:center;
    width:58px;
    height:58px;
    border:2px dashed #91a9ca;
    border-radius:8px;
    color:#233c61;
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    text-align:center
}
 .csw-detail-plus {
    color:#1261e8;
    font-size:27px;
    font-weight:500
}
 .csw-detail-number {
    display:flex;
    flex-direction:column;
    align-items:center;
    color:#172b49
}
 .csw-detail-number strong {
    font-size:43px;
    line-height:1;
    font-weight:850
}
 .csw-detail-number small {
    margin-top:4px;
    font-size:10px;
    font-weight:800
}
 .csw-detail-colors {
    display:flex;
    justify-content:center;
    width:100%;
    gap:11px;
    margin-top:6px
}
 .csw-detail-colors i {
    width:18px;
    height:18px
}
 .csw-mockup-check {
    position:absolute;
    right:15px;
    bottom:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border-radius:50%;
    background:#e5f8ef;
    color:#15945b;
    font-size:17px;
    font-weight:800
}
 .csw-visual-delivery {
    background:linear-gradient(145deg,#f7faff,#eaf3ff)
}
 .csw-shipping-orbit {
    position:absolute;
    width:155px;
    height:75px;
    border:2px solid #c7e2ff;
    border-radius:50%;
    transform:rotate(-18deg)
}
 .csw-shipping-globe {
    position:absolute;
    top:28px;
    right:28px;
    color:#a5d1ff;
    font-size:42px
}
 .csw-shipping-box {
    position:absolute;
    bottom:31px;
    left:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:88px;
    height:63px;
    transform:translateX(-50%);
    border:1px solid #dfb77f;
    background:linear-gradient(135deg,#f7d9a8,#e8b76f);
    box-shadow:0 8px 14px rgba(155,110,46,0.14)
}
 .csw-shipping-box::before {
    position:absolute;
    top:-15px;
    left:0;
    width:100%;
    height:28px;
    content:"";
    border:1px solid #dfb77f;
    background:#f8dfb7;
    transform:perspective(100px) rotateX(35deg)
}
 .csw-shipping-box span {
    z-index:1;
    color:#98672f;
    font-size:12px;
    font-weight:800
}
 .csw-shipping-plane {
    position:absolute;
    top:37px;
    left:28px;
    color:#1767db;
    font-size:32px;
    transform:rotate(-12deg)
}
 @media (max-width:1100px) {
    .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:22px
    }
     .csw-process-intro {
        grid-column:1 / -1;
        padding:0 0 8px
    }
     .csw-process-intro h2 {
        font-size:30px
    }
     .csw-customize-section .csw-process-card {
        min-height:300px
    }

}
 @media (max-width:600px) {
    .csw-customize-section {
        padding:38px 16px !important
    }
     .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px 12px
    }
     .csw-process-intro h2 {
        font-size:27px
    }
     .csw-process-visual {
        height:135px
    }
     .csw-customize-section .csw-process-card {
        min-height:0;
        border-radius:12px
    }
     .csw-customize-section .csw-process-icon {
        top:-10px;
        left:-7px;
        width:35px;
        height:35px;
        font-size:12px
    }
     .csw-process-card-content {
        padding:14px 11px 16px
    }
     .csw-process-card-content h3 {
        font-size:13px
    }
     .csw-process-card-content p {
        font-size:11px;
        line-height:1.55
    }
     .csw-visual-window {
        width:80%;
        border-width:3px;
        padding:6px
    }
     .csw-mockup-sheet {
        gap:7px
    }
     .csw-detail-logo {
        width:44px;
        height:44px;
        font-size:10px
    }
     .csw-detail-number strong {
        font-size:34px
    }
     .csw-shipping-box {
        width:70px;
        height:48px
    }
     .csw-shipping-plane {
        left:15px;
        font-size:25px
    }

}
 .csw-mini-shirt,.csw-apparel-svg {
    display:block;
    width:100%;
    height:100%;
    overflow:visible
}
 .csw-window-content .csw-apparel-svg {
    width:76px;
    height:90px;
    flex:0 0 auto
}
 .csw-mockup-sheet {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    padding:8px 12px
}
 .csw-mockup-sheet .csw-apparel-svg {
    width:78px;
    height:125px;
    flex:0 1 78px
}
 .csw-visual-mockup {
    background:radial-gradient(ellipse at 50% 80%,rgba(188,215,250,.35),transparent 55%),linear-gradient(145deg,#f8fbff,#edf4ff)
}
 @media (max-width:600px) {
    .csw-window-content .csw-apparel-svg {
        width:54px;
        height:72px
    }
     .csw-mockup-sheet .csw-apparel-svg {
        width:54px;
        height:92px;
        flex-basis:54px
    }

}
 .csw-design-shirt {
    width:76px;
    height:90px;
    flex:0 0 auto
}
 @media (max-width:600px) {
    .csw-design-shirt {
        width:54px;
        height:72px
    }

}
 .csw-benefits-section {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    border-top:1px solid #e4edf9;
    border-bottom:1px solid #e4edf9
}
 .csw-benefits-section .csw-product-container {
    position:relative;
    z-index:1;
    margin:0 auto
}
 .csw-benefit-intro {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    min-width:0
}
 .csw-benefit-eyebrow {
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:20px;
    color:#1768e8;
    border-radius:30px;
    font-weight:800;
    letter-spacing:1.5px
}
 .csw-benefit-crown {
    font-size:16px;
    line-height:1
}
 .csw-benefit-intro h2 {
    color:#14243d;
    font-weight:850;
    letter-spacing:-.7px
}
 .csw-benefit-intro h2 span {
    color:#1768e8
}
 .csw-benefit-line {
    height:4px;
    border-radius:5px;
    background:#1768e8
}
 .csw-benefit-intro>p {
    color:#647894
}
 .csw-benefit-layout .csw-benefit-card {
    position:relative;
    overflow:hidden;
    transition:transform .25s ease,box-shadow .25s ease
}
 .csw-benefit-layout .csw-benefit-card:hover {
    transform:translateY(-5px);
    box-shadow:0 16px 36px rgba(41,76,125,.13)
}
 .csw-benefit-number {
    position:absolute;
    top:12px;
    left:12px;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    color:#fff;
    background:#1768e8;
    border:3px solid #fff;
    border-radius:50%;
    box-shadow:0 4px 12px rgba(23,104,232,.22);
    font-size:11px;
    font-weight:800
}
 .csw-benefit-visual {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:205px;
    min-height:0;
    margin-bottom:15px;
    overflow:hidden;
    border-radius:12px;
    background:radial-gradient(ellipse,#e6f0ff 0%,#f4f8ff 55%,rgba(255,255,255,0) 78%)
}
 .csw-benefit-card h3 {
    margin:0 0 10px;
    color:#14243d;
    font-size:16px;
    font-weight:850;
    line-height:1.35
}
 .csw-benefit-card>p {
    margin:0;
    color:#647894;
    font-size:13px;
    line-height:1.65
}
 .csw-benefit-design-panel {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-around;
    width:86%;
    height:145px;
    padding:14px 10px;
    border:4px solid #243b5b;
    border-radius:11px;
    background:#fff;
    box-shadow:0 12px 22px rgba(28,54,87,.12);
    transform:rotate(-1deg)
}
 .csw-benefit-panel-dots {
    position:absolute;
    top:4px;
    left:9px;
    color:#9db8dc;
    font-size:14px;
    letter-spacing:1px
}
 .csw-benefit-shirt {
    width:68%;
    height:120px;
    padding-top:10px
}
 .csw-benefit-shirt svg {
    display:block;
    width:100%;
    height:100%
}
 .csw-benefit-colors {
    display:flex;
    flex-direction:column;
    gap:7px
}
 .csw-benefit-colors i,.csw-benefit-swatches i {
    display:block;
    width:11px;
    height:11px;
    border-radius:50%;
    background:#1768e8
}
 .csw-benefit-colors i:nth-child(2),.csw-benefit-swatches i:nth-child(2) {
    background:#ef4444
}
 .csw-benefit-colors i:nth-child(3),.csw-benefit-swatches i:nth-child(3) {
    background:#172b49
}
 .csw-benefit-colors i:nth-child(4),.csw-benefit-swatches i:nth-child(4) {
    background:#dbe4ef
}
 .csw-benefit-edit {
    position:absolute;
    top:30px;
    right:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:37px;
    height:37px;
    color:#fff;
    background:#1768e8;
    border-radius:50%;
    box-shadow:0 5px 12px rgba(23,104,232,.25);
    font-size:19px
}
 .csw-benefit-personalize {
    gap:8px;
    padding:8px 5px
}
 .csw-benefit-shirt-back {
    width:52%;
    height:165px
}
 .csw-benefit-shirt-back svg {
    width:100%;
    height:100%
}
 .csw-benefit-personalize-labels {
    display:flex;
    flex-direction:column;
    gap:8px;
    width:37%
}
 .csw-benefit-personalize-labels>span {
    padding:7px 4px;
    color:#17385f;
    background:#e4eefc;
    border-radius:7px;
    font-size:10px;
    font-weight:800;
    text-align:center
}
 .csw-benefit-swatches {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:5px;
    margin-top:3px
}
 .csw-benefit-swatches i {
    width:12px;
    height:12px
}
 .csw-benefit-box {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:76%;
    height:105px;
    margin-top:35px;
    border:1px solid #d6a45e;
    background:linear-gradient(140deg,#f8d9a6,#eab76b);
    box-shadow:0 12px 20px rgba(153,111,47,.14)
}
 .csw-benefit-box::before {
    position:absolute;
    top:-17px;
    left:-3px;
    width:calc(100%+6px);
    height:25px;
    content:"";
    background:#ffe5bb;
    border:1px solid #d6a45e;
    transform:perspective(60px) rotateX(8deg)
}
 .csw-benefit-box-shirts {
    position:absolute;
    top:-58px;
    width:75%;
    height:80px
}
 .csw-benefit-box-shirts svg {
    width:100%;
    height:100%
}
 .csw-benefit-one-piece {
    position:absolute;
    top:12px;
    right:12px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    color:#fff;
    background:#1768e8;
    border-radius:50%;
    box-shadow:0 5px 14px rgba(23,104,232,.22);
    font-size:20px;
    font-weight:850;
    line-height:1
}
 .csw-benefit-one-piece small {
    margin-top:3px;
    font-size:8px
}
 .csw-benefit-globe {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:155px;
    height:155px;
    border:1px solid rgba(80,158,255,.35);
    border-radius:50%;
    background:radial-gradient(circle at 35% 30%,#fff 0%,#e4f1ff 50%,#b9d9ff 100%)
}
 .csw-benefit-globe::before,.csw-benefit-globe::after {
    position:absolute;
    content:"";
    border:1px solid rgba(60,133,225,.35);
    border-radius:50%
}
 .csw-benefit-globe::before {
    inset:0 32%
}
 .csw-benefit-globe::after {
    inset:22% 0
}
 .csw-benefit-globe-line {
    position:absolute;
    width:180px;
    height:54px;
    border:2px dashed #70aaff;
    border-radius:50%;
    transform:rotate(-17deg)
}
 .csw-benefit-location {
    position:absolute;
    top:27px;
    left:30px;
    color:#1768e8;
    font-size:22px
}
 .csw-benefit-plane {
    position:absolute;
    top:34px;
    right:-20px;
    color:#1768e8;
    font-size:35px;
    transform:rotate(-12deg)
}
 .csw-benefit-parcel {
    position:absolute;
    right:17px;
    bottom:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:65px;
    height:50px;
    color:#94652d;
    background:linear-gradient(140deg,#f7d7a0,#e8b56a);
    border:1px solid #d5a15a;
    box-shadow:0 7px 14px rgba(153,111,47,.13);
    font-size:11px;
    font-weight:850
}
 @media (max-width:1100px) {
    .csw-benefit-layout {
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:14px
    }
     .csw-benefit-intro {
        grid-column:1 / -1;
        padding:0 0 8px
    }
     .csw-benefit-intro h2 {
        font-size:30px
    }
     .csw-benefit-visual {
        height:175px
    }
     .csw-benefit-card h3 {
        font-size:14px
    }

}
 @media (max-width:650px) {
    .csw-benefits-section {
        padding:38px 16px !important
    }
     .csw-benefit-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px
    }
     .csw-benefit-intro {
        grid-column:1 / -1;
        padding:0 0 10px
    }
     .csw-benefit-eyebrow {
        margin-bottom:13px;
        font-size:10px
    }
     .csw-benefit-intro h2 {
        font-size:clamp(23px,6vw,30px);
        letter-spacing:-.4px
    }
     .csw-benefit-line {
        margin:15px 0 12px
    }
     .csw-benefit-intro>p {
        font-size:13px;
        line-height:1.7
    }
     .csw-benefit-desktop {
        display:none
    }
     .csw-benefit-layout .csw-benefit-card {
        padding:12px 12px 16px;
        border-radius:13px
    }
     .csw-benefit-number {
        top:8px;
        left:8px;
        width:31px;
        height:31px;
        font-size:10px
    }
     .csw-benefit-visual {
        height:135px;
        margin-bottom:12px
    }
     .csw-benefit-card h3 {
        font-size:12px;
        line-height:1.4;
        overflow-wrap:anywhere
    }
     .csw-benefit-card>p {
        font-size:11px;
        line-height:1.6
    }
     .csw-benefit-design-panel {
        width:90%;
        height:95px;
        padding:12px 5px 4px;
        border-width:3px
    }
     .csw-benefit-shirt {
        height:80px
    }
     .csw-benefit-edit {
        top:22px;
        right:7px;
        width:28px;
        height:28px;
        font-size:15px
    }
     .csw-benefit-shirt-back {
        height:120px
    }
     .csw-benefit-personalize-labels {
        gap:5px
    }
     .csw-benefit-personalize-labels>span {
        padding:5px 2px;
        font-size:8px
    }
     .csw-benefit-box {
        height:70px;
        margin-top:30px
    }
     .csw-benefit-box-shirts {
        top:-43px;
        height:60px
    }
     .csw-benefit-one-piece {
        top:8px;
        right:7px;
        width:39px;
        height:39px;
        font-size:15px
    }
     .csw-benefit-one-piece small {
        font-size:7px
    }
     .csw-benefit-globe {
        width:105px;
        height:105px
    }
     .csw-benefit-globe-line {
        width:125px;
        height:40px
    }
     .csw-benefit-plane {
        top:23px;
        right:-15px;
        font-size:26px
    }
     .csw-benefit-location {
        top:18px;
        left:20px;
        font-size:17px
    }
     .csw-benefit-parcel {
        right:6px;
        bottom:13px;
        width:48px;
        height:36px;
        font-size:9px
    }

}
 @media (prefers-reduced-motion:reduce) {
    .csw-benefit-layout .csw-benefit-card {
        transition:none
    }
     .csw-benefit-layout .csw-benefit-card:hover {
        transform:none
    }

}
 .csw-customize-section {
    padding:32px 20px !important
}
 .csw-customize-section .csw-product-container {
    max-width:1320px
}
 .csw-customize-section .csw-process-layout {
    grid-template-columns:minmax(180px,.85fr) repeat(4,minmax(0,1fr))
}
 .csw-process-visual {
    height:145px
}
 .csw-process-intro {
    padding:8px 4px 8px 0
}
 .csw-process-eyebrow {
    margin-bottom:10px;
    font-size:10px
}
 .csw-process-intro h2 {
    font-size:clamp(23px,1.8vw,29px);
    line-height:1.12
}
 .csw-process-line {
    margin:13px 0
}
 .csw-process-intro p {
    font-size:12px;
    line-height:1.6
}
 .csw-customize-section .csw-process-icon {
    width:37px;
    height:37px;
    font-size:11px
}
 @media (max-width:1100px) {
    .csw-customize-section {
        padding:28px 18px !important
    }
     .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:12px
    }
     .csw-process-intro {
        grid-column:1 / -1
    }

}
 @media (max-width:650px) {
    .csw-customize-section {
        padding:26px 14px !important
    }
     .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px
    }
     .csw-process-visual {
        height:125px
    }
     .csw-customize-section .csw-process-card {
        min-height:220px
    }

}
 .csw-benefits-section {
    padding:12px 20px !important;
    background:#fff !important
}
 .csw-benefit-intro {
    padding:4px 16px 4px 0
}
 .csw-benefit-eyebrow {
    margin:0 0 5px;
    padding:0;
    background:transparent;
    font-size:8px
}
 .csw-benefit-intro h2 {
    margin:0;
    font-size:21px;
    line-height:1.12
}
 .csw-benefit-line {
    width:30px;
    margin:7px 0
}
 .csw-benefit-intro>p {
    margin:0;
    font-size:10px;
    line-height:1.45
}
 .csw-benefit-layout .csw-benefit-card {
    min-height:0;
    border:0;
    border-left:1px solid #e6edf6;
    transform:none
}
 .csw-benefit-layout .csw-benefit-card h3 {
    font-size:11px;
    line-height:1.35;
    white-space:normal
}
 .csw-benefit-layout .csw-benefit-card h3::before {
    content:"";
    font-size:14px;
    font-weight:700;
    transform:none
}
 .csw-benefit-layout .csw-benefit-card:nth-child(2) h3::before {
    content:"✎"
}
 .csw-benefit-layout .csw-benefit-card:nth-child(3) h3::before {
    content:"Aa";
    font-size:10px
}
 .csw-benefit-layout .csw-benefit-card:nth-child(4) h3::before {
    content:"1+";
    font-size:10px
}
 .csw-benefit-layout .csw-benefit-card:nth-child(5) h3::before {
    content:"➤";
    font-size:14px;
    transform:rotate(-35deg)
}
 .csw-benefit-layout .csw-benefit-card>p {
    padding-left:31px;
    font-size:9px
}
 @media (max-width:1000px) {
    .csw-benefit-layout {
        grid-template-columns:repeat(4,minmax(0,1fr))
    }
     .csw-benefit-intro {
        grid-column:1 / -1;
        padding:0 0 10px
    }

}
 @media (max-width:600px) {
    .csw-benefits-section {
        padding:14px 12px !important
    }
     .csw-benefit-layout {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
     .csw-benefit-layout .csw-benefit-card {
        padding:9px 7px;
        border-top:1px solid #e6edf6
    }
     .csw-benefit-layout .csw-benefit-card:nth-child(2),.csw-benefit-layout .csw-benefit-card:nth-child(4) {
        border-left:0
    }
     .csw-benefit-layout .csw-benefit-card h3 {
        font-size:10px
    }
     .csw-benefit-layout .csw-benefit-card>p {
        padding-left:0;
        font-size:9px
    }

}
 .csw-benefit-layout .csw-benefit-card h3::before {
    display:inline-flex;
    flex:0 0 24px;
    align-items:center;
    justify-content:center;
    width:24px;
    height:24px;
    border-radius:6px;
    color:#1768e8;
    background:#edf4ff
}
 .csw-benefit-layout .csw-benefit-card>p {
    line-height:1.5
}
 .csw-benefits-section {
    padding-left:0 !important;
    padding-right:0 !important
}
 .csw-benefits-section .csw-product-container {
    width:calc(100% - 40px) !important;
    max-width:1320px !important;
    margin-left:auto !important;
    margin-right:auto !important
}
 .csw-benefit-layout .csw-benefit-visual,.csw-benefit-layout .csw-benefit-number {
    display:none !important
}
 .csw-benefit-layout {
    display:grid !important;
    grid-template-columns:minmax(220px,1.15fr) repeat(4,minmax(0,1fr));
    gap:0 !important;
    width:100%;
    align-items:center
}
 .csw-benefit-layout .csw-benefit-card {
    display:flex !important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    min-width:0;
    padding:8px 10px;
    border-radius:0;
    background:transparent;
    box-shadow:none
}
 .csw-benefit-layout .csw-benefit-card h3 {
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    gap:7px;
    margin:0 0 5px;
    text-align:center
}
 .csw-benefit-layout .csw-benefit-card>p {
    width:100%;
    margin:0;
    padding:0;
    text-align:center
}
 @media (max-width:600px) {
    .csw-benefits-section .csw-product-container {
        width:calc(100% - 28px) !important
    }
     .csw-benefit-layout {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important
    }

}
 .csw-customize-section {
    padding-top:12px !important;
    padding-bottom:12px !important
}
 .csw-customize-section .csw-process-layout {
    gap:10px !important
}
 .csw-customize-section .csw-process-card {
    min-height:0 !important;
    padding-bottom:9px !important;
    border-radius:10px
}
 .csw-customize-section .csw-process-visual {
    height:95px !important;
    min-height:95px !important
}
 .csw-customize-section .csw-process-card h3 {
    margin:6px 0 4px !important;
    font-size:11px !important;
    line-height:1.25 !important
}
 .csw-customize-section .csw-process-card p {
    font-size:9px !important;
    line-height:1.4 !important
}
 .csw-customize-section .csw-process-intro h2 {
    font-size:clamp(20px,1.5vw,25px) !important;
    line-height:1.08 !important
}
 .csw-customize-section .csw-process-intro p {
    font-size:10px !important;
    line-height:1.4 !important
}
 .csw-customize-section .csw-process-intro .csw-process-line {
    margin:7px 0 !important
}
 @media (max-width:1000px) {
    .csw-customize-section {
        padding-top:14px !important;
        padding-bottom:14px !important
    }
     .csw-customize-section .csw-process-visual {
        height:90px !important;
        min-height:90px !important
    }

}
 @media (max-width:600px) {
    .csw-customize-section {
        padding-top:12px !important;
        padding-bottom:12px !important
    }
     .csw-customize-section .csw-process-visual {
        height:85px !important;
        min-height:85px !important
    }

}
 .single-product .csw-final-cta {
    display:none !important
}
 .csw-gallery-main {
    aspect-ratio:auto;
    overflow:hidden
}
 .csw-product-config {
    gap:12px
}
 .csw-product-title {
    margin-top:0;
    margin-bottom:6px
}
 .csw-product-rating {
    margin-top:4px;
    margin-bottom:6px
}
 .csw-product-meta {
    margin-top:4px;
    margin-bottom:8px
}
 .csw-product-price {
    margin-top:8px;
    margin-bottom:8px
}
 .csw-product-intro {
    margin-top:4px;
    margin-bottom:8px
}
 .csw-product-benefits {
    margin-top:4px;
    margin-bottom:8px
}
 .csw-wholesale-box {
    margin-top:4px;
    margin-bottom:8px
}
 .csw-step {
    margin-top:8px;
    margin-bottom:8px
}
 @media (min-width:1024px) {
    .csw-product-hero {
        grid-template-columns:minmax(0,1fr) minmax(0,0.95fr)
    }

}
 @media (max-width:767px) {
    .csw-product-hero {
        gap:20px
    }
     .csw-gallery-main {
        height:auto;
        aspect-ratio:1 / 1
    }
     .csw-gallery-main img {
        max-height:100%
    }

}
 .csw-product-config .csw-product-price {
    display:flex;
    align-items:baseline;
    gap:10px;
    margin:14px 0 16px
}
 .csw-product-config .csw-product-price .csw-price-label {
    font-weight:400;
    color:#606776
}
 .csw-product-config .csw-product-price #csw-current-price {
    font-weight:750;
    color:#111318;
    letter-spacing:-0.7px
}
 .csw-product-config .csw-wholesale-box {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    margin:14px 0 10px;
    padding:14px;
    background:#f7f8fa;
    border:1px solid #e1e4e9;
    border-radius:7px
}
 .csw-product-config .csw-wholesale-box .csw-section-mini-title {
    margin:0 0 12px;
    font-size:15px;
    font-weight:750;
    line-height:1.3;
    color:#111318
}
 .csw-product-config .csw-price-carousel {
    position:relative
}
 .csw-product-config .csw-price-tier {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:70px;
    padding:10px 4px;
    border:1px solid #d8dde6;
    border-radius:6px;
    background:#fff;
    text-align:center;
    cursor:pointer;
    transition:background-color 0.18s ease,border-color 0.18s ease
}
 .csw-product-config .csw-price-tier strong {
    font-size:15px;
    line-height:1.35;
    font-weight:750;
    white-space:nowrap
}
 .csw-product-config .csw-price-tier span {
    margin-top:5px;
    font-size:12px;
    line-height:1.2;
    color:#596171;
    white-space:nowrap
}
 .csw-product-config .csw-price-tier.active {
    background:#111318;
    border-color:#111318;
    color:#fff
}
 .csw-product-config .csw-price-tier.active span {
    color:#fff
}
 @media (max-width:767px) {
    .csw-product-config .csw-product-price {
        gap:10px;
        margin:12px 0 22px
    }
     .csw-product-config .csw-product-price .csw-price-label {
        font-size:14px
    }
     .csw-product-config .csw-product-price #csw-current-price {
        font-size:30px
    }
     .csw-product-config .csw-wholesale-box {
        padding:0;
        margin:12px 0 16px;
        border:0;
        border-radius:0;
        background:transparent;
        overflow:hidden
    }
     .csw-product-config .csw-wholesale-box .csw-section-mini-title {
        margin-bottom:8px;
        font-size:16px
    }
     .csw-product-config .csw-price-carousel {
        display:grid;
        grid-template-columns:26px minmax(0,1fr) 26px;
        align-items:center;
        gap:4px;
        width:100%
    }
     .csw-product-config .csw-price-arrow {
        display:flex;
        align-items:center;
        justify-content:center;
        width:26px;
        height:44px;
        padding:0;
        border:0;
        background:transparent;
        color:#111318;
        font-size:24px;
        line-height:1;
        cursor:pointer
    }
     .csw-product-config .csw-price-tiers {
        display:flex;
        gap:10px;
        min-width:0;
        width:100%;
        overflow-x:auto;
        overflow-y:hidden;
        padding:2px 0 5px;
        scroll-behavior:smooth;
        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none
    }
     .csw-product-config .csw-price-tiers::-webkit-scrollbar {
        display:none
    }
     .csw-product-config .csw-price-tier {
        flex:0 0 91px;
        width:91px;
        min-width:91px;
        min-height:65px;
        padding:9px 4px;
        scroll-snap-align:start
    }
     .csw-product-config .csw-price-tier strong {
        font-size:15px
    }
     .csw-product-config .csw-price-tier span {
        margin-top:4px;
        font-size:12px
    }

}
 @media (max-width:360px) {
    .csw-product-config .csw-price-carousel {
        grid-template-columns:20px minmax(0,1fr) 20px;
        gap:2px
    }
     .csw-product-config .csw-price-arrow {
        width:20px
    }
     .csw-product-config .csw-price-tier {
        flex-basis:86px;
        width:86px;
        min-width:86px
    }

}
 .csw-product-config .csw-price-arrow {
    display:flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:44px;
    padding:0;
    border:0;
    background:transparent;
    color:#111318;
    font-size:24px;
    line-height:1;
    cursor:pointer
}
 .csw-product-config .csw-price-tiers {
    flex-wrap:nowrap;
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 0 5px;
    scroll-behavior:smooth;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch
}
 .csw-product-config .csw-price-tiers::-webkit-scrollbar {
    display:none
}
 .csw-product-config .csw-price-tier {
    flex:0 0 calc((100% - 32px) / 5);
    width:auto;
    min-width:0;
    box-sizing:border-box
}
 @media (max-width:767px) {
    .csw-product-config .csw-price-carousel {
        grid-template-columns:20px minmax(0,1fr) 20px;
        gap:2px
    }
     .csw-product-config .csw-price-arrow {
        width:20px
    }
     .csw-product-config .csw-price-tiers {
        gap:10px
    }
     .csw-product-config .csw-price-tier {
        flex:0 0 91px;
        width:91px;
        min-width:91px
    }

}
 @media (max-width:767px) {
    .csw-step-content {
        padding:10px;
        overflow-x:hidden
    }
     .csw-player-table {
        width:100%;
        min-width:0;
        table-layout:fixed;
        border-collapse:collapse
    }
     .csw-player-table th:nth-child(1),.csw-player-table td:nth-child(1) {
        width:15%
    }
     .csw-player-table th:nth-child(2),.csw-player-table td:nth-child(2) {
        width:35%
    }
     .csw-player-table th:nth-child(3),.csw-player-table td:nth-child(3) {
        width:22%
    }
     .csw-player-table th:nth-child(4),.csw-player-table td:nth-child(4) {
        width:16%
    }
     .csw-player-table th:nth-child(5),.csw-player-table td:nth-child(5) {
        width:12%
    }
     .csw-player-table th {
        padding:8px 4px;
        font-size:11px;
        white-space:nowrap
    }
     .csw-player-table td {
        padding:5px 3px;
        min-width:0
    }
     .csw-player-table .csw-player-input,.csw-player-table .csw-player-select {
        display:block;
        width:100%;
        min-width:0;
        max-width:100%;
        height:40px;
        padding:0 5px;
        font-size:12px;
        box-sizing:border-box
    }
     .csw-player-table .csw-remove-player {
        width:100%;
        max-width:28px;
        padding:0
    }

}
 @media (max-width:767px) {
    .csw-size-layout>div:first-child {
        width:100%;
        max-width:100%;
        min-width:0;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch
    }
     .csw-size-table-vertical {
        width:100%;
        min-width:0;
        table-layout:fixed;
        border-collapse:collapse
    }
     .csw-size-table-vertical th,.csw-size-table-vertical td {
        padding:6px 3px;
        font-size:9px;
        line-height:1.3;
        white-space:normal;
        overflow-wrap:anywhere;
        word-break:normal
    }
     .csw-size-table-vertical th:first-child,.csw-size-table-vertical td:first-child {
        width:52px
    }

}
 .csw-product-page {
    color:#14213d
}
 .csw-product-container {
    width:min(1180px,calc(100% - 36px))
}
 .csw-product-breadcrumb {
    padding:12px 0 10px;
    font-size:11px
}
 .csw-product-hero {
    display:grid;
    grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);
    align-items:start;
    gap:24px;
    padding-bottom:42px
}
 .csw-gallery {
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    grid-template-rows:auto auto;
    align-items:start;
    gap:8px 10px;
    position:relative;
    top:0;
    min-width:0
}
 .csw-gallery-main {
    grid-column:2;
    grid-row:1;
    width:100%;
    height:clamp(260px,31vw,440px);
    min-height:0;
    border-radius:5px;
    background:#edf4ff
}
 .csw-gallery-main img {
    width:100%;
    height:100%;
    max-height:none;
    object-fit:contain
}
 .csw-gallery-placeholder {
    min-height:0;
    height:100%
}
 .csw-gallery-thumbs {
    grid-column:1;
    grid-row:1;
    display:flex;
    flex-direction:column;
    gap:6px;
    width:42px;
    max-height:clamp(260px,31vw,440px);
    margin:0;
    overflow-x:hidden;
    overflow-y:auto;
    scrollbar-width:thin
}
 .csw-gallery-thumb {
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:4px;
    background:#f2f6fc
}
 .csw-gallery-thumb.active {
    border:2px solid #146ef5
}
 .csw-gallery-labels {
    grid-column:1 / -1;
    grid-row:2;
    margin-top:2px;
    gap:6px
}
 .csw-gallery-label {
    padding:5px 10px;
    font-size:11px
}
 .csw-product-config {
    min-width:0;
    padding-top:0
}
 .csw-product-category {
    margin-bottom:3px;
    font-size:10px
}
 .csw-product-title {
    margin:0 0 4px;
    font-size:clamp(23px,2.4vw,32px);
    line-height:1.12;
    font-weight:800
}
 .csw-product-rating {
    gap:5px;
    margin:0 0 5px;
    font-size:11px
}
 .csw-stars {
    letter-spacing:1px
}
 .csw-product-meta {
    margin:3px 0 6px;
    font-size:10px
}
 .csw-product-price,.csw-product-config .csw-product-price {
    display:flex;
    align-items:baseline;
    gap:7px;
    margin:5px 0 6px
}
 .csw-product-config .csw-product-price .csw-price-label {
    margin:0;
    font-size:11px
}
 .csw-product-config .csw-product-price #csw-current-price {
    font-size:clamp(25px,2.4vw,32px);
    line-height:1.05
}
 .csw-product-intro {
    margin:0 0 7px;
    font-size:11px;
    line-height:1.45
}
 .csw-product-benefits {
    gap:4px 12px;
    margin:5px 0 10px
}
 .csw-benefit {
    font-size:10px;
    line-height:1.35
}
 .csw-benefit::before {
    margin-right:5px
}
 .csw-wholesale-box {
    margin:8px 0 10px;
    padding:10px;
    border-radius:5px;
    background:#fafbfd
}
 .csw-section-mini-title {
    margin-bottom:7px;
    font-size:11px
}
 .csw-price-carousel {
    display:flex;
    align-items:center;
    gap:5px;
    min-width:0
}
 .csw-price-carousel .csw-price-prev,.csw-price-carousel .csw-price-next {
    flex:0 0 14px;
    width:14px;
    padding:0;
    border:0;
    background:transparent;
    color:#334155;
    font-size:18px;
    cursor:pointer
}
 .csw-product-config .csw-price-tiers {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    flex:1 1 auto;
    gap:5px;
    min-width:0
}
 .csw-price-tier {
    min-height:48px;
    padding:6px 3px;
    border-radius:4px
}
 .csw-price-tier strong {
    margin-bottom:3px;
    font-size:11px
}
 .csw-price-tier span {
    font-size:9px
}
 .csw-step {
    margin:8px 0;
    border-color:#e1e7f0;
    border-radius:5px
}
 .csw-step-header {
    gap:7px;
    padding:8px 10px;
    font-size:11px
}
 .csw-step-number {
    flex-basis:19px;
    width:19px;
    height:19px;
    font-size:10px
}
 .csw-step-content {
    padding:7px 9px;
    overflow-x:auto
}
 .csw-player-table {
    width:100%;
    table-layout:fixed
}
 .csw-player-table th {
    padding:5px 4px;
    font-size:9px
}
 .csw-player-table td {
    padding:3px 4px
}
 .csw-player-input,.csw-player-select {
    height:29px;
    padding:0 5px;
    border-radius:3px;
    font-size:10px
}
 .csw-remove-player {
    width:22px;
    height:24px
}
 .csw-add-player {
    width:30px;
    height:30px;
    margin:7px auto 0;
    font-size:18px
}
 .csw-player-note {
    margin-top:7px;
    font-size:9px;
    line-height:1.45
}
 .csw-step:has(.csw-upload-row) .csw-step-content {
    overflow:visible
}
 .csw-step-content:has(.csw-upload-row) {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    align-items:start
}
 .csw-upload-row {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-width:0;
    gap:5px;
    margin:0
}
 .csw-upload-row label {
    font-size:9px
}
 .csw-upload-row input[type="file"] {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:100%;
    padding:8px 5px;
    border:1px dashed #cbd5e1;
    border-radius:4px;
    background:#f8fafc;
    font-size:9px
}
 .csw-upload-note {
    grid-column:1 / -1;
    margin-top:0;
    font-size:9px
}
 .csw-price-summary {
    margin-top:10px;
    padding:8px 10px
}
 .csw-price-summary strong,.csw-price-summary-line {
    font-size:11px
}
 .csw-price-summary-total {
    margin-top:3px;
    font-size:14px
}
 .csw-product-actions {
    gap:8px;
    margin-top:9px
}
 .csw-product-actions button,.csw-product-actions a {
    min-height:38px;
    padding:8px;
    border-radius:4px;
    font-size:11px
}
 @media (min-width:768px) {
    .csw-product-hero {
        grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);
        gap:24px
    }

}
 @media (max-width:767px) {
    .csw-product-container {
        width:calc(100% - 24px)
    }
     .csw-product-hero {
        grid-template-columns:minmax(0,1fr);
        gap:20px;
        padding-bottom:30px
    }
     .csw-gallery {
        display:flex;
        flex-direction:column;
        gap:8px
    }
     .csw-gallery-main {
        order:1;
        width:100%;
        height:auto;
        aspect-ratio:1 / 1
    }
     .csw-gallery-main img {
        height:100%;
        max-height:100%
    }
     .csw-gallery-thumbs {
        order:2;
        flex-direction:row;
        width:100%;
        max-height:none;
        overflow-x:auto;
        overflow-y:hidden
    }
     .csw-gallery-thumb {
        flex:0 0 52px;
        width:52px;
        height:52px
    }
     .csw-gallery-labels {
        order:3
    }
     .csw-product-title {
        font-size:27px
    }
     .csw-product-config .csw-price-tiers {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
     .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
        padding:8px
    }
     .csw-player-table {
        min-width:0
    }
     .csw-player-table th,.csw-player-table td {
        padding:4px 3px
    }
     .csw-player-input,.csw-player-select {
        height:34px;
        font-size:11px
    }
     .csw-upload-row input[type="file"] {
        padding:7px 3px;
        font-size:8px
    }
     .csw-product-actions {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

}
 @media (max-width:420px) {
    .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:minmax(0,1fr)
    }
     .csw-upload-row {
        display:grid;
        grid-template-columns:95px minmax(0,1fr);
        align-items:center
    }
     .csw-product-actions {
        grid-template-columns:minmax(0,1fr)
    }

}
 .csw-product-config .csw-price-carousel {
    display:grid;
    grid-template-columns:14px minmax(0,1fr) 14px;
    align-items:center;
    gap:5px;
    width:100%;
    min-width:0
}
 .csw-product-config .csw-price-carousel .csw-price-tiers {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    align-items:stretch;
    gap:5px;
    width:100%;
    min-width:0;
    overflow:visible
}
 .csw-product-config .csw-price-carousel .csw-price-tier {
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:100%;
    min-width:0;
    min-height:54px;
    padding:6px 2px;
    white-space:nowrap
}
 .csw-product-config .csw-price-carousel .csw-price-tier strong {
    font-size:clamp(9px,0.85vw,12px);
    line-height:1.2;
    white-space:nowrap
}
 .csw-product-config .csw-price-carousel .csw-price-tier span {
    margin-top:3px;
    font-size:clamp(8px,0.72vw,10px);
    line-height:1.2;
    white-space:nowrap
}
 .csw-product-config .csw-price-carousel .csw-price-prev,.csw-product-config .csw-price-carousel .csw-price-next {
    display:flex;
    align-items:center;
    justify-content:center;
    width:14px;
    min-width:14px;
    height:100%;
    padding:0;
    font-size:15px
}
 .csw-product-config .csw-player-table {
    width:100%;
    min-width:0;
    table-layout:fixed;
    border-collapse:collapse
}
 .csw-product-config .csw-player-table th,.csw-product-config .csw-player-table td {
    box-sizing:border-box;
    padding:5px 4px;
    vertical-align:middle;
    overflow:hidden
}
 .csw-product-config .csw-player-table th {
    line-height:1.25
}
 .csw-product-config .csw-player-table th:nth-child(1),.csw-product-config .csw-player-table td:nth-child(1) {
    width:18%
}
 .csw-product-config .csw-player-table th:nth-child(2),.csw-product-config .csw-player-table td:nth-child(2) {
    width:22%
}
 .csw-product-config .csw-player-table th:nth-child(3),.csw-product-config .csw-player-table td:nth-child(3) {
    width:21%
}
 .csw-product-config .csw-player-table th:nth-child(4),.csw-product-config .csw-player-table td:nth-child(4) {
    width:19%
}
 .csw-product-config .csw-player-table th:nth-child(5),.csw-product-config .csw-player-table td:nth-child(5) {
    width:7%;
    text-align:center
}
 .csw-product-config .csw-player-table .csw-player-input,.csw-product-config .csw-player-table .csw-player-select {
    display:block;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    padding:0 6px;
    font-size:11px
}
 .csw-product-config .csw-player-table .csw-remove-player {
    min-width:0;
    padding:0
}
 @media (min-width:768px) and (max-width:1100px) {
    .csw-product-config .csw-price-carousel {
        grid-template-columns:10px minmax(0,1fr) 10px;
        gap:3px
    }
     .csw-product-config .csw-price-carousel .csw-price-tiers {
        gap:3px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier {
        padding-right:1px;
        padding-left:1px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier strong {
        font-size:9px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier span {
        font-size:8px
    }

}
 @media (max-width:767px) {
    .csw-product-config .csw-price-carousel {
        grid-template-columns:12px minmax(0,1fr) 12px;
        gap:3px
    }
     .csw-product-config .csw-price-carousel .csw-price-tiers {
        grid-template-columns:repeat(6,minmax(72px,1fr));
        gap:5px;
        overflow-x:auto;
        padding-bottom:3px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier {
        min-height:48px;
        padding:5px 3px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier strong {
        font-size:10px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier span {
        font-size:9px
    }
     .csw-product-config .csw-player-table th,.csw-product-config .csw-player-table td {
        padding:4px 3px
    }
     .csw-product-config .csw-player-table .csw-player-input,.csw-product-config .csw-player-table .csw-player-select {
        height:32px;
        padding:0 4px;
        font-size:10px
    }

}
 @media (max-width:767px) {
    .csw-product-config .csw-price-carousel {
        display:grid;
        grid-template-columns:10px minmax(0,1fr) 10px;
        align-items:center;
        gap:3px;
        width:100%;
        min-width:0
    }
     .csw-product-config .csw-price-carousel .csw-price-tiers {
        display:grid;
        grid-template-columns:repeat(6,minmax(0,1fr));
        gap:3px;
        width:100%;
        min-width:0;
        overflow:visible
    }
     .csw-product-config .csw-price-carousel .csw-price-tier {
        box-sizing:border-box;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        width:100%;
        min-width:0;
        min-height:48px;
        padding:4px 1px;
        white-space:nowrap
    }
     .csw-product-config .csw-price-carousel .csw-price-tier strong {
        font-size:clamp(8px,2.35vw,10px);
        line-height:1.2;
        white-space:nowrap
    }
     .csw-product-config .csw-price-carousel .csw-price-tier span {
        margin-top:3px;
        font-size:clamp(7px,1.9vw,9px);
        line-height:1.2;
        white-space:nowrap
    }
     .csw-product-config .csw-price-carousel .csw-price-prev,.csw-product-config .csw-price-carousel .csw-price-next {
        display:flex;
        align-items:center;
        justify-content:center;
        width:10px;
        min-width:10px;
        height:100%;
        padding:0;
        font-size:13px
    }

}
 @media (max-width:360px) {
    .csw-product-config .csw-price-carousel {
        grid-template-columns:8px minmax(0,1fr) 8px;
        gap:2px
    }
     .csw-product-config .csw-price-carousel .csw-price-tiers {
        gap:2px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier strong {
        font-size:7.5px
    }
     .csw-product-config .csw-price-carousel .csw-price-tier span {
        font-size:7px
    }

}
 @media (max-width:767px) {
    .csw-product-config .csw-wholesale-box .csw-price-carousel {
        display:grid !important;
        grid-template-columns:8px minmax(0,1fr) 8px !important;
        align-items:center !important;
        gap:2px !important;
        width:100% !important;
        min-width:0 !important;
        overflow:visible !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tiers {
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        grid-auto-flow:column !important;
        grid-auto-columns:minmax(0,1fr) !important;
        flex-wrap:nowrap !important;
        gap:3px !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        overflow:visible !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tiers>.csw-price-tier {
        display:flex !important;
        float:none !important;
        box-sizing:border-box !important;
        grid-column:auto !important;
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        margin:0 !important;
        padding:5px 1px !important;
        min-height:48px !important;
        flex:initial !important;
        white-space:nowrap !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier strong {
        display:block !important;
        max-width:100% !important;
        font-size:clamp(7px,2.25vw,10px) !important;
        line-height:1.2 !important;
        white-space:nowrap !important;
        letter-spacing:-0.2px !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier span {
        display:block !important;
        max-width:100% !important;
        margin-top:3px !important;
        font-size:clamp(6px,1.8vw,8px) !important;
        line-height:1.2 !important;
        white-space:nowrap !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-prev,.csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-next {
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:8px !important;
        min-width:8px !important;
        max-width:8px !important;
        height:100% !important;
        margin:0 !important;
        padding:0 !important;
        font-size:11px !important
    }

}
 @media (max-width:360px) {
    .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tiers {
        gap:2px !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier strong {
        font-size:7px !important
    }
     .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier span {
        font-size:6px !important
    }

}
 .csw-product-config .csw-product-title {
    font-size:clamp(24px,2vw,30px);
    line-height:1.12
}
 .csw-product-page .csw-gallery {
    grid-template-columns:58px minmax(0,1fr);
    gap:8px 12px
}
 .csw-product-page .csw-gallery-thumbs {
    width:58px;
    max-height:clamp(260px,31vw,440px);
    gap:8px
}
 .csw-product-page .csw-gallery-thumb {
    flex:0 0 54px;
    width:54px;
    height:54px;
    border-radius:5px
}
 @media (max-width:767px) {
    .csw-product-config .csw-product-title {
        font-size:25px
    }
     .csw-product-page .csw-gallery {
        display:flex;
        flex-direction:column;
        gap:8px
    }
     .csw-product-page .csw-gallery-thumbs {
        width:100%;
        max-height:none;
        flex-direction:row;
        overflow-x:auto;
        overflow-y:hidden
    }
     .csw-product-page .csw-gallery-thumb {
        flex:0 0 60px;
        width:60px;
        height:60px
    }

}
 .csw-product-config .csw-player-table th {
    padding:7px 8px;
    font-size:11px
}
 .csw-product-config .csw-player-table td {
    padding:4px 5px;
    vertical-align:middle
}
 .csw-product-config .csw-player-table .csw-player-input,.csw-product-config .csw-player-table .csw-player-select {
    height:38px;
    border:1px solid #d9e1ec;
    border-radius:4px;
    background:#fff
}
 .csw-product-config .csw-player-table .csw-remove-player {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:34px;
    border:0;
    border-radius:5px;
    background:transparent;
    color:#ef4444;
    font-size:17px;
    line-height:1;
    cursor:pointer;
    transition:background .15s ease,color .15s ease
}
 .csw-product-config .csw-player-table .csw-remove-player:hover {
    background:#fff1f2;
    color:#dc2626
}
 .csw-product-config .csw-add-player {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:auto;
    min-width:150px;
    height:40px;
    margin:8px auto 0;
    padding:0 22px;
    border:1px solid #9aa8bb;
    border-radius:999px;
    background:#fff;
    color:#172033;
    font-weight:700;
    line-height:1;
    box-shadow:0 1px 2px rgba(15,23,42,.05)
}
 .csw-product-config .csw-add-player:hover {
    border-color:#146ef5;
    color:#146ef5;
    background:#f8fbff
}
 .csw-product-config .csw-add-player {
    font-size:0
}
 .csw-product-config .csw-add-player::before {
    content:"+";
    display:inline-block;
    font-size:22px;
    font-weight:500;
    line-height:1
}
 .csw-product-config .csw-add-player::after {
    content:"Add Player";
    display:inline-block;
    font-size:13px;
    font-weight:700;
    white-space:nowrap
}
 .csw-product-config .csw-step-content:has(.csw-upload-row) {
    align-items:stretch
}
 .csw-product-config .csw-upload-row input[type="file"] {
    max-width:100%;
    background-color:#f8fafc
}
 .csw-product-config .csw-upload-row input[type="file"] {
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23146ef5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4m-4 4 4-4 4 4'/%3E%3Cpath d='M20 16.5v2A1.5 1.5 0 0 1 18.5 20h-13A1.5 1.5 0 0 1 4 18.5v-2'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:center 5px;
    background-size:25px 25px
}
 .csw-product-config .csw-upload-note {
    margin-top:0
}
 @media (max-width:767px) {
    .csw-product-config .csw-player-table .csw-player-input,.csw-product-config .csw-player-table .csw-player-select {
        height:34px
    }
     .csw-product-config .csw-add-player {
        min-width:135px;
        height:36px;
        padding:0 17px
    }
     .csw-product-config .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
        padding:8px
    }
     .csw-product-config .csw-upload-row {
        gap:5px;
        padding:6px
    }
     .csw-product-config .csw-upload-row label {
        font-size:9px;
        overflow-wrap:anywhere
    }
     .csw-product-config .csw-upload-row input[type="file"] {
        min-height:64px;
        padding:27px 3px 4px;
        font-size:8px
    }
     .csw-product-config .csw-upload-row input[type="file"] {
        background-size:22px 22px
    }

}
 @media (max-width:420px) {
    .csw-product-config .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:minmax(0,1fr)
    }
     .csw-product-config .csw-upload-row {
        display:grid;
        grid-template-columns:105px minmax(0,1fr);
        align-items:center;
        gap:8px
    }
     .csw-product-config .csw-upload-row label {
        font-size:10px
    }
     .csw-product-config .csw-upload-row input[type="file"] {
        min-height:58px
    }

}
 .csw-product-config .csw-product-section,.csw-product-config .csw-step-content:has(.csw-upload-row) {
    min-width:0
}
 .csw-product-config .csw-step-content:has(.csw-upload-row) {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    padding:12px;
    overflow:visible
}
 .csw-product-config .csw-upload-row {
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:9px;
    min-width:0;
    min-height:132px;
    margin:0;
    padding:12px;
    border:1px solid #e2e8f0;
    border-radius:8px;
    background:#fff;
    transition:border-color .18s ease,background .18s ease,box-shadow .18s ease
}
 .csw-product-config .csw-upload-row:hover {
    border-color:#93baff;
    background:#fbfdff;
    box-shadow:0 2px 8px rgba(20,110,245,.06)
}
 .csw-product-config .csw-upload-row label {
    display:block;
    margin:0;
    color:#253247;
    font-size:11px;
    font-weight:700;
    line-height:1.35;
    letter-spacing:.025em
}
 .csw-product-config .csw-upload-row input[type="file"] {
    position:relative;
    z-index:2;
    display:block;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:82px;
    min-height:82px;
    margin:0;
    padding:0;
    border:1px dashed #b9c9df;
    border-radius:6px;
    background:transparent;
    color:transparent;
    font-size:0;
    cursor:pointer;
    overflow:hidden
}
 .csw-product-config .csw-upload-row input[type="file"]::file-selector-button {
    width:1px;
    height:1px;
    margin:0;
    padding:0;
    border:0;
    opacity:0;
    font-size:0
}
 .csw-product-config .csw-upload-row::before {
    content:"";
    position:absolute;
    z-index:1;
    top:47px;
    left:50%;
    width:25px;
    height:25px;
    transform:translateX(-50%);
    pointer-events:none;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23146ef5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4m-4 4 4-4 4 4'/%3E%3Cpath d='M20 16.5v2A1.5 1.5 0 0 1 18.5 20h-13A1.5 1.5 0 0 1 4 18.5v-2'/%3E%3C/svg%3E")
}
 .csw-product-config .csw-upload-row::after {
    content:"Click to upload";
    position:absolute;
    z-index:1;
    top:78px;
    left:8px;
    right:8px;
    color:#146ef5;
    font-size:11px;
    font-weight:600;
    line-height:1.3;
    text-align:center;
    pointer-events:none
}
 .csw-product-config .csw-upload-note {
    grid-column:1 / -1;
    margin:0;
    color:#7b8798;
    font-size:10px;
    line-height:1.5
}
 .csw-product-config .csw-upload-row input[type="file"]:focus-visible {
    outline:2px solid #146ef5;
    outline-offset:2px
}
 @media (max-width:767px) {
    .csw-product-config .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:7px;
        padding:9px
    }
     .csw-product-config .csw-upload-row {
        gap:7px;
        min-height:116px;
        padding:8px
    }
     .csw-product-config .csw-upload-row label {
        font-size:9px;
        overflow-wrap:anywhere
    }
     .csw-product-config .csw-upload-row input[type="file"] {
        height:76px;
        min-height:76px
    }
     .csw-product-config .csw-upload-row::before {
        top:41px;
        width:23px;
        height:23px
    }
     .csw-product-config .csw-upload-row::after {
        top:70px;
        font-size:9px
    }

}
 @media (max-width:420px) {
    .csw-product-config .csw-step-content:has(.csw-upload-row) {
        grid-template-columns:minmax(0,1fr)
    }
     .csw-product-config .csw-upload-row {
        display:flex;
        min-height:112px;
        padding:10px
    }
     .csw-product-config .csw-upload-row label {
        font-size:10px
    }
     .csw-product-config .csw-upload-row input[type="file"] {
        height:72px;
        min-height:72px
    }
     .csw-product-config .csw-upload-row::before {
        top:42px
    }
     .csw-product-config .csw-upload-row::after {
        top:70px;
        font-size:10px
    }

}
 .csw-product-section .csw-size-layout {
    grid-template-columns:minmax(0,1.62fr) minmax(280px,1fr) !important;
    gap:28px !important;
    align-items:stretch !important;
    margin-top:22px !important
}
 .csw-product-section .csw-size-layout>.csw-size-table,.csw-product-section .csw-size-layout>div:first-child {
    min-width:0
}
 .csw-product-section .csw-size-table {
    width:100% !important;
    border-collapse:collapse;
    table-layout:auto;
    background:#fff;
    color:#243247;
    font-size:12px !important
}
 .csw-product-section .csw-size-table th,.csw-product-section .csw-size-table td {
    padding:9px 10px !important;
    border:1px solid #dce4ee !important;
    text-align:center;
    vertical-align:middle;
    line-height:1.45
}
 .csw-product-section .csw-size-table thead th {
    background:#eaf0f8 !important;
    color:#14253d;
    font-weight:700
}
 .csw-product-section .csw-size-table tbody td:first-child {
    background:#f5f8fc;
    font-weight:700;
    white-space:nowrap
}
 .csw-product-section .csw-size-table tbody tr:nth-child(even) td {
    background:#f8fafc !important
}
 .csw-product-section .csw-size-table tbody tr:nth-child(even) td:first-child {
    background:#eef3f9 !important
}
 .csw-product-section .csw-size-note {
    min-width:0;
    box-sizing:border-box;
    padding:20px 22px 16px !important;
    border:1px solid #dce5f0 !important;
    border-radius:8px !important;
    background:#f4f8fd !important;
    color:#243247;
    display:flex;
    flex-direction:column;
    justify-content:space-between
}
 .csw-product-section .csw-size-note>strong {
    margin:0 0 7px !important;
    color:#17263d;
    font-size:15px;
    line-height:1.4
}
 .csw-product-section .csw-size-note>p {
    margin:0;
    color:#64748b;
    font-size:12px !important;
    line-height:1.6
}
 .csw-product-section .csw-size-measurement-diagram {
    display:block;
    width:100%;
    max-width:320px !important;
    max-height:225px;
    height:auto;
    margin:8px auto 6px;
    flex:0 1 auto
}
 .csw-product-section .csw-size-note a {
    align-self:flex-start;
    color:#2867c7;
    font-size:12px;
    font-weight:600;
    text-decoration:underline;
    text-underline-offset:2px;
    overflow-wrap:anywhere
}
 @media (max-width:900px) {
    .csw-product-section .csw-size-layout {
        grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr) !important;
        gap:18px !important
    }
     .csw-product-section .csw-size-table th,.csw-product-section .csw-size-table td {
        padding:8px 6px !important;
        font-size:11px !important
    }
     .csw-product-section .csw-size-note {
        padding:18px 16px 14px !important
    }
     .csw-product-section .csw-size-measurement-diagram {
        max-width:290px !important
    }

}
 @media (max-width:767px) {
    .csw-product-section .csw-size-layout {
        grid-template-columns:minmax(0,1fr) !important;
        gap:16px !important
    }
     .csw-product-section .csw-size-layout>div:first-child {
        width:100%;
        min-width:0;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch
    }
     .csw-product-section .csw-size-table {
        min-width:640px;
        font-size:11px !important
    }
     .csw-product-section .csw-size-table th,.csw-product-section .csw-size-table td {
        padding:8px 7px !important;
        font-size:11px !important
    }
     .csw-product-section .csw-size-note {
        padding:17px 18px 15px !important
    }
     .csw-product-section .csw-size-measurement-diagram {
        max-width:300px !important;
        max-height:220px
    }

}
 @media (max-width:420px) {
    .csw-product-section .csw-size-table {
        min-width:610px
    }
     .csw-product-section .csw-size-note {
        padding:15px !important
    }

}
 .csw-customize-section .csw-process-section-heading {
    width:100%;
    text-align:center;
    margin:0 auto 28px
}
 .csw-customize-section .csw-process-section-heading .csw-process-eyebrow {
    display:block;
    margin:0 0 8px;
    color:#0759c9;
    font-size:10px;
    font-weight:800;
    letter-spacing:2px;
    line-height:1.4;
    text-transform:uppercase
}
 .csw-customize-section .csw-process-section-heading .csw-section-title {
    margin:0;
    color:#0f172a;
    font-size:30px;
    font-weight:800;
    line-height:1.2;
    text-align:center
}
 .csw-customize-section .csw-process-section-heading .csw-process-line {
    width:42px;
    height:3px;
    margin:12px auto 10px;
    background:#3267ff
}
 .csw-customize-section .csw-process-section-heading .csw-section-subtitle {
    max-width:650px;
    margin:0 auto;
    color:#64748b;
    font-size:14px;
    line-height:1.7;
    text-align:center
}
 .csw-customize-section .csw-process-layout {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    align-items:stretch
}
 @media (max-width:1024px) {
    .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:22px 14px
    }

}
 @media (max-width:700px) {
    .csw-customize-section .csw-process-section-heading {
        margin-bottom:22px
    }
     .csw-customize-section .csw-process-section-heading .csw-section-title {
        font-size:25px
    }
     .csw-customize-section .csw-process-section-heading .csw-section-subtitle {
        font-size:13px
    }
     .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px 10px
    }
     .csw-customize-section .csw-process-card {
        min-width:0
    }

}
 .csw-product-section:has(.csw-details-layout),.csw-product-section:has(.csw-size-layout) {
    padding-top:34px;
    padding-bottom:34px
}
 @media (max-width:700px) {
    .csw-product-section:has(.csw-details-layout),.csw-product-section:has(.csw-size-layout) {
        padding-top:26px;
        padding-bottom:26px
    }

}
 @media (max-width:767px) {
    body.single-product .csw-product-page .csw-gallery {
        display:grid !important;
        grid-template-columns:52px minmax(0,1fr) !important;
        grid-template-rows:auto auto !important;
        align-items:start !important;
        justify-content:stretch !important;
        gap:8px !important;
        width:100% !important;
        min-width:0 !important
    }
     body.single-product .csw-product-page .csw-gallery-main {
        grid-column:2 !important;
        grid-row:1 !important;
        order:initial !important;
        width:100% !important;
        height:auto !important;
        min-width:0 !important;
        min-height:0 !important;
        max-width:100% !important;
        aspect-ratio:1 / 1 !important;
        padding:0 !important;
        overflow:hidden !important;
        box-sizing:border-box !important
    }
     body.single-product .csw-product-page .csw-gallery-main img {
        display:block !important;
        width:100% !important;
        height:100% !important;
        max-width:100% !important;
        max-height:100% !important;
        object-fit:contain !important;
        object-position:center !important;
        margin:0 !important
    }
     body.single-product .csw-product-page .csw-gallery-thumbs {
        grid-column:1 !important;
        grid-row:1 !important;
        order:initial !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:6px !important;
        width:52px !important;
        height:100% !important;
        max-height:100% !important;
        margin:0 !important;
        padding:0 !important;
        overflow:hidden !important
    }
     body.single-product .csw-product-page .csw-gallery-thumb {
        flex:0 0 52px !important;
        width:52px !important;
        height:52px !important;
        aspect-ratio:1 / 1 !important;
        box-sizing:border-box !important
    }
     body.single-product .csw-product-page .csw-gallery-labels {
        grid-column:1 / -1 !important;
        grid-row:2 !important;
        order:initial !important;
        margin-top:2px !important
    }

}
 @media (max-width:360px) {
    body.single-product .csw-product-page .csw-gallery {
        grid-template-columns:46px minmax(0,1fr) !important;
        gap:6px !important
    }
     body.single-product .csw-product-page .csw-gallery-thumbs {
        width:46px !important;
        gap:6px !important
    }
     body.single-product .csw-product-page .csw-gallery-thumb {
        flex-basis:46px !important;
        width:46px !important;
        height:46px !important
    }

}
 .csw-customize-section .csw-process-layout {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:16px !important
}
 .csw-customize-section .csw-process-layout>.csw-process-intro {
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:760px !important;
    margin:0 auto 12px !important;
    padding:0 12px !important;
    box-sizing:border-box !important;
    text-align:center !important;
    align-self:auto !important
}
 .csw-customize-section .csw-process-layout>.csw-process-intro .csw-process-eyebrow {
    margin:0 0 8px !important;
    text-align:center !important
}
 .csw-customize-section .csw-process-layout>.csw-process-intro h2 {
    margin:0 !important;
    text-align:center !important;
    font-size:clamp(26px,2.5vw,36px) !important;
    line-height:1.2 !important
}
 .csw-customize-section .csw-process-layout>.csw-process-intro .csw-process-line {
    margin:12px auto 10px !important
}
 .csw-customize-section .csw-process-layout>.csw-process-intro p {
    margin:0 auto !important;
    text-align:center !important
}
 @media (max-width:1100px) {
    .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:18px 14px !important
    }
     .csw-customize-section .csw-process-layout>.csw-process-intro {
        grid-column:1 / -1 !important;
        margin-bottom:8px !important;
        padding:0 8px !important
    }

}
 @media (max-width:650px) {
    .csw-customize-section .csw-process-layout {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:14px 10px !important
    }
     .csw-customize-section .csw-process-layout>.csw-process-intro {
        grid-column:1 / -1 !important;
        margin-bottom:6px !important;
        padding:0 !important
    }
     .csw-customize-section .csw-process-layout>.csw-process-intro h2 {
        font-size:25px !important
    }

}
 @media (max-width:767px) {
    body.single-product .csw-product-page .csw-price-tiers {
        gap:7px;
        scroll-behavior:smooth;
        scroll-snap-type:x mandatory
    }
     body.single-product .csw-product-page .csw-price-tier {
        flex:0 0 74px;
        min-width:74px;
        min-height:62px;
        box-sizing:border-box;
        padding:10px 5px !important;
        scroll-snap-align:center
    }
     body.single-product .csw-product-page .csw-price-tier strong {
        display:block;
        font-size:16px !important;
        line-height:1.25 !important;
        font-weight:800 !important;
        letter-spacing:0
    }
     body.single-product .csw-product-page .csw-price-tier span {
        display:block;
        margin-top:5px;
        font-size:11px !important;
        line-height:1.2 !important
    }

}
 @media (max-width:420px) {
    body.single-product .csw-product-page .csw-price-tier strong {
        font-size:15px !important
    }

}
 @media (max-width:700px) {
    .csw-product-page {
        width:100%;
        max-width:100%;
        overflow-x:clip
    }
     .csw-product-container {
        width:calc(100% - 32px);
        max-width:100%;
        margin-left:auto;
        margin-right:auto
    }
     .csw-product-hero {
        gap:20px;
        padding-bottom:26px
    }
     .csw-gallery {
        width:100%;
        min-width:0
    }
     .csw-gallery-main {
        width:100%;
        min-height:0;
        aspect-ratio:1 / 1;
        overflow:hidden;
        border-radius:6px;
        background:#f1f5fb
    }
     .csw-gallery-main img {
        display:block;
        width:100%;
        height:100%;
        max-height:none;
        object-fit:contain
    }
     .csw-gallery-thumbs {
        display:flex;
        flex-wrap:wrap;
        gap:8px;
        margin-top:10px
    }
     .csw-gallery-thumb {
        flex:0 0 58px;
        width:58px;
        height:58px;
        border-radius:5px
    }
     .csw-product-info {
        min-width:0
    }
     .csw-product-category {
        margin-bottom:5px;
        font-size:11px;
        letter-spacing:.07em
    }
     .csw-product-title {
        margin:0 0 6px;
        font-size:27px;
        line-height:1.2;
        overflow-wrap:anywhere
    }
     .csw-product-rating {
        gap:6px;
        align-items:center;
        font-size:12px
    }
     .csw-product-price {
        margin-top:8px;
        margin-bottom:12px
    }
     .csw-product-price strong {
        font-size:28px;
        line-height:1.2
    }
     .single-product div.product form.cart {
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:stretch !important;
        gap:10px !important;
        width:100%;
        margin:12px 0 0 !important
    }
     .single-product div.product form.cart .quantity {
        display:flex;
        flex:0 0 104px;
        align-items:center;
        float:none !important;
        width:104px;
        min-width:0;
        margin:0 !important
    }
     .single-product div.product form.cart .quantity input.qty {
        box-sizing:border-box;
        width:100%;
        min-width:0;
        height:46px;
        padding:8px 4px;
        border:1px solid #dbe3ef;
        border-radius:5px;
        background:#fff;
        font-size:15px
    }
     .single-product div.product form.cart button.single_add_to_cart_button {
        display:inline-flex !important;
        flex:1 1 auto;
        align-items:center;
        justify-content:center;
        min-width:0;
        min-height:46px;
        margin:0 !important;
        padding:10px 14px !important;
        border:1px solid #146ef5 !important;
        border-radius:5px !important;
        background:#146ef5 !important;
        color:#fff !important;
        font-size:14px !important;
        font-weight:700;
        line-height:1.35;
        text-align:center;
        white-space:normal;
        overflow-wrap:normal;
        word-break:normal;
        box-shadow:none
    }
     .single-product div.product form.cart button.single_add_to_cart_button:hover {
        background:#105bd0 !important;
        border-color:#105bd0 !important
    }
     .csw-product-actions {
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
        margin-top:12px
    }
     .csw-product-actions button,.csw-product-actions a {
        min-width:0;
        min-height:46px;
        padding:10px 8px;
        font-size:13px;
        line-height:1.35;
        white-space:normal;
        overflow-wrap:normal;
        word-break:normal
    }
     .csw-add-cart {
        border:1px solid #146ef5;
        background:#fff;
        color:#146ef5
    }
     .csw-buy-now {
        border:1px solid #146ef5;
        background:#146ef5;
        color:#fff
    }
     .csw-help {
        margin-top:12px;
        font-size:12px;
        line-height:1.7
    }
     .csw-product-section {
        padding:36px 0
    }
     .csw-section-title {
        margin-bottom:18px;
        font-size:24px;
        line-height:1.25
    }
     .csw-details-layout {
        grid-template-columns:minmax(0,1fr);
        gap:16px
    }
     .csw-details-table td {
        padding:10px 9px;
        font-size:12px;
        line-height:1.5
    }
     .csw-details-table td:first-child {
        width:38%
    }
     .csw-detail-image {
        aspect-ratio:1 / 1;
        height:auto
    }

}
 @media (max-width:380px) {
    .csw-product-container {
        width:calc(100% - 24px)
    }
     .csw-product-title {
        font-size:24px
    }
     .csw-product-price strong {
        font-size:26px
    }
     .single-product div.product form.cart {
        gap:7px !important
    }
     .single-product div.product form.cart .quantity {
        flex-basis:88px;
        width:88px
    }
     .single-product div.product form.cart button.single_add_to_cart_button {
        padding:8px !important;
        font-size:12px !important
    }
     .csw-product-actions {
        gap:7px
    }
     .csw-product-actions button,.csw-product-actions a {
        padding:8px 5px;
        font-size:12px
    }

}
 @media (max-width:700px) {
    .single-product div.product form.cart {
        display:flex !important;
        flex-wrap:wrap !important;
        align-items:center !important;
        gap:10px !important;
        width:100%;
        margin-top:14px !important
    }
     .single-product div.product form.cart .quantity {
        flex:0 0 82px;
        width:82px;
        margin:0 !important
    }
     .single-product div.product form.cart .quantity input.qty {
        width:100%;
        height:46px;
        box-sizing:border-box;
        border:1px solid #d9e2ef;
        border-radius:6px;
        font-size:15px
    }
     .single-product div.product form.cart button.single_add_to_cart_button {
        flex:1 1 140px;
        min-width:0;
        min-height:46px;
        margin:0 !important;
        padding:10px 12px !important;
        border:1px solid #146ef5 !important;
        border-radius:6px !important;
        background:#146ef5 !important;
        color:#fff !important;
        font-size:14px !important;
        font-weight:700;
        line-height:1.3;
        white-space:nowrap
    }
     .single-product div.product form.cart button.single_add_to_cart_button:hover {
        background:#105bd0 !important
    }
     .csw-product-actions {
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
        width:100%;
        margin-top:14px
    }
     .csw-product-actions .csw-add-cart,.csw-product-actions .csw-buy-now {
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        min-width:0;
        min-height:48px;
        margin:0;
        padding:10px 8px;
        border-radius:7px;
        font-size:13px;
        font-weight:700;
        line-height:1.3;
        white-space:normal;
        word-break:keep-all;
        cursor:pointer;
        transition:background .2s ease,border-color .2s ease
    }
     .csw-product-actions .csw-add-cart {
        border:1px solid #146ef5;
        background:#146ef5;
        color:#fff
    }
     .csw-product-actions .csw-add-cart:hover {
        background:#105bd0
    }
     .csw-product-actions .csw-buy-now {
        border:1px solid #146ef5;
        background:#fff;
        color:#146ef5
    }
     .csw-product-actions .csw-buy-now:hover {
        background:#edf4ff
    }
     .csw-product-actions button:disabled {
        opacity:.65;
        cursor:wait
    }

}
 @media (max-width:380px) {
    .csw-product-actions {
        gap:7px
    }
     .csw-product-actions .csw-add-cart,.csw-product-actions .csw-buy-now {
        padding:9px 5px;
        font-size:12px
    }

}
:root {
    --csw-button-navy:#111c32;
    --csw-button-navy-hover:#243b5d;
    --csw-button-border:#111c32;
    --csw-button-radius:5px
}
 .csw-product-page .csw-product-actions .csw-add-cart,.csw-product-page .csw-product-actions .csw-buy-now,.csw-accessory-page .csw-accessory-info form.cart button.single_add_to_cart_button,.csw-accessory-page .csw-accessory-info form.cart button.csw-accessory-buy-now {
    box-sizing:border-box !important;
    min-height:48px !important;
    margin:0 !important;
    padding:12px 18px !important;
    border:1px solid var(--csw-button-border) !important;
    border-radius:var(--csw-button-radius) !important;
    font-family:inherit !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
    text-align:center !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    box-shadow:none !important;
    cursor:pointer;
    transition:background-color .2s ease,color .2s ease,border-color .2s ease
}
 .csw-product-page .csw-product-actions .csw-add-cart,.csw-accessory-page .csw-accessory-info form.cart button.single_add_to_cart_button {
    background:#fff !important;
    border-color:var(--csw-button-border) !important;
    color:var(--csw-button-navy) !important
}
 .csw-product-page .csw-product-actions .csw-buy-now,.csw-accessory-page .csw-accessory-info form.cart button.csw-accessory-buy-now {
    background:var(--csw-button-navy) !important;
    border-color:var(--csw-button-navy) !important;
    color:#fff !important
}
 .csw-product-page .csw-product-actions .csw-add-cart:hover,.csw-accessory-page .csw-accessory-info form.cart button.single_add_to_cart_button:hover {
    background:var(--csw-button-navy) !important;
    border-color:var(--csw-button-navy) !important;
    color:#fff !important
}
 .csw-product-page .csw-product-actions .csw-buy-now:hover,.csw-accessory-page .csw-accessory-info form.cart button.csw-accessory-buy-now:hover {
    background:var(--csw-button-navy-hover) !important;
    border-color:var(--csw-button-navy-hover) !important;
    color:#fff !important
}
 .csw-product-page .csw-product-actions .csw-add-cart:focus-visible,.csw-product-page .csw-product-actions .csw-buy-now:focus-visible,.csw-accessory-page .csw-accessory-info form.cart button.single_add_to_cart_button:focus-visible,.csw-accessory-page .csw-accessory-info form.cart button.csw-accessory-buy-now:focus-visible {
    outline:2px solid #3b82f6 !important;
    outline-offset:3px
}
 .csw-product-page .csw-product-actions button:disabled,.csw-accessory-page .csw-accessory-info form.cart button:disabled {
    opacity:.55 !important;
    cursor:not-allowed !important
}
 @media (max-width:700px) {
    .csw-product-page .csw-product-actions .csw-add-cart,.csw-product-page .csw-product-actions .csw-buy-now,.csw-accessory-page .csw-accessory-info form.cart button.single_add_to_cart_button,.csw-accessory-page .csw-accessory-info form.cart button.csw-accessory-buy-now {
        min-height:48px !important;
        font-size:12px !important
    }

}
 .csw-product-page .csw-product-category {
    display:block !important
}
 .csw-product-page .csw-product-rating {
    display:flex !important;
    align-items:center;
    gap:6px
}
 .csw-product-page .csw-review-count {
    font-size:0 !important
}
 .csw-product-page .csw-review-count::before {
    content:"4.9";
    font-size:12px;
    color:#64748b
}
 .csw-product-page .csw-product-meta {
    display:none !important
}
 .csw-product-page .product_meta,.csw-product-page .woocommerce-product-rating,.csw-product-page .csw-product-category,.csw-product-page .csw-product-sku {
    display:none !important
}
 .csw-product-page .csw-product-price strong {
    font-size:28px !important;
    line-height:1.2
}
 @media (max-width:600px) {
    .csw-product-page .csw-product-title {
        font-size:25px !important;
        line-height:1.2 !important;
        font-weight:800 !important;
        margin-bottom:8px !important
    }
     .csw-product-page .csw-product-price strong {
        font-size:24px !important;
        line-height:1.2 !important;
        font-weight:700 !important
    }
     .csw-product-page .csw-section-mini-title {
        font-size:12px !important;
        line-height:1.3 !important;
        font-weight:700 !important;
        margin-bottom:7px !important
    }

}

/* ==============================================
   Custom player size dropdown (B)
   ============================================== */
.csw-product-page .csw-player-table .csw-size-dropdown {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}
.csw-product-page .csw-player-table select.csw-size-native-source {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
.csw-product-page .csw-player-table .csw-size-dropdown-trigger {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
    height: 42px !important;
    min-width: 0 !important;
    padding: 0 10px !important;
    margin: 0 !important;
    border: 1px solid #d8e0eb !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: #1e293b !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    box-shadow: 0 1px 2px rgba(15,23,42,.04) !important;
    cursor: pointer !important;
}
.csw-product-page .csw-player-table .csw-size-dropdown-trigger:hover,
.csw-product-page .csw-player-table .csw-size-dropdown-trigger:focus-visible {
    border-color: #146ef5 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(20,110,245,.11) !important;
}
.csw-size-dropdown-value { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.csw-size-dropdown-chevron {
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid #64748b;
    border-bottom: 1.5px solid #64748b;
    transform: rotate(45deg) translateY(-2px);
}
.csw-size-dropdown-menu {
    position: fixed;
    z-index: 999999;
    box-sizing: border-box;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 5px;
    border: 1px solid #dce4ee;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(15,23,42,.16), 0 2px 6px rgba(15,23,42,.06);
    scrollbar-width: thin;
    scrollbar-color: #b8c3d2 #f5f7fa;
}
.csw-size-dropdown-menu::-webkit-scrollbar { width: 7px; }
.csw-size-dropdown-menu::-webkit-scrollbar-track { background: #f5f7fa; border-radius: 8px; }
.csw-size-dropdown-menu::-webkit-scrollbar-thumb { background: #b8c3d2; border-radius: 8px; border: 2px solid #f5f7fa; }
.csw-size-dropdown-group {
    padding: 9px 10px 5px;
    color: #94a3b8;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.2;
}
.csw-size-dropdown-option {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 31px !important;
    padding: 7px 10px !important;
    margin: 1px 0 !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: transparent !important;
    color: #334155 !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    cursor: pointer !important;
    box-shadow: none !important;
}
.csw-size-dropdown-option:hover,
.csw-size-dropdown-option:focus-visible {
    outline: none !important;
    background: #eff6ff !important;
    color: #145bd7 !important;
}
.csw-size-dropdown-option.is-selected {
    background: #1769e8 !important;
    color: #fff !important;
    font-weight: 700 !important;
}
@media (max-width: 767px) {
    .csw-product-page .csw-player-table .csw-size-dropdown-trigger {
        height: 38px !important;
        padding: 0 8px !important;
        font-size: 11px !important;
        border-radius: 6px !important;
    }
    .csw-size-dropdown-option { min-height: 30px !important; font-size: 12px !important; }
}


/* =========================================
   SOGUE Cart Success Modal — Premium Style
   Add to the bottom of BOTH product CSS files
========================================= */

.csw-cart-success-modal[hidden] {
    display: none !important;
}

.csw-cart-success-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px !important;
    box-sizing: border-box;
}

.csw-cart-success-backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(12, 23, 43, 0.60) !important;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}

.csw-cart-success-dialog {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    max-width: 460px !important;
    margin: auto !important;
    padding: 38px 30px 30px !important;
    border: 1px solid #eef1f5 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 24px 80px rgba(7, 18, 39, 0.24) !important;
    color: #14213b !important;
    text-align: center !important;
    box-sizing: border-box !important;
    animation: cswPremiumModalIn 0.25s ease-out;
}

.csw-cart-success-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 62px !important;
    height: 62px !important;
    margin: 0 auto 18px !important;
    border: 1px solid #d5f0df !important;
    border-radius: 50% !important;
    background: #e9f8ef !important;
    color: #16834a !important;
    font-size: 31px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.csw-cart-success-dialog h2 {
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: #14213b !important;
    font-size: 26px !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.5px !important;
}

.csw-cart-success-dialog p {
    margin: 0 0 26px !important;
    color: #697586 !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

.csw-cart-success-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
}

.csw-cart-success-actions button,
.csw-cart-success-actions a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 12px 10px !important;
    border: 1px solid #14213b !important;
    border-radius: 8px !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: background-color .2s ease,
                color .2s ease,
                box-shadow .2s ease,
                transform .2s ease !important;
}

/* Continue Shopping */
.csw-cart-success-actions .csw-cart-success-continue {
    background: #fff !important;
    color: #14213b !important;
}

.csw-cart-success-actions .csw-cart-success-continue:hover {
    background: #f3f6fa !important;
    color: #14213b !important;
    box-shadow: 0 4px 12px rgba(20, 33, 59, 0.08) !important;
    transform: translateY(-1px);
}

/* Proceed to Checkout */
.csw-cart-success-actions .csw-cart-success-checkout {
    background: #14213b !important;
    color: #fff !important;
    border-color: #14213b !important;
}

.csw-cart-success-actions .csw-cart-success-checkout:hover {
    background: #263b5b !important;
    color: #fff !important;
    border-color: #263b5b !important;
    box-shadow: 0 5px 14px rgba(20, 33, 59, 0.18) !important;
    transform: translateY(-1px);
}

/* Close button */
.csw-cart-success-close {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #788397 !important;
    font-size: 25px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    transition: background .2s ease, color .2s ease !important;
}

.csw-cart-success-close:hover {
    background: #f0f3f7 !important;
    color: #14213b !important;
}

/* Entrance animation */
@keyframes cswPremiumModalIn {
    from {
        opacity: 0;
        transform: translateY(10px) scale(.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}


/* =========================================
   Compact Cart Modal — Mobile Only
========================================= */

@media (max-width: 480px) {
    .csw-cart-success-modal {
        padding: 16px !important;
    }

    .csw-cart-success-dialog {
        width: 100% !important;
        max-width: 340px !important;
        padding: 26px 18px 20px !important;
        border-radius: 15px !important;
        box-shadow: 0 16px 48px rgba(7, 18, 39, 0.22) !important;
    }

    .csw-cart-success-close {
        top: 5px !important;
        right: 5px !important;
        width: 32px !important;
        height: 32px !important;
        font-size: 22px !important;
    }

    .csw-cart-success-icon {
        width: 46px !important;
        height: 46px !important;
        margin: 0 auto 12px !important;
        font-size: 24px !important;
    }

    .csw-cart-success-dialog h2 {
        margin-bottom: 7px !important;
        font-size: 21px !important;
        line-height: 1.3 !important;
        letter-spacing: -0.3px !important;
    }

    .csw-cart-success-dialog p {
        margin-bottom: 18px !important;
        font-size: 12px !important;
        line-height: 1.55 !important;
    }

    .csw-cart-success-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .csw-cart-success-actions button,
    .csw-cart-success-actions a {
        min-height: 42px !important;
        padding: 9px 6px !important;
        border-radius: 7px !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
    }
}

/* Extra-small phones */
@media (max-width: 360px) {
    .csw-cart-success-dialog {
        max-width: 310px !important;
        padding: 24px 14px 17px !important;
    }

    .csw-cart-success-actions {
        gap: 6px !important;
    }

    .csw-cart-success-actions button,
    .csw-cart-success-actions a {
        padding: 8px 4px !important;
        font-size: 10px !important;
    }
}


@media (prefers-reduced-motion: reduce) {
    .csw-cart-success-dialog {
        animation: none !important;
    }

    .csw-cart-success-actions button,
    .csw-cart-success-actions a,
    .csw-cart-success-close {
        transition: none !important;
    }
}


/* Product FAQ: native accessible accordion; no JavaScript required. */
.csw-faq-item { overflow:hidden; }
.csw-faq-item > summary.csw-faq-question { cursor:pointer; list-style:none; align-items:center; }
.csw-faq-item > summary.csw-faq-question::-webkit-details-marker { display:none; }
.csw-faq-item > summary.csw-faq-question::after { content:"+"; font-size:18px; font-weight:500; color:#1264df; flex:none; }
.csw-faq-item[open] > summary.csw-faq-question::after { content:"−"; }
.csw-faq-item[open] { border-color:#bcd4f7; }
.csw-faq-answer { padding:0 17px 16px; font-size:13px; line-height:1.75; color:#52627a; }
.csw-faq-answer a,.csw-product-faq-more a { color:#1264df; text-decoration:underline; text-underline-offset:2px; }
.csw-product-faq-more { text-align:center; margin:18px 0 0; font-size:13px; }
@media(max-width:767px){.csw-faq-answer{padding:0 13px 14px}}

/* Product FAQ: quiet, compact link below accordion */
body.single-product .csw-product-page .csw-product-faq-more {
    margin: 20px 0 0;
    text-align: center;
    font-size: 13px;
    line-height: 1.5;
}
body.single-product .csw-product-page .csw-product-faq-more a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 6px;
    color: #1459bd;
    text-decoration: none;
    font-weight: 600;
    transition: color .2s ease, background-color .2s ease;
}
body.single-product .csw-product-page .csw-product-faq-more a:hover,
body.single-product .csw-product-page .csw-product-faq-more a:focus-visible {
    background: #f0f5ff;
    color: #083e94;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Mobile: smaller wholesale label, more legible tier prices */
@media (max-width: 767px) {
    body.single-product .csw-product-page .csw-product-config .csw-wholesale-box .csw-section-mini-title {
        font-size: 14px !important;
        line-height: 1.3 !important;
        font-weight: 750 !important;
        margin-bottom: 7px !important;
    }
    body.single-product .csw-product-page .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier strong {
        font-size: clamp(10px, 2.9vw, 12px) !important;
        line-height: 1.2 !important;
        letter-spacing: -0.25px !important;
    }
    body.single-product .csw-product-page .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier span {
        font-size: clamp(7px, 2vw, 9px) !important;
        line-height: 1.2 !important;
    }
}
@media (max-width: 360px) {
    body.single-product .csw-product-page .csw-product-config .csw-wholesale-box .csw-price-carousel .csw-price-tier strong {
        font-size: 9px !important;
    }
}
