/*
Theme Name: Christmas Jackets UK
Theme URI: https://christmasjackets.co.uk/
Author: Christmas Jackets UK
Description: Fresh Elementor and WooCommerce compatible theme. Homepage intentionally blank, header and footer only.
Version: 4.0.0
Text Domain: christmas-jackets-uk
*/

:root {
    --cjk-green:#002f28;
    --cjk-white:#fff;
    --cjk-maroon:#800c10
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    color:#151515;
    background:#fff;
    font-family:Arial,Helvetica,sans-serif
}

a {
    color:inherit;
    text-decoration:none
}

img {
    max-width:100%;
    height:auto
}

button,input {
    font:inherit
}

.screen-reader-text {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(1px,1px,1px,1px)
}

.skip-link:focus {
    clip:auto;
    width:auto;
    height:auto;
    z-index:10000;
    background:#fff;
    padding:12px
}


/* Header reference: green strip / white bar / visible four menu links */ .cjk-announcement {
    height:38px;
    background:#002c24;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    text-align:center;
    padding:0 12px;
    font-size:10px;
    letter-spacing:.18px;
    white-space:nowrap
}

.cjk-announcement img {
    width:23px;
    height:23px;
    object-fit:contain
}

.cjk-site-header {
    background:#fff;
    position:relative;
    z-index:50;
    border-bottom:1px solid #eee
}

.cjk-header-inner {
    max-width:1220px;
    margin:auto;
    min-height:72px;
    padding:0 20px;
    display:grid;
    grid-template-columns:205px minmax(0,1fr) 135px;
    align-items:center;
    gap:18px
}

.cjk-header-logo img {
    display:block;
    width:182px;
    max-height:66px;
    object-fit:contain;
    object-position:left center
}

.cjk-main-nav {
    justify-self:center
}

.cjk-main-nav .primary-menu {
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:30px;
    list-style:none;
    padding:0;
    margin:0
}

.cjk-main-nav li {
    margin:0
}

.cjk-main-nav a {
    display:block;
    color:#0a0a0a;
    font-size:12px;
    font-weight:600;
    white-space:nowrap
}

.cjk-main-nav a:hover {
    color:#8a0710
}

.cjk-header-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:14px
}

.cjk-header-actions a {
    display:inline-flex;
    position:relative;
    width:23px;
    height:25px;
    align-items:center;
    justify-content:center
}

.cjk-header-actions svg {
    width:23px;
    height:23px;
    fill:none;
    stroke:#111;
    stroke-width:1.65;
    stroke-linecap:round;
    stroke-linejoin:round
}

.cart-count {
    position:absolute;
    right:-7px;
    top:-6px;
    min-width:14px;
    height:14px;
    padding:1px 3px;
    border-radius:20px;
    background:#9b0d14;
    color:#fff;
    font-size:9px;
    text-align:center
}

.menu-toggle {
    display:none;
    background:none;
    border:0;
    font-size:27px;
    cursor:pointer;
    color:#111
}


/* Homepage is intentionally empty until approved sections are added. */ .cjk-empty-home {
    background:#fff;
    min-height:480px
}


/* Footer reference: five columns + divider + payments and three contacts */ .cjk-site-footer {
    background:#002e27 url('assets/figma-footer-background.jpg') center center / cover no-repeat;
    color:#fff
}

.cjk-footer-inner {
    max-width:1220px;
    margin:0 auto;
    padding:30px 20px 0
}

.cjk-footer-columns {
    display:grid;
    grid-template-columns:1.55fr .83fr 1fr .92fr 1.42fr;
    gap:0;
    align-items:start;
    padding-bottom:24px
}

.cjk-footer-brand {
    padding:0 26px 0 0
}

.cjk-footer-brand img {
    width:175px;
    max-height:85px;
    object-fit:contain;
    object-position:left center;
    display:block;
    margin-bottom:10px
}

.cjk-footer-brand p {
    font-size:11px;
    line-height:1.6;
    max-width:250px;
    margin:0
}

.cjk-footer-col {
    min-height:132px;
    padding:0 14px;
    border-left:1px solid rgba(255,255,255,.32)
}

.cjk-footer-col h3 {
    font-size:16px;
    line-height:1.2;
    font-weight:700;
    margin:3px 0 12px
}

.cjk-footer-col>a {
    display:block;
    font-size:12px;
    line-height:1.65;
    margin-bottom:4px
}

.cjk-footer-col>a:hover {
    text-decoration:underline
}

.cjk-footer-newsletter p {
    font-size:12px;
    line-height:1.6;
    margin:0 0 10px
}

.cjk-footer-newsletter form {
    display:flex;
    height:33px;
    max-width:260px;
    border:1px solid #e8e8e8;
    border-radius:3px;
    overflow:hidden;
    background:#fff
}

.cjk-footer-newsletter input {
    width:100%;
    min-width:0;
    border:0;
    outline:0;
    padding:0 9px;
    font-size:9px;
    color:#222
}

.cjk-footer-newsletter button {
    border:0;
    background:#6c1612;
    color:#fff;
    font-size:19px;
    min-width:34px;
    cursor:pointer
}

.cjk-social {
    display:flex;
    gap:6px;
    margin-top:15px
}

.cjk-social a {
    width:21px;
    height:21px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff;
    color:#002e27;
    font-size:12px;
    font-weight:700
}

.cjk-footer-middle {
    border-top:1px solid rgba(255,255,255,.55);
    border-bottom:1px solid rgba(255,255,255,.45);
    padding:19px 0;
    display:grid;
    grid-template-columns:1.65fr 1fr 1fr 1.2fr;
    gap:22px;
    align-items:center
}

.cjk-paypal-line {
    font-size:14px;
    color:#448df2;
    font-style:italic;
    margin-bottom:7px
}

.cjk-paypal-line strong {
    font-weight:800
}

.cjk-payment-icons {
    display:flex;
    align-items:center;
    gap:3px
}

.cjk-payment-icons span {
    height:22px;
    min-width:39px;
    padding:4px 3px;
    background:#fff;
    border-radius:2px;
    color:#1047a4;
    font-weight:800;
    font-size:10px;
    text-align:center
}

.cjk-payment-icons .mastercard {
    color:#ed601b;
    letter-spacing:-4px;
    padding-right:8px
}

.cjk-payment-icons .amex {
    background:#4f94d7;
    color:#fff
}

.cjk-payment-icons .paypal {
    font-size:9px
}

.cjk-payment-icons .discover {
    font-size:8px;
    color:#555
}

.cjk-contact {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0
}

.cjk-contact img {
    width:43px;
    height:43px;
    object-fit:contain;
    flex:none
}

.cjk-contact strong {
    display:block;
    font-size:14px;
    margin-bottom:3px
}

.cjk-contact a {
    display:block;
    font-size:12px;
    white-space:nowrap
}

.cjk-footer-copyright {
    text-align:center;
    font-size:12px;
    padding:15px 0 18px
}

 @media(max-width:1000px) {
    .cjk-header-inner {
        grid-template-columns:165px 1fr 112px;
        gap:8px
    }
    .cjk-header-logo img {
        width:155px
    }
    .cjk-main-nav .primary-menu {
        gap:15px
    }
    .cjk-main-nav a {
        font-size:11px
    }
    .cjk-footer-columns {
        grid-template-columns:1.35fr repeat(3,1fr);
        row-gap:25px
    }
    .cjk-footer-newsletter {
        grid-column:1/-1
    }
    .cjk-footer-middle {
        grid-template-columns:repeat(2,1fr)
    }}

 @media(max-width:700px) {
    .cjk-announcement {
        font-size:8px;
        gap:5px;
        height:34px;
        white-space:normal
    }
    .cjk-announcement img {
        width:18px;
        height:18px;
        flex:none
    }
    .cjk-header-inner {
        min-height:64px;
        display:flex;
        gap:10px;
        justify-content:space-between;
        padding:0 15px
    }
    .cjk-header-logo img {
        width:132px
    }
    .cjk-header-actions {
        margin-left:auto;
        gap:9px
    }
    .cjk-header-actions a,.cjk-header-actions svg {
        width:19px;
        height:19px
    }
    .menu-toggle {
        display:block;
        order:3
    }
    .cjk-main-nav {
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:#fff;
        box-shadow:0 8px 16px #0002;
        display:none
    }
    .cjk-main-nav.is-open {
        display:block
    }
    .cjk-main-nav .primary-menu {
        display:flex!important;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        padding:10px 20px 15px
    }
    .cjk-main-nav a {
        font-size:14px;
        padding:11px 0;
        border-bottom:1px solid #eee
    }
    .cjk-empty-home {
        min-height:340px
    }
    .cjk-footer-inner {
        padding:26px 16px 0
    }
    .cjk-footer-columns {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:22px 12px
    }
    .cjk-footer-brand {
        grid-column:1/-1
    }
    .cjk-footer-brand img {
        width:150px
    }
    .cjk-footer-col {
        padding:0 10px;
        min-height:0
    }
    .cjk-footer-newsletter {
        grid-column:1/-1
    }
    .cjk-footer-middle {
        grid-template-columns:1fr 1fr;
        gap:22px 10px
    }
    .cjk-payments {
        grid-column:1/-1
    }
    .cjk-contact img {
        width:34px;
        height:34px
    }
    .cjk-contact strong {
        font-size:12px
    }
    .cjk-contact a {
        font-size:10px;
        white-space:normal
    }
    .cjk-footer-copyright {
        font-size:11px
    }}



/* Header/footer visual corrections against supplied reference screenshots. */ .cjk-announcement {
    height:38px;
    border:0!important;
    box-shadow:none!important;
    background:#002e25!important;
    gap:13px;
    font-size:10px;
    letter-spacing:0
}

 .cjk-snowflake {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#d4ad2d;
    font-size:28px;
    line-height:1;
    flex:none
}

 .cjk-site-header {
    border-top:0!important;
    border-bottom:1px solid #e9e9e9!important
}

 .cjk-header-inner {
    max-width:1220px;
    grid-template-columns:205px minmax(0,1fr) 145px;
    min-height:82px
}

 .cjk-header-logo img {
    width:182px;
    max-height:75px
}

 .cjk-main-nav .primary-menu {
    gap:30px
}

 .cjk-main-nav a {
    font-size:12px;
    font-weight:600
}

 .cjk-header-actions {
    gap:14px
}

 .cjk-header-actions a {
    width:26px;
    height:28px
}

 .cjk-header-actions svg {
    width:25px;
    height:25px;
    stroke-width:1.65
}

 .cjk-site-footer {
    background-color:#002c26!important;
    background-image:url('assets/figma-footer-background.jpg')!important;
    background-position:center center!important;
    background-size:cover!important
}

 .cjk-footer-inner {
    max-width:1220px;
    padding-top:30px
}

 .cjk-footer-columns {
    grid-template-columns:1.55fr .83fr 1fr .92fr 1.42fr;
    padding-bottom:24px
}

 .cjk-footer-middle {
    grid-template-columns:1.65fr 1fr 1fr 1.2fr;
    gap:20px;
    padding:16px 0
}

 .cjk-contact {
    gap:10px
}

 .cjk-contact img {
    display:block;
    width:42px!important;
    height:42px!important;
    object-fit:contain!important;
    background:#fff!important;
    border-radius:6px!important;
    padding:7px!important;
    box-sizing:border-box!important;
    flex:0 0 42px!important
}

 .cjk-contact strong {
    font-size:14px;
    line-height:1.15
}

 .cjk-contact a {
    font-size:12px
}

 .cjk-social {
    gap:6px;
    margin-top:14px
}

 .cjk-social a {
    width:21px;
    height:21px;
    border-radius:50%;
    font-size:11px;
    line-height:1
}

 .cjk-payment-icons {
    gap:3px
}

 .cjk-payment-icons span {
    height:21px;
    min-width:37px
}

 .cjk-footer-copyright {
    padding:14px 0 18px
}

 @media(max-width:1000px) {
    .cjk-header-inner {
        grid-template-columns:165px 1fr 125px
    }
    .cjk-footer-middle {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }}

 @media(max-width:700px) {
    .cjk-announcement {
        height:auto;
        min-height:34px;
        font-size:8px;
        gap:6px;
        padding:6px 8px
    }
    .cjk-snowflake {
        font-size:18px
    }
    .cjk-header-inner {
        min-height:65px;
        display:flex
    }
    .cjk-header-logo img {
        width:132px
    }
    .cjk-footer-middle {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .cjk-contact img {
        width:36px!important;
        height:36px!important;
        flex-basis:36px!important;
        padding:6px!important
    }
    .cjk-footer-columns {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }}



/* Footer final reference: exact supplied payment artwork and branded social glyphs */ .cjk-payment-image {
    display:block;
    width:75%;
    height:auto;
    object-fit:contain;
    object-position:left center
}

 .cjk-social {
    display:flex;
    align-items:center;
    gap:6px
}

 .cjk-social a {
    width:21px;
    height:21px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#002e27;
    border-radius:50%;
    padding:5px;
    text-decoration:none;
    line-height:1;
    flex:0 0 21px
}

 .cjk-social a svg {
    display:block;
    width:100%;
    height:100%;
    fill:currentColor;
    overflow:visible
}

 .cjk-social a:hover {
    background:#e9f5f1
}

 @media(max-width:700px) {
    .cjk-payment-image {
        max-width:205px
    }}




/* ===== Figma homepage / Step 1: Hero only ===== */ .cjk-home-new {
    background:#fff;
    overflow:visible
}

 .cjk-figma-hero {
    position:relative;
    isolation:isolate;
    z-index:51;
    min-height:clamp(260px,30.5vw,586px);
    background-color:#002c25;
    background-image:url('https://darksalmon-tapir-348657.hostingersite.com/wp-content/uploads/2026/10/christmas-bg.png');
    background-repeat:no-repeat;
    background-position:center center;
    background-size:100% 100%;
    overflow:visible
}

 .cjk-figma-hero-inner {
    position:relative;
    z-index:2;
    max-width:1220px;
    margin:0 auto;
    min-height:inherit;
    display:flex;
    align-items:center;
    padding:25px 20px
}

 .cjk-figma-hero-content {
    width:43%;
    max-width:520px;
    color:#fff;
    padding-left:0
}

 .cjk-figma-hero-eyebrow {
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(15px,1.8vw,26px);
    margin:0 0 4px;
    font-weight:400
}

 .cjk-figma-hero-eyebrow span {
    font-size:.75em
}

 .cjk-figma-hero h1 {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:700;
    font-size:clamp(31px,4vw,62px);
    line-height:.96;
    letter-spacing:-.8px;
    margin:0 0 14px
}

 .cjk-figma-hero h1 span {
    color:#d7ad57
}

 .cjk-figma-hero-desc {
    font-size:clamp(9px,.95vw,14px);
    line-height:1.55;
    max-width:360px;
    margin:0 0 18px;
    color:#fff
}

 .cjk-figma-hero-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    padding:0 20px;
    background:#8b0b10;
    color:#fff;
    font-size:clamp(9px,.85vw,12px);
    font-weight:700;
    letter-spacing:.1px;
    white-space:nowrap;
    border-radius:2px
}

 .cjk-figma-hero-btn:hover {
    background:#a10e14;
    color:#fff
}

 .cjk-hero-edge {
    position:absolute;
    pointer-events:none;
    z-index:4;
    object-fit:contain
}

 .cjk-hero-edge-left {
    left:0;
    top:-25px;
    width:clamp(68px,10.9vw,190px);
    height:auto
}

 .cjk-hero-edge-right {
    right:0;
    top:-38px;
    width:clamp(65px,11.8vw,210px);
    height:calc(100% + 38px);
    object-position:right center
}

 @media(max-width:1000px) {
    .cjk-figma-hero-inner {
        padding-left:8.5%;
        padding-right:3%
    }
    .cjk-figma-hero-content {
        width:44%
    }
    .cjk-hero-edge-right {
        top:-25px;
        height:calc(100% + 25px)
    }}

 @media(max-width:700px) {
    .cjk-figma-hero {
        min-height:350px;
        background-size:auto 100%;
        background-position:61% center
    }
    .cjk-figma-hero-inner {
        padding:28px 17px;
        align-items:center
    }
    .cjk-figma-hero-content {
        width:59%;
        max-width:280px
    }
    .cjk-figma-hero h1 {
        font-size:clamp(27px,6vw,42px)
    }
    .cjk-figma-hero-eyebrow {
        font-size:16px
    }
    .cjk-figma-hero-desc {
        font-size:10px;
        max-width:220px
    }
    .cjk-figma-hero-btn {
        white-space:normal;
        font-size:9px;
        min-height:35px;
        padding:6px 11px
    }
    .cjk-hero-edge-left {
        top:-18px;
        width:80px
    }
    .cjk-hero-edge-right {
        width:92px;
        top:-17px;
        height:170px;
        object-position:right top
    }}

 @media(max-width:420px) {
    .cjk-figma-hero {
        min-height:315px;
        background-position:58% center
    }
    .cjk-figma-hero-content {
        width:61%
    }
    .cjk-figma-hero h1 {
        font-size:29px
    }
    .cjk-hero-edge-right {
        width:74px
    }}



/* Hero snowflake: separate PNG, overlapping the header; background copy removed. */ .cjk-figma-hero {
    z-index:51
}

 .cjk-hero-edge-left {
    position:absolute;
    left:0;
    top:-25px;
    z-index:6;
    pointer-events:none
}

 @media(max-width:700px) {
    .cjk-hero-edge-left {
        top:-25px
    }}




