/* ============================================================
   WKP PREMIUM SINGLE PRODUCT V4
   Compact premium single-product layout
============================================================ */

.wkp-sp-v5-page,
.wkp-sp-v5-page *,
.wkp-sp-v5-page *::before,
.wkp-sp-v5-page *::after{
    box-sizing:border-box;
}

.wkp-sp-v5-page{
    --wkp-navy:#0B1E36;
    --wkp-deep:#041B34;
    --wkp-blue:#0B4AA1;
    --wkp-blue2:#1F67C2;
    --wkp-teal:#27A6B1;
    --wkp-teal2:#36B8BC;
    --wkp-text:#526477;
    --wkp-muted:#758397;
    --wkp-border:#DCE6EF;
    --wkp-soft:#F4F8FB;
    width:100%;
    overflow:hidden;
    padding:0 0 54px;
    color:var(--wkp-navy);
    background:
        radial-gradient(circle at 4% 6%,rgba(31,103,194,.05),transparent 24%),
        radial-gradient(circle at 96% 82%,rgba(39,166,177,.045),transparent 24%),
        linear-gradient(180deg,#FBFCFE 0%,#F4F8FB 100%);
    font-family:"Roboto Condensed",Arial,sans-serif !important;
}

.wkp-sp-v5-page *{
    font-family:"Roboto Condensed",Arial,sans-serif !important;
}

.wkp-sp-v5-shell{
    width:min(1450px,calc(100% - 48px));
    margin:0 auto;
}

/* Breadcrumb */
.wkp-sp-v5-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    overflow:hidden;
    padding:20px 0 15px;
    color:var(--wkp-muted);
    font-size:13px;
    font-weight:600;
    white-space:nowrap;
}

.wkp-sp-v5-breadcrumb a{
    flex:0 0 auto;
    color:var(--wkp-blue) !important;
    text-decoration:none !important;
}

.wkp-sp-v5-breadcrumb span:last-child{
    overflow:hidden;
    text-overflow:ellipsis;
}

/* ============================================================
   TOP - TWO INDEPENDENT CARDS, NO EMPTY RIGHT-SIDE SPACE
============================================================ */

.wkp-sp-v5-top{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:18px;
    align-items:start;
}

.wkp-sp-v5-gallery-card,
.wkp-sp-v5-summary-card,
.wkp-sp-v5-description-card,
.wkp-sp-v5-related-card{
    background:#fff;
    border:1px solid var(--wkp-border);
    border-radius:18px;
    box-shadow:0 11px 28px rgba(11,30,54,.06);
}

/* Gallery */
.wkp-sp-v5-gallery-card{
    padding:20px;
}

.wkp-sp-v5-main-image{
    position:relative;
    height:455px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:linear-gradient(145deg,#fff,#F9FBFD);
    border:1px solid #CBD9E5;
    border-radius:13px;
}

.wkp-sp-v5-main-image img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain !important;
    object-position:center !important;
}

.wkp-sp-v5-gallery-arrow{
    position:absolute;
    top:50%;
    z-index:6;
    width:38px !important;
    height:58px !important;
    min-width:38px !important;
    min-height:58px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:var(--wkp-blue) !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    transform:translateY(-50%);
    cursor:pointer;
    opacity:.92;
    transition:color .18s ease,transform .18s ease,opacity .18s ease;
}

.wkp-sp-v5-gallery-arrow--prev{
    left:12px;
}

.wkp-sp-v5-gallery-arrow--next{
    right:12px;
}

.wkp-sp-v5-gallery-arrow:hover{
    color:var(--wkp-teal) !important;
    opacity:1;
}

.wkp-sp-v5-gallery-arrow--prev:hover{
    transform:translate(-2px,-50%);
}

.wkp-sp-v5-gallery-arrow--next:hover{
    transform:translate(2px,-50%);
}