/* Figma Step 2: Popular products only. No corner decorations in this step. */ .cjk-popular-section {
    position:relative;
    background:#fff;
    color:#111;
    padding:34px 0 43px;
    isolation:isolate
}

 .cjk-popular-container {
    width:min(100% - 120px,1120px);
    margin:0 auto
}

 .cjk-popular-heading {
    text-align:center;
    margin-bottom:23px
}

 .cjk-popular-heading h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:700;
    font-size:clamp(21px,2.1vw,30px);
    line-height:1.2;
    margin:0 0 6px
}

 .cjk-popular-heading h2 span {
    font-size:.65em;
    vertical-align:middle
}

 .cjk-popular-heading p {
    font-size:12px;
    line-height:1.5;
    margin:0;
    color:#333
}

 .cjk-popular-slider {
    position:relative;
    width:100%
}

 .cjk-popular-track {
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 36px)/4);
    gap:12px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    overscroll-behavior-x:contain
}

 .cjk-popular-track::-webkit-scrollbar {
    display:none
}

 .cjk-popular-card {
    min-width:0;
    scroll-snap-align:start;
    background:#fff
}

 .cjk-popular-photo {
    display:block;
    position:relative;
    aspect-ratio: .82;
    background:#f3f3f3;
    overflow:hidden
}

 .cjk-popular-photo img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    transition:transform .2s ease
}

 .cjk-popular-photo:hover img {
    transform:scale(1.025)
}

 .cjk-popular-sale {
    position:absolute;
    top:7px;
    left:7px;
    background:#111;
    color:#fff;
    padding:3px 6px;
    font-size:9px;
    font-weight:700;
    z-index:1
}

 .cjk-popular-card-info {
    padding:9px 0 0
}

 .cjk-popular-name {
    display:block;
    font-family:Arial,Helvetica,sans-serif;
    font-size:11px;
    font-weight:400;
    line-height:1.45;
    color:#111;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}

 .cjk-popular-price {
    font-size:11px;
    font-weight:700;
    line-height:1.6;
    margin-top:4px
}

 .cjk-popular-price del {
    font-size:10px;
    color:#999;
    font-weight:400;
    margin-left:4px
}

 .cjk-popular-price ins {
    text-decoration:none;
    color:#111
}

 .cjk-popular-price .woocommerce-Price-amount {
    white-space:nowrap
}

 .cjk-popular-arrow {
    position:absolute;
    top:47%;
    transform:translateY(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    width:39px;
    height:39px;
    border:0;
    border-radius:50%;
    background:#870b14;
    color:#fff;
    font-size:24px;
    line-height:1;
    cursor:pointer;
    z-index:3
}

 .cjk-popular-arrow:hover {
    background:#65040b
}

 .cjk-popular-prev {
    left:-58px
}

.cjk-popular-next {
    right:-58px
}

 .cjk-popular-empty {
    text-align:center;
    padding:30px 0;
    font-size:14px
}

 @media(max-width:900px) {
    .cjk-popular-container {
        width:calc(100% - 90px)
    }
    .cjk-popular-track {
        grid-auto-columns:calc((100% - 24px)/3)
    }
    .cjk-popular-prev {
        left:-43px
    }
    .cjk-popular-next {
        right:-43px
    }
    .cjk-popular-arrow {
        width:32px;
        height:32px;
        font-size:20px
    }}

 @media(max-width:600px) {
    .cjk-popular-section {
        padding:29px 0 35px
    }
    .cjk-popular-container {
        width:calc(100% - 70px)
    }
    .cjk-popular-heading h2 {
        font-size:21px
    }
    .cjk-popular-heading p {
        font-size:11px
    }
    .cjk-popular-track {
        grid-auto-columns:calc((100% - 10px)/2);
        gap:10px
    }
    .cjk-popular-prev {
        left:-33px
    }
    .cjk-popular-next {
        right:-33px
    }
    .cjk-popular-arrow {
        width:28px;
        height:28px;
        font-size:17px
    }
    .cjk-popular-name {
        font-size:10px
    }}

 @media(prefers-reduced-motion:reduce) {
    .cjk-popular-track {
        scroll-behavior:auto
    }
    .cjk-popular-photo img {
        transition:none
    }}



/* Step 2: Figma product labels and sale price alignment. */ .cjk-popular-card-info {
    padding:11px 1px 2px
}

 .cjk-popular-name {
    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;
    font-weight:500;
    line-height:1.4;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    min-height:20px
}

 .cjk-popular-price {
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    column-gap:7px;
    row-gap:2px;
    margin-top:7px;
    font-family:Arial,Helvetica,sans-serif;
    font-size:14px;
    line-height:1.4;
    font-weight:700
}

 .cjk-popular-price .cjk-popular-current {
    color:#111;
    font-size:14px;
    font-weight:700
}

 .cjk-popular-price .cjk-popular-discount {
    color:#ed2432;
    font-size:13px;
    font-weight:600
}

 .cjk-popular-price .cjk-popular-old {
    color:#a5a5a5;
    font-size:12px;
    font-weight:400;
    text-decoration:line-through
}

 .cjk-popular-price .cjk-popular-old .amount {
    color:inherit
}

 .cjk-popular-price .amount {
    white-space:nowrap
}

 @media(max-width:600px) {
    .cjk-popular-name {
        font-size:12px
    }
    .cjk-popular-price,.cjk-popular-price .cjk-popular-current {
        font-size:12px
    }
    .cjk-popular-price .cjk-popular-discount {
        font-size:11px
    }
    .cjk-popular-price .cjk-popular-old {
        font-size:10px
    }}



/* Step 3: customer video carousel, using the supplied testimonial texture temporarily. */ .cjk-customer-video-section {
    position:relative;
    isolation:isolate;
    z-index:2;
    background:#570000 url('assets/figma-review-bg.jpg') center center/cover no-repeat;
    color:#fff;
    padding:32px 0 38px;
    overflow:visible
}

 .cjk-customer-video-container {
    position:relative;
    z-index:2;
    width:min(100% - 120px,1120px);
    margin:auto
}

 .cjk-customer-video-container h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(21px,2.1vw,30px);
    line-height:1.25;
    text-align:center;
    margin:0 0 24px;
    font-weight:700;
    color:#fff
}

 .cjk-customer-video-container h2 span {
    font-size:.65em;
    vertical-align:middle
}

 .cjk-customer-decor {
    position:absolute;
    pointer-events:none;
    z-index:5;
    object-fit:contain
}

 .cjk-customer-decor-left {
    width:clamp(105px,15vw,240px);
    left:0;
    top:-42px;
    object-position:left top
}

 .cjk-customer-decor-right {
    width:clamp(85px,10vw,150px);
    right:0;
    top:-35px;
    object-position:right top
}

 .cjk-customer-video-slider {
    position:relative
}

 .cjk-customer-video-track {
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 36px)/4);
    gap:12px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    overscroll-behavior-x:contain
}

 .cjk-customer-video-track::-webkit-scrollbar {
    display:none
}

 .cjk-customer-video-card {
    min-width:0;
    scroll-snap-align:start
}

 .cjk-customer-video-play {
    display:block;
    position:relative;
    width:100%;
    padding:0;
    border:0;
    border-radius:8px;
    overflow:hidden;
    aspect-ratio:358/642;
    background:#270000;
    cursor:pointer
}

 .cjk-customer-video-play img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover
}

 .cjk-customer-play-symbol {
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:37px;
    height:37px;
    display:grid;
    place-items:center;
    border:1.5px solid #fff;
    border-radius:50%;
    background:#0005;
    color:#fff;
    font-size:15px;
    padding-left:2px;
    opacity:0;
    transition:opacity .15s
}

 .cjk-customer-video-play:hover .cjk-customer-play-symbol,.cjk-customer-video-play:focus-visible .cjk-customer-play-symbol {
    opacity:1
}

 .cjk-customer-video-arrow {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:6;
    border:0;
    border-radius:50%;
    width:39px;
    height:39px;
    background:#870b14;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    display:grid;
    place-items:center
}

 .cjk-customer-video-prev {
    left:-57px
}

.cjk-customer-video-next {
    right:-57px
}

 .cjk-customer-video-arrow:hover {
    background:#a30c18
}

 .cjk-customer-video-overlay[hidden] {
    display:none!important
}

 .cjk-customer-video-overlay {
    position:fixed;
    inset:0;
    z-index:99999;
    background:#000d;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 16px
}

 .cjk-customer-video-overlay video {
    max-height:85vh;
    max-width:min(90vw,540px);
    width:auto;
    background:#000;
    border-radius:6px
}

 .cjk-customer-video-close {
    position:absolute;
    top:15px;
    right:20px;
    color:#fff;
    background:none;
    border:0;
    font-size:38px;
    cursor:pointer
}

 @media(max-width:900px) {
    .cjk-customer-video-container {
        width:calc(100% - 100px)
    }
    .cjk-customer-video-track {
        grid-auto-columns:calc((100% - 24px)/3)
    }
    .cjk-customer-video-prev {
        left:-45px
    }
    .cjk-customer-video-next {
        right:-45px
    }}

 @media(max-width:600px) {
    .cjk-customer-video-section {
        padding:30px 0
    }
    .cjk-customer-video-container {
        width:calc(100% - 72px)
    }
    .cjk-customer-video-track {
        grid-auto-columns:calc((100% - 12px)/2)
    }
    .cjk-customer-video-prev {
        left:-34px
    }
    .cjk-customer-video-next {
        right:-34px
    }
    .cjk-customer-video-arrow {
        width:28px;
        height:28px;
        font-size:18px
    }
    .cjk-customer-decor-left {
        width:95px;
        top:-23px
    }
    .cjk-customer-decor-right {
        width:75px;
        top:-18px
    }
    .cjk-customer-video-container h2 {
        font-size:21px
    }}

 @media(prefers-reduced-motion:reduce) {
    .cjk-customer-video-track {
        scroll-behavior:auto
    }}



/* Step 3 visual alignment: gallery reference decorations, contained carousel and arrows. */ .cjk-customer-video-section {
    position:relative;
    isolation:isolate;
    background:#570000 url('assets/figma-review-bg.jpg') center center/cover no-repeat;
    padding:25px 0 32px;
    overflow:visible
}

 .cjk-customer-video-container {
    width:min(calc(100% - 100px),1120px);
    position:relative;
    z-index:3
}

 .cjk-customer-video-container h2 {
    margin:0 0 18px;
    font-size:clamp(22px,2vw,30px);
    line-height:1.25
}

 .cjk-customer-video-slider {
    position:relative;
    width:100%;
    padding:0 46px;
    box-sizing:border-box
}

 .cjk-customer-video-track {
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 24px)/4);
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    min-width:0;
    scroll-snap-type:x mandatory;
    scrollbar-width:none
}

 .cjk-customer-video-card {
    min-width:0;
    overflow:hidden
}

 .cjk-customer-video-play {
    aspect-ratio:148/265;
    border-radius:6px
}

 .cjk-customer-video-arrow {
    width:36px;
    height:36px;
    top:50%;
    background:#8c0c15;
    color:#fff;
    display:grid;
    place-items:center;
    z-index:10;
    box-shadow:none
}

 .cjk-customer-video-prev {
    left:0
}

.cjk-customer-video-next {
    right:0
}

 .cjk-customer-decor {
    position:absolute;
    pointer-events:none;
    z-index:4;
    object-fit:contain
}

 .cjk-customer-decor-left {
    left:0;
    top:-25px;
    width:clamp(105px,14vw,215px);
    object-position:left top
}

 .cjk-customer-decor-right {
    right:0;
    top:-26px;
    width:clamp(90px,13vw,185px);
    object-position:right top
}

 .cjk-customer-decor-bottom-right {
    right:0;
    bottom:-2px;
    top:auto;
    width:clamp(90px,12vw,175px);
    transform:rotate(180deg);
    object-position:right bottom
}

 @media(max-width:900px) {
    .cjk-customer-video-container {
        width:calc(100% - 34px)
    }
    .cjk-customer-video-slider {
        padding:0 40px
    }
    .cjk-customer-video-track {
        grid-auto-columns:calc((100% - 16px)/3)
    }
    .cjk-customer-video-prev {
        left:0
    }
    .cjk-customer-video-next {
        right:0
    }}

 @media(max-width:600px) {
    .cjk-customer-video-section {
        padding:28px 0
    }
    .cjk-customer-video-container {
        width:calc(100% - 12px)
    }
    .cjk-customer-video-container h2 {
        font-size:19px;
        padding:0 28px
    }
    .cjk-customer-video-slider {
        padding:0 34px
    }
    .cjk-customer-video-track {
        grid-auto-columns:calc((100% - 8px)/2)
    }
    .cjk-customer-video-prev {
        left:0
    }
    .cjk-customer-video-next {
        right:0
    }
    .cjk-customer-video-arrow {
        width:28px;
        height:28px;
        font-size:17px
    }
    .cjk-customer-decor-left {
        width:88px;
        top:-18px
    }
    .cjk-customer-decor-right {
        width:80px;
        top:-18px
    }
    .cjk-customer-decor-bottom-right {
        width:85px
    }}




/* Gallery layout approved reference: heading inside, four centered portraits, ornaments at edges. */ .cjk-customer-video-section {
    position:relative!important;
    isolation:isolate!important;
    background:#570000 url('assets/figma-review-bg.jpg') center center/cover no-repeat!important;
    padding:18px 0 29px!important;
    overflow:hidden!important;
    min-height:0!important;
}

 .cjk-customer-video-container {
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    max-width:1280px!important;
    margin:0 auto!important;
    padding:0 4.8%!important;
    box-sizing:border-box!important;
}

 .cjk-customer-video-container h2 {
    position:relative!important;
    z-index:4!important;
    display:block!important;
    clear:both!important;
    margin:0 auto 15px!important;
    padding:0!important;
    color:#fff!important;
    font-family:Georgia,'Times New Roman',serif!important;
    font-size:clamp(20px,2.55vw,33px)!important;
    line-height:1.3!important;
    font-weight:700!important;
    text-align:center!important;
    transform:none!important;
}

 .cjk-customer-video-slider {
    position:relative!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
    box-sizing:border-box!important;
}

 .cjk-customer-video-track {
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:calc((100% - 24px)/4)!important;
    gap:8px!important;
    width:80%!important;
    max-width:1040px!important;
    margin:0 auto!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
}

 .cjk-customer-video-card {
    min-width:0!important;
    scroll-snap-align:start!important;
}

 .cjk-customer-video-play {
    display:block!important;
    width:100%!important;
    aspect-ratio:148/265!important;
    height:auto!important;
    border-radius:7px!important;
    overflow:hidden!important;
}

 .cjk-customer-video-play img {
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}

 .cjk-customer-video-arrow {
    position:absolute!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:34px!important;
    height:34px!important;
    border-radius:50%!important;
    background:#8b0d18!important;
    color:#fff!important;
    z-index:8!important;
}

 .cjk-customer-video-prev {
    left:0!important
}

.cjk-customer-video-next {
    right:0!important
}

 .cjk-customer-decor {
    position:absolute!important;
    pointer-events:none!important;
    z-index:4!important;
    object-fit:contain!important;
}

 .cjk-customer-decor-left {
    left:0!important;
    top:-10px!important;
    width:clamp(110px,16vw,215px)!important;
    height:auto!important;
    transform:none!important;
}

 .cjk-customer-decor-right {
    right:0!important;
    top:-28px!important;
    width:clamp(90px,12vw,175px)!important;
    height:auto!important;
    transform:none!important;
}

 .cjk-customer-decor-bottom-right {
    right:0!important;
    bottom:-12px!important;
    top:auto!important;
    width:clamp(75px,11vw,155px)!important;
    height:auto!important;
    transform:none!important;
}

 @media(max-width:700px) {
    .cjk-customer-video-section {
        padding:22px 0 26px!important
    }
    .cjk-customer-video-container {
        padding:0 12px!important
    }
    .cjk-customer-video-container h2 {
        font-size:clamp(17px,4vw,23px)!important;
        margin-bottom:13px!important;
        padding:0 20px!important
    }
    .cjk-customer-video-track {
        width:calc(100% - 70px)!important;
        grid-auto-columns:calc((100% - 9px)/2)!important;
        gap:9px!important
    }
    .cjk-customer-video-arrow {
        width:28px!important;
        height:28px!important
    }
    .cjk-customer-decor-left {
        width:95px!important
    }
    .cjk-customer-decor-right {
        width:78px!important
    }
    .cjk-customer-decor-bottom-right {
        width:75px!important
    }}



/* Gallery correction: source artwork contained a 149px WHITE strip at the top.
   Use the maroon-only crop so the title and entire gallery sit ON the background. */ .cjk-customer-video-section {
     background: #570000 url('assets/figma-review-bg-maroon.jpg') center center / cover no-repeat !important;
     padding: 22px 0 28px !important;
     overflow: visible !important;
}

 .cjk-customer-video-container {
     position: relative !important;
     z-index: 3 !important;
}

 .cjk-customer-video-container h2 {
     color: #fff !important;
     margin: 0 0 16px !important;
     position: relative !important;
     text-align: center !important;
}

 .cjk-customer-video-track {
     overscroll-behavior-x: contain;
}

 .cjk-customer-decor-left {
     top: -12px !important;
}

 .cjk-customer-decor-right {
     top: -24px !important;
}

 .cjk-customer-decor-bottom-right {
     bottom: 0 !important;
}

 @media (max-width: 700px) {
     .cjk-customer-video-section {
         padding: 24px 0 26px !important;
    }
     .cjk-customer-video-container h2 {
         margin-bottom: 14px !important;
    }}




/* Step 3 final: static four-video gallery; full-bleed maroon texture without screenshot fragments. */ .cjk-customer-video-section {
     position: relative !important;
     isolation: isolate !important;
     background-color: #570000 !important;
     background-image: url('assets/figma-review-bg-maroon.jpg') !important;
     background-position: center center !important;
     background-size: 100% 100% !important;
     background-repeat: no-repeat !important;
     padding: 25px 0 29px !important;
     overflow: hidden !important;
}

 .cjk-customer-video-container {
     width: min(100% - 84px, 1120px) !important;
     max-width: 1120px !important;
     padding: 0 !important;
     margin: 0 auto !important;
     position: relative !important;
     z-index: 2 !important;
}

 .cjk-customer-video-container h2 {
     margin: 0 0 16px !important;
     color: #fff !important;
     text-align: center !important;
     font-size: clamp(22px, 2.2vw, 30px) !important;
     line-height: 1.25 !important;
}

 .cjk-customer-video-slider {
     padding: 0 !important;
     margin: 0 !important;
     width: 100% !important;
}

 .cjk-customer-video-track {
     display: grid !important;
     grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
     grid-auto-flow: row !important;
     grid-auto-columns: auto !important;
     gap: 9px !important;
     width: min(100%, 1020px) !important;
     max-width: 1020px !important;
     margin: 0 auto !important;
     overflow: visible !important;
     scroll-snap-type: none !important;
}

 .cjk-customer-video-card {
     min-width: 0 !important;
}

 .cjk-customer-video-play {
     width: 100% !important;
     aspect-ratio: 148 / 265 !important;
     height: auto !important;
     border-radius: 7px !important;
}

 .cjk-customer-video-arrow {
     display: none !important;
}

 .cjk-customer-decor-left, .cjk-customer-decor-right {
     display: none !important;
}

 .cjk-customer-decor-bottom-right {
     display: block !important;
     position: absolute !important;
     right: 0 !important;
     bottom: 0 !important;
     top: auto !important;
     width: clamp(90px, 13vw, 170px) !important;
     height: auto !important;
     transform: none !important;
     object-fit: contain !important;
     z-index: 3 !important;
     pointer-events: none !important;
}

 @media (max-width: 700px) {
     .cjk-customer-video-section {
         padding: 23px 0 25px !important;
    }
     .cjk-customer-video-container {
         width: calc(100% - 28px) !important;
    }
     .cjk-customer-video-container h2 {
         font-size: clamp(18px, 4vw, 23px) !important;
         padding: 0 14px !important;
    }
     .cjk-customer-video-track {
         grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
         gap: 10px !important;
    }
     .cjk-customer-decor-bottom-right {
         width: 75px !important;
    }}




/* Gallery decorations: separate transparent PNGs, overlapping section edges.
   Keep the approved four-card gallery layout unchanged. */ .cjk-customer-video-section {
     background-image: url('assets/cjk-gallery-maroon-texture-clean.jpg') !important;
     background-position: center !important;
     background-size: cover !important;
     overflow: visible !important;
     isolation: isolate;
	 padding: 30px 0 50px 0 !important;
}

 .cjk-customer-video-container {
     position: relative !important;
     z-index: 2 !important;
}

 .cjk-customer-decor {
     display: block !important;
     position: absolute !important;
     height: auto !important;
     max-width: none !important;
     object-fit: contain !important;
     pointer-events: none !important;
     z-index: 3 !important;
     transform: none !important;
}

 .cjk-customer-decor-left {
     left: -12px !important;
     right: auto !important;
     top: -90px !important;
     bottom: auto !important;
     width: clamp(125px, 17vw, 264px) !important;
}

 .cjk-customer-decor-right {
     right: -12px !important;
     left: auto !important;
     top: -69px !important;
     bottom: auto !important;
     width: clamp(92px, 11vw, 176px) !important;
}

 .cjk-customer-decor-bottom-right {
     right: -14px !important;
     left: auto !important;
     bottom: -62px !important;
     top: auto !important;
     width: clamp(110px, 14vw, 200px) !important;
}

 @media (max-width: 700px) {
     .cjk-customer-decor-left {
         width: 120px !important;
         top: -33px !important;
         left: -12px !important;
    }
     .cjk-customer-decor-right {
         width: 85px !important;
         top: -38px !important;
         right: -9px !important;
    }
     .cjk-customer-decor-bottom-right {
         width: 94px !important;
         bottom: -30px !important;
         right: -10px !important;
    }}




/* ===== Step 4: 12-product Figma collection; approved sections unchanged ===== */ .cjk-collection-section {
    position:relative;
    isolation:isolate;
    z-index:1;
    background:#fff;
    color:#111;
    padding:38px 0 46px;
    overflow:visible
}

 .cjk-collection-inner {
    position:relative;
    z-index:2;
    width:min(calc(100% - 130px),1140px);
    margin:0 auto
}

 .cjk-collection-header {
    text-align:center;
    margin:0 auto 25px
}

 .cjk-collection-header h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:700;
    font-size:clamp(21px,2.15vw,31px);
    line-height:1.3;
    margin:0 0 6px;
    color:#101010
}

 .cjk-collection-header h2 span {
    font-size:.64em;
    vertical-align:middle
}

 .cjk-collection-header p {
    font-size:clamp(11px,.95vw,14px);
    margin:0;
    line-height:1.5;
    color:#222
}

 .cjk-collection-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:29px 22px;
    max-width:1060px;
    margin:0 auto
}

 .cjk-collection-card {
    min-width:0;
    background:#fff;
    position:relative
}

 .cjk-collection-photo {
    display:block;
    position:relative;
    aspect-ratio:1/1.22;
    background:#f1f1f1;
    overflow:hidden
}

 .cjk-collection-photo img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top
}

 .cjk-collection-sale {
    position:absolute;
    left:7px;
    top:7px;
    z-index:2;
    background:#111;
    color:#fff;
    font-size:10px;
    font-weight:700;
    line-height:1;
    padding:5px 7px;
    letter-spacing:.15px
}

 .cjk-collection-info {
    padding:8px 0 0;
    font-family:Arial,Helvetica,sans-serif
}

 .cjk-collection-rating {
    color:#eaa225;
    font-size:14px;
    line-height:1.2;
    min-height:17px;
    margin-bottom:5px
}

 .cjk-collection-rating .star-rating {
    float:none;
    display:inline-block;
    margin:0;
    color:#eaa225;
    font-size:13px
}

 .cjk-collection-name {
    display:block;
    font-size:13px;
    font-weight:500;
    line-height:1.45;
    min-height:19px;
    color:#161616
}

 .cjk-collection-price {
    display:flex;
    align-items:baseline;
    gap:6px;
    flex-wrap:wrap;
    margin-top:5px;
    font-size:13px;
    font-weight:700;
    line-height:1.4
}

 .cjk-collection-price .amount {
    white-space:nowrap
}

 .cjk-collection-current {
    color:#111
}

 .cjk-collection-discount {
    color:#e21a2c;
    font-weight:600
}

 .cjk-collection-old {
    color:#aaa;
    font-size:11px;
    font-weight:400;
    text-decoration:line-through
}

 .cjk-collection-cta-wrap {
    text-align:center;
    margin:29px auto 0
}

 .cjk-collection-cta {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:41px;
    background:#870b14;
    color:#fff;
    padding:0 27px;
    font-size:11px;
    font-weight:700;
    border-radius:3px;
    letter-spacing:.1px
}

 .cjk-collection-cta:hover {
    background:#69070e;
    color:#fff
}

 .cjk-collection-decor {
    position:absolute;
    display:block;
    max-width:none;
    height:auto;
    pointer-events:none;
    object-fit:contain;
    z-index:3
}

 .cjk-collection-decor-top-left {
    left:0;
    top:-34px;
    width:clamp(68px,8vw,130px)
}

 .cjk-collection-decor-middle-right {
    right:-3px;
    top:35%;
    width:clamp(95px,10vw,158px)
}

 .cjk-collection-decor-bottom-left {
    left:-7px;
    bottom:-24px;
    width:clamp(85px,10vw,152px)
}

 .cjk-collection-empty {
    text-align:center;
    padding:30px
}

 @media(max-width:900px) {
    .cjk-collection-inner {
        width:calc(100% - 80px)
    }
    .cjk-collection-grid {
        gap:23px 13px
    }
    .cjk-collection-name {
        font-size:12px
    }
    .cjk-collection-decor-middle-right {
        width:80px
    }}

 @media(max-width:650px) {
    .cjk-collection-section {
        padding:29px 0 39px
    }
    .cjk-collection-inner {
        width:calc(100% - 34px)
    }
    .cjk-collection-header {
        margin-bottom:19px
    }
    .cjk-collection-header h2 {
        font-size:21px
    }
    .cjk-collection-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:22px 12px
    }
    .cjk-collection-photo {
        aspect-ratio:1/1.2
    }
    .cjk-collection-name {
        font-size:12px
    }
    .cjk-collection-price {
        font-size:12px;
        gap:4px
    }
    .cjk-collection-decor-top-left {
        width:65px;
        top:-24px
    }
    .cjk-collection-decor-middle-right {
        width:62px;
        right:-4px
    }
    .cjk-collection-decor-bottom-left {
        width:75px;
        bottom:-15px
    }
    .cjk-collection-cta {
        font-size:10px;
        padding:0 18px
    }}



/* Step 4 refinement: 18 WooCommerce products and contained bottom ornament.
   Prevent the gold star from covering the approved footer. */ .cjk-collection-section {
    isolation:isolate;
}

 .cjk-collection-decor-bottom-left {
    left:0;
    bottom:0px;
    width:clamp(72px,8vw,112px);
    z-index:1;
}

 .cjk-collection-inner {
    z-index:2;
}

 @media(max-width:650px) {
    .cjk-collection-decor-bottom-left {
        left:0;
        bottom:8px;
        width:62px;
    }}



/* Step 5 — Figma Christmas trousers offer. Self-contained: do not change approved sections. */ .cjk-trousers-offer {
     position: relative;
     isolation: isolate;
     overflow: hidden;
     width: 100%;
     min-height: 300px;
     color: #fff;
     background: #002b25 url('assets/figma-green-texture.png') center center / cover no-repeat;
}

 .cjk-trousers-offer-inner {
     position: relative;
     display: grid;
     grid-template-columns: 34% 31% 35%;
     align-items: center;
     width: min(100% - 100px, 1140px);
     min-height: 300px;
     margin: 0 145px;
}

 .cjk-trousers-copy {
     position: relative;
     z-index: 2;
     padding: 20px 26px 20px 0;
}

 .cjk-trousers-tag {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: #334b2c;
     color: #fff;
     min-width: 145px;
     padding: 8px 12px;
     border-radius: 2px;
     font: 600 12px/1.2 Arial, sans-serif;
     margin-bottom: 12px;
}

 .cjk-trousers-copy h2 {
     color: #fff;
     font: 700 clamp(23px,2.3vw,32px)/1.08 Georgia,'Times New Roman',serif;
     letter-spacing: -.35px;
     margin: 0 0 11px;
}

 .cjk-trousers-copy > p {
     color: #fff;
     font: 400 12px/1.55 Arial,sans-serif;
     max-width: 295px;
     margin: 0 0 9px;
}

 .cjk-trousers-prices {
     display: flex;
     align-items: baseline;
     gap: 9px;
     margin-bottom: 12px;
}

 .cjk-trousers-prices strong {
     font: 700 26px/1.1 Arial,sans-serif;
     color: #fff;
}

 .cjk-trousers-prices del {
     font: 400 23px/1.1 Arial,sans-serif;
     color: #b5b6b5;
}

 .cjk-trousers-button {
     display: inline-flex;
     justify-content: center;
     align-items: center;
     min-width: 215px;
     min-height: 36px;
     padding: 9px 20px;
     border-radius: 2px;
     background: #920d17;
     color: #fff !important;
     text-decoration: none;
     font: 600 12px/1.2 Arial,sans-serif;
}

 .cjk-trousers-button:hover {
     background: #b10e1a;
}

 .cjk-trousers-benefits {
     z-index: 2;
     align-self: stretch;
     display: flex;
     flex-direction: column;
     justify-content: center;
     gap: 22px;
     padding: 12px 13px 12px 23px;
     border-left: 1px solid rgba(255,255,255,.45);
}

 .cjk-trousers-benefit {
     display: flex;
     align-items: center;
     gap: 12px;
}

 .cjk-trousers-benefit > img {
     display: block;
     width: 43px;
     height: 43px;
     flex: 0 0 43px;
     object-fit: contain;
}

 .cjk-trousers-benefit h3 {
     margin: 0 0 3px;
     color: #fff;
     font: 700 17px/1.1 Arial,sans-serif;
}

 .cjk-trousers-benefit p {
     margin: 0;
     color: #fff;
     font: 400 9px/1.35 Arial,sans-serif;
     max-width: 205px;
}

 .cjk-trousers-models {
     position: absolute;
     z-index: 1;
     right: calc((min(100vw, 1240px) - 100vw)/2 - 8px);
     bottom: 0;
     display: block;
     width: auto;
     height: 100%;
     max-width: none;
     object-fit: contain;
     object-position: bottom right;
     pointer-events: none;
}

 @media (max-width: 1000px) {
     .cjk-trousers-offer-inner {
         width: calc(100% - 52px);
         grid-template-columns: 35% 35% 30%;
    }
     .cjk-trousers-models {
         right: -26px;
    }
     .cjk-trousers-benefits {
         padding-left: 15px;
         gap: 14px;
    }
     .cjk-trousers-benefit h3 {
         font-size: 14px;
    }
     .cjk-trousers-benefit > img {
         width: 36px;
         height: 36px;
         flex-basis: 36px;
    }}

 @media (max-width: 700px) {
     .cjk-trousers-offer {
         min-height: 0;
    }
     .cjk-trousers-offer-inner {
         display: flex;
         flex-direction: column;
         align-items: stretch;
         width: calc(100% - 36px);
         padding: 26px 0 0;
    }
     .cjk-trousers-copy {
         padding: 0 0 22px;
    }
     .cjk-trousers-copy h2 {
         font-size: clamp(23px, 6vw, 31px);
    }
     .cjk-trousers-copy > p {
         max-width: 400px;
    }
     .cjk-trousers-benefits {
         border-left: 0;
         border-top: 1px solid rgba(255,255,255,.4);
         padding: 20px 0 0;
         gap: 15px;
    }
     .cjk-trousers-benefit p {
         font-size: 10px;
         max-width: 290px;
    }
     .cjk-trousers-models {
         position: relative;
         align-self: flex-end;
         width: min(100%,420px);
         height: auto;
         right: -18px;
         margin-top: 10px;
    }}




/* Step 6 — Why Customers Choose Christmas Jackets UK */ .cjk-why-section {
     position: relative;
     isolation: isolate;
     width:100%;
     background:#fff;
     padding: 35px 0 43px;
     overflow: visible;
}

 .cjk-why-inner {
     position:relative;
     z-index:2;
     width:min(100% - 200px, 1320px);
     margin:0 auto;
}

 .cjk-why-section h2 {
     font-family: Georgia,'Times New Roman',serif;
     font-size:clamp(23px,2.4vw,37px);
     line-height:1.2;
     font-weight:700;
     color:#111;
     text-align:center;
     margin:0 0 20px;
}

 .cjk-why-benefits {
     display:grid;
     grid-template-columns:repeat(4,minmax(0,1fr));
     border:1px solid #ddd;
     border-radius:15px;
     background:linear-gradient(#fafafa,#f5f5f5);
     box-shadow:0 5px 10px rgba(0,0,0,.13);
     padding:14px 0;
}

 .cjk-why-item {
     min-width:0;
     display:flex;
     flex-direction:column;
     align-items:center;
     text-align:center;
     padding:0 15px;
     position:relative;
}

 .cjk-why-item + .cjk-why-item:before {
     content:'';
     position:absolute;
     left:0;
     top:12px;
     bottom:12px;
     width:1px;
     background:#aaa;
}

 .cjk-why-item img {
     width:45px;
     height:35px;
     object-fit:contain;
     margin:0 auto 5px;
}

 .cjk-why-item h3 {
     color:#111;
     font-family:Georgia,'Times New Roman',serif;
     font-size:clamp(13px,1.05vw,17px);
     line-height:1.2;
     margin:0 0 5px;
     font-weight:700;
}

 .cjk-why-item p {
     font-family:Arial,sans-serif;
     font-size:clamp(10px,.76vw,12px);
     line-height:1.35;
     color:#222;
     max-width:210px;
     margin:0;
}

 .cjk-why-decor {
     position:absolute;
     z-index:3;
     pointer-events:none;
     display:block;
     height:auto;
}

 .cjk-why-decor-left {
     width:clamp(100px,16vw,230px);
     left:0;
     top:13px;
}

 .cjk-why-decor-right {
     width:clamp(65px,10vw,135px);
     right:0;
     top:-17px;
}

 @media(max-width:900px) {
     .cjk-why-inner {
        width:calc(100% - 80px)
    }
     .cjk-why-decor-left {
        width:100px;
        top:23px
    }
    .cjk-why-decor-right {
        width:75px
    }}

 @media(max-width:650px) {
     .cjk-why-section {
        padding:48px 0 38px
    }
     .cjk-why-inner {
        width:calc(100% - 28px)
    }
     .cjk-why-section h2 {
        font-size:24px;
        max-width:290px;
        margin:0 auto 20px
    }
     .cjk-why-benefits {
        grid-template-columns:repeat(2,minmax(0,1fr));
        row-gap:24px;
        padding:20px 8px
    }
     .cjk-why-item:nth-child(3):before {
        display:none
    }
     .cjk-why-item:nth-child(3),.cjk-why-item:nth-child(4) {
        border-top:1px solid #ddd;
        padding-top:18px
    }
     .cjk-why-decor-left {
        width:95px;
        top:5px;
        left:-18px
    }
    .cjk-why-decor-right {
        width:65px;
        top:-12px
    }}




/* Step 6 refinement: compact Figma-style benefits, clean corner artwork. */ .cjk-why-section {
     padding: 50px 0 50px 0 !important;
     background:#fff !important;
     overflow:hidden !important;
}

 .cjk-why-inner {
     width:min(calc(100% - 220px), 1080px) !important;
     z-index:3 !important;
}

 .cjk-why-section h2 {
     font-family:Georgia,'Times New Roman',serif !important;
     font-size:clamp(22px,2.25vw,32px) !important;
     line-height:1.2 !important;
     margin:0 0 17px !important;
}

 .cjk-why-benefits {
     position:relative !important;
     z-index:3 !important;
     padding:11px 6px !important;
     border:1px solid #dedede !important;
     border-radius:14px !important;
     background:linear-gradient(180deg,#fafafa,#f7f7f7) !important;
     box-shadow:0 5px 9px rgba(0,0,0,.10) !important;
}

 .cjk-why-item {
     padding:0 11px !important;
     justify-content:center !important;
}

 .cjk-why-item + .cjk-why-item:before {
     top:7px !important;
     bottom:7px !important;
     background:#aaa !important;
}

 .cjk-why-item img {
     width:35px !important;
     height:29px !important;
     margin:0 auto 3px !important;
     object-fit:contain !important;
}

 .cjk-why-item h3 {
     font-size:clamp(12px,1.12vw,16px) !important;
     line-height:1.15 !important;
     margin:0 0 4px !important;
}

 .cjk-why-item p {
     font-size:clamp(9px,.8vw,11px) !important;
     line-height:1.25 !important;
}

 .cjk-why-decor {
     z-index:2 !important;
     pointer-events:none !important;
}

 .cjk-why-decor-left {
     width:clamp(105px,12vw,170px) !important;
     left:0 !important;
     top:22px !important;
}

 .cjk-why-decor-right {
     width:clamp(70px,9vw,118px) !important;
     right:-3px !important;
     top:-19px !important;
}

 @media(max-width:900px) {
     .cjk-why-inner {
         width:calc(100% - 130px) !important;
    }
     .cjk-why-decor-left {
         width:110px !important;
         top:20px !important;
    }
     .cjk-why-decor-right {
         width:78px !important;
    }}

 @media(max-width:650px) {
     .cjk-why-section {
         padding:48px 0 34px !important;
    }
     .cjk-why-inner {
         width:calc(100% - 28px) !important;
    }
     .cjk-why-section h2 {
         font-size:23px !important;
         max-width:290px !important;
         margin:0 auto 20px !important;
    }
     .cjk-why-benefits {
         grid-template-columns:repeat(2,minmax(0,1fr)) !important;
         row-gap:16px !important;
         padding:15px 7px !important;
    }
     .cjk-why-item {
         padding:5px 6px !important;
    }
     .cjk-why-item:nth-child(3):before {
         display:none !important;
    }
     .cjk-why-item:nth-child(3),.cjk-why-item:nth-child(4) {
         padding-top:14px !important;
    }
     .cjk-why-decor-left {
         width:90px !important;
         top:5px !important;
         left:-15px !important;
    }
     .cjk-why-decor-right {
         width:65px !important;
         top:-12px !important;
    }}



/* Approved section refinements: trousers alignment + compact why-us card. */ @media (min-width: 1101px) {
     .cjk-trousers-offer-inner {
         margin: 0 145px;
    }}

 @media (max-width: 1100px) {
     .cjk-trousers-offer-inner {
         margin-left: auto;
         margin-right: auto;
    }}


/* Match the Figma benefits row proportions rather than a stretched full-width panel. */ .cjk-why-inner {
     width: min(calc(100% - 220px), 1020px) !important;
}

 .cjk-why-benefits {
     padding: 10px 3px !important;
}

 .cjk-why-item {
     padding-left: 8px !important;
     padding-right: 8px !important;
}

 .cjk-why-item img {
     width: 34px !important;
     height: 28px !important;
}

 .cjk-why-item p {
     max-width: 175px !important;
}


/* Place the left green sprig just above the first benefit card corner. */ .cjk-why-decor-left {
     top: 39px !important;
     left: max(0px, calc((100vw - 1100px) / 2 - 36px)) !important;
     width: clamp(92px, 10vw, 140px) !important;
	z-index: 5 !important;
}

 @media (max-width: 900px) {
     .cjk-why-inner {
         width: calc(100% - 125px) !important;
    }
     .cjk-why-decor-left {
         left: 5px !important;
         top: 76px !important;
         width: 90px !important;
    }}

 @media (max-width: 650px) {
     .cjk-why-inner {
         width: calc(100% - 28px) !important;
    }
     .cjk-why-decor-left {
         top: 70px !important;
         left: -14px !important;
         width: 75px !important;
    }
     .cjk-why-item {
         padding-left: 6px !important;
         padding-right: 6px !important;
    }}



/* FINAL APPROVED WHY-CHOOSE SECTION: reference-matched decorations and compact benefits */ @media (min-width: 901px) {
     .cjk-why-section {
         padding: 35px 0 52px;
         overflow: hidden !important;
    }
     .cjk-why-inner {
         width: min(calc(100% - 210px), 1020px) !important;
    }
     .cjk-why-section h2 {
         margin-bottom: 19px !important;
    }
     .cjk-why-benefits {
         padding: 35px 4px !important;
    }
     .cjk-why-item img {
         width: 34px !important;
         height: 28px !important;
    }
    
     .cjk-why-decor-right {
         right: -3px !important;
         top: -18px !important;
         width: 105px !important;
         z-index: 4 !important;
    }}

 @media (min-width: 651px) and (max-width: 900px) {
     .cjk-why-section {
         padding: 34px 0 46px !important;
    }
     .cjk-why-decor-left {
         left: 25px !important;
         top: 35px !important;
         width: 100px !important;
         z-index: 5 !important;
    }
     .cjk-why-decor-right {
         right: -4px !important;
         top: -13px !important;
         width: 78px !important;
    }}

 @media (max-width: 650px) {
     .cjk-why-decor-left {
         left: -13px !important;
         top: 45px !important;
         width: 72px !important;
         z-index: 5 !important;
    }
     .cjk-why-decor-right {
         right: -8px !important;
         top: -12px !important;
         width: 58px !important;
    }}




/* Step 7: About Us — scoped to this section only. */ .cjk-about-figma {
    position:relative;
    isolation:isolate;
    background:#f3ece5;
    padding:34px 0 35px;
    overflow:hidden;
    color:#151515
}

 .cjk-about-figma-inner {
    width:min(100% - 70px,1140px);
    margin:0 auto;
    display:grid;
    grid-template-columns:39% minmax(0,1fr);
    gap:16px;
    align-items:center
}

 .cjk-about-figma-photo {
    height:310px;
    overflow:hidden;
    border-radius:18px
}

 .cjk-about-figma-photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}

 .cjk-about-figma-copy h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(24px,2.2vw,34px);
    line-height:1.12;
    margin:0 0 10px;
    color:#111
}

 .cjk-about-figma-copy p,.cjk-about-figma-copy li {
    font-size:12px;
    line-height:1.43;
    margin:0;
    color:#151515
}

 .cjk-about-figma-copy .cjk-about-intro {
    margin-top:8px
}

 .cjk-about-figma-copy ul,.cjk-about-figma-copy ol {
    margin:3px 0 0;
    padding-left:18px
}

 .cjk-about-figma-features {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:13px
}

 .cjk-about-figma-features>div {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    min-width:0
}

 .cjk-about-figma-features span {
    font-size:22px;
    line-height:1;
    color:#e5a62a;
    margin-bottom:3px
}

 .cjk-about-figma-features strong {
    font-family:Georgia,'Times New Roman',serif;
    font-size:12px;
    line-height:1.2;
    color:#171717
}

 .cjk-about-figma-features small {
    font-size:10px;
    line-height:1.3;
    margin-top:3px;
    color:#222
}

 @media(min-width:1200px) {
    .cjk-about-figma-inner {
        grid-template-columns:39% minmax(0,1fr)
    }
    .cjk-about-figma-photo {
        height:335px
    }}

 @media(max-width:767px) {
    .cjk-about-figma {
        padding:28px 0
    }
    .cjk-about-figma-inner {
        width:min(100% - 32px,560px);
        grid-template-columns:1fr;
        gap:20px
    }
    .cjk-about-figma-photo {
        height:auto;
        aspect-ratio:610/526
    }
    .cjk-about-figma-copy h2 {
        font-size:26px
    }
    .cjk-about-figma-copy p,.cjk-about-figma-copy li {
        font-size:13px
    }
    .cjk-about-figma-features {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px
    }}