.wkp-sp-v5-gallery-arrow svg{
    width:30px;
    height:30px;
    fill:none;
    stroke:currentColor;
    stroke-width:2.2;
    stroke-linecap:round;
    stroke-linejoin:round;
    filter:drop-shadow(0 1px 1px rgba(255,255,255,.95));
}

.wkp-sp-v5-thumbs{
    display:flex;
    gap:9px;
    margin-top:10px;
    overflow-x:auto;
    padding:1px 1px 4px;
    scrollbar-width:thin;
    scrollbar-color:#B9CAD8 transparent;
}

.wkp-sp-v5-thumb{
    width:78px;
    height:78px;
    flex:0 0 78px;
    margin:0 !important;
    padding:5px !important;
    overflow:hidden;
    cursor:pointer;
    background:#fff !important;
    border:1px solid #D5E1EA !important;
    border-radius:9px !important;
    box-shadow:none !important;
    transition:.2s ease;
}

.wkp-sp-v5-thumb:hover,
.wkp-sp-v5-thumb.is-active{
    border-color:var(--wkp-teal) !important;
    box-shadow:0 5px 12px rgba(11,30,54,.08) !important;
}

.wkp-sp-v5-thumb img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    margin:0 !important;
    object-fit:contain !important;
}

/* Summary */
.wkp-sp-v5-summary-card{
    align-self:start;
    height:auto !important;
    min-height:0 !important;
    padding:31px 34px 29px;
}

.wkp-sp-v5-category{
    width:max-content;
    max-width:100%;
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--wkp-blue) !important;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
    text-decoration:none !important;
}

.wkp-sp-v5-category > span{
    width:33px;
    height:2px;
    background:linear-gradient(90deg,var(--wkp-teal),var(--wkp-blue));
}

body .wkp-sp-v5-page .wkp-sp-v5-title{
    margin:12px 0 16px !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:39px !important;
    line-height:1.04 !important;
    font-weight:800 !important;
    letter-spacing:-.024em !important;
    text-transform:none !important;
}

/* Compact side summary */
.wkp-sp-v5-short-card{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:flex-start;
    margin-bottom:16px;
    padding:15px 16px;
    background:linear-gradient(135deg,#F8FBFE,#EEF8FA);
    border:1px solid #D6E7EC;
    border-radius:12px;
}

.wkp-sp-v5-short-icon{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--wkp-teal);
    background:#fff;
    border:1px solid #D5E7EC;
    border-radius:50%;
}

.wkp-sp-v5-short-icon svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.wkp-sp-v5-short-card p{
    margin:0 !important;
    color:var(--wkp-text) !important;
    font-size:15px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
}

/* Product-specific quick facts */
.wkp-sp-v5-facts{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
    gap:9px;
    margin-bottom:17px;
}

.wkp-sp-v5-fact{
    min-width:0;
    padding:12px 10px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    align-items:center;
    background:#fff;
    border:1px solid var(--wkp-border);
    border-radius:10px;
}

.wkp-sp-v5-fact-icon{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--wkp-blue);
    background:#F2F8FB;
    border:1px solid #D9E7EF;
    border-radius:9px;
}