/* Step 8 - What Our Customers Say: Figma testimonial section. */ .cjk-testimonials-figma {
    position:relative;
    isolation:isolate;
    overflow:visible;
    background:#4d0000 url('assets/cjk-testimonials-pattern.jpg') center center/cover no-repeat;
    color:#fff;
    padding:30px 0 50px 0; 
    min-height:280px
}

 .cjk-testimonials-inner {
    width:min(100% - 150px,1120px);
    margin:0 auto;
    position:relative;
    z-index:2
}

 .cjk-testimonials-inner h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(24px,2.2vw,34px);
    font-weight:700;
    line-height:1.2;
    text-align:center;
    color:#fff;
    margin:0 0 20px
}

 .cjk-testimonials-inner h2 span {
    font-size:.65em;
    vertical-align:middle
}

 .cjk-testimonials-slider {
    width:100%;
    margin:0 auto
}

 .cjk-testimonials-window {
    overflow:hidden;
    width:100%;
    border-radius:13px
}

 .cjk-testimonials-track {
    display:flex;
    gap:12px;
    transition:transform .55s ease;
    will-change:transform
}

 .cjk-testimonial-card {
    box-sizing:border-box;
    flex:0 0 calc((100% - 36px)/4);
    min-width:0;
    min-height:157px;
    background:#f9f9f9;
    border-radius:13px;
    padding:19px 15px 15px;
    color:#171717;
    text-align:left;
    display:flex;
    flex-direction:column;
    justify-content:center
}

 .cjk-testimonial-top {
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:9px
}

 .cjk-testimonial-avatar {
    width:33px;
    height:33px;
    flex:0 0 33px;
    border:2px solid #476f55;
    background:#e9dfd0;
    color:#324a37;
    border-radius:50%;
    display:grid;
    place-items:center;
    font:bold 17px Georgia,serif
}

 .cjk-testimonial-top strong {
    display:block;
    font-size:13px;
    line-height:1.2;
    color:#111
}

 .cjk-testimonial-stars {
    display:block;
    color:#f2a61c;
    letter-spacing:1px;
    font-size:13px;
    line-height:1.2
}

 .cjk-testimonial-card p {
    font-size:12px;
    line-height:1.45;
    color:#222;
    margin:0
}

 .cjk-testimonials-dots {
    display:flex;
    justify-content:center;
    gap:7px;
    margin-top:15px
}

 .cjk-testimonials-dots button {
    appearance:none;
    border:1px solid #fff;
    background:#fff;
    width:8px;
    height:8px;
    border-radius:50%;
    padding:0;
    cursor:pointer;
    transition:background .2s ease
}

 .cjk-testimonials-dots button.is-active {
    background:#126f4d;
    border-color:#fff
}

 .cjk-testimonials-decor {
    position:absolute;
    z-index:3;
    pointer-events:none;
    height:auto;
    max-width:none
}

 .cjk-testimonials-decor-left {
    width:190px;
    top:-80px;
    left:-14px
}

 .cjk-testimonials-decor-right {
    width:155px;
    top:-85px;
    right:-10px
}

 @media(max-width:900px) {
    .cjk-testimonials-inner {
        width:min(100% - 90px,760px)
    }
    .cjk-testimonial-card {
        flex-basis:calc((100% - 12px)/2)
    }
    .cjk-testimonials-decor-left {
        width:135px
    }
    .cjk-testimonials-decor-right {
        width:110px
    }}

 @media(max-width:540px) {
    .cjk-testimonials-figma {
        padding:32px 0 24px
    }
    .cjk-testimonials-inner {
        width:min(100% - 42px,430px)
    }
    .cjk-testimonials-inner h2 {
        font-size:23px
    }
    .cjk-testimonial-card {
        flex-basis:100%;
        min-height:170px
    }
    .cjk-testimonials-decor-left {
        width:90px;
        left:-15px;
        top:-20px
    }
    .cjk-testimonials-decor-right {
        width:80px;
        right:-12px;
        top:-45px
    }}

 @media(prefers-reduced-motion:reduce) {
    .cjk-testimonials-track {
        transition:none
    }}



/* Testimonial card layout: portrait, then name + rating, then review text. */ .cjk-testimonials-figma .cjk-testimonial-card {
    align-items:flex-start;
    justify-content:center;
}

 .cjk-testimonials-figma .cjk-testimonial-top {
    display:block;
    margin-bottom:4px;
}

 .cjk-testimonials-figma .cjk-testimonial-avatar {
    display:block;
    width:34px;
    height:34px;
    object-fit:cover;
    border-radius:50%;
    border:2px solid #476f55;
    background:#e9dfd0;
}

 .cjk-testimonials-figma .cjk-testimonial-meta {
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:4px;
    margin-bottom:4px;
}

 .cjk-testimonials-figma .cjk-testimonial-meta strong {
    font-size:13px;
    line-height:1.2;
    color:#111;
}

 .cjk-testimonials-figma .cjk-testimonial-stars {
    display:inline;
    color:#f2a61c;
    font-size:13px;
    letter-spacing:.5px;
    line-height:1.2;
}




/* Step 9: Festive Puffer Jacket — standalone final promotional banner. */ .cjk-puffer-final {
    position:relative;
    isolation:isolate;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:245px;
    background:#fff;
    color:#111;
    overflow:hidden;
    padding:22px 265px;
    box-sizing:border-box;
    text-align:center
}

 .cjk-puffer-final-content {
    position:relative;
    z-index:2;
    width:min(100%,520px);
    display:flex;
    align-items:center;
    flex-direction:column;
    justify-content:center
}

 .cjk-puffer-final-label {
    display:inline-block;
    background:#304b2f;
    color:#fff;
    font-size:13px;
    font-weight:600;
    line-height:1.2;
    padding:8px 32px;
    border-radius:2px;
    margin-bottom:7px
}

 .cjk-puffer-final h2 {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:700;
    font-size:clamp(26px,2.5vw,36px);
    line-height:1.1;
    margin:0 0 5px;
    color:#111
}

 .cjk-puffer-final p {
    font-size:13px;
    line-height:1.4;
    margin:0 0 14px;
    max-width:460px;
    color:#111
}

 .cjk-puffer-final-button {
    display:inline-block;
    background:#920d16;
    color:#fff!important;
    font-size:13px;
    font-weight:600;
    text-decoration:none!important;
    border-radius:2px;
    padding:10px 46px;
    line-height:1.1;
    min-width:170px;
    box-sizing:border-box
}

 .cjk-puffer-final-button:hover {
    background:#6d0710;
    color:#fff
}

 .cjk-puffer-final-left,.cjk-puffer-final-right {
    position:absolute;
    z-index:1;
    bottom:0;
    object-fit:contain;
    object-position:bottom;
    max-width:none;
    pointer-events:none;
    height:auto
}

 .cjk-puffer-final-left {
    left:0;
    width:clamp(190px,25vw,355px)
}

 .cjk-puffer-final-right {
    right:0;
    width:clamp(210px,27vw,390px)
}

 @media(max-width:900px) {
    .cjk-puffer-final {
        min-height:200px;
        padding:18px 185px
    }
    .cjk-puffer-final-left {
        width:210px;
        left:-15px
    }
    .cjk-puffer-final-right {
        width:235px;
        right:-15px
    }
    .cjk-puffer-final h2 {
        font-size:27px
    }
    .cjk-puffer-final p {
        font-size:12px
    }}

 @media(max-width:620px) {
    .cjk-puffer-final {
        min-height:270px;
        padding:25px 90px 105px
    }
    .cjk-puffer-final-content {
        width:100%
    }
    .cjk-puffer-final-label {
        font-size:11px;
        padding:6px 15px
    }
    .cjk-puffer-final h2 {
        font-size:23px
    }
    .cjk-puffer-final p {
        font-size:11px
    }
    .cjk-puffer-final-button {
        padding:9px 18px;
        min-width:120px;
        font-size:12px
    }
    .cjk-puffer-final-left {
        width:135px;
        left:-24px
    }
    .cjk-puffer-final-right {
        width:145px;
        right:-24px
    }}

 @media(max-width:390px) {
    .cjk-puffer-final {
        padding-left:60px;
        padding-right:60px
    }
    .cjk-puffer-final-left {
        width:112px
    }
    .cjk-puffer-final-right {
        width:115px
    }}




/* Final fixes: full-bleed hero and complete puffer cutout images. */ .cjk-figma-hero {
     background-position:center center !important;
     background-size:100% 100% !important;
}

 .cjk-puffer-final {
     min-height:245px;
     padding-top:18px;
     padding-bottom:18px;
}

 .cjk-puffer-final-left,.cjk-puffer-final-right {
     bottom:0 !important;
     height:100% !important;
     width:auto !important;
     max-height:100% !important;
     object-fit:contain !important;
     object-position:bottom center !important;
}

 .cjk-puffer-final-left {
     left: 90px !important;
	 bottom: -1px !important;
}

 .cjk-puffer-final-right {
     right: 90px !important;
	 bottom: -12px !important;
}

 @media (min-width:901px) {
     .cjk-puffer-final {
         padding-left:28%;
        padding-right:29%;
    }}

 @media (min-width:621px) and (max-width:900px) {
     .cjk-puffer-final {
         padding-left:25%;
        padding-right:28%;
         min-height:210px;
    }}

 @media (max-width:620px) {
     .cjk-puffer-final {
         min-height:300px;
         padding:20px 70px 128px;
    }
     .cjk-puffer-final-left,.cjk-puffer-final-right {
         height:125px !important;
         width:auto !important;
         max-height:125px !important;
    }
     .cjk-puffer-final-left {
         left:0 !important;
    }
     .cjk-puffer-final-right {
         right:0 !important;
    }}

/* Prevent page-level horizontal scrolling */
html {
    overflow-x: hidden;
}

body {
    overflow-x: visible;
}

/* Keep the trousers models visible */
.cjk-trousers-offer {
    overflow: visible;
}

.cjk-trousers-offer-inner {
    overflow: visible;
}

.cjk-trousers-models {
    visibility: visible;
    opacity: 1;
}

/* Hide overlapping decorations on tablet and mobile */
@media (max-width: 991px) {
    .cjk-hero-edge,
    .cjk-customer-decor,
    .cjk-collection-decor,
    .cjk-why-decor,
    .cjk-testimonials-decor {
        display: none !important;
    }
}

/* Mobile navigation button fix */
@media (max-width: 991px) {
    .cjk-site-header .menu-toggle {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        cursor: pointer;
        position: relative;
        z-index: 100001;
    }

    .cjk-site-header .cjk-main-nav {
        display: none !important;
    }

    .cjk-site-header .cjk-main-nav.is-open {
        display: block !important;
    }
}
/* Mobile navigation dropdown fix */
@media (max-width: 991px) {

    .cjk-site-header {
        position: relative;
        z-index: 99999;
    }

    .cjk-site-header .cjk-header-inner {
        position: relative;
    }

    .cjk-site-header .cjk-main-nav.is-open {
        display: block !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: auto !important;
        background: #ffffff !important;
        z-index: 99999 !important;
        padding: 20px !important;
        box-sizing: border-box !important;
    }

    .cjk-site-header .cjk-main-nav.is-open .primary-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
        width: 100% !important;
        height: auto !important;
    }
}
/* Smooth Mobile Menu Open & Close */
@media (max-width: 991px) {

    .cjk-site-header .cjk-main-nav,
    .cjk-site-header .cjk-main-nav.is-open {
        display: block !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box !important;
        background: #ffffff !important;
        padding: 20px !important;
        z-index: 99999 !important;
    }

    /* Closed */
    .cjk-site-header .cjk-main-nav {
        opacity: 0;
        visibility: hidden;
        transform: translateY(-12px);
        pointer-events: none;

        transition:
            opacity 0.3s ease,
            transform 0.3s ease,
            visibility 0s linear 0.3s;
    }

    /* Open */
    .cjk-site-header .cjk-main-nav.is-open {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;

        transition:
            opacity 0.3s ease,
            transform 0.3s ease,
            visibility 0s;
    }

    .cjk-site-header .cjk-main-nav .primary-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cjk-site-header .cjk-main-nav,
    .cjk-site-header .cjk-main-nav.is-open {
        transition: none !important;
    }
}
/* Product-card rating: image -> stars -> product title -> price */
.cjk-popular-card-info .cjk-card-stars,
.cjk-collection-info .cjk-card-stars {
    position: relative;
    display: block !important;
    width: max-content;
    height: 22px;
    margin: 9px 0 7px;
    font-family: Arial, sans-serif;
    font-size: 19px;
    line-height: 22px;
    letter-spacing: 2px;
    white-space: nowrap;
}
.cjk-card-stars-base {
    display: block;
    color: #c9c9c9;
}
.cjk-card-stars-fill {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    overflow: hidden;
    color: #f5a623;
    white-space: nowrap;
    height: 22px;
}

/* Make the star rating link clickable and keyboard accessible. */
a.cjk-card-stars {
    cursor: pointer;
    text-decoration: none !important;
    color: inherit;
    z-index: 1;
}
.cjk-card-stars-hover {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: var(--cjk-hover-width, 0%);
    height: 22px;
    overflow: hidden;
    white-space: nowrap;
    color: #f5a623;
    pointer-events: none;
    opacity: 0;
}
a.cjk-card-stars.is-hovering .cjk-card-stars-fill { opacity: 0; }
a.cjk-card-stars.is-hovering .cjk-card-stars-hover { opacity: 1; }
a.cjk-card-stars:focus-visible .cjk-card-stars-base { color: #e4ad53; }
a.cjk-card-stars:focus-visible {
    outline: 2px solid #b77c13;
    outline-offset: 3px;
}

.cjk-card-stars-base, .cjk-card-stars-fill { pointer-events: none; }


/* ==========================================
   CHRISTMAS JACKETS - CATEGORY PAGE DESIGN
   ========================================== */

body.tax-product_cat .woo-content,
body.post-type-archive-product .woo-content {
    max-width: 100%;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    padding-top: 80px;
}

/* Category title / banner */
body.tax-product_cat .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header {
    background: #003d32;
    padding: 55px 20px;
    text-align: center;
    margin-bottom: 40px;
}

body.tax-product_cat .woocommerce-products-header__title,
body.post-type-archive-product .woocommerce-products-header__title {
    color: #fff;
    font-size: clamp(28px, 4vw, 44px);
    font-weight: 700;
    margin: 0;
}

/* Breadcrumbs */
body.tax-product_cat .woocommerce-breadcrumb,
body.post-type-archive-product .woocommerce-breadcrumb {
    padding: 20px 5%;
    margin: 0;
    font-size: 14px;
    color: #666;
}

body.tax-product_cat .woocommerce-breadcrumb a,
body.post-type-archive-product .woocommerce-breadcrumb a {
    color: #003d32;
    text-decoration: none;
}

/* Product results and sorting */
body.tax-product_cat .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count {
    margin: 0 0 25px 5%;
    color: #555;
    font-size: 14px;
}

body.tax-product_cat .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering {
    margin: 0 5% 25px 0;
}

body.tax-product_cat .woocommerce-ordering select,
body.post-type-archive-product .woocommerce-ordering select {
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    padding: 12px 15px;
    color: #003d32;
    font-size: 14px;
}

/* Product grid */
body.tax-product_cat ul.products,
body.post-type-archive-product ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px;
    padding: 0 5%;
    margin: 0 auto 60px;
    list-style: none;
    clear: both;
}

body.tax-product_cat ul.products::before,
body.tax-product_cat ul.products::after,
body.post-type-archive-product ul.products::before,
body.post-type-archive-product ul.products::after {
    display: none;
}

/* Product cards */
body.tax-product_cat ul.products li.product,
body.post-type-archive-product ul.products li.product {
    float: none;
    width: 100%;
    margin: 0;
    padding: 12px 12px 18px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 14px;
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease;
}

body.tax-product_cat ul.products li.product:hover,
body.post-type-archive-product ul.products li.product:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 61, 50, .12);
}

/* Product images */
body.tax-product_cat ul.products li.product img,
body.post-type-archive-product ul.products li.product img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border-radius: 9px;
    background: #f8f8f8;
    margin-bottom: 14px;
}

/* Product titles */
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title {
    color: #172b25;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    min-height: 48px;
    margin: 8px 0;
}

/* Prices */
body.tax-product_cat ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price {
    color: #003d32;
    font-size: 17px;
    font-weight: 700;
    margin: 12px 0 18px;
}

body.tax-product_cat ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del {
    color: #999;
    font-size: 13px;
}

/* Christmas theme Add to Cart */
body.tax-product_cat ul.products li.product .button,
body.post-type-archive-product ul.products li.product .button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    padding: 12px 15px;
    margin: 12px 0 0;
    background: #003d32;
    color: #fff;
    border: 1px solid #003d32;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    transition: background .2s ease, color .2s ease;
}

body.tax-product_cat ul.products li.product .button:hover,
body.post-type-archive-product ul.products li.product .button:hover {
    background: #8b1115;
    border-color: #8b1115;
    color: #fff;
}

/* Sale badge */
body.tax-product_cat ul.products li.product .onsale,
body.post-type-archive-product ul.products li.product .onsale {
    background: #8b1115;
    color: #fff;
    border-radius: 6px;
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 700;
}

/* Pagination */
body.tax-product_cat .woocommerce-pagination,
body.post-type-archive-product .woocommerce-pagination {
    margin: 20px auto 55px;
    text-align: center;
}

/* Responsive */
@media (max-width: 1024px) {
    body.tax-product_cat ul.products,
    body.post-type-archive-product ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.tax-product_cat ul.products,
    body.post-type-archive-product ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 0 15px;
    }

    body.tax-product_cat ul.products li.product,
    body.post-type-archive-product ul.products li.product {
        padding: 9px;
    }

    body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
    body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title {
        font-size: 13px;
        min-height: 40px;
    }

    body.tax-product_cat ul.products li.product .button,
    body.post-type-archive-product ul.products li.product .button {
        font-size: 12px;
        padding: 10px 5px;
    }

    body.tax-product_cat .woocommerce-products-header,
    body.post-type-archive-product .woocommerce-products-header {
        padding: 35px 15px;
    }
}

/* New Arrivals and all WooCommerce category banners */
body.tax-product_cat .ic-category-banner {
    background: #003d32;
    padding: 55px 20px;
    text-align: center;
    color: #fff;
}

body.tax-product_cat .ic-category-banner h1 {
    color: #fff !important;
    font-size: clamp(28px, 4vw, 40px);
    font-weight: 700;
    margin: 0 0 12px;
}

body.tax-product_cat .ic-category-breadcrumb {
    color: #fff;
    font-size: 14px;
}

body.tax-product_cat .ic-category-breadcrumb a {
    color: #fff;
    text-decoration: none;
}

body.tax-product_cat .ic-category-breadcrumb span {
    color: #d6c36b;
    margin: 0 9px;
}

/* Hide original category heading and breadcrumbs */
body.tax-product_cat .woocommerce-products-header,
body.tax-product_cat .woocommerce-breadcrumb {
    display: none !important;
}

@media (max-width: 767px) {
    body.tax-product_cat .ic-category-banner {
        padding: 40px 15px;
    }
}
/* Hide duplicate category title below green banner */
body.tax-product_cat .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header__title,
body.tax-product_cat h1.page-title {
    display: none !important;
}

/* ==========================================
   RELATED PRODUCTS - SAME AS NEW ARRIVALS
========================================== */

/* Four-column layout */
body.single-product section.related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product section.related.products ul.products::before,
body.single-product section.related.products ul.products::after {
    display: none !important;
}

/* Product cards */
body.single-product section.related.products ul.products li.product {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    clear: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px !important;
    background: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 15px !important;
    box-sizing: border-box !important;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

/* Whole card hover */
body.single-product section.related.products ul.products li.product:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
}

/* Product image */
body.single-product section.related.products ul.products li.product a img {
    display: block;
    width: 100% !important;
    height: 260px !important;
    object-fit: cover !important;
    border-radius: 10px !important;
    margin: 0 0 15px !important;
}

/* Product title */
body.single-product section.related.products ul.products li.product
.woocommerce-loop-product__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    color: #18362d !important;
    min-height: 48px;
    margin: 0 !important;
}

/* Price */
body.single-product section.related.products ul.products li.product .price {
    display: block !important;
    margin: 12px 0 18px !important;
    color: #003d32 !important;
    font-weight: 700 !important;
}

/* Add to cart button */
body.single-product section.related.products ul.products li.product .button {
    display: block !important;
    width: 100% !important;
    margin-top: auto !important;
    padding: 15px 12px !important;
    background: #003d32 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    transform: none !important;
    transition: background-color 0.3s ease !important;
}

/* Only button hover changes button color */
body.single-product section.related.products ul.products
li.product .button:hover,
body.single-product section.related.products ul.products
li.product .button:focus-visible {
    background: #850d16 !important;
    color: #fff !important;
    transform: none !important;
}

/* Related product sale badge */
body.single-product section.related.products ul.products
li.product .onsale {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    z-index: 5 !important;
    background: #850d16 !important;
    color: #fff !important;
    border-radius: 0 0 0 6px !important;
    padding: 9px 12px !important;
    margin: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    width: auto !important;
    height: auto !important;
    line-height: 1.3 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

/* Main single product sale badge */
body.single-product div.product > .onsale {
    position: absolute !important;
    top: 0 !important;
    left: 140px !important;
    right: auto !important;
    z-index: 10 !important;
    background: #850d16 !important;
    color: #fff !important;
    border-radius: 0 0 6px 0 !important;
    padding: 9px 12px !important;
    margin: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    line-height: 1.3 !important;
}

/* Tablet */
@media (max-width: 991px) {
    body.single-product section.related.products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Mobile */
@media (max-width: 575px) {
    body.single-product section.related.products ul.products {
        gap: 12px !important;
    }
	body.single-product div.product > .onsale{
	left: 88px !important;
}
    body.single-product section.related.products ul.products li.product {
        padding: 9px !important;
    }

    body.single-product section.related.products ul.products li.product a img {
        height: 180px !important;
    }

    body.single-product section.related.products ul.products
    li.product .woocommerce-loop-product__title {
        font-size: 14px !important;
    }

    body.single-product section.related.products ul.products
    li.product .button {
        padding: 15px 8px !important;
        font-size: 12px !important;
    }
}

/* Category SEO content below product grid and pagination */
.cjk-category-bottom-content {
    clear: both;
    width: 100%;
    padding: 55px 0 65px;
}

.cjk-category-bottom-inner {
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

.cjk-category-bottom-inner h2 {
    font-size: 28px;
    font-weight: 700;
    margin: 35px 0 18px;
    color: #111;
}

.cjk-category-bottom-inner h3 {
    font-size: 23px;
    font-weight: 700;
    margin: 28px 0 15px;
    color: #111;
}

.cjk-category-bottom-inner p {
    font-size: 15px;
    line-height: 1.9;
    margin-bottom: 20px;
    color: #333;
}

.cjk-category-bottom-inner img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 25px auto;
}

@media (max-width: 767px) {
    .cjk-category-bottom-content {
        padding: 35px 0 45px;
    }

    .cjk-category-bottom-inner h2 {
        font-size: 23px;
    }
}

/* Single product breadcrumbs */
.single-product .cjk-single-breadcrumb {
    margin-bottom: 16px;
    font-size: 14px;
    color: #666;
}

.single-product .cjk-single-breadcrumb a {
    color: #003d32;
    text-decoration: none;
}

.single-product .cjk-single-breadcrumb a:hover {
    color: #850d16;
}
/* Single product page top spacing */
body.single-product main.woo-content {
    padding-top: 80px !important;
}

/* Homepage collection products image zoom */
.cjk-collection-photo {
    overflow: hidden;
}

.cjk-collection-photo .cjk-collection-image {
    transition: transform 0.4s ease;
}

.cjk-collection-card:hover .cjk-collection-image {
    transform: scale(1.08);
}

/* Replace Add to Cart with View Cart after adding product */
.woocommerce ul.products li.product {
    position: relative;
}

.woocommerce ul.products li.product a.added_to_cart {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    padding: 12px 20px;
    background: #003d32;
    color: #fff !important;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    box-sizing: border-box;
}

.woocommerce ul.products li.product a.added_to_cart:hover {
    background: #850d16;
    color: #fff !important;
}

/* Hide original button once View Cart appears */
.woocommerce ul.products li.product a.add_to_cart_button.added {
    display: none !important;
}
/* Premium Announcement Bar Animation */

.cjk-announcement {
    position: relative;
    height: 44px;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: #002e25;
}

.cjk-announcement-track {
    display: flex;
    align-items: center;
    width: max-content;
    min-width: 100%;
    animation: cjkAnnouncementMove 30s linear infinite;
}

.cjk-announcement-message {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: #fff;
}

.cjk-announcement-divider {
    display: inline-block;
    margin: 0 28px;
    color: #d9b35b;
    font-size: 16px;
    font-weight: 400;
}

@keyframes cjkAnnouncementMove {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100vw);
    }
}

@media (max-width: 700px) {
    .cjk-announcement {
        height: 40px;
        min-height: 40px;
    }

    .cjk-announcement-message {
        font-size: 11px;
        letter-spacing: 0.3px;
    }

    .cjk-announcement-divider {
        margin: 0 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cjk-announcement-track {
        animation: none;
    }
}
/* Seamless Infinite Announcement Bar */

.cjk-announcement {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 44px;
    min-height: 44px;
    padding: 0;
    overflow: hidden;
    background: #002e25;
}

.cjk-announcement-track {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: max-content;
    min-width: 0;
    gap: 0;
    animation: cjkSeamlessMarquee 35s linear infinite;
    will-change: transform;
}

.cjk-announcement-group {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: max-content;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.4px;
    color: #fff;
}

.cjk-announcement-divider {
    display: inline-block;
    flex: 0 0 auto;
    margin: 0 30px;
    color: #d9b35b;
    font-size: 16px;
    font-weight: 400;
}

@keyframes cjkSeamlessMarquee {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-33.333333%, 0, 0);
    }
}

@media (max-width: 700px) {
    .cjk-announcement {
        height: 40px;
        min-height: 40px;
    }

    .cjk-announcement-group {
        font-size: 11px;
    }

    .cjk-announcement-divider {
        margin: 0 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cjk-announcement-track {
        animation: none;
    }
}
/* Footer Links - Premium Hover Effect */

.cjk-site-footer .cjk-footer-col > a {
    display: block;
    width: fit-content;
    color: #ffffff;
    text-decoration: none !important;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.cjk-site-footer .cjk-footer-col > a:hover {
    color: #d9b35b !important;
    text-decoration: none !important;
    transform: translateX(6px);
}

.cjk-site-footer .cjk-footer-col > a:focus-visible {
    color: #d9b35b !important;
    text-decoration: none !important;
    outline: 1px solid #d9b35b;
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .cjk-site-footer .cjk-footer-col > a {
        transition: none;
    }

    .cjk-site-footer .cjk-footer-col > a:hover {
        transform: none;
    }
}

/* Mobile category product grid */
@media (max-width: 767px) {

    body.tax-product_cat ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.tax-product_cat ul.products::before,
    body.tax-product_cat ul.products::after {
        display: none !important;
    }

    body.tax-product_cat ul.products li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        float: none !important;
        clear: none !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat ul.products li.product a img {
        display: block;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 3 / 4;
        object-fit: cover;
    }

    body.tax-product_cat ul.products li.product .woocommerce-loop-product__title {
        font-size: 13px !important;
        line-height: 1.5 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body.tax-product_cat ul.products li.product .button {
        font-size: 12px !important;
        white-space: normal;
    }
	body.single-product main.woo-content{
		padding-top: 30px !important;
	}
}

/* Mobile - Result count and sorting in one row */
@media (max-width: 767px) {

    body.tax-product_cat .woocommerce-result-count {
        float: left !important;
        clear: none !important;
        display: flex !important;
        align-items: center !important;
        width: 42% !important;
        height: 46px !important;
        margin: 0 0 22px !important;
        padding: 0 !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat .woocommerce-ordering {
        float: right !important;
        clear: none !important;
        display: flex !important;
        align-items: center !important;
        width: 55% !important;
        height: 46px !important;
        margin: 0 0 22px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat .woocommerce-ordering select {
        width: 100% !important;
        height: 46px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat ul.products {
        clear: both !important;
    }
}
/* Final mobile category toolbar alignment */
@media (max-width: 767px) {

    body.tax-product_cat .woocommerce-result-count {
        width: 40% !important;
        padding-left: 12px !important;
        margin: 0 0 22px !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat .woocommerce-ordering {
        width: 52% !important;
        margin: 0 12px 22px 0 !important;
        box-sizing: border-box !important;
    }

    body.tax-product_cat .woocommerce-ordering select {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* Sticky Header - Mobile & Tablet Only */
@media (max-width: 991px) {
    .cjk-site-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 99999 !important;
        width: 100%;
    }
}


/* FIX: Homepage customer video autoplay carousel */

.cjk-customer-video-section .cjk-autoplay-video-slider {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

.cjk-customer-video-section .cjk-autoplay-video-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: max-content !important;
    max-width: none !important;
    animation: cjkVideoScrollFix 25s linear infinite !important;
}

.cjk-customer-video-section .cjk-autoplay-video-card {
    display: block !important;
    flex: 0 0 calc((100vw - 110px) / 6) !important;
    width: calc((100vw - 110px) / 6) !important;
    max-width: none !important;
    min-width: 0 !important;
    aspect-ratio: 9 / 16 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #180404;
}

.cjk-customer-video-section .cjk-autoplay-video-card video {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
}

@keyframes cjkInfiniteVideos {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(calc(-50% - 6px));
    }
}

@media (max-width: 991px) {
    .cjk-customer-video-section .cjk-autoplay-video-card {
        flex-basis: calc((100vw - 60px) / 3) !important;
        width: calc((100vw - 60px) / 3) !important;
    }
}

@media (max-width: 600px) {
    .cjk-customer-video-section .cjk-autoplay-video-card {
        flex-basis: calc((100vw - 36px) / 2) !important;
        width: calc((100vw - 36px) / 2) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cjk-customer-video-section .cjk-autoplay-video-track {
        animation: none !important;
    }
}

/* Mouse dragging for homepage sliders */

.cjk-popular-track,
.cjk-testimonials-window,
.cjk-autoplay-video-slider {
    cursor: grab;
}

.cjk-popular-track:active,
.cjk-testimonials-window:active,
.cjk-autoplay-video-slider:active {
    cursor: grabbing;
}

.cjk-popular-track img,
.cjk-testimonials-window img,
.cjk-autoplay-video-slider video {
    user-select: none;
    -webkit-user-drag: none;
}
/* Video slider - remove drag cursor */
.cjk-customer-video-section .cjk-autoplay-video-slider,
.cjk-customer-video-section .cjk-autoplay-video-slider *,
.cjk-customer-video-section .cjk-autoplay-video-slider:active {
    cursor: default !important;
}

/* Continuous video slider - seamless infinite loop */

.cjk-customer-video-section .cjk-autoplay-video-track {
    animation: cjkInfiniteVideos 25s linear infinite !important;
    animation-play-state: running !important;
}

.cjk-customer-video-section .cjk-autoplay-video-slider:hover .cjk-autoplay-video-track {
    animation-play-state: running !important;
}
/* ===== HERO BACKGROUND + SEPARATE MODELS ===== */

.cjk-figma-hero {
    position: relative;
    isolation: isolate;
    background-image: url('https://darksalmon-tapir-348657.hostingersite.com/wp-content/uploads/2026/10/christmas-bg.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

/* Models image on right */
.cjk-figma-hero .cjk-hero-models {
    position: absolute;
    right: 8%;
    bottom: 0;
    width: 49%;
    height: 96%;
    object-fit: contain;
    object-position: center bottom;
    z-index: 1;
    pointer-events: none;
}

/* Text above models */
.cjk-figma-hero .cjk-figma-hero-inner {
    position: relative;
    z-index: 2;
}

/* Tablet */
@media (max-width: 1000px) {
    .cjk-figma-hero .cjk-hero-models {
        right: 2%;
        width: 53%;
        height: 90%;
    }
}

/* Mobile */
@media (max-width: 700px) {
    .cjk-figma-hero .cjk-hero-models {
        right: -2%;
        width: 49%;
        height: 75%;
    }

    .cjk-figma-hero {
        background-position: center center;
        background-size: cover;
    }
}
/* Checkout placeholders */
.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: #777 !important;
    opacity: 1 !important;
}

.cjk-search-open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.cjk-search-open svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.cjk-search-popup[hidden] {
    display: none !important;
}

.cjk-search-popup {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.cjk-search-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}


.cjk-search-dialog {
    position: relative;
    z-index: 1;
    width: min(600px, 100%);
    padding: 32px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
}

.cjk-search-dialog h2 {
    margin: 0 40px 20px 0;
}

.cjk-search-close {
    position: absolute;
    top: 10px;
    right: 14px;
    border: 0;
    background: transparent;
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
}

.cjk-search-form {
    display: flex;
    gap: 10px;
}

.cjk-search-form input[type="search"] {
    flex: 1;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.cjk-search-form button {
    padding: 12px 20px;
    border: 0;
    border-radius: 5px;
    background: #9f1830;
    color: #fff;
    cursor: pointer;
}

body.cjk-search-open {
    overflow: hidden;
}

@media (max-width: 480px) {
    .cjk-search-dialog {
        padding: 26px 18px;
    }

    .cjk-search-form {
        flex-direction: column;
    }
}
.cjk-site-header.is-scroll-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10000;
    width: 100%;
}

body.admin-bar .cjk-site-header.is-scroll-sticky {
    top: 32px;
}

@media screen and (max-width: 782px) {
    body.admin-bar .cjk-site-header.is-scroll-sticky {
        top: 46px;
    }
}

/* CJK - Compact variation layout */

body.single-product form.variations_form
.cjk-custom-options {
    margin-bottom: 0 !important;
}

body.single-product form.variations_form
.cjk-option-group:last-of-type {
    margin-bottom: 12px !important;
}

body.single-product form.variations_form
.cjk-clear-options {
    margin-bottom: 0 !important;
}

body.single-product form.variations_form
table.variations {
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product form.variations_form
.single_variation_wrap {
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product form.variations_form
.woocommerce-variation {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

body.single-product form.variations_form
.woocommerce-variation-add-to-cart {
    margin-top: 12px !important;
}

/* ==========================================
   CJK - PREMIUM PRODUCT REVIEWS FORM
========================================== */

body.single-product #reviews {
    max-width: 850px;
    padding: 20px 0 35px;
}

/* Reviews heading */
body.single-product #reviews #comments h2,
body.single-product #reviews #review_form_wrapper h3,
body.single-product #reviews .comment-reply-title {
    color: #003d32;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 20px;
}

/* No reviews message */
body.single-product #reviews .woocommerce-noreviews {
    font-size: 15px;
    color: #66736d;
    margin-bottom: 28px;
}

/* Review form card */
body.single-product #review_form_wrapper {
    background: #f7faf8;
    border: 1px solid #e0e9e3;
    border-radius: 14px;
    padding: 28px;
    margin-top: 25px;
}

/* Form text */
body.single-product #review_form p {
    margin: 0 0 20px;
}

body.single-product #review_form label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #20362d;
    margin-bottom: 9px;
}

/* Rating stars */
body.single-product #review_form .comment-form-rating {
    margin-bottom: 24px;
}

body.single-product #review_form .stars {
    display: block;
    margin: 10px 0 0;
}

body.single-product #review_form .stars a {
    color: #e5a91a;
    font-size: 22px;
}

/* Textarea and input fields */
body.single-product #review_form textarea,
body.single-product #review_form input[type="text"],
body.single-product #review_form input[type="email"] {
    display: block;
    width: 100%;
    max-width: 100%;
    border: 1px solid #d6e2da;
    border-radius: 8px;
    background: #fff;
    padding: 13px 15px;
    color: #20362d;
    font-size: 14px;
    line-height: 1.5;
    outline: none;
    box-sizing: border-box;
}

body.single-product #review_form textarea {
    min-height: 145px;
    resize: vertical;
}

body.single-product #review_form textarea:focus,
body.single-product #review_form input[type="text"]:focus,
body.single-product #review_form input[type="email"]:focus {
    border-color: #003d32;
    box-shadow: 0 0 0 3px rgba(0, 61, 50, 0.08);
}

/* Checkbox */
body.single-product #review_form .comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

body.single-product #review_form .comment-form-cookies-consent input {
    margin-top: 4px;
    flex-shrink: 0;
}

body.single-product #review_form .comment-form-cookies-consent label {
    margin: 0;
    font-weight: 400;
    line-height: 1.5;
}