.wkp-sp-v5-fact-icon svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.wkp-sp-v5-fact strong{
    display:block;
    margin-bottom:3px;
    overflow:hidden;
    color:var(--wkp-navy);
    font-size:10px;
    line-height:1.05;
    font-weight:800;
    text-transform:uppercase;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.wkp-sp-v5-fact span{
    display:block;
    overflow:hidden;
    color:var(--wkp-text);
    font-size:11px;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* CTA and share */
.wkp-sp-v5-action-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:2px;
}

.wkp-sp-v5-cta-wrap{
    flex:1;
    min-width:0;
}

.wkp-sp-v5-buy,
.wkp-sp-v5-native-cart .single_add_to_cart_button,
.wkp-sp-v5-native-cart .single_add_to_cart_button.button{
    width:min(100%,345px) !important;
    min-height:49px !important;
    margin:0 !important;
    padding:0 19px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:11px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:linear-gradient(90deg,var(--wkp-blue),var(--wkp-blue2)) !important;
    border:0 !important;
    border-radius:9px !important;
    box-shadow:0 8px 18px rgba(11,74,161,.16) !important;
    text-decoration:none !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:800 !important;
    letter-spacing:.025em !important;
    text-transform:uppercase !important;
}

.wkp-sp-v5-buy:hover,
.wkp-sp-v5-native-cart .single_add_to_cart_button:hover{
    color:#fff !important;
    background:linear-gradient(90deg,#083F89,var(--wkp-teal)) !important;
}

.wkp-sp-v5-buy svg{
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.wkp-sp-v5-native-cart .price{
    display:none !important;
}

.wkp-sp-v5-native-cart form.cart{
    margin:0 !important;
}

.wkp-sp-v5-share{
    flex:0 0 auto;
    display:flex;
    gap:7px;
}

.wkp-sp-v5-share a{
    width:35px;
    height:35px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--wkp-blue) !important;
    background:#fff;
    border:1px solid #CBD9E6;
    border-radius:50%;
    text-decoration:none !important;
    transition:.2s ease;
}

.wkp-sp-v5-share a:hover{
    color:#fff !important;
    background:linear-gradient(135deg,var(--wkp-blue),var(--wkp-teal));
    border-color:transparent;
}

.wkp-sp-v5-share svg{
    width:14px;
    height:14px;
    fill:currentColor;
}

/* Category row */
.wkp-sp-v5-category-line{
    margin-top:18px;
    padding-top:16px;
    display:grid;
    grid-template-columns:37px minmax(0,1fr);
    gap:10px;
    align-items:center;
    border-top:1px solid var(--wkp-border);
}

.wkp-sp-v5-category-icon{
    width:37px;
    height:37px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--wkp-teal);
    background:#F2F9FA;
    border:1px solid #D6E8EC;
    border-radius:10px;
}

.wkp-sp-v5-category-icon svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.wkp-sp-v5-category-line span{
    display:block;
    margin-bottom:2px;
    color:var(--wkp-muted);
    font-size:10px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.wkp-sp-v5-category-line a,
.wkp-sp-v5-category-line strong{
    color:var(--wkp-blue) !important;
    font-size:13px;
    line-height:1.2;
    font-weight:800;
    text-decoration:none !important;
}

/* ============================================================
   LONG DESCRIPTION - PRESERVE WHATEVER IS SAVED IN WOOCOMMERCE
============================================================ */

.wkp-sp-v5-description-card{
    margin-top:18px;
    padding:25px 28px 29px;
}

.wkp-sp-v5-section-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-bottom:15px;
    border-bottom:1px solid var(--wkp-border);
}

.wkp-sp-v5-section-head > div{
    display:flex;
    align-items:flex-start;
    gap:11px;
}

.wkp-sp-v5-section-head > div > span{
    width:35px;
    height:3px;
    margin-top:10px;
    flex:0 0 35px;
    background:linear-gradient(90deg,var(--wkp-teal),var(--wkp-blue));
    border-radius:10px;
}

.wkp-sp-v5-section-head small{
    display:block;
    margin-bottom:4px;
    color:var(--wkp-teal);
    font-size:10px;
    line-height:1;
    font-weight:800;
    letter-spacing:.13em;
}

body .wkp-sp-v5-page .wkp-sp-v5-section-head h2{
    margin:0 !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:32px !important;
    line-height:1.05 !important;
    font-weight:800 !important;
    letter-spacing:-.018em !important;
    text-transform:none !important;
}

.wkp-sp-v5-section-head > a{
    flex:0 0 auto;
    color:var(--wkp-blue) !important;
    font-size:12px;
    font-weight:800;
    text-decoration:none !important;
}

/* The actual WooCommerce long description. No auto-generated cards,
   no splitting, no rewriting: saved content simply receives this design. */
.wkp-sp-v5-long-description{
    position:relative;
    margin-top:18px;
    overflow:hidden;
    background:linear-gradient(135deg,#FFFFFF 0%,#FBFDFE 100%);
    border:1px solid #D9E5ED;
    border-radius:14px;
    box-shadow:0 7px 20px rgba(11,30,54,.035);
}

.wkp-sp-v5-long-description__accent{
    position:absolute;
    top:0;
    left:0;
    width:4px;
    height:100%;
    background:linear-gradient(180deg,var(--wkp-teal),var(--wkp-blue));
}

.wkp-sp-v5-rich-description{
    width:100%;
    padding:27px 31px 28px 33px;
    color:var(--wkp-text);
}

.wkp-sp-v5-rich-description > *:first-child{
    margin-top:0 !important;
}

.wkp-sp-v5-rich-description > *:last-child{
    margin-bottom:0 !important;
}

.wkp-sp-v5-rich-description p{
    margin:0 0 16px !important;
    color:var(--wkp-text) !important;
    font-size:16px !important;
    line-height:1.78 !important;
    font-weight:400 !important;
}

.wkp-sp-v5-rich-description strong,
.wkp-sp-v5-rich-description b{
    color:var(--wkp-navy) !important;
    font-weight:800 !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-rich-description h2,
body .wkp-sp-v5-page .wkp-sp-v5-rich-description h3,
body .wkp-sp-v5-page .wkp-sp-v5-rich-description h4,
body .wkp-sp-v5-page .wkp-sp-v5-rich-description h5,
body .wkp-sp-v5-page .wkp-sp-v5-rich-description h6{
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-weight:800 !important;
    text-transform:none !important;
    letter-spacing:-.01em !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-rich-description h2{
    margin:26px 0 11px !important;
    font-size:27px !important;
    line-height:1.18 !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-rich-description h3{
    margin:23px 0 10px !important;
    font-size:22px !important;
    line-height:1.2 !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-rich-description h4{
    margin:20px 0 9px !important;
    font-size:18px !important;
    line-height:1.22 !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-rich-description h5,
body .wkp-sp-v5-page .wkp-sp-v5-rich-description h6{
    margin:18px 0 8px !important;
    font-size:16px !important;
    line-height:1.25 !important;
}

.wkp-sp-v5-rich-description ul,
.wkp-sp-v5-rich-description ol{
    margin:13px 0 18px 22px !important;
    padding:0 !important;
}

.wkp-sp-v5-rich-description li{
    margin:0 0 8px !important;
    padding-left:3px !important;
    color:var(--wkp-text) !important;
    font-size:15px !important;
    line-height:1.65 !important;
    font-weight:400 !important;
}

.wkp-sp-v5-rich-description li::marker{
    color:var(--wkp-teal);
    font-weight:800;
}

.wkp-sp-v5-rich-description a{
    color:var(--wkp-blue) !important;
    text-decoration:underline !important;
    text-decoration-thickness:1px !important;
    text-underline-offset:3px;
}

.wkp-sp-v5-rich-description blockquote{
    margin:20px 0 !important;
    padding:18px 21px !important;
    color:var(--wkp-navy) !important;
    background:#F2F8FB;
    border:0 !important;
    border-left:3px solid var(--wkp-teal) !important;
    border-radius:0 10px 10px 0;
}

.wkp-sp-v5-rich-description blockquote p{
    color:inherit !important;
}

.wkp-sp-v5-rich-description img{
    max-width:100% !important;
    height:auto !important;
    border-radius:12px;
}

.wkp-sp-v5-rich-description figure{
    max-width:100% !important;
    margin:20px 0 !important;
}

.wkp-sp-v5-rich-description figcaption{
    margin-top:7px;
    color:var(--wkp-muted);
    font-size:12px;
    line-height:1.45;
}

.wkp-sp-v5-rich-description table{
    width:100%;
    margin:20px 0 !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--wkp-border) !important;
    border-radius:10px;
}

.wkp-sp-v5-rich-description th,
.wkp-sp-v5-rich-description td{
    padding:11px 13px !important;
    color:var(--wkp-text) !important;
    border:0 !important;
    border-bottom:1px solid var(--wkp-border) !important;
    font-size:14px !important;
    line-height:1.45 !important;
    text-align:left !important;
}

.wkp-sp-v5-rich-description th{
    color:var(--wkp-navy) !important;
    background:#F5F9FC;
    font-weight:800 !important;
}

.wkp-sp-v5-rich-description tr:last-child th,
.wkp-sp-v5-rich-description tr:last-child td{
    border-bottom:0 !important;
}

.wkp-sp-v5-rich-description hr{
    margin:25px 0 !important;
    border:0 !important;
    border-top:1px solid var(--wkp-border) !important;
}

/* WooCommerce attributes remain separate only when actual product attributes exist. */
.wkp-sp-v5-additional{
    margin-top:20px;
    padding:20px 22px 22px;
    background:#F8FBFD;
    border:1px solid var(--wkp-border);
    border-radius:13px;
}

.wkp-sp-v5-panel-title{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
}

.wkp-sp-v5-panel-title > span{
    width:30px;
    height:3px;
    flex:0 0 30px;
    background:linear-gradient(90deg,var(--wkp-teal),var(--wkp-blue));
    border-radius:10px;
}

body .wkp-sp-v5-page .wkp-sp-v5-panel-title h3{
    margin:0 !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:20px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
}

.wkp-sp-v5-attributes table{
    width:100%;
    margin:0 !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--wkp-border) !important;
    border-radius:10px;
}

.wkp-sp-v5-attributes th,
.wkp-sp-v5-attributes td{
    padding:10px 13px !important;
    border:0 !important;
    border-bottom:1px solid var(--wkp-border) !important;
    color:var(--wkp-text) !important;
    font-size:13px !important;
    line-height:1.4 !important;
    text-align:left !important;
}

.wkp-sp-v5-attributes tr:last-child th,
.wkp-sp-v5-attributes tr:last-child td{
    border-bottom:0 !important;
}

.wkp-sp-v5-attributes th{
    width:220px;
    color:var(--wkp-navy) !important;
    background:#F3F8FB;
    font-weight:800 !important;
}

.wkp-sp-v5-attributes p{
    margin:0 !important;
}

/* ============================================================
   RELATED PRODUCTS
============================================================ */

.wkp-sp-v5-related-card{
    margin-top:18px;
    padding:27px 27px 29px;
}

.wkp-sp-v5-related-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:17px;
}

.wkp-sp-v5-related-heading > div{
    display:flex;
    align-items:center;
    gap:11px;
}

.wkp-sp-v5-related-heading > div > span{
    width:34px;
    height:3px;
    background:linear-gradient(90deg,var(--wkp-teal),var(--wkp-blue));
    border-radius:10px;
}

body .wkp-sp-v5-page .wkp-sp-v5-related-heading h2{
    margin:0 !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:26px !important;
    line-height:1.1 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
}

.wkp-sp-v5-related-heading > a{
    color:var(--wkp-blue) !important;
    font-size:12px;
    font-weight:800;
    text-decoration:none !important;
}

.wkp-sp-v5-related-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px;
}

.wkp-sp-v5-related-item{
    min-width:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid var(--wkp-border);
    border-radius:13px;
    box-shadow:0 6px 16px rgba(11,30,54,.04);
    transition:.22s ease;
}

.wkp-sp-v5-related-item:hover{
    transform:translateY(-3px);
    border-color:rgba(39,166,177,.4);
    box-shadow:0 12px 24px rgba(11,30,54,.075);
}

.wkp-sp-v5-related-image{
    height:218px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:linear-gradient(145deg,#FCFDFE,#F3F8FB);
}

.wkp-sp-v5-related-image img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    margin:0 !important;
    object-fit:contain !important;
    transition:transform .3s ease;
}

.wkp-sp-v5-related-item:hover .wkp-sp-v5-related-image img{
    transform:scale(1.03);
}

.wkp-sp-v5-related-body{
    flex:1;
    display:flex;
    flex-direction:column;
    padding:13px 13px 12px;
}

.wkp-sp-v5-related-category{
    display:block;
    margin-bottom:6px;
    color:var(--wkp-teal);
    font-size:9px;
    line-height:1;
    font-weight:800;
    letter-spacing:.06em;
}

body .wkp-sp-v5-page .wkp-sp-v5-related-body h3{
    margin:0 0 12px !important;
    color:var(--wkp-navy) !important;
    font-size:15px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    text-transform:none !important;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.wkp-sp-v5-related-body h3 a{
    color:inherit !important;
    text-decoration:none !important;
}

.wkp-sp-v5-related-buy{
    width:100%;
    min-height:38px;
    margin-top:auto;
    padding:0 12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:9px;
    color:#fff !important;
    background:linear-gradient(90deg,var(--wkp-blue),var(--wkp-blue2));
    border-radius:7px;
    text-decoration:none !important;
    font-size:11px;
    font-weight:800;
}

.wkp-sp-v5-related-item:nth-child(even) .wkp-sp-v5-related-buy{
    background:linear-gradient(90deg,#169CAC,#25AAB3);
}

.wkp-sp-v5-related-buy svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* Tags at bottom */
.wkp-sp-v5-tags{
    margin-top:18px;
    padding:16px 18px;
    display:flex;
    align-items:flex-start;
    gap:11px;
    background:#fff;
    border:1px solid var(--wkp-border);
    border-radius:12px;
}

.wkp-sp-v5-tags > strong{
    flex:0 0 auto;
    color:var(--wkp-navy);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}

.wkp-sp-v5-tags > div{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.wkp-sp-v5-tags a{
    padding:4px 8px;
    color:var(--wkp-blue) !important;
    background:#F3F8FB;
    border:1px solid #DCE7EF;
    border-radius:999px;
    font-size:11px;
    line-height:1.15;
    font-weight:700;
    text-decoration:none !important;
}

.wkp-sp-v5-empty{
    margin-top:30px;
    padding:45px;
    background:#fff;
    border:1px solid var(--wkp-border);
    border-radius:16px;
}

/* ============================================================
   RESPONSIVE
============================================================ */

@media(max-width:1100px){
    .wkp-sp-v5-top{
        grid-template-columns:1fr;
    }

    .wkp-sp-v5-main-image{
        height:530px;
    }

    .wkp-sp-v5-related-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){
    .wkp-sp-v5-page{
        padding-bottom:40px;
    }

    .wkp-sp-v5-shell{
        width:calc(100% - 24px);
    }

    .wkp-sp-v5-breadcrumb{
        padding:15px 0 12px;
        font-size:12px;
    }

    .wkp-sp-v5-gallery-card,
    .wkp-sp-v5-summary-card,
    .wkp-sp-v5-description-card,
    .wkp-sp-v5-related-card{
        border-radius:14px;
    }

    .wkp-sp-v5-gallery-card{
        padding:13px;
    }

    .wkp-sp-v5-main-image{
        height:365px;
    }

    .wkp-sp-v5-gallery-arrow{
        width:32px !important;
        height:48px !important;
        min-width:32px !important;
        min-height:48px !important;
    }

    .wkp-sp-v5-gallery-arrow--prev{
        left:5px;
    }

    .wkp-sp-v5-gallery-arrow--next{
        right:5px;
    }

    .wkp-sp-v5-gallery-arrow svg{
        width:25px;
        height:25px;
    }

    .wkp-sp-v5-thumb{
        width:68px;
        height:68px;
        flex-basis:68px;
    }

    .wkp-sp-v5-summary-card{
        padding:25px 19px 22px;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-title{
        font-size:32px !important;
    }

    .wkp-sp-v5-short-card{
        grid-template-columns:36px minmax(0,1fr);
        padding:13px;
    }

    .wkp-sp-v5-short-icon{
        width:36px;
        height:36px;
    }

    .wkp-sp-v5-short-card p{
        font-size:14px !important;
    }

    .wkp-sp-v5-facts{
        grid-template-columns:1fr;
    }

    .wkp-sp-v5-fact{
        padding:10px 11px;
    }

    .wkp-sp-v5-action-row{
        align-items:flex-start;
        flex-direction:column;
    }

    .wkp-sp-v5-buy,
    .wkp-sp-v5-native-cart .single_add_to_cart_button,
    .wkp-sp-v5-native-cart .single_add_to_cart_button.button{
        width:100% !important;
    }

    .wkp-sp-v5-description-card{
        padding:24px 18px 25px;
    }

    .wkp-sp-v5-section-head{
        align-items:flex-start;
    }

    .wkp-sp-v5-section-head > a{
        display:none;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-section-head h2{
        font-size:27px !important;
    }

    .wkp-sp-v5-long-description{
        margin-top:15px;
        border-radius:11px;
    }

    .wkp-sp-v5-rich-description{
        padding:21px 18px 22px 21px;
    }

    .wkp-sp-v5-rich-description p{
        font-size:15px !important;
        line-height:1.7 !important;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-rich-description h2{
        font-size:23px !important;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-rich-description h3{
        font-size:20px !important;
    }

    .wkp-sp-v5-additional{
        padding:17px 15px 18px;
    }

    .wkp-sp-v5-attributes th{
        width:125px;
    }

    .wkp-sp-v5-related-card{
        padding:23px 15px 18px;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-related-heading h2{
        font-size:22px !important;
    }

    .wkp-sp-v5-related-heading > a{
        display:none;
    }

    .wkp-sp-v5-related-grid{
        grid-template-columns:1fr;
    }

    .wkp-sp-v5-related-image{
        height:285px;
    }

    .wkp-sp-v5-tags{
        flex-direction:column;
    }
}

@media(max-width:420px){
    .wkp-sp-v5-main-image{
        height:315px;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-title{
        font-size:29px !important;
    }
}

/* ============================================================
   V5 DESCRIPTION REFINEMENT
   Compact heading + real long-form copy + structured information
============================================================ */

.wkp-sp-v5-description-card{
    padding:24px 27px 27px;
}

.wkp-sp-v5-section-head{
    padding-bottom:14px;
}

.wkp-sp-v5-section-head > div{
    align-items:center;
    gap:11px;
}

.wkp-sp-v5-section-head > div > span{
    margin-top:0;
}

body .wkp-sp-v5-page .wkp-sp-v5-section-head h2{
    margin:0 !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-family:"Roboto Condensed",Arial,sans-serif !important;
    font-size:34px !important;
    line-height:1.05 !important;
    font-weight:800 !important;
    letter-spacing:-.018em !important;
    text-transform:none !important;
}

.wkp-sp-v5-description-layout{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(310px,.72fr);
    gap:18px;
    align-items:start;
    margin-top:18px;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-long-description{
    margin-top:0;
    min-width:0;
    background:linear-gradient(145deg,#FFFFFF 0%,#F8FCFE 100%);
    border:1px solid #D7E5EE;
    border-radius:15px;
    box-shadow:0 8px 22px rgba(11,30,54,.045);
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description{
    padding:26px 29px 28px 32px;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description p{
    margin:0 0 15px !important;
    color:#526477 !important;
    font-size:15px !important;
    line-height:1.72 !important;
    font-weight:400 !important;
}

body .wkp-sp-v5-page .wkp-sp-v5-description-layout .wkp-sp-v5-rich-description h3{
    margin:22px 0 11px !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:20px !important;
    line-height:1.18 !important;
    font-weight:800 !important;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description ul,
.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description ol{
    margin:11px 0 4px 0 !important;
    padding:0 !important;
    list-style:none !important;
    display:grid;
    gap:9px;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description li{
    position:relative;
    margin:0 !important;
    padding:10px 12px 10px 34px !important;
    color:#526477 !important;
    background:#FFFFFF;
    border:1px solid #DCE8EF;
    border-radius:9px;
    font-size:14px !important;
    line-height:1.5 !important;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description li::before{
    content:"✓";
    position:absolute;
    top:10px;
    left:11px;
    width:16px;
    height:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#FFFFFF;
    background:linear-gradient(135deg,var(--wkp-teal),var(--wkp-blue));
    border-radius:50%;
    font-size:10px;
    line-height:1;
    font-weight:800;
}

.wkp-sp-v5-description-layout .wkp-sp-v5-rich-description li::marker{
    content:"";
}

/* Product specs from this exact listing */
.wkp-sp-v5-spec-card{
    min-width:0;
    padding:20px;
    background:linear-gradient(180deg,#F4F9FC 0%,#EEF6FA 100%);
    border:1px solid #D7E5EE;
    border-radius:15px;
    box-shadow:0 8px 22px rgba(11,30,54,.035);
}

.wkp-sp-v5-spec-card .wkp-sp-v5-panel-title{
    margin-bottom:13px;
}

body .wkp-sp-v5-page .wkp-sp-v5-spec-card .wkp-sp-v5-panel-title h3{
    margin:0 !important;
    color:var(--wkp-navy) !important;
    -webkit-text-fill-color:var(--wkp-navy) !important;
    background:none !important;
    font-size:18px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    text-transform:none !important;
}

.wkp-sp-v5-spec-list{
    overflow:hidden;
    background:#FFFFFF;
    border:1px solid #DCE7EE;
    border-radius:11px;
}

.wkp-sp-v5-spec-row{
    display:grid;
    grid-template-columns:minmax(105px,.78fr) minmax(0,1.22fr);
    gap:12px;
    padding:9px 11px;
    border-bottom:1px solid #E6EEF3;
}

.wkp-sp-v5-spec-row:last-child{
    border-bottom:0;
}

.wkp-sp-v5-spec-row strong{
    color:var(--wkp-navy);
    font-size:12px;
    line-height:1.35;
    font-weight:800;
}

.wkp-sp-v5-spec-row span{
    min-width:0;
    color:var(--wkp-text);
    font-size:12px;
    line-height:1.42;
    font-weight:400;
    overflow-wrap:anywhere;
}

@media(max-width:1050px){
    .wkp-sp-v5-description-layout{
        grid-template-columns:1fr;
    }

    .wkp-sp-v5-spec-list{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:0;
    }

    .wkp-sp-v5-spec-row{
        border-right:1px solid #E6EEF3;
    }
}

@media(max-width:700px){
    .wkp-sp-v5-description-card{
        padding:21px 17px 22px;
    }

    body .wkp-sp-v5-page .wkp-sp-v5-section-head h2{
        font-size:27px !important;
    }

    .wkp-sp-v5-description-layout{
        margin-top:14px;
        gap:14px;
    }

    .wkp-sp-v5-description-layout .wkp-sp-v5-rich-description{
        padding:21px 17px 22px 20px;
    }

    .wkp-sp-v5-description-layout .wkp-sp-v5-rich-description p{
        font-size:14px !important;
        line-height:1.68 !important;
    }

    .wkp-sp-v5-spec-card{
        padding:16px;
    }

    .wkp-sp-v5-spec-list{
        display:block;
    }

    .wkp-sp-v5-spec-row{
        grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);
        border-right:0;
    }
}