/* Submit button */
body.single-product #review_form input[type="submit"],
body.single-product #review_form .submit {
    display: inline-block;
    background: #003d32 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 30px !important;
    padding: 14px 35px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: background 0.2s ease;
}

body.single-product #review_form input[type="submit"]:hover,
body.single-product #review_form .submit:hover {
    background: #005a49 !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.single-product #review_form_wrapper {
        padding: 20px 16px;
        border-radius: 10px;
    }

    body.single-product #reviews #comments h2,
    body.single-product #reviews .comment-reply-title {
        font-size: 21px;
    }

    body.single-product #review_form .submit {
        width: 100%;
        text-align: center;
    }
}

/* Category content - reduce top gap */
body.tax-product_cat .cjk-category-top-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove extra gap inside content */
body.tax-product_cat .cjk-category-top-content h2:first-child,
body.tax-product_cat .cjk-category-top-content h3:first-child,
body.tax-product_cat .cjk-category-top-content p:first-child {
    margin-top: 0 !important;
}

/* Pagination - bottom spacing */
body.tax-product_cat .woocommerce-pagination {
    margin-bottom: 50px !important;
}
.cjk-footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.cjk-footer-menu li {
    margin: 0 0 10px;
    padding: 0;
}

.cjk-footer-menu a {
    text-decoration: none;
}


/* CJK - Unified Product Card Layout */

/* Homepage custom cards */
.cjk-popular-card,
.cjk-collection-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    min-width: 0;
}

.cjk-popular-card-info,
.cjk-collection-info {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    min-width: 0;
}

/* Same titles on homepage and WooCommerce pages */
.cjk-popular-name,
.cjk-collection-name,
.woocommerce ul.products li.product
.woocommerce-loop-product__title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: clip !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    color: #18362d !important;

    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
}

/* Same price spacing */
.cjk-popular-price,
.cjk-collection-price {
    margin-top: auto !important;
    padding-top: 10px;
    min-height: 35px;
}

/* WooCommerce product cards */
.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    min-width: 0;
}

/* Keep price and button aligned */
.woocommerce ul.products li.product .price {
    margin-top: auto !important;
    min-height: 25px;
}

.woocommerce ul.products li.product > .button {
    margin-top: 12px !important;
}

/* Star rating spacing */
.cjk-popular-card-info .cjk-card-stars,
.cjk-collection-info .cjk-card-stars {
    flex-shrink: 0;
    margin: 8px 0 !important;
}

.woocommerce ul.products li.product .star-rating {
    float: none !important;
    margin: 8px 0 !important;
    flex-shrink: 0;
}

/* Mobile */
@media (max-width: 600px) {
    .cjk-popular-name,
    .cjk-collection-name,
    .woocommerce ul.products li.product
    .woocommerce-loop-product__title {
        font-size: 12px !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
    }
}


/* CJK - Related Products Homepage Style */

body.single-product section.related.products
ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

/* Same title as homepage */
body.single-product section.related.products
ul.products li.product .woocommerce-loop-product__title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2;
    overflow: hidden !important;
    white-space: normal !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    color: #18362d !important;

    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
}

/* Stars above title */
body.single-product section.related.products
ul.products li.product .star-rating {
    float: none !important;
    display: block !important;
    margin: 8px 0 !important;
    color: #f5a623 !important;
}

/* Price aligned */
body.single-product section.related.products
ul.products li.product .price {
    margin-top: auto !important;
    margin-bottom: 12px !important;
}

/* Buttons aligned */
body.single-product section.related.products
ul.products li.product > .button {
    margin-top: 0 !important;
    min-height: 46px;
}

/* Mobile */
@media (max-width: 575px) {
    body.single-product section.related.products
    ul.products li.product .woocommerce-loop-product__title {
        font-size: 12px !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
    }
}


/* CJK - Hide duplicate single product rating */

body.single-product div.product
.woocommerce-product-rating {
    display: none !important;
}


/* CJK - Interactive Related Product Stars */

body.single-product section.related.products
.cjk-related-stars {
    position: relative;
    display: block;
    width: max-content;
    height: 22px;
    margin: 8px 0;
    font-family: Arial, sans-serif;
    font-size: 19px;
    line-height: 22px;
    letter-spacing: 2px;
    white-space: nowrap;
    text-decoration: none !important;
    cursor: pointer;
    z-index: 2;
}

body.single-product section.related.products
.cjk-related-stars-base {
    display: block;
    color: #c9c9c9;
}

body.single-product section.related.products
.cjk-related-stars-fill,
body.single-product section.related.products
.cjk-related-stars-hover {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 22px;
    overflow: hidden;
    white-space: nowrap;
    color: #f5a623;
    pointer-events: none;
}

body.single-product section.related.products
.cjk-related-stars-hover {
    width: 0;
    opacity: 0;
}

body.single-product section.related.products
.cjk-related-stars:hover .cjk-related-stars-hover,
body.single-product section.related.products
.cjk-related-stars:focus-visible .cjk-related-stars-hover {
    width: 100%;
    opacity: 1;
}

body.single-product section.related.products
.cjk-related-stars:focus-visible {
    outline: 2px solid #f5a623;
    outline-offset: 3px;
}

/* CJK - Reduce Stars and Title Gap */

body.single-product section.related.products
.cjk-related-stars {
    margin-top: 4px !important;
    margin-bottom: 3px !important;
}

body.single-product section.related.products
.woocommerce-loop-product__title {
    margin-top: 0 !important;
}

#cjk-search-title {
    display: block;
    font-size: 24px;
    font-weight: 700;
	margin-bottom: 20px;
}

/* CJK - Restore Original Category Banner Design */

.ic-category-banner .ic-category-banner-title {
    display: block !important;
    margin: 0 0 10px !important;
    padding: 0 !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 40px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    color: #ffffff !important;
    text-align: center !important;
}

/* Breadcrumb */
.ic-category-banner .ic-category-breadcrumb {
    margin-top: 0 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* Mobile */
@media (max-width: 600px) {
    .ic-category-banner .ic-category-banner-title {
        font-size: 30px !important;
    }
}


/* CJK - Shop Banner Same as New Arrivals */

body.woocommerce-shop .ic-category-banner {
    background: #003b2f !important;
    min-height: 180px;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 35px 20px;
}

body.woocommerce-shop .ic-category-banner .ic-category-banner-title {
    display: block !important;
    color: #fff !important;
    font-size: 40px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 10px !important;
}

body.woocommerce-shop .ic-category-banner .ic-category-breadcrumb,
body.woocommerce-shop .ic-category-banner .ic-category-breadcrumb a,
body.woocommerce-shop .ic-category-banner .ic-category-breadcrumb span {
    color: #fff !important;
}

@media (max-width: 600px) {
    body.woocommerce-shop .ic-category-banner .ic-category-banner-title {
        font-size: 30px !important;
    }
}

/* CJK - Hide Duplicate Shop Heading */

body.woocommerce-shop .woocommerce-products-header__title,
body.woocommerce-shop h1.page-title {
    display: none !important;
}

/* ============================================================
   CJK GLOBAL PRODUCT CARD FINISHING RULES
   Shop / all product categories / related products
   Only INTERNAL height and title link styling are affected.
   No grid widths, column counts, outer margins, or gaps changed.
   ============================================================ */

/* 01 - Equal card height */
body.woocommerce-shop ul.products > li.product,
body.tax-product_cat ul.products > li.product,
body.single-product section.related.products ul.products > li.product {
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* 02 - Equal product image height */
body.woocommerce-shop ul.products > li.product img,
body.tax-product_cat ul.products > li.product img,
body.single-product section.related.products ul.products > li.product img {
    width: 100% !important;
/*     height: 260px !important; */
    object-fit: cover !important;
    aspect-ratio: auto !important;
}

/* 03 - Clickable product title links: preserve theme's existing links */
body.woocommerce-shop ul.products > li.product a:has(> .woocommerce-loop-product__title),
body.tax-product_cat ul.products > li.product a:has(> .woocommerce-loop-product__title),
body.single-product section.related.products ul.products > li.product a:has(> .woocommerce-loop-product__title) {
    cursor: pointer !important;
    text-decoration: none !important;
    pointer-events: auto !important;
}

body.woocommerce-shop ul.products > li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products > li.product .woocommerce-loop-product__title,
body.single-product section.related.products ul.products > li.product .woocommerce-loop-product__title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    white-space: normal !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    line-height: 21px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-shop ul.products > li.product a:hover > .woocommerce-loop-product__title,
body.tax-product_cat ul.products > li.product a:hover > .woocommerce-loop-product__title,
body.single-product section.related.products ul.products > li.product a:hover > .woocommerce-loop-product__title {
    color: #00664f !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

/* 04 - Equal rating space */
body.woocommerce-shop ul.products > li.product .cjk-global-stars,
body.tax-product_cat ul.products > li.product .cjk-global-stars,
body.single-product section.related.products ul.products > li.product .cjk-related-stars {
    display: block !important;
    height: 22px !important;
    min-height: 22px !important;
    flex: 0 0 22px !important;
    margin: 5px 0 6px !important;
}

/* 05 - Price alignment */
body.woocommerce-shop ul.products > li.product .price,
body.tax-product_cat ul.products > li.product .price,
body.single-product section.related.products ul.products > li.product .price {
    margin: 10px 0 14px !important;
    min-height: 25px !important;
    flex-shrink: 0 !important;
}

/* 06 - Buttons align at card bottom */
body.woocommerce-shop ul.products > li.product > .button,
body.tax-product_cat ul.products > li.product > .button,
body.single-product section.related.products ul.products > li.product > .button {
    margin-top: auto !important;
    min-height: 46px !important;
    flex-shrink: 0 !important;
}

/* 07 - Archive star visuals */
.cjk-global-stars {
    position: relative;
    display: block;
    width: max-content;
    max-width: 100%;
    font-family: Arial, sans-serif;
    font-size: 19px;
    line-height: 22px;
    letter-spacing: 2px;
    white-space: nowrap;
    text-decoration: none !important;
}
.cjk-global-stars-base { display: block; color: #c9c9c9; }
.cjk-global-stars-fill,
.cjk-global-stars-hover {
    position: absolute;
    top: 0;
    left: 0;
    height: 22px;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    color: #f5a623;
    pointer-events: none;
}
.cjk-global-stars-hover { width: 0; opacity: 0; }
.cjk-global-stars:hover .cjk-global-stars-hover,
.cjk-global-stars:focus-visible .cjk-global-stars-hover {
    width: 100%;
    opacity: 1;
}

/* 08 - Mobile internal sizing only */
@media (max-width: 600px) {
    body.woocommerce-shop ul.products > li.product img,
    body.tax-product_cat ul.products > li.product img,
    body.single-product section.related.products ul.products > li.product img {
        height: auto !important;
        aspect-ratio: 3 / 4 !important;
    }
    body.woocommerce-shop ul.products > li.product .woocommerce-loop-product__title,
    body.tax-product_cat ul.products > li.product .woocommerce-loop-product__title,
    body.single-product section.related.products ul.products > li.product .woocommerce-loop-product__title {
        font-size: 12px !important;
        line-height: 18px !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
    }
}
/* Product title link - no visual changes */

.woocommerce ul.products li.product a.custom-product-title-link,
.woocommerce ul.products li.product a.custom-product-title-link:link,
.woocommerce ul.products li.product a.custom-product-title-link:visited,
.woocommerce ul.products li.product a.custom-product-title-link:hover,
.woocommerce ul.products li.product a.custom-product-title-link:focus,
.woocommerce ul.products li.product a.custom-product-title-link:active {
    color: inherit !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

/* Title stays exactly the same */

.woocommerce ul.products li.product a.custom-product-title-link .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.custom-product-title-link:hover .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.custom-product-title-link:focus .woocommerce-loop-product__title {
    color: #003d32 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transition: none !important;
}

/* Remove underline from title and nested text */

.woocommerce ul.products li.product a.custom-product-title-link *,
.woocommerce ul.products li.product a.custom-product-title-link:hover * {
    text-decoration: none !important;
    text-decoration-line: none !important;
}
/* Remove Color Variation Button Hover */

body.single-product .cjk-color-group
.cjk-option-buttons button:not(.active):hover,
body.single-product .cjk-color-group
.cjk-option-buttons button:not(.active):focus {
    background: #fff !important;
    color: #003d32 !important;
    border-color: #d9e4dd !important;
    box-shadow: none !important;
    outline: none !important;
}

/* ==========================================
   CHRISTMAS JACKETS - PREMIUM CART DESIGN
   ========================================== */

/* 1. Add to Cart Success Message */

body.single-product .woocommerce-message {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 14px;
    padding: 20px 24px !important;
    margin: 20px auto 30px !important;
    background: #f3f8f5 !important;
    border: 1px solid #d8e9df !important;
    border-left: 4px solid #003d32 !important;
    border-radius: 12px !important;
    color: #20362d !important;
    font-size: 14px !important;
    font-weight: 500;
    box-shadow: 0 6px 22px rgba(0, 61, 50, .06);
}

body.single-product .woocommerce-message::before {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    color: #15803d !important;
    font-size: 20px;
}

body.single-product .woocommerce-message .button {
    order: 3;
    float: none !important;
    margin-left: auto !important;
    padding: 12px 22px !important;
    background: #003d32 !important;
    color: #fff !important;
    border-radius: 30px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background .2s ease;
}

body.single-product .woocommerce-message .button:hover {
    background: #005747 !important;
    color: #fff !important;
}

/* 2. Cart Drawer Container */

.woocommerce-mini-cart,
.widget_shopping_cart_content {
    font-family: inherit;
}

.widget_shopping_cart_content {
    color: #20362d;
}

/* Cart item list */

.woocommerce-mini-cart.cart_list {
    margin: 0 !important;
    padding: 8px 0 !important;
    list-style: none !important;
}

.woocommerce-mini-cart .woocommerce-mini-cart-item {
    position: relative;
    display: block !important;
    padding: 17px 10px 17px 30px !important;
    margin: 0 !important;
    border-bottom: 1px solid #e5eee8 !important;
    min-height: 85px;
    background: #fff;
}

/* Product name */

.woocommerce-mini-cart .woocommerce-mini-cart-item > a:not(.remove) {
    display: block;
    color: #20362d !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.5;
    text-decoration: none !important;
}

.woocommerce-mini-cart .woocommerce-mini-cart-item > a:not(.remove):hover {
    color: #003d32 !important;
}

/* Product image */

.woocommerce-mini-cart .woocommerce-mini-cart-item img {
    float: right !important;
    width: 65px !important;
    height: 78px !important;
    margin: 0 0 8px 12px !important;
    object-fit: contain;
    border-radius: 8px;
    background: #f5f8f6;
    padding: 4px;
}

/* Remove button */

.woocommerce-mini-cart .remove {
    position: absolute !important;
    left: 4px !important;
    top: 18px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #fff0f0 !important;
    color: #c0392b !important;
    font-size: 18px !important;
    text-decoration: none !important;
}

.woocommerce-mini-cart .remove:hover {
    background: #c0392b !important;
    color: #fff !important;
}

/* Quantity and price */

.woocommerce-mini-cart .quantity {
    display: block !important;
    margin-top: 7px !important;
    color: #64736b !important;
    font-size: 13px !important;
}

.woocommerce-mini-cart .quantity .amount {
    color: #003d32 !important;
    font-weight: 700 !important;
}

/* Variation details */

.woocommerce-mini-cart .variation {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    margin: 6px 0 !important;
    font-size: 12px !important;
    color: #64736b;
}

.woocommerce-mini-cart .variation dt,
.woocommerce-mini-cart .variation dd {
    margin: 0 !important;
    padding: 0 !important;
}

/* Subtotal */

.woocommerce-mini-cart__total {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 5px !important;
    margin: 0 !important;
    border-top: 1px solid #e5eee8;
    color: #20362d;
    font-size: 16px !important;
    font-weight: 700;
}

.woocommerce-mini-cart__total .amount {
    color: #003d32 !important;
    font-size: 21px !important;
    font-weight: 800 !important;
}

/* Cart drawer buttons */

.woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column;
    gap: 10px;
    margin: 0 !important;
    padding: 8px 0 15px !important;
}

.woocommerce-mini-cart__buttons .button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 48px;
    margin: 0 !important;
    padding: 13px 18px !important;
    border-radius: 30px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    text-decoration: none !important;
    box-sizing: border-box;
    transition: background .2s ease;
}

/* View Cart */

.woocommerce-mini-cart__buttons .button:not(.checkout) {
    background: #fff !important;
    color: #003d32 !important;
    border: 1px solid #003d32 !important;
}

.woocommerce-mini-cart__buttons .button:not(.checkout):hover {
    background: #f3f8f5 !important;
}

/* Checkout */

.woocommerce-mini-cart__buttons .button.checkout {
    order: -1;
    background: #003d32 !important;
    color: #fff !important;
    border: 1px solid #003d32 !important;
}

.woocommerce-mini-cart__buttons .button.checkout:hover {
    background: #005747 !important;
    color: #fff !important;
}

/* Empty cart */

.woocommerce-mini-cart__empty-message {
    padding: 30px 15px !important;
    text-align: center;
    color: #64736b;
    font-size: 15px;
}

/* Mobile */

@media (max-width: 600px) {

    body.single-product .woocommerce-message {
        padding: 16px !important;
        gap: 12px;
        font-size: 13px !important;
    }

    body.single-product .woocommerce-message .button {
        width: 100%;
        margin-left: 0 !important;
        text-align: center;
    }

    .woocommerce-mini-cart .woocommerce-mini-cart-item {
        padding-right: 5px !important;
    }

    .woocommerce-mini-cart .woocommerce-mini-cart-item img {
        width: 55px !important;
        height: 65px !important;
    }
}
/* =====================================
   CART & CHECKOUT BANNER DESIGN FIX
   ===================================== */

/* Main banner */
body.woocommerce-cart .ic-checkout-banner,
body.woocommerce-checkout .ic-checkout-banner,
body.woocommerce-cart .ic-cart-banner,
body.woocommerce-checkout .ic-cart-banner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 145px !important;
    padding: 30px 20px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    background: #003d32 !important;
}

/* Cart and Checkout heading */
body.woocommerce-cart .ic-category-banner-title,
body.woocommerce-checkout .ic-category-banner-title {
    display: block !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #ffffff !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
}

/* Breadcrumb */
body.woocommerce-cart .ic-checkout-breadcrumb,
body.woocommerce-checkout .ic-checkout-breadcrumb,
body.woocommerce-cart .ic-cart-breadcrumb,
body.woocommerce-checkout .ic-cart-breadcrumb {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 12px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #ffffff !important;
    margin: 0 !important;
}

/* Breadcrumb links */
body.woocommerce-cart .ic-checkout-breadcrumb a,
body.woocommerce-checkout .ic-checkout-breadcrumb a,
body.woocommerce-cart .ic-cart-breadcrumb a,
body.woocommerce-checkout .ic-cart-breadcrumb a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.woocommerce-cart .ic-checkout-banner,
    body.woocommerce-checkout .ic-checkout-banner,
    body.woocommerce-cart .ic-cart-banner,
    body.woocommerce-checkout .ic-cart-banner {
        min-height: 120px !important;
        padding: 25px 15px !important;
    }

    body.woocommerce-cart .ic-category-banner-title,
    body.woocommerce-checkout .ic-category-banner-title {
        font-size: 27px !important;
    }
}
/* Hide duplicate native rating only when custom rating exists */

body.woocommerce-shop li.product:has(.cjk-global-stars)
.star-rating,
body.tax-product_cat li.product:has(.cjk-global-stars)
.star-rating {
    display: none !important;
}
/* =====================================
   PRODUCT REVIEWS - GOLDEN STAR RATING
   ===================================== */

body.single-product #reviews .star-rating,
body.single-product #reviews .star-rating::before,
body.single-product #reviews .star-rating span::before,
body.single-product #reviews .comment-form-rating .stars a,
body.single-product #reviews .comment-form-rating .stars a::before {
    color: #FFB400 !important;
}

/* Custom review stars */
body.single-product #reviews .commentlist .star-rating,
body.single-product #reviews .commentlist .star-rating span,
body.single-product #reviews .commentlist .star-rating i {
    color: #FFB400 !important;
}

/* ==========================================
   CJK - COMPLETE REVIEWS CENTER ALIGNMENT
   ========================================== */

/* Main reviews section */
body.single-product #reviews,
body.single-product #reviews.woocommerce-Reviews {
    width: 100% !important;
    max-width: 950px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Review list wrapper */
body.single-product #reviews #comments,
body.single-product #reviews #comments .commentlist,
body.single-product #reviews ol.commentlist {
    width: 100% !important;
    max-width: 850px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Every review card */
body.single-product #reviews .commentlist > li,
body.single-product #reviews .commentlist > li.review {
    display: block !important;
    width: 100% !important;
    max-width: 850px !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Outer review card */
body.single-product #reviews .commentlist li .comment_container {
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 26px !important;
    border: 1px solid #dce8e1 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* Remove inner card border */
body.single-product #reviews .commentlist li .comment-text,
body.single-product #reviews .commentlist li .comment-text .description {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

/* Center rating summary */
body.single-product #reviews .cjk-review-heading,
body.single-product #reviews .cjk-review-summary,
body.single-product #reviews .cjk-review-actions {
    width: 100% !important;
    max-width: 850px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body.single-product #reviews .cjk-review-actions {
    display: flex !important;
    justify-content: center !important;
}

/* Center Add a Review form */
body.single-product #reviews #review_form_wrapper,
body.single-product #reviews #review_form,
body.single-product #reviews #respond {
    width: 100% !important;
    max-width: 850px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Review form fields */
body.single-product #reviews #respond input:not([type="submit"]),
body.single-product #reviews #respond textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Show More button */
body.single-product #reviews .cjk-reviews-more {
    margin: 25px auto 35px !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.single-product #reviews,
    body.single-product #reviews #comments,
    body.single-product #reviews #review_form_wrapper {
        max-width: 100% !important;
    }

    body.single-product #reviews .commentlist li .comment_container {
        padding: 18px 16px !important;
    }

    body.single-product #reviews .cjk-review-summary {
        padding: 22px 16px !important;
    }
}
/* ==========================================
   CHRISTMAS JACKETS
   COMPLETE REVIEWS LAYOUT - FINAL CSS
   ========================================== */

/* 1. Main reviews wrapper */
body.single-product #reviews,
body.single-product #reviews.woocommerce-Reviews {
    width: 100% !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
}

/* 2. Rating summary */
body.single-product #reviews .cjk-review-heading,
body.single-product #reviews .cjk-review-summary {
    width: 100% !important;
    max-width: 1000px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* 3. Write a Review button */
body.single-product #reviews .cjk-review-actions {
    display: flex !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin: 25px auto 35px !important;
    justify-content: center !important;
    align-items: center !important;
}

/* 4. Reviews section wrapper */
body.single-product #reviews #comments {
    display: block !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* 5. Review list */
body.single-product #reviews #comments .commentlist,
body.single-product #reviews #comments ol.commentlist,
body.single-product #reviews #comments ul.commentlist {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

/* 6. Individual review items */
body.single-product #reviews #comments .commentlist > li,
body.single-product #reviews #comments .commentlist > li.review {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* 7. Actual visible review card */
body.single-product #reviews #comments .commentlist .comment_container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 24px 28px !important;
    background: #ffffff !important;
    border: 1px solid #dce8e1 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* 8. Remove inner border and old spacing */
body.single-product #reviews #comments .commentlist .comment-text {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* 9. Reviewer name and text */
body.single-product #reviews .commentlist .meta {
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: none !important;
}

body.single-product #reviews .commentlist .description {
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    line-height: 1.7 !important;
}

/* 10. Yellow review stars */
body.single-product #reviews .commentlist .star-rating,
body.single-product #reviews .commentlist .star-rating::before,
body.single-product #reviews .commentlist .star-rating span::before {
    color: #ffb400 !important;
}

/* 11. Hide review avatars and dates */
body.single-product #reviews .commentlist .avatar,
body.single-product #reviews .woocommerce-review__published-date,
body.single-product #reviews .commentmetadata,
body.single-product #reviews time {
    display: none !important;
}

/* 12. Center Show More button */
body.single-product #reviews .cjk-reviews-more {
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    margin: 25px auto 35px !important;
}

/* 13. Add a Review form - same width */
body.single-product #reviews #review_form_wrapper,
body.single-product #reviews #review_form,
body.single-product #reviews #respond {
    display: block !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* 14. Form inputs */
body.single-product #reviews #respond input:not([type="submit"]),
body.single-product #reviews #respond textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 15. Responsive layout */
@media (max-width: 767px) {
    body.single-product #reviews {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.single-product #reviews .cjk-review-summary,
    body.single-product #reviews #comments,
    body.single-product #reviews #review_form_wrapper,
    body.single-product #reviews #review_form,
    body.single-product #reviews #respond {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product #reviews #comments .commentlist .comment_container {
        padding: 18px 16px !important;
    }

    body.single-product #reviews .cjk-review-summary {
        padding: 22px 16px !important;
    }
}
/* ==========================================
   CJK - CONNECTED PRODUCT TABS DESIGN
   ========================================== */

/* Main tabs wrapper */
body.single-product .woocommerce-tabs {
    width: 100%;
    margin-top: 45px;
    padding: 0;
    border: 1px solid #dce8e1;
    border-radius: 16px;
    background: #fff;
    overflow: visible;
    box-sizing: border-box;
}

/* Tabs navigation */
body.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 18px 24px !important;
    list-style: none !important;
    background: #f4f8f5 !important;
    border: none !important;
    border-bottom: 1px solid #dce8e1 !important;
    border-radius: 16px 16px 0 0 !important;
}

/* Remove default WooCommerce decorations */
body.single-product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce-tabs ul.tabs::after,
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
    content: none !important;
}

/* Individual tabs */
body.single-product .woocommerce-tabs ul.tabs li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #dce8e1 !important;
    border-radius: 30px !important;
    background: #fff !important;
    box-shadow: none !important;
}

/* Tab links */
body.single-product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 12px 23px !important;
    color: #003d32 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    background: transparent !important;
    border: none !important;
}

/* Hover */
body.single-product .woocommerce-tabs ul.tabs li:hover {
    background: #e4f0ea !important;
    border-color: #003d32 !important;
}

/* Active tab */
body.single-product .woocommerce-tabs ul.tabs li.active,
body.single-product .woocommerce-tabs ul.tabs li.active:hover {
    background: #003d32 !important;
    border-color: #003d32 !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a {
    color: #fff !important;
}

/* Tab content panel */
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    margin: 0 !important;
    padding: 35px 24px 40px !important;
    border: none !important;
    background: #fff !important;
    border-radius: 0 0 16px 16px;
    box-sizing: border-box;
}

/* Remove excessive spacing above review heading */
body.single-product .woocommerce-tabs #reviews .cjk-review-heading {
    margin-top: 0 !important;
    margin-bottom: 25px !important;
}

/* Preserve centered review layout */
body.single-product .woocommerce-tabs #reviews {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.single-product .woocommerce-tabs {
        margin-top: 30px;
        border-radius: 12px;
    }

    body.single-product .woocommerce-tabs ul.tabs {
        padding: 14px 12px !important;
        gap: 8px !important;
        border-radius: 12px 12px 0 0 !important;
    }

    body.single-product .woocommerce-tabs ul.tabs li a {
        padding: 10px 14px !important;
        font-size: 12px !important;
    }

    body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
        padding: 25px 12px 30px !important;
    }
}
/* ==========================================
   CJK - PRODUCT TABS TOP SPACING FIX
   ========================================== */

/* Reduce space above tabs */
body.single-product .woocommerce-tabs {
    margin-top: 15px !important;
    padding-top: 0 !important;
}

/* Remove empty space above green tab navigation */
body.single-product .woocommerce-tabs ul.tabs {
    margin-top: 0 !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

/* Ensure navigation starts at top of container */
body.single-product .woocommerce-tabs {
    overflow: hidden !important;
}

/* Reduce gap between tabs and content */
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding-top: 25px !important;
}

/* Reduce space above Reviews heading */
body.single-product .woocommerce-tabs #reviews .cjk-review-heading {
    margin-top: 0 !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.single-product .woocommerce-tabs {
        margin-top: 10px !important;
    }

    body.single-product .woocommerce-tabs ul.tabs {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
        padding-top: 20px !important;
    }
}

/* Christmas Jackets UK: shop filters + themed WooCommerce pagination */
body.post-type-archive-product .cjk-shop-shell {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  align-items: start;
  gap: 28px;
  width: 100%;
  clear: both;
}
body.post-type-archive-product .cjk-shop-sidebar {
  border: 1px solid #e4e9e5;
  border-radius: 14px;
  background: #fff;
  padding: 20px;
}
.cjk-shop-filter-panel > summary {
  cursor: pointer;
  list-style: none;
  color: #003d32;
  font-weight: 800;
  font-size: 18px;
  display: flex;
  justify-content: space-between;
}
.cjk-shop-filter-panel > summary::-webkit-details-marker { display: none; }
.cjk-shop-filter-group { border-top: 1px solid #e9ece9; margin-top: 18px; padding-top: 16px; }
.cjk-shop-filter-group h3 { margin: 0 0 12px; color: #003d32; font-size: 15px; }
.cjk-shop-radio { display: flex; align-items: center; gap: 9px; font-size: 13px; margin: 9px 0; cursor: pointer; }
.cjk-shop-radio input { accent-color: #003d32; }
.cjk-shop-price-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.cjk-shop-price-fields label { font-size: 12px; }
.cjk-shop-price-fields input,
.cjk-shop-filter-group select { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #d9dfda; border-radius: 7px; padding: 9px; margin-top: 5px; background: #fff; color: #193c35; }
.cjk-shop-apply { display: block; width: 100%; margin-top: 19px; border: 0; border-radius: 8px; background: #003d32; color: #fff; padding: 12px; font-weight: 700; cursor: pointer; }
.cjk-shop-apply:hover { background: #005445; }
.cjk-shop-reset { display: block; margin-top: 12px; text-align: center; color: #003d32; font-size: 13px; text-decoration: underline; }
body.post-type-archive-product .cjk-shop-results { min-width: 0; }
body.post-type-archive-product .cjk-shop-results ul.products { width: 100%; }
/* Limit the grid change to the shop; keep existing product card styling intact. */
body.post-type-archive-product .cjk-shop-results ul.products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
body.post-type-archive-product .cjk-shop-results ul.products::before,
body.post-type-archive-product .cjk-shop-results ul.products::after { display: none; }
body.post-type-archive-product .cjk-shop-results ul.products li.product {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  min-width: 0;
}
/* Shop and category pagination: remove decorative side lines, style buttons. */
.woocommerce nav.woocommerce-pagination,
.woocommerce-page nav.woocommerce-pagination { margin: 35px auto 45px; text-align: center; }
.woocommerce nav.woocommerce-pagination::before,
.woocommerce nav.woocommerce-pagination::after,
.woocommerce nav.woocommerce-pagination ul::before,
.woocommerce nav.woocommerce-pagination ul::after { content: none !important; display: none !important; }
.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 7px; border: 0 !important; margin: 0 !important; padding: 0 !important; background: transparent; }
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li { border: 0 !important; float: none; overflow: visible; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span {
  display: flex; justify-content: center; align-items: center;
  width: 39px; height: 39px; box-sizing: border-box;
  padding: 0; border: 1px solid #003d32; border-radius: 8px;
  background: #003d32; color: #fff; font-size: 14px; font-weight: 700;
  text-decoration: none; transition: background .2s, color .2s;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus { background: #005a4b; color: #fff; }
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li span.current { background: #d7a52b; border-color: #d7a52b; color: #ffffff; }
.woocommerce nav.woocommerce-pagination ul li span.dots { background: transparent; color: #003d32; border-color: transparent; }
@media (max-width: 1000px) {
  body.post-type-archive-product .cjk-shop-shell { grid-template-columns: 220px minmax(0,1fr); gap: 18px; }
  body.post-type-archive-product .cjk-shop-results ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 700px) {
  body.post-type-archive-product .cjk-shop-shell { display: block; }
  body.post-type-archive-product .cjk-shop-sidebar { margin-bottom: 20px; padding: 15px; }
  body.post-type-archive-product .cjk-shop-filter-panel:not([open]) .cjk-shop-filter-form { display: none; }
  body.post-type-archive-product .cjk-shop-results ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span { width: 34px; height: 34px; font-size: 12px; }
}

body.post-type-archive-product .cjk-shop-filter-panel[open] > summary span { transform: rotate(180deg); }
body.post-type-archive-product .cjk-shop-filter-form { padding: 2px 19px 22px; }
body.post-type-archive-product .cjk-shop-filter-group {
  margin-top: 0;
  padding: 21px 0;
  border-top: 1px solid #e9eeeb;
}
body.post-type-archive-product .cjk-shop-filter-group:first-child { border-top: 0; }
body.post-type-archive-product .cjk-shop-filter-group h3 {
  margin: 0 0 13px;
  font-size: 14px;
  font-weight: 800;
  color: #003d32;
}
body.post-type-archive-product .cjk-shop-radio {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 36px;
  margin: 3px 0;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.35;
  color: #344c45;
  transition: background .2s ease, border-color .2s ease;
}
body.post-type-archive-product .cjk-shop-radio:hover { background: #f5f9f6; }
body.post-type-archive-product .cjk-shop-radio:has(input:checked) {
  background: #f7f1df;
  border-color: #ead9a9;
  color: #003d32;
  font-weight: 700;
}
body.post-type-archive-product .cjk-shop-radio input {
  margin: 0;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  accent-color: #b78723;
}
body.post-type-archive-product .cjk-shop-price-fields { gap: 10px; }
body.post-type-archive-product .cjk-shop-price-fields label { color: #53645c; font-weight: 600; }
body.post-type-archive-product .cjk-shop-price-fields input,
body.post-type-archive-product .cjk-shop-filter-group select {
  min-height: 42px;
  border-radius: 8px;
  border-color: #dce5df;
  padding: 9px 10px;
  font-size: 13px;
  box-shadow: none;
}
body.post-type-archive-product .cjk-shop-price-fields input:focus,
body.post-type-archive-product .cjk-shop-filter-group select:focus {
  outline: 2px solid #d7aa40;
  outline-offset: 1px;
}
body.post-type-archive-product .cjk-shop-apply {
  min-height: 45px;
  margin-top: 5px;
  border-radius: 9px;
  background: #003d32;
  color: #fff;
  font-size: 13px;
  letter-spacing: .2px;
  box-shadow: 0 5px 12px rgba(0,61,50,.12);
}
body.post-type-archive-product .cjk-shop-apply:hover { background: #005445; }
body.post-type-archive-product .cjk-shop-reset {
  margin-top: 15px;
  font-weight: 650;
  text-underline-offset: 3px;
}
/* Tidy native WooCommerce count and sort without altering their behavior. */
body.post-type-archive-product .cjk-shop-results .woocommerce-result-count {
  color: #496159;
  font-size: 13px;
  line-height: 44px;
}
body.post-type-archive-product .cjk-shop-results .woocommerce-ordering select {
  min-height: 44px;
  padding: 9px 34px 9px 14px;
  border: 1px solid #dde6df;
  border-radius: 9px;
  background-color: #fff;
  color: #003d32;
  font-size: 13px;
}
body.post-type-archive-product .cjk-shop-results ul.products { gap: 21px; }
@media (max-width: 1050px) {
  body.post-type-archive-product .cjk-shop-shell { grid-template-columns: 230px minmax(0,1fr); gap: 20px; }
  body.post-type-archive-product .cjk-shop-filter-form { padding-left: 14px; padding-right: 14px; }
}
@media (max-width: 700px) {
  body.post-type-archive-product .cjk-shop-shell { display: block; }
  body.post-type-archive-product .cjk-shop-sidebar { margin-bottom: 22px; }
  body.post-type-archive-product .cjk-shop-filter-panel > summary { padding: 17px 18px; }
  body.post-type-archive-product .cjk-shop-results .woocommerce-result-count { line-height: 1.5; }
  body.post-type-archive-product .cjk-shop-results ul.products { gap: 12px; }
}

/* SHOP FILTER HEADING */
body.woocommerce-shop .cjk-shop-sidebar > details > summary,
body.woocommerce-shop .cjk-shop-sidebar .cjk-filter-heading {
    background: #003d32 !important;
    color: #fff !important;
    padding: 16px 18px !important;
    border-radius: 12px 12px 0 0 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    cursor: pointer;
}

/* HEADING ARROW */
body.woocommerce-shop .cjk-shop-sidebar summary::after,
body.woocommerce-shop .cjk-shop-sidebar .cjk-filter-heading::after {
    color: #e4b54c !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    margin-left: 15px !important;
}

/* STICKY FILTER SIDEBAR */
@media (min-width: 992px) {
    body.woocommerce-shop .cjk-shop-sidebar {
        position: sticky !important;
        top: 110px !important;
        align-self: flex-start !important;
        height: auto !important;
        max-height: calc(100vh - 145px) !important;
        overflow-y: auto !important;
        margin-bottom: 35px !important;
        z-index: 5;
        scrollbar-width: thin;
        scrollbar-color: #d2b46b transparent;
    }
}

/* MOBILE */
@media (max-width: 991px) {
    body.woocommerce-shop .cjk-shop-sidebar {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

/* Shop Filter Heading - Exact Alignment Fix */

body.woocommerce-shop
.cjk-shop-sidebar
.cjk-shop-filter-panel > summary {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 54px !important;
    padding: 14px 48px 14px 18px !important;
    margin: 0 !important;
    background: #003d32 !important;
    color: #fff !important;
    border-radius: 12px 12px 0 0 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 24px !important;
    box-sizing: border-box !important;
    list-style: none !important;
    background-image: none !important;
    cursor: pointer;
}

/* Remove all old arrows */
body.woocommerce-shop
.cjk-shop-sidebar
.cjk-shop-filter-panel > summary::before {
    content: none !important;
}

body.woocommerce-shop
.cjk-shop-sidebar
.cjk-shop-filter-panel > summary::-webkit-details-marker {
    display: none !important;
}

/* New arrow - fixed right position */
body.woocommerce-shop
.cjk-shop-sidebar
.cjk-shop-filter-panel > summary::after {
    content: "" !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid #ffffff !important;
    border-bottom: 2px solid #ffffff !important;
    transform: translateY(-65%) rotate(45deg) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
}

/* Arrow when filters are closed */
body.woocommerce-shop
.cjk-shop-sidebar
.cjk-shop-filter-panel:not([open]) > summary::after {
    transform: translateY(-35%) rotate(-135deg) !important;
}

/* Footer Dynamic Menu - Original Styling */

.cjk-site-footer .cjk-footer-col .cjk-footer-menu li a {
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    transition: color 0.3s ease, transform 0.3s ease !important;
}

.cjk-site-footer .cjk-footer-col .cjk-footer-menu li a:hover {
    color: #d9b35b !important;
    transform: translateX(6px) !important;
    text-decoration: none !important;
}

/* Footer Menu Headings */
.cjk-site-footer .cjk-footer-col h3 {
    font-size: 14px !important;
    font-weight: 600 !important;
}


/* Mobile homepage hero only: centered content, models below, mobile background. */
@media (max-width: 700px) {
    .cjk-figma-hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 32px 16px 0 !important;
        background-image: url('https://christmasjackets.co.uk/wp-content/uploads/2026/10/Christmas_Jackets_.co_.uk_.jpg') !important;
        background-size: cover !important;
        background-position: left !important;
        background-repeat: no-repeat !important;
    }

    .cjk-figma-hero .cjk-figma-hero-inner {
        order: 1 !important;
        display: flex !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .cjk-figma-hero .cjk-figma-hero-content {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .cjk-figma-hero .cjk-figma-hero-desc {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .cjk-figma-hero .cjk-hero-models {
        position: relative !important;
        order: 2 !important;
        display: block !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        width: min(100%, 420px) !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        margin: 18px auto 0 !important;
        object-fit: contain !important;
        object-position: center bottom !important;
    }
}
.cjk-footer-col span.h3 {
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    margin: 3px 0px 12px;
	display:block;
}
.cjk-cart-drawer-header span.h2 {
    margin: 0;
    font-size: 22px;
}

/* Fix WooCommerce Checkout Subtotal & Total Wrapping */

.woocommerce-checkout #order_review table.shop_table {
    width: 100%;
    table-layout: auto !important;
}

/* Product column */
.woocommerce-checkout #order_review table.shop_table th.product-name,
.woocommerce-checkout #order_review table.shop_table td.product-name {
    width: 70%;
}

/* Price column */
.woocommerce-checkout #order_review table.shop_table th.product-total,
.woocommerce-checkout #order_review table.shop_table td.product-total,
.woocommerce-checkout #order_review table.shop_table tfoot td {
    width: 30%;
    min-width: 95px;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-align: right !important;
}

/* Keep currency symbol and price together */
.woocommerce-checkout #order_review .woocommerce-Price-amount,
.woocommerce-checkout #order_review .woocommerce-Price-currencySymbol {
    white-space: nowrap !important;
    word-break: keep-all !important;
}

/* Fix table heading */
.woocommerce-checkout #order_review th {
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* Reusable Christmas tree icons */

.cjk-tree-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    flex-shrink: 0;
    margin: 0 5px;
}

@media (max-width: 767px) {
    .cjk-tree-icon {
        width: 16px;
        height: 16px;
        margin: 0 3px;
    }
}

/* ==========================================
   CJK - ORDER RECEIVED PAGE - V2
   ========================================== */

body.woocommerce-order-received .woocommerce {
    max-width: 1200px;
    width: calc(100% - 40px);
    margin: 45px auto 80px;
    padding: 0;
    box-sizing: border-box;
}

body.woocommerce-order-received .woocommerce-order {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

/* Main heading */

body.woocommerce-order-received .entry-title,
body.woocommerce-order-received .woocommerce > h1 {
    text-align: center !important;
    color: #103d32;
    font-size: clamp(28px, 3vw, 38px);
    margin: 0 0 30px;
}

/* Success message */

body.woocommerce-order-received
.woocommerce-notice--success {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: #eff7f1;
    color: #17633f;
    border: 1px solid #cce4d2;
    border-radius: 14px;
    padding: 22px;
    margin: 0 0 25px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

body.woocommerce-order-received
.woocommerce-notice--success::before {
    content: "✓";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #17633f;
    color: #fff;
    font-size: 18px;
}

/* All 5 order cards in one row */

body.woocommerce-order-received
ul.woocommerce-order-overview {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
    list-style: none !important;
}

body.woocommerce-order-received
ul.woocommerce-order-overview::before,
body.woocommerce-order-received
ul.woocommerce-order-overview::after {
    display: none !important;
}

body.woocommerce-order-received
ul.woocommerce-order-overview li {
    display: block !important;
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 20px 15px !important;
    border: 1px solid #dce7df !important;
    border-radius: 12px;
    background: #f8faf8;
    box-sizing: border-box;
    font-size: 11px;
    color: #64746c;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

body.woocommerce-order-received
ul.woocommerce-order-overview li strong {
    display: block;
    margin-top: 9px;
    font-size: 15px;
    line-height: 1.4;
    color: #103d32;
    text-transform: none;
    overflow-wrap: anywhere;
}

/* Cash on delivery instructions */

body.woocommerce-order-received
.woocommerce-order > p:not(.woocommerce-notice) {
    background: #fff9ed;
    border-left: 4px solid #c9a35a;
    border-radius: 10px;
    padding: 17px 20px;
    margin: 0 0 30px;
    color: #584627;
}

/* Order details */

body.woocommerce-order-received
.woocommerce-order-details {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 30px !important;
    padding: 26px !important;
    border: 1px solid #dce7df;
    border-radius: 16px;
    background: #fff;
    box-sizing: border-box;
}

body.woocommerce-order-received
.woocommerce-order-details__title,
body.woocommerce-order-received
.woocommerce-column__title {
    color: #103d32;
    font-size: 23px;
    font-weight: 700;
    margin: 0 0 18px;
}

/* Order details table */

body.woocommerce-order-received
.woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: collapse;
    table-layout: auto;
    margin: 0;
}

body.woocommerce-order-received
.woocommerce-table--order-details th,
body.woocommerce-order-received
.woocommerce-table--order-details td {
    padding: 16px !important;
    border-bottom: 1px solid #e6ece7 !important;
    text-align: left;
    font-size: 15px;
    color: #203e33;
}

body.woocommerce-order-received
.woocommerce-table--order-details thead th {
    background: #eff5f0;
    font-weight: 700;
}

body.woocommerce-order-received
.woocommerce-table--order-details .product-total,
body.woocommerce-order-received
.woocommerce-table--order-details thead th:last-child,
body.woocommerce-order-received
.woocommerce-table--order-details tfoot td {
    width: 25%;
    text-align: right !important;
    white-space: nowrap;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child {
    background: #eff6f1;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child th,
body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    color: #103d32;
    font-weight: 800;
    font-size: 18px;
}

/* Billing and Shipping side by side */

body.woocommerce-order-received
.woocommerce-customer-details {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-order-received
.woocommerce-customer-details .woocommerce-columns {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
}

body.woocommerce-order-received
.woocommerce-customer-details .woocommerce-column {
    display: block !important;
    float: none !important;
    clear: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

body.woocommerce-order-received
.woocommerce-customer-details .woocommerce-column::before,
body.woocommerce-order-received
.woocommerce-customer-details .woocommerce-column::after {
    display: none !important;
}

body.woocommerce-order-received
.woocommerce-customer-details address {
    width: 100%;
    min-height: 230px;
    margin: 0 !important;
    padding: 25px !important;
    background: #f8faf8;
    border: 1px solid #dce7df !important;
    border-radius: 14px;
    box-sizing: border-box;
    color: #344c40;
    font-size: 15px;
    line-height: 1.8;
    font-style: normal;
    overflow-wrap: anywhere;
}

/* Tablet */

@media (max-width: 991px) {
    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

/* Mobile */

@media (max-width: 767px) {
    body.woocommerce-order-received .woocommerce {
        width: calc(100% - 30px);
        margin: 25px auto 50px;
    }

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body.woocommerce-order-received
    ul.woocommerce-order-overview li {
        padding: 15px 12px !important;
    }

    body.woocommerce-order-received
    ul.woocommerce-order-overview li strong {
        font-size: 13px;
    }

    body.woocommerce-order-received
    .woocommerce-customer-details .woocommerce-columns {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }

    body.woocommerce-order-received
    .woocommerce-customer-details address {
        min-height: 0;
        padding: 20px !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details {
        padding: 18px 12px !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details th,
    body.woocommerce-order-received
    .woocommerce-table--order-details td {
        padding: 12px 8px !important;
        font-size: 13px;
    }
}

@media (max-width: 400px) {
    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns: 1fr !important;
    }
}
/* ==========================================
   CJK THANK YOU PAGE - FINAL LAYOUT FIX
   ========================================== */

/* Hide the top Order received heading */
body.woocommerce-order-received .entry-header,
body.woocommerce-order-received main > h1,
body.woocommerce-order-received main .entry-title,
body.woocommerce-order-received .page-header,
body.woocommerce-order-received .woocommerce-order > h1 {
    display: none !important;
}

/* Keep order confirmation content visible */
body.woocommerce-order-received .woocommerce-order {
    display: block !important;
}

/* Billing and shipping address container */
body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-columns--addresses {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 24px !important;
    width: 100% !important;
}

/* Override WooCommerce col-1 and col-2 */
body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-columns--addresses > .woocommerce-column {
    float: none !important;
    clear: none !important;
    flex: 1 1 0 !important;
    width: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

/* Match address card heights */
body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-columns--addresses > .woocommerce-column address {
    min-height: 230px;
    height: 100%;
    box-sizing: border-box;
}

/* Mobile */
@media (max-width: 767px) {
    body.woocommerce-order-received
    .woocommerce-customer-details
    .woocommerce-columns--addresses {
        flex-direction: column !important;
        gap: 20px !important;
    }

    body.woocommerce-order-received
    .woocommerce-customer-details
    .woocommerce-columns--addresses > .woocommerce-column {
        flex: none !important;
        width: 100% !important;
    }

    body.woocommerce-order-received
    .woocommerce-customer-details
    .woocommerce-columns--addresses > .woocommerce-column address {
        height: auto;
        min-height: 0;
    }
}
/* Hide Order Received heading - Thank You page only */

body.woocommerce-order-received article.post-21 > h1:first-child {
    display: none !important;
}

/* Remove extra spacing */
body.woocommerce-order-received article.post-21 > .woocommerce {
    margin-top: 25px !important;
}


/* CHRISTMAS JACKETS - PRICE STYLE */

.cj-price-line {
    display: inline-flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    font-size: 15px;
    line-height: 1.5;
}

/* Cut Price */
.cj-price-line del {
    color: #555 !important;
    opacity: 1 !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}

/* Sale Price */
.cj-price-line ins {
    color: #000 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* Percentage */
.cj-price-line .cj-percent {
    color: #e60000 !important;
    font-weight: 700 !important;
    white-space: nowrap;
}

/* Keep Currency Same */
.cj-price-line .woocommerce-Price-amount {
    color: inherit !important;
}

/* Mobile */
@media (max-width: 767px) {
    .cj-price-line {
        font-size: 13px;
        gap: 5px;
    }
}

/* =====================================
   CHRISTMAS JACKETS UK
   HOMEPAGE PRODUCT PRICE DESIGN
===================================== */

/* Both Homepage Sections */
.home .cjk-popular-price,
.home .cjk-collection-price {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin-top: 8px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
}

/* Original Cut Price */
.home .cjk-popular-price del,
.home .cjk-collection-price del {
    color: #555 !important;
    opacity: 1 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}

/* Current Sale Price */
.home .cjk-popular-price ins,
.home .cjk-collection-price ins {
    color: #000 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* Discount Percentage */
.home .cjk-popular-price .cj-percent,
.home .cjk-collection-price .cj-percent {
    color: #e60000 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

/* Currency and Amount */
.home .cjk-popular-price .woocommerce-Price-amount,
.home .cjk-collection-price .woocommerce-Price-amount {
    color: inherit !important;
}

/* Mobile Responsive */
@media (max-width: 767px) {

    .home .cjk-popular-price,
    .home .cjk-collection-price {
        gap: 5px !important;
        font-size: 13px !important;
    }

    .home .cjk-popular-price del,
    .home .cjk-collection-price del {
        font-size: 12px !important;
    }

    .home .cjk-popular-price ins,
    .home .cjk-collection-price ins,
    .home .cjk-popular-price .cj-percent,
    .home .cjk-collection-price .cj-percent {
        font-size: 13px !important;
    }
}


/* =========================================
   CHRISTMAS JACKETS UK - FAQ PAGE
   ELEMENTOR ATOMIC ACCORDION
========================================= */

/* Main FAQ Accordion */
.elementor-element-d190bb6 {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    width: 100% !important;
}

/* FAQ Cards */
.elementor-element-d190bb6 > details.e-accordion-item-base {
    display: block !important;
    background: #ffffff !important;
    border: 1px solid #e2e9e3 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
    transition: border-color 0.25s ease,
                box-shadow 0.25s ease !important;
}

/* Card Hover */
.elementor-element-d190bb6 > details.e-accordion-item-base:hover {
    border-color: #16733d !important;
    box-shadow: 0 6px 20px rgba(0, 100, 50, 0.09) !important;
}

/* Question Header */
.elementor-element-d190bb6
> details.e-accordion-item-base
> summary.e-accordion-item-header-base {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    width: 100% !important;
    padding: 20px 24px !important;
    margin: 0 !important;
    background: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    list-style: none !important;
    transition: background 0.25s ease !important;
}

/* Remove Default Marker */
.elementor-element-d190bb6 summary::-webkit-details-marker {
    display: none !important;
}

.elementor-element-d190bb6 summary::marker {
    content: "" !important;
}

/* Question Text */
.elementor-element-d190bb6
.e-accordion-item-title-base,
.elementor-element-d190bb6
.e-accordion-item-title-base strong {
    color: #171717 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

/* Question Hover */
.elementor-element-d190bb6
> details.e-accordion-item-base
> summary.e-accordion-item-header-base:hover {
    background: #f7faf7 !important;
}

/* Open FAQ Card */
.elementor-element-d190bb6
> details.e-accordion-item-base[open] {
    border-color: #16733d !important;
}

/* Open Question Background */
.elementor-element-d190bb6
> details.e-accordion-item-base[open]
> summary.e-accordion-item-header-base {
    background: #edf7ef !important;
    border-bottom: 1px solid #dcebdd !important;
}

/* Open Question Text */
.elementor-element-d190bb6
> details.e-accordion-item-base[open]
.e-accordion-item-title-base,
.elementor-element-d190bb6
> details.e-accordion-item-base[open]
.e-accordion-item-title-base strong {
    color: #116b36 !important;
}

/* FAQ Arrow Icon */
.elementor-element-d190bb6
.e-accordion-item-icon-base {
    flex-shrink: 0 !important;
    width: 34px !important;
    height: 34px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff1f2 !important;
    border-radius: 50% !important;
}

/* Arrow SVG */
.elementor-element-d190bb6
.e-accordion-item-icon-base svg,
.elementor-element-d190bb6
.e-accordion-item-icon-base svg path {
    color: #bb1830 !important;
    fill: #bb1830 !important;
}

/* FAQ Answer Area */
.elementor-element-d190bb6
.e-accordion-item-content-base {
    padding: 20px 24px 24px !important;
    margin: 0 !important;
    background: #ffffff !important;
}

/* Answer Text */
.elementor-element-d190bb6
.e-accordion-item-content-base p,
.elementor-element-d190bb6
.e-accordion-item-content-base p span {
    color: #59635d !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
}

/* Answer Links */
.elementor-element-d190bb6
.e-accordion-item-content-base a {
    color: #b7192b !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* Mobile Responsive */
@media (max-width: 767px) {

    .elementor-element-d190bb6 {
        gap: 10px !important;
    }

    .elementor-element-d190bb6
    > details.e-accordion-item-base {
        border-radius: 10px !important;
    }

    .elementor-element-d190bb6
    > details.e-accordion-item-base
    > summary.e-accordion-item-header-base {
        padding: 16px !important;
        gap: 10px !important;
    }

    .elementor-element-d190bb6
    .e-accordion-item-title-base,
    .elementor-element-d190bb6
    .e-accordion-item-title-base strong {
        font-size: 14px !important;
    }

    .elementor-element-d190bb6
    .e-accordion-item-content-base {
        padding: 16px !important;
    }

    .elementor-element-d190bb6
    .e-accordion-item-content-base p,
    .elementor-element-d190bb6
    .e-accordion-item-content-base p span {
        font-size: 14px !important;
    }

    .elementor-element-d190bb6
    .e-accordion-item-icon-base {
        width: 30px !important;
        height: 30px !important;
    }
}

/* =========================================
   CHRISTMAS JACKETS - FAQ HEADING
   Red Gift Icon + Premium Heading
========================================= */

/* Heading wrapper */
.elementor-element-eae0dee {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin-bottom: 24px !important;
}

/* FAQs heading */
.elementor-element-eae0dee .elementor-heading-title {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
    color: #171717 !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* Christmas gift icon */
.elementor-element-eae0dee .elementor-heading-title::before {
    content: "" !important;
    display: inline-block !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 10px !important;
    background-color: #b7192b !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='4' rx='1'/%3E%3Cpath d='M5 12v9h14v-9M12 8v13M12 8H8a2.5 2.5 0 1 1 2.5-2.5C10.5 7 12 8 12 8ZM12 8h4a2.5 2.5 0 1 0-2.5-2.5C13.5 7 12 8 12 8Z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 24px 24px !important;
}

/* Mobile responsive */
@media (max-width: 767px) {

    .elementor-element-eae0dee {
        margin-bottom: 18px !important;
    }

    .elementor-element-eae0dee .elementor-heading-title {
        font-size: 22px !important;
        gap: 10px !important;
    }

    .elementor-element-eae0dee .elementor-heading-title::before {
        width: 38px !important;
        height: 38px !important;
        flex-basis: 38px !important;
        background-size: 22px 22px !important;
    }
}


/* Hide PayPal buttons on Single Product pages */
body.single-product .ppc-button-wrapper,
body.single-product .wc-ppcp-product-payments,
body.single-product .paypal-buttons,
body.single-product #paypal-button-container,
body.single-product .paypal-button-container,
body.single-product .wcppec-checkout-buttons {
    display: none !important;
}

/* Hide PayPal buttons on Cart page */
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart .wc-ppcp-cart-payments,
body.woocommerce-cart .paypal-buttons,
body.woocommerce-cart #paypal-button-container,
body.woocommerce-cart .paypal-button-container,
body.woocommerce-cart .wcppec-cart-widget-spb,
body.woocommerce-cart .wcppec-checkout-buttons {
    display: none !important;
}

/* Hide PayPal on Single Product page */
body.single-product #express-payment-method-ppcp-gateway-paypal,
body.single-product li[id="express-payment-method-ppcp-gateway-paypal"] {
    display: none !important;
}

/* Hide PayPal on Cart page */
body.woocommerce-cart #express-payment-method-ppcp-gateway-paypal,
body.woocommerce-cart li[id="express-payment-method-ppcp-gateway-paypal"],
body.woocommerce-cart .wc-block-components-express-payment__event-buttons li[id="express-payment-method-ppcp-gateway-paypal"] {
    display: none !important;
}

/* Hide Google Pay on Single Product page */
body.single-product li#express-payment-method-ppcp-googlepay {
    display: none !important;
}

/* Hide Google Pay on Cart page */
body.woocommerce-cart li#express-payment-method-ppcp-googlepay {
    display: none !important;
}

/* Hide Google Pay in WooCommerce Cart Blocks */
body.woocommerce-cart .wc-block-components-express-payment__event-buttons
li[id="express-payment-method-ppcp-googlepay"] {
    display: none !important;
}
/* Hide only the Google Pay express button */
#ppc-button-ppcp-googlepay-v6,
#ppc-button-ppcp-googlepay-v6 .gpay-button-fill,
#ppc-button-ppcp-googlepay-v6 #gpay-button-online-api-id {
    display: none !important;
}

/* Keep WooCommerce Place Order button visible */
body.woocommerce-checkout #place_order {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
/* Hide extra PayPal Express button */
#ppc-button-ppcp-gateway-v6,
#ppc-button-ppcp-gateway-v6 paypal-button,
.ppc-button-wrapper:has(#ppc-button-ppcp-gateway-v6) {
    display: none !important;
}

/* Keep Proceed to PayPal / Place order button visible */
body.woocommerce-checkout #place_order {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
