/* =====================================================
   5K / Ultra Wide
===================================================== */

@media (min-width:2560px){

    .product-top{
        max-width:1850px;
        grid-template-columns:120px 760px 560px;
        gap:120px;
    }

    .gallery-main{
        width:760px;
    }

    .gallery-thumbs{
        width:120px;
    }

    .gallery-thumbs img{
        width:100px;
    }

    .single-product-info{
        max-width:560px;
        padding-top:40px;
    }

    .product-title{
        font-size:82px;
    }

    .product-price{
        font-size:42px;
    }

    .product-description{
        font-size:21px;
        line-height:2;
    }

}

/* =====================================================
   1800px+
===================================================== */

@media (min-width:1800px){

    .product-top{
        max-width:1750px;
        grid-template-columns:100px 900px 500px;
        column-gap:100px;
    }

    .gallery-main{
        width:900px;
    }

    .single-product-info{
        max-width:500px;
    }

    .product-title{
        font-size:72px;
    }

}

/* =====================================================
   Laptop desktop
   Existing desktop scaling. Do not move below tablet.
===================================================== */

@media (max-width:1440px){

    .product-top{
        grid-template-columns:70px 560px 380px;
        gap:35px;
        max-width:1320px;
    }

    .gallery-main{
        width:560px;
    }

    .single-product-info{
        max-width:440px;
        padding-top:60px;
    }

    .product-title{
        font-size:58px;
    }

    .product-price{
        font-size:24px;
        margin-bottom:30px;
    }

    .product-description{
        font-size:17px;
        line-height:1.8;
    }

    .product-benefits{
        font-size:12px;
        gap:14px;
    }

    .color-buttons{
        gap:12px;
    }

    .size-buttons{
        gap:8px;
    }

    .size-buttons .variation-button{
        min-width:auto;
        padding:0 18px;
    }

}

/* =====================================================
   Narrow desktop preserve — 1181px–1280px
   This keeps the old <=1280 desktop adjustments out of
   tablet rules while preserving desktop behavior.
===================================================== */

@media (min-width:1181px) and (max-width:1280px){

    .header-inner{
        padding-left:34px !important;
        padding-right:34px !important;
    }

    .header-nav{
        gap:28px !important;
    }

    .header-actions{
        gap:20px !important;
    }

    .category-page,
    .single-product-page,
    .swiat-cart-page,
    .checkout-page,
    .account-page,
    .contact-page,
    .legal-page,
    .search-page{
        padding-left:34px !important;
        padding-right:34px !important;
    }

}

/* =====================================================
   Shared tablet/mobile safety
===================================================== */

@media (max-width:1180px){

    html,
    body{
        width:100%;
        max-width:100%;
        overflow-x:hidden;
    }

    *,
    *::before,
    *::after{
        box-sizing:border-box;
    }

    img,
    video,
    iframe{
        max-width:100%;
    }

    main{
        width:100%;
        max-width:100%;
        overflow-x:hidden;
    }

    .site-header{
        width:100% !important;
        max-width:100% !important;
    }

    .header-left,
    .header-center,
    .header-right,
    .header-nav,
    .header-actions,
    .category-hero,
    .category-product-grid,
    .product-top,
    .single-product-info,
    .footer,
    .footer-top,
    .footer-bottom{
        min-width:0 !important;
    }

}

/* =====================================================
   Tablet — 769px–1180px
===================================================== */

@media (min-width:769px) and (max-width:1180px){

    body{
        background:#f5f2ee;
    }

    /* Header */

    .site-header{
        position:relative !important;
        background:rgba(244, 238, 231, .97) !important;
        border-bottom:1px solid rgba(45, 41, 38, .08) !important;
        backdrop-filter:blur(16px) !important;
    }

    body.home .site-header{
        position:absolute !important;
        background:transparent !important;
        border-bottom:0 !important;
        backdrop-filter:none !important;
    }

    .header-inner,
    body:not(.home) .header-inner,
    body.page .header-inner,
    body.woocommerce-cart .header-inner,
    body.woocommerce-checkout .header-inner,
    body.woocommerce-account .header-inner{
        width:100% !important;
        max-width:100% !important;
        padding:24px 42px 22px !important;
        display:grid !important;
        grid-template-columns:minmax(0, 1fr) auto !important;
        gap:18px 28px !important;
        align-items:center !important;
    }

    .header-left{
        width:auto !important;
        min-width:0 !important;
    }

    .header-center,
    .header-nav{
        display:none !important;
    }

    .header-right,
    .header-actions{
        width:auto !important;
        min-width:0 !important;
        display:flex !important;
        justify-content:flex-end !important;
        align-items:center !important;
        gap:16px !important;
    }

    .header-logo img,
    body:not(.home) .header-logo img,
    body.page .header-logo img,
    body.woocommerce-cart .header-logo img,
    body.woocommerce-checkout .header-logo img,
    body.woocommerce-account .header-logo img{
        height:42px !important;
        max-width:230px !important;
    }

    .header-actions a,
    body:not(.home) .header-actions a,
    body.page .header-actions a,
    body.woocommerce-cart .header-actions a,
    body.woocommerce-checkout .header-actions a,
    body.woocommerce-account .header-actions a{
        font-size:10px !important;
        line-height:1.2 !important;
        letter-spacing:.16em !important;
        white-space:nowrap !important;
    }

    body:not(.home) .header-actions a,
    body.page .header-actions a,
    body.woocommerce-cart .header-actions a,
    body.woocommerce-checkout .header-actions a,
    body.woocommerce-account .header-actions a{
        color:#2d2926 !important;
    }

    body.home .header-actions a{
        color:#f5f0e8 !important;
    }

    .header-cart-link{
        display:inline-flex !important;
        align-items:baseline !important;
        gap:5px !important;
        white-space:nowrap !important;
    }

    .header-menu-toggle{
        width:38px !important;
        height:38px !important;
        padding:0 !important;
        border:1px solid currentColor !important;
        border-radius:0 !important;
        background:transparent !important;
        color:#2d2926 !important;
        display:inline-flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:5px !important;
        cursor:pointer !important;
    }

    body.home .header-menu-toggle{
        color:#f5f0e8 !important;
    }

    body:not(.home) .header-menu-toggle,
    body.page .header-menu-toggle,
    body.woocommerce-cart .header-menu-toggle,
    body.woocommerce-checkout .header-menu-toggle,
    body.woocommerce-account .header-menu-toggle{
        color:#2d2926 !important;
    }

    .header-menu-toggle span{
        width:16px !important;
        height:1px !important;
        display:block !important;
        background:currentColor !important;
        transition:transform .25s ease, opacity .25s ease !important;
    }

    .header-menu-toggle.is-open span:first-child{
        transform:translateY(3px) rotate(45deg) !important;
    }

    .header-menu-toggle.is-open span:last-child{
        transform:translateY(-3px) rotate(-45deg) !important;
    }

    .header-mobile-nav{
        grid-column:1 / -1 !important;
        width:100% !important;
        max-width:100% !important;
        margin-top:4px !important;
        padding:28px 0 8px !important;
        border-top:1px solid rgba(45, 41, 38, .12) !important;
        display:none !important;
        grid-template-columns:1fr !important;
        gap:18px !important;
        background:rgba(244, 238, 231, .98) !important;
    }

    .header-mobile-nav.is-open{
        display:grid !important;
    }

    .header-mobile-nav a{
        color:#2d2926 !important;
        text-decoration:none !important;
        font-size:13px !important;
        line-height:1.2 !important;
        letter-spacing:.22em !important;
        text-transform:uppercase !important;
        white-space:nowrap !important;
    }

    /* Home */

    .home-hero{
        min-height:82svh !important;
        padding:150px 42px 86px !important;
        align-items:center !important;
        overflow:hidden !important;
    }

    .home-hero .hero-content{
        width:min(560px, 72vw) !important;
        max-width:100% !important;
        transform:none !important;
    }

    .home-hero .hero-content h1{
        font-size:clamp(62px, 9vw, 98px) !important;
    }

    .story{
        width:100% !important;
        max-width:840px !important;
        margin:110px auto 80px !important;
        padding:0 42px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:44px !important;
    }

    .story-text{
        max-width:620px !important;
    }

    .story-text h2{
        max-width:620px !important;
        font-size:clamp(42px, 6vw, 66px) !important;
    }

    .story-image img{
        width:100% !important;
        height:auto !important;
        min-height:460px !important;
        aspect-ratio:4 / 3 !important;
    }

    .collections-intro{
        margin:120px auto 72px !important;
        padding:0 42px !important;
    }

    .collections-grid{
        width:100% !important;
        max-width:100% !important;
        padding:0 42px 110px !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:28px !important;
    }

    .collection-content{
        left:34px !important;
        right:34px !important;
        bottom:34px !important;
    }

    .collection-content h3{
        font-size:clamp(42px, 6vw, 68px) !important;
    }

    .home-new-products{
        margin:0 auto 110px !important;
        padding:0 42px !important;
    }

    .home-new-products-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:42px 28px !important;
    }

    .home-new-product-card:nth-child(2){
        margin-top:0 !important;
    }

    .journal-section{
        width:100% !important;
        max-width:100% !important;
        margin:80px auto 150px !important;
        padding:0 42px !important;
    }

    .journal-layout{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows:none !important;
        gap:1px !important;
    }

    .journal-layout .card{
        grid-column:auto !important;
        grid-row:auto !important;
        min-height:280px !important;
    }

    .text-card{
        min-height:280px !important;
    }

    /* Category */

    body:not(.home) .category-page,
    .category-page{
        width:100% !important;
        max-width:100% !important;
        padding:64px 42px 100px !important;
        overflow:hidden !important;
    }

    body:not(.home) .category-hero{
        margin-top:0 !important;
    }

    .category-hero{
        width:100% !important;
        max-width:100% !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important;
        gap:36px !important;
        align-items:center !important;
        overflow:hidden !important;
    }

    .category-hero-content{
        min-width:0 !important;
    }

    .category-hero h1,
    .category-hero-content h1{
        font-size:clamp(58px, 8vw, 92px) !important;
        line-height:.95 !important;
        overflow-wrap:anywhere !important;
    }

    .category-hero p,
    .category-hero-content p{
        max-width:100% !important;
        font-size:clamp(20px, 2.6vw, 28px) !important;
        line-height:1.45 !important;
    }

    .category-hero-image,
    .category-hero .hero-image{
        width:100% !important;
        min-height:0 !important;
        height:clamp(440px, 58vw, 620px) !important;
        overflow:hidden !important;
    }

    .category-hero-image img,
    .category-hero .hero-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .category-editorial-block{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:36px !important;
        align-items:center !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .category-editorial-image,
    .category-editorial-content{
        min-width:0 !important;
    }

    .category-editorial-image img{
        width:100% !important;
        height:auto !important;
        display:block !important;
    }

    .shop-toolbar{
        width:100% !important;
        max-width:100% !important;
        margin:58px auto 50px !important;
        padding:0 0 24px !important;
    }

    .category-product-grid,
    .category-product-grid--featured,
    .category-product-grid--three,
    .category-product-grid--four,
    .products-grid,
    .category-products,
    .woocommerce ul.products,
    .products{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:52px !important;
        padding-left:0 !important;
        padding-right:0 !important;
        overflow:hidden !important;
    }

    .category-product-grid .product-card,
    .category-product-grid li.product,
    .product-card,
    .woocommerce ul.products li.product,
    .products li.product{
        min-width:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .category-product-grid .product-info,
    .category-product-grid--featured .product-info,
    .category-product-grid--three .product-info,
    .category-product-grid--four .product-info,
    .product-card .product-info{
        display:block !important;
        min-width:0 !important;
        padding-top:18px !important;
    }

    .product-card-colors,
    .product-card-sizes,
    .category-product-grid .product-card-colors,
    .category-product-grid .product-card-sizes,
    .woocommerce ul.products li.product [class*="color"],
    .woocommerce ul.products li.product [class*="kolor"],
    .woocommerce ul.products li.product [class*="swatch"],
    .woocommerce ul.products li.product [class*="size"],
    .woocommerce ul.products li.product [class*="rozmiar"]{
        display:none !important;
    }

    .category-premium{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:64px 42px 100px !important;
        overflow:hidden !important;
    }

    .category-hero-editorial{
        width:100% !important;
        max-width:100% !important;
        min-height:0 !important;
        display:grid !important;
        grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important;
        overflow:hidden !important;
    }

    .category-hero-editorial .category-hero-content{
        min-width:0 !important;
        padding:70px 42px !important;
    }

    .category-hero-editorial .category-hero-image{
        width:100% !important;
        min-height:0 !important;
        height:clamp(440px, 58vw, 620px) !important;
        overflow:hidden !important;
    }

    .category-hero-editorial .category-hero-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .category-toolbar-premium{
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        padding:30px 0 !important;
        display:flex !important;
        flex-wrap:wrap !important;
        gap:20px !important;
    }

    .category-toolbar-right{
        min-width:0 !important;
        flex-wrap:wrap !important;
    }

    body .category-premium .category-wide-story,
    body .category-premium .category-split-banner{
        width:100% !important;
        max-width:100% !important;
        min-height:0 !important;
        margin:58px auto !important;
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        overflow:hidden !important;
    }

    body .category-premium .category-wide-story-image,
    body .category-premium .category-split-image{
        width:100% !important;
        min-width:0 !important;
        height:100% !important;
        overflow:hidden !important;
    }

    body .category-premium .category-wide-story-image img,
    body .category-premium .category-split-image img{
        width:100% !important;
        height:100% !important;
        min-height:430px !important;
        object-fit:cover !important;
    }

    body .category-premium .category-wide-story-content,
    body .category-premium .category-split-content{
        min-width:0 !important;
        min-height:0 !important;
        padding:58px 42px !important;
    }

    body .category-premium .category-wide-story-content h2,
    body .category-premium .category-split-content h2{
        font-size:clamp(34px, 5vw, 56px) !important;
        overflow-wrap:anywhere !important;
    }

    .category-benefit-bar{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        height:auto !important;
        min-height:0 !important;
        overflow:hidden !important;
    }

    .category-benefit-bar div,
    .category-benefit-bar a{
        min-width:0 !important;
        height:auto !important;
        min-height:58px !important;
        padding:14px 18px !important;
        text-align:center !important;
    }

    .category-benefit-bar a{
        grid-column:1 / -1 !important;
    }

    /* Single product */

    body.single-product .single-product-page,
    .single-product-page{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:64px 42px 110px !important;
        overflow:hidden !important;
    }

    body.single-product .product-top,
    .product-top{
        width:100% !important;
        max-width:820px !important;
        margin:0 auto !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:minmax(0, 1fr) !important;
        gap:28px !important;
        overflow:hidden !important;
    }

    .gallery-main{
        grid-row:1 !important;
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .gallery-main img{
        width:100% !important;
        height:auto !important;
        display:block !important;
    }

    .gallery-thumbs{
        grid-row:2 !important;
        width:100% !important;
        max-width:100% !important;
        display:flex !important;
        gap:12px !important;
        overflow-x:auto !important;
        padding-bottom:4px !important;
    }

    .gallery-thumbs img{
        width:72px !important;
        min-width:72px !important;
        height:96px !important;
        object-fit:cover !important;
    }

    .single-product-info{
        grid-row:3 !important;
        position:static !important;
        width:100% !important;
        max-width:720px !important;
        margin:34px auto 0 !important;
        padding:0 !important;
        overflow:hidden !important;
    }

    .product-title{
        max-width:100% !important;
        font-size:clamp(52px, 7vw, 78px) !important;
        overflow-wrap:anywhere !important;
    }

    .product-description{
        max-width:100% !important;
    }

    .custom-variations,
    .custom-colors,
    .custom-sizes,
    .color-buttons,
    .size-buttons{
        width:100% !important;
        max-width:100% !important;
    }

    .color-buttons,
    .size-buttons{
        flex-wrap:wrap !important;
    }

    .woocommerce-variation-add-to-cart,
    .cart{
        width:100% !important;
        display:grid !important;
        grid-template-columns:auto minmax(0, 1fr) !important;
        align-items:center !important;
        gap:16px !important;
    }

    .single_add_to_cart_button{
        width:100% !important;
        min-width:0 !important;
    }

    body.single-product .sticky-cart{
        display:none !important;
    }

    body.single-product{
        padding-bottom:0 !important;
    }

    .single-product-page section,
    body.single-product section{
        max-width:100% !important;
        overflow:hidden !important;
    }

    .story-section,
    .materials-section,
    .merino-section,
    .looks-section,
    .details-section,
    .features-section,
    .care-section,
    .product-editorial-intro,
    .complete-look{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:42px !important;
        padding-right:42px !important;
        transform:none !important;
    }

    .story-section{
        margin-top:120px !important;
        margin-bottom:110px !important;
    }

    .story-heading{
        margin-bottom:70px !important;
    }

    .story-heading h2{
        font-size:clamp(54px, 7vw, 92px) !important;
        letter-spacing:0 !important;
        overflow-wrap:anywhere !important;
    }

    .story-content{
        max-width:640px !important;
        margin:0 auto 64px !important;
    }

    .story-content p{
        font-size:22px !important;
    }

    .materials-section,
    .merino-section{
        margin-top:120px !important;
        margin-bottom:120px !important;
    }

    .materials-gallery{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:24px !important;
    }

    .materials-text h2,
    .merino-text h2,
    .looks-header h2,
    .details-content h2,
    .complete-look-header h2{
        font-size:clamp(46px, 7vw, 72px) !important;
        letter-spacing:0 !important;
        overflow-wrap:anywhere !important;
    }

    .merino-section,
    .editorial-container,
    .care-layout{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:52px !important;
    }

    .looks-grid{
        grid-template-columns:1fr !important;
        gap:36px !important;
    }

    .looks-grid img{
        width:100% !important;
        aspect-ratio:4 / 5 !important;
        object-fit:cover !important;
    }

    .image-top,
    .image-bottom{
        width:100% !important;
        margin:0 0 42px !important;
    }

    .features-section{
        margin-top:110px !important;
        margin-bottom:120px !important;
    }

    .care-section{
        margin-top:100px !important;
        margin-bottom:120px !important;
    }

    .complete-look-grid{
        grid-template-columns:1fr !important;
        gap:38px !important;
    }

    .complete-look-card img{
        width:100% !important;
        aspect-ratio:4 / 5 !important;
        object-fit:cover !important;
    }

    .related-products-section,
    .related.products{
        width:100% !important;
        max-width:100% !important;
        margin:120px auto !important;
        padding-left:42px !important;
        padding-right:42px !important;
        overflow:hidden !important;
    }

    .related.products ul.products{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:38px !important;
        padding:0 !important;
        margin:0 !important;
    }

    .related.products li.product{
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
    }

    .related.products img{
        width:100% !important;
        height:auto !important;
        aspect-ratio:4 / 5 !important;
        object-fit:cover !important;
    }

    .related.products .woocommerce-loop-product__title{
        margin:22px 0 8px !important;
        font-size:22px !important;
        line-height:1.25 !important;
    }

    .related.products .price{
        font-size:16px !important;
    }

    /* Footer */

    .newsletter{
        width:100% !important;
        max-width:760px !important;
        margin:70px auto 120px !important;
        padding:0 42px !important;
    }

    .newsletter h2{
        font-size:clamp(38px, 5vw, 54px) !important;
    }

    .footer{
        width:100% !important;
        max-width:100% !important;
        margin:60px auto 0 !important;
        padding:0 42px 42px !important;
    }

    .footer-top{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:46px 58px !important;
        justify-content:start !important;
    }

    .footer-brand{
        grid-column:1 / -1 !important;
    }

    .footer-brand img{
        width:200px !important;
        max-width:100% !important;
        margin-bottom:30px !important;
    }

    .footer-brand p{
        max-width:560px !important;
    }

    .footer-bottom{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:22px !important;
        align-items:start !important;
        text-align:left !important;
    }

    .footer-legal{
        justify-content:flex-start !important;
    }

    .footer-copy,
    .footer-made{
        white-space:normal !important;
        text-align:left !important;
    }

}

/* =====================================================
   Mobile — up to 768px
===================================================== */

@media (max-width:768px){

    body{
        font-size:15px !important;
        background:#f5f2ee;
    }

    h1,
    h2,
    h3{
        overflow-wrap:anywhere;
    }

    /* Header */

    .site-header{
        position:relative !important;
        background:rgba(244, 238, 231, .97) !important;
        border-bottom:1px solid rgba(45, 41, 38, .08) !important;
        backdrop-filter:blur(14px) !important;
    }

    body.home .site-header{
        position:absolute !important;
        background:transparent !important;
        border-bottom:0 !important;
        backdrop-filter:none !important;
    }

    .header-inner,
    body:not(.home) .header-inner,
    body.page .header-inner,
    body.woocommerce-cart .header-inner,
    body.woocommerce-checkout .header-inner,
    body.woocommerce-account .header-inner{
        width:100% !important;
        max-width:100% !important;
        padding:16px 20px !important;
        display:grid !important;
        grid-template-columns:minmax(0, 1fr) auto !important;
        gap:14px !important;
        align-items:center !important;
    }

    .header-left,
    .header-right{
        width:auto !important;
        min-width:0 !important;
    }

    .header-center,
    .header-nav{
        display:none !important;
    }

    .header-right,
    .header-actions{
        display:flex !important;
        justify-content:flex-end !important;
        align-items:center !important;
        gap:12px !important;
        min-width:0 !important;
    }

    .header-logo img,
    body:not(.home) .header-logo img,
    body.page .header-logo img,
    body.woocommerce-cart .header-logo img,
    body.woocommerce-checkout .header-logo img,
    body.woocommerce-account .header-logo img{
        height:34px !important;
        max-width:150px !important;
    }

    .header-actions a,
    body:not(.home) .header-actions a,
    body.page .header-actions a,
    body.woocommerce-cart .header-actions a,
    body.woocommerce-checkout .header-actions a,
    body.woocommerce-account .header-actions a{
        font-size:9px !important;
        line-height:1.2 !important;
        letter-spacing:.14em !important;
        white-space:nowrap !important;
    }

    body:not(.home) .header-actions a,
    body.page .header-actions a,
    body.woocommerce-cart .header-actions a,
    body.woocommerce-checkout .header-actions a,
    body.woocommerce-account .header-actions a{
        color:#2d2926 !important;
    }

    body.home .header-actions a{
        color:#f5f0e8 !important;
    }

    .header-cart-link{
        display:inline-flex !important;
        align-items:baseline !important;
        gap:4px !important;
        white-space:nowrap !important;
    }

    .header-menu-toggle{
        width:34px !important;
        height:34px !important;
        padding:0 !important;
        border:1px solid currentColor !important;
        border-radius:0 !important;
        background:transparent !important;
        color:#2d2926 !important;
        display:inline-flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:5px !important;
        cursor:pointer !important;
        flex:0 0 34px !important;
    }

    body.home .header-menu-toggle{
        color:#f5f0e8 !important;
    }

    body:not(.home) .header-menu-toggle,
    body.page .header-menu-toggle,
    body.woocommerce-cart .header-menu-toggle,
    body.woocommerce-checkout .header-menu-toggle,
    body.woocommerce-account .header-menu-toggle{
        color:#2d2926 !important;
    }

    .header-menu-toggle span{
        width:15px !important;
        height:1px !important;
        display:block !important;
        background:currentColor !important;
        transition:transform .25s ease, opacity .25s ease !important;
    }

    .header-menu-toggle.is-open span:first-child{
        transform:translateY(3px) rotate(45deg) !important;
    }

    .header-menu-toggle.is-open span:last-child{
        transform:translateY(-3px) rotate(-45deg) !important;
    }

    .header-mobile-nav{
        grid-column:1 / -1 !important;
        width:100% !important;
        max-width:100% !important;
        margin-top:2px !important;
        padding:24px 0 6px !important;
        border-top:1px solid rgba(45, 41, 38, .12) !important;
        display:none !important;
        grid-template-columns:1fr !important;
        gap:16px !important;
        background:rgba(244, 238, 231, .98) !important;
    }

    .header-mobile-nav.is-open{
        display:grid !important;
    }

    .header-mobile-nav a{
        color:#2d2926 !important;
        text-decoration:none !important;
        font-size:12px !important;
        line-height:1.2 !important;
        letter-spacing:.2em !important;
        text-transform:uppercase !important;
        white-space:nowrap !important;
    }

    /* Shared page padding */

    .category-page,
    .single-product-page,
    .swiat-cart-page,
    .checkout-page,
    .swiat-checkout-page,
    .account-page,
    .contact-page,
    .legal-page,
    .search-page{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    /* Home */

    .home-hero{
        min-height:84svh !important;
        padding:122px 20px 64px !important;
        justify-content:flex-start !important;
        align-items:flex-end !important;
        overflow:hidden !important;
    }

    .home-hero .hero-content{
        width:100% !important;
        max-width:520px !important;
        transform:none !important;
    }

    .home-hero .hero-content span{
        margin-bottom:18px !important;
        font-size:9px !important;
        letter-spacing:.24em !important;
    }

    .home-hero .hero-content h1{
        font-size:clamp(46px, 15vw, 76px) !important;
        line-height:.94 !important;
    }

    .home-hero .hero-content p{
        max-width:100% !important;
        font-size:15px !important;
    }

    .home-hero .hero-content a{
        margin-top:30px !important;
        font-size:10px !important;
        letter-spacing:.2em !important;
    }

    .hero-scroll{
        display:none !important;
    }

    .story{
        width:100% !important;
        margin:76px auto 64px !important;
        padding:0 20px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:34px !important;
    }

    .story-text,
    .story-text h2,
    .story-text p{
        max-width:100% !important;
    }

    .story-text h2{
        font-size:clamp(36px, 11vw, 56px) !important;
    }

    .story-image img{
        height:auto !important;
        min-height:360px !important;
        aspect-ratio:4 / 5 !important;
    }

    .quote-section{
        width:100% !important;
        margin:64px auto 42px !important;
        padding:0 20px !important;
    }

    .quote-section blockquote{
        font-size:clamp(28px, 9vw, 42px) !important;
    }

    .video-section{
        height:430px !important;
    }

    .home-video-note{
        padding:20px !important;
        align-items:flex-start !important;
    }

    .collections-intro{
        margin:90px auto 56px !important;
        padding:0 20px !important;
    }

    .collections-intro h2{
        font-size:clamp(36px, 10vw, 54px) !important;
    }

    .collections-grid{
        width:100% !important;
        max-width:100% !important;
        padding:0 20px 86px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:20px !important;
    }

    .collection-card{
        min-height:0 !important;
        aspect-ratio:4 / 5 !important;
    }

    .collection-content{
        left:24px !important;
        right:24px !important;
        bottom:26px !important;
    }

    .collection-content h3{
        font-size:clamp(42px, 14vw, 64px) !important;
    }

    .collection-content p{
        font-size:15px !important;
        margin-bottom:24px !important;
    }

    .home-new-products{
        margin:0 auto 84px !important;
        padding:0 20px !important;
    }

    .home-new-products-heading{
        margin-bottom:42px !important;
    }

    .home-new-products-heading h2{
        font-size:clamp(36px, 10vw, 54px) !important;
    }

    .home-new-products-grid{
        grid-template-columns:1fr !important;
        gap:42px !important;
    }

    .home-new-product-card:nth-child(2){
        margin-top:0 !important;
    }

    .journal-section{
        width:100% !important;
        max-width:100% !important;
        margin:68px auto 110px !important;
        padding:0 20px !important;
    }

    .journal-header h2{
        font-size:clamp(36px, 10vw, 54px) !important;
    }

    .journal-layout{
        display:grid !important;
        grid-template-columns:1fr !important;
        grid-template-rows:none !important;
        gap:1px !important;
    }

    .journal-layout .card{
        grid-column:auto !important;
        grid-row:auto !important;
        min-height:260px !important;
    }

    .overlay{
        left:24px !important;
        right:24px !important;
        bottom:24px !important;
    }

    /* Category */

    body:not(.home) .category-page,
    .category-page{
        width:100% !important;
        max-width:100% !important;
        padding:36px 20px 78px !important;
        overflow:hidden !important;
    }

    body:not(.home) .category-hero{
        margin-top:0 !important;
    }

    .category-hero{
        width:100% !important;
        max-width:100% !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:30px !important;
        overflow:hidden !important;
    }

    .category-hero h1,
    .category-hero-content h1{
        font-size:clamp(48px, 15vw, 76px) !important;
        line-height:.95 !important;
    }

    .category-hero p,
    .category-hero-content p{
        max-width:100% !important;
        font-size:17px !important;
        line-height:1.65 !important;
    }

    .category-hero-image,
    .category-hero .hero-image{
        width:100% !important;
        min-height:0 !important;
        height:auto !important;
        aspect-ratio:4 / 5 !important;
        overflow:hidden !important;
    }

    .category-hero-image img,
    .category-hero .hero-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .category-editorial-block{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:28px !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .shop-toolbar{
        width:100% !important;
        max-width:100% !important;
        margin:44px auto 38px !important;
        padding:0 0 22px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .toolbar-right,
    .shop-toolbar form{
        width:100% !important;
        min-width:0 !important;
    }

    .shop-toolbar select{
        width:100% !important;
        max-width:100% !important;
    }

    .category-product-grid,
    .category-product-grid--featured,
    .category-product-grid--three,
    .category-product-grid--four,
    .products-grid,
    .category-products,
    .woocommerce ul.products,
    .products{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:42px !important;
        padding-left:0 !important;
        padding-right:0 !important;
        overflow:hidden !important;
    }

    .category-product-grid .product-info,
    .category-product-grid--featured .product-info,
    .category-product-grid--three .product-info,
    .category-product-grid--four .product-info,
    .product-card .product-info{
        display:block !important;
        min-width:0 !important;
        padding-top:16px !important;
    }

    .product-card-colors,
    .product-card-sizes,
    .category-product-grid .product-card-colors,
    .category-product-grid .product-card-sizes{
        display:none !important;
    }

    .category-premium{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:36px 20px 78px !important;
        overflow:hidden !important;
    }

    .category-hero-editorial{
        width:100% !important;
        max-width:100% !important;
        min-height:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        overflow:hidden !important;
    }

    .category-hero-editorial .category-hero-content{
        min-width:0 !important;
        padding:54px 28px 46px !important;
    }

    .category-hero-editorial .category-hero-content h1{
        font-size:clamp(44px, 13vw, 68px) !important;
        overflow-wrap:anywhere !important;
    }

    .category-hero-editorial .category-hero-image{
        width:100% !important;
        min-height:0 !important;
        height:auto !important;
        aspect-ratio:4 / 5 !important;
        overflow:hidden !important;
    }

    .category-hero-editorial .category-hero-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    .category-toolbar-premium{
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        padding:24px 0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .category-toolbar-right{
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .category-toolbar-right .woocommerce-ordering,
    .category-toolbar-right select{
        width:100% !important;
        max-width:100% !important;
    }

    body .category-premium .category-wide-story,
    body .category-premium .category-split-banner{
        width:100% !important;
        max-width:100% !important;
        min-height:0 !important;
        margin:42px auto !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        overflow:hidden !important;
    }

    body .category-premium .category-wide-story-image,
    body .category-premium .category-split-image{
        width:100% !important;
        min-width:0 !important;
        height:auto !important;
        aspect-ratio:4 / 5 !important;
        overflow:hidden !important;
    }

    body .category-premium .category-wide-story-image img,
    body .category-premium .category-split-image img{
        width:100% !important;
        height:100% !important;
        min-height:0 !important;
        object-fit:cover !important;
    }

    body .category-premium .category-wide-story-content,
    body .category-premium .category-split-content{
        min-width:0 !important;
        min-height:0 !important;
        padding:42px 28px 48px !important;
    }

    body .category-premium .category-wide-story-content h2,
    body .category-premium .category-split-content h2{
        font-size:clamp(32px, 10vw, 48px) !important;
        overflow-wrap:anywhere !important;
    }

    .category-benefit-bar{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        height:auto !important;
        min-height:0 !important;
        overflow:hidden !important;
    }

    .category-benefit-bar div,
    .category-benefit-bar a{
        min-width:0 !important;
        height:auto !important;
        min-height:54px !important;
        padding:14px 18px !important;
        text-align:center !important;
    }

    /* Single product */

    body.single-product .single-product-page,
    .single-product-page{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:36px 20px 84px !important;
        overflow:hidden !important;
    }

    body.single-product .product-top,
    .product-top{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:20px !important;
        overflow:hidden !important;
    }

    .gallery-main{
        grid-row:1 !important;
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .gallery-main img{
        width:100% !important;
        height:auto !important;
        display:block !important;
    }

    .gallery-thumbs{
        grid-row:2 !important;
        width:100% !important;
        max-width:100% !important;
        display:flex !important;
        gap:10px !important;
        overflow-x:auto !important;
        padding-bottom:4px !important;
    }

    .gallery-thumbs img{
        width:58px !important;
        min-width:58px !important;
        height:78px !important;
    }

    .single-product-info{
        grid-row:3 !important;
        position:static !important;
        width:100% !important;
        max-width:100% !important;
        margin:26px auto 0 !important;
        padding:0 !important;
        overflow:hidden !important;
    }

    .product-title{
        font-size:clamp(40px, 12vw, 62px) !important;
        line-height:1 !important;
        margin-bottom:26px !important;
    }

    .product-price,
    .price{
        font-size:22px !important;
        margin-bottom:28px !important;
    }

    .product-description{
        max-width:100% !important;
        line-height:1.75 !important;
        margin-bottom:34px !important;
    }

    .custom-variations,
    .custom-colors,
    .custom-sizes,
    .color-buttons,
    .size-buttons{
        width:100% !important;
        max-width:100% !important;
    }

    .color-buttons,
    .size-buttons{
        flex-wrap:wrap !important;
    }

    .size-buttons .variation-button:nth-last-child(-n+2){
        min-width:0 !important;
    }

    .woocommerce-variation-add-to-cart,
    .cart{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .single_add_to_cart_button,
    .summary .cart button{
        width:100% !important;
        min-width:0 !important;
    }

    body.single-product .sticky-cart,
    .sticky-cart{
        display:none !important;
    }

    body.single-product{
        padding-bottom:0 !important;
    }

    .story-section,
    .materials-section,
    .merino-section,
    .looks-section,
    .details-section,
    .features-section,
    .care-section,
    .product-editorial-intro,
    .complete-look{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:20px !important;
        padding-right:20px !important;
        transform:none !important;
        overflow:hidden !important;
    }

    .story-section{
        margin-top:82px !important;
        margin-bottom:78px !important;
    }

    .story-number{
        margin-bottom:34px !important;
    }

    .story-heading{
        margin-bottom:42px !important;
    }

    .story-heading h2{
        font-size:clamp(40px, 12vw, 62px) !important;
        line-height:1 !important;
        letter-spacing:0 !important;
    }

    .story-content{
        max-width:100% !important;
        margin:0 0 42px !important;
    }

    .story-content p{
        font-size:18px !important;
        line-height:1.75 !important;
    }

    .materials-section,
    .merino-section{
        margin-top:82px !important;
        margin-bottom:82px !important;
    }

    .materials-gallery,
    .merino-section,
    .editorial-container,
    .care-layout,
    .looks-grid,
    .complete-look-grid{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:24px !important;
    }

    .materials-text{
        margin-top:56px !important;
    }

    .materials-text h2,
    .merino-text h2,
    .looks-header h2,
    .details-content h2,
    .complete-look-header h2,
    .editorial-heading h2{
        font-size:clamp(36px, 11vw, 56px) !important;
        line-height:1.04 !important;
        letter-spacing:0 !important;
    }

    .details-section{
        margin-top:80px !important;
    }

    .image-top,
    .image-bottom{
        width:100% !important;
        margin:0 0 28px !important;
    }

    .details-content p,
    .editorial-content p{
        font-size:18px !important;
        line-height:1.75 !important;
    }

    .feature-item,
    .care-rule{
        grid-template-columns:42px 1fr !important;
        gap:18px !important;
    }

    .feature-text{
        font-size:18px !important;
    }

    .care-section{
        margin-top:72px !important;
        margin-bottom:84px !important;
        padding-right:20px !important;
    }

    .complete-look{
        margin-top:82px !important;
        margin-bottom:90px !important;
    }

    .looks-grid img,
    .complete-look-card img{
        width:100% !important;
        aspect-ratio:4 / 5 !important;
        object-fit:cover !important;
    }

    .related-products-section,
    .related.products{
        width:100% !important;
        max-width:100% !important;
        margin:82px auto !important;
        padding-left:20px !important;
        padding-right:20px !important;
        overflow:hidden !important;
    }

    .related.products ul.products{
        width:100% !important;
        max-width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:34px !important;
        padding:0 !important;
        margin:0 !important;
    }

    .related.products li.product{
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
    }

    .related.products img{
        width:100% !important;
        height:auto !important;
        aspect-ratio:4 / 5 !important;
        object-fit:cover !important;
    }

    .related.products .woocommerce-loop-product__title{
        margin:20px 0 8px !important;
        font-size:20px !important;
        line-height:1.25 !important;
    }

    .related.products .price{
        font-size:15px !important;
    }

    /* Footer */

    .newsletter{
        width:100% !important;
        max-width:100% !important;
        margin:56px auto 86px !important;
        padding:0 20px !important;
    }

    .newsletter h2{
        font-size:clamp(32px, 9vw, 46px) !important;
        margin-bottom:42px !important;
    }

    .newsletter-form{
        display:flex !important;
        gap:14px !important;
    }

    .newsletter-form input,
    .newsletter-form input::placeholder{
        min-width:0 !important;
        font-size:18px !important;
    }

    .footer{
        width:100% !important;
        max-width:100% !important;
        margin:48px auto 0 !important;
        padding:0 20px 34px !important;
    }

    .footer-top{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:36px !important;
    }

    .footer-brand img{
        width:170px !important;
        max-width:100% !important;
        margin-bottom:24px !important;
    }

    .footer-brand p{
        max-width:100% !important;
    }

    .footer-column{
        gap:12px !important;
    }

    .footer-column span{
        margin-bottom:12px !important;
    }

    .footer-bottom{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:18px !important;
        margin-top:52px !important;
        padding-top:28px !important;
        text-align:left !important;
    }

    .footer-legal{
        justify-content:flex-start !important;
        gap:10px 14px !important;
    }

    .footer-copy,
    .footer-made{
        white-space:normal !important;
        text-align:left !important;
    }

}

/* =====================================================
   Small mobile
===================================================== */

@media (max-width:480px){

    .header-inner,
    body:not(.home) .header-inner,
    body.page .header-inner,
    body.woocommerce-cart .header-inner,
    body.woocommerce-checkout .header-inner,
    body.woocommerce-account .header-inner{
        padding-left:16px !important;
        padding-right:16px !important;
        gap:10px !important;
    }

    .header-logo img,
    body:not(.home) .header-logo img,
    body.page .header-logo img,
    body.woocommerce-cart .header-logo img,
    body.woocommerce-checkout .header-logo img,
    body.woocommerce-account .header-logo img{
        height:32px !important;
        max-width:132px !important;
    }

    .header-actions{
        gap:9px !important;
    }

    .header-actions a{
        font-size:8px !important;
        letter-spacing:.12em !important;
    }

    .home-hero,
    .category-page,
    .single-product-page,
    .newsletter,
    .footer{
        padding-left:16px !important;
        padding-right:16px !important;
    }

    .home-hero .hero-content h1{
        font-size:clamp(42px, 16vw, 66px) !important;
    }

}

/* TABLET/MOBILE — hamburger zawsze widoczny, także na stronie głównej */

@media (max-width: 1180px) {

    .header-menu-toggle,
    .mobile-menu-toggle,
    .menu-toggle,
    .hamburger,
    .header-hamburger {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 42px !important;
        height: 42px !important;

        border: 0 !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;

        color: inherit !important;
        cursor: pointer !important;

        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;

        position: relative !important;
        z-index: 10001 !important;
    }

    body.home .header-menu-toggle,
    body.home .mobile-menu-toggle,
    body.home .menu-toggle,
    body.home .hamburger,
    body.home .header-hamburger {
        display: inline-flex !important;
        color: #f5f0e8 !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    body:not(.home) .header-menu-toggle,
    body:not(.home) .mobile-menu-toggle,
    body:not(.home) .menu-toggle,
    body:not(.home) .hamburger,
    body:not(.home) .header-hamburger {
        color: #2d2926 !important;
    }

    .header-actions {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 18px !important;
        position: relative !important;
        z-index: 10001 !important;
    }
}

/* =========================================
   TABLET/MOBILE MENU — COMPACT FINAL
   Musi być na końcu responsive.css
========================================= */

@media (min-width: 769px) and (max-width: 1180px) {

    .header-mobile-nav {
        position: fixed !important;
        top: 92px !important;
        right: 42px !important;
        left: auto !important;

        width: 360px !important;
        max-width: 360px !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;

        padding: 14px 22px !important;
        margin: 0 !important;

        background: rgba(245, 242, 238, .97) !important;
        border: 1px solid rgba(45, 41, 38, .10) !important;
        border-radius: 16px !important;
        box-shadow: 0 18px 48px rgba(28, 24, 21, .16) !important;

        transform: translateY(-8px) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;

        z-index: 99999 !important;
        overflow: hidden !important;

        transition:
            opacity .24s ease,
            visibility .24s ease,
            transform .24s ease !important;
    }

    body.menu-open .header-mobile-nav,
    body.mobile-menu-open .header-mobile-nav,
    body.nav-open .header-mobile-nav,
    body.header-menu-open .header-mobile-nav,
    .header-mobile-nav.is-open,
    .header-mobile-nav.active,
    .header-mobile-nav.open {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }

    .header-mobile-nav a {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        padding: 13px 0 !important;
        margin: 0 !important;

        border-bottom: 1px solid rgba(45, 41, 38, .08) !important;

        color: #2d2926 !important;
        text-decoration: none !important;
        text-transform: uppercase !important;

        font-size: 14px !important;
        line-height: 1.2 !important;
        letter-spacing: .22em !important;
        white-space: nowrap !important;
    }

    .header-mobile-nav a:last-child {
        border-bottom: 0 !important;
    }

    .header-mobile-nav a::after {
        content: "→" !important;
        font-size: 13px !important;
        letter-spacing: 0 !important;
        opacity: .38 !important;
        margin-left: 20px !important;
    }

    body.menu-open .site-header::before,
    body.mobile-menu-open .site-header::before,
    body.nav-open .site-header::before,
    body.header-menu-open .site-header::before {
        background: rgba(26, 22, 19, .14) !important;
        backdrop-filter: blur(2px) !important;
        -webkit-backdrop-filter: blur(2px) !important;
    }
}


/* Telefon — mały panel na środku */

@media (max-width: 768px) {

    .header-mobile-nav {
        position: fixed !important;
        top: 76px !important;
        left: 50% !important;
        right: auto !important;

        width: calc(100vw - 36px) !important;
        max-width: 340px !important;

        padding: 14px 18px !important;
        border-radius: 15px !important;

        transform: translateX(-50%) translateY(-8px) !important;
    }

    body.menu-open .header-mobile-nav,
    body.mobile-menu-open .header-mobile-nav,
    body.nav-open .header-mobile-nav,
    body.header-menu-open .header-mobile-nav,
    .header-mobile-nav.is-open,
    .header-mobile-nav.active,
    .header-mobile-nav.open {
        transform: translateX(-50%) translateY(0) !important;
    }

    .header-mobile-nav a {
        padding: 13px 0 !important;
        font-size: 14px !important;
        letter-spacing: .18em !important;
    }

    .header-mobile-nav a::after {
        font-size: 13px !important;
    }
}

/* =========================================
   TABLET/MOBILE MENU — GLASS PREMIUM FINAL
========================================= */

@media (max-width: 1180px) {

    .header-mobile-nav {
        background: rgba(58, 55, 52, .46) !important;
        border: 1px solid rgba(255, 255, 255, .16) !important;
        box-shadow: 0 22px 60px rgba(0, 0, 0, .20) !important;

        backdrop-filter: blur(18px) saturate(120%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(120%) !important;

        border-radius: 18px !important;
    }

    .header-mobile-nav a {
        color: #f7f2ec !important;
        border-bottom: 1px solid rgba(255, 255, 255, .14) !important;
        text-shadow: 0 1px 12px rgba(0, 0, 0, .18) !important;
    }

    .header-mobile-nav a:last-child {
        border-bottom: 0 !important;
    }

    .header-mobile-nav a::after {
        color: #f7f2ec !important;
        opacity: .72 !important;
    }

    .header-mobile-nav a:hover {
        color: #ffffff !important;
    }

    .header-mobile-nav a:hover::after {
        opacity: 1 !important;
    }

    body.menu-open .site-header::before,
    body.mobile-menu-open .site-header::before,
    body.nav-open .site-header::before,
    body.header-menu-open .site-header::before {
        background: rgba(18, 16, 14, .16) !important;
        backdrop-filter: blur(3px) !important;
        -webkit-backdrop-filter: blur(3px) !important;
    }
}


/* Tablet — trochę bardziej elegancko i lekko */

@media (min-width: 769px) and (max-width: 1180px) {

    .header-mobile-nav {
        width: 350px !important;
        max-width: 350px !important;
        padding: 12px 22px !important;
    }

    .header-mobile-nav a {
        padding: 13px 0 !important;
        font-size: 14px !important;
        letter-spacing: .24em !important;
    }
}


/* Telefon — ciut jaśniej, żeby było czytelnie */

@media (max-width: 768px) {

    .header-mobile-nav {
        background: rgba(58, 55, 52, .54) !important;
        width: calc(100vw - 34px) !important;
        max-width: 340px !important;
        padding: 14px 18px !important;
    }

    .header-mobile-nav a {
        padding: 14px 0 !important;
        font-size: 14px !important;
        letter-spacing: .18em !important;
    }
}

/* =========================================
   MENU GLASS — linki i strzałki razem, wyśrodkowane
========================================= */

@media (max-width: 1180px) {

    .header-mobile-nav a {
        justify-content: center !important;
        text-align: center !important;
        gap: 12px !important;
    }

    .header-mobile-nav a::after {
        margin-left: 0 !important;
        transform: translateX(0) !important;
        opacity: .68 !important;
    }

    .header-mobile-nav a:hover::after {
        transform: translateX(4px) !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — FINAL FIX
===================================================== */

@media (max-width: 768px) {

    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }


    /* Produkt — główny układ */

    body.single-product main,
    body.single-product .single-product-page,
    body.single-product .product-page,
    body.single-product div.product {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body.single-product .summary,
    body.single-product .entry-summary,
    body.single-product .product-summary,
    body.single-product .swiat-product-summary {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 22px !important;
        padding-right: 22px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }


    /* Przywrócenie wariantów na karcie produktu */

    body.single-product form.cart,
    body.single-product .variations_form,
    body.single-product table.variations,
    body.single-product table.variations tbody,
    body.single-product table.variations tr,
    body.single-product table.variations td,
    body.single-product .variations,
    body.single-product .variation,
    body.single-product .value,
    body.single-product .product-colors,
    body.single-product .product-sizes,
    body.single-product .product-variants,
    body.single-product .product-options,
    body.single-product .color-options,
    body.single-product .size-options,
    body.single-product .swiat-product-colors,
    body.single-product .swiat-product-sizes,
    body.single-product .swatches,
    body.single-product .variable-items-wrapper {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body.single-product table.variations,
    body.single-product table.variations tbody,
    body.single-product table.variations tr,
    body.single-product .variations,
    body.single-product .variation {
        width: 100% !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
    }

    body.single-product table.variations td,
    body.single-product .value {
        width: 100% !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 12px !important;
    }

    body.single-product .variable-items-wrapper,
    body.single-product .swatches,
    body.single-product .product-colors,
    body.single-product .product-sizes,
    body.single-product .color-options,
    body.single-product .size-options {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    body.single-product .variable-item,
    body.single-product .swatch,
    body.single-product [class*="swatch"],
    body.single-product [class*="color"],
    body.single-product [class*="kolor"],
    body.single-product [class*="size"],
    body.single-product [class*="rozmiar"] {
        visibility: visible !important;
        opacity: 1 !important;
    }


    /* Ilość + dodaj do koszyka */

    body.single-product .quantity {
        margin-top: 36px !important;
        margin-bottom: 16px !important;
    }

    body.single-product .single_add_to_cart_button,
    body.single-product button.single_add_to_cart_button,
    body.single-product form.cart .button {
        width: 100% !important;
        min-height: 64px !important;
        margin-top: 12px !important;
        padding: 0 22px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }


    /* Wszystkie sekcje produktowe na mobile — jedna kolumna */

    body.single-product section,
    body.single-product .product-section,
    body.single-product .swiat-product-section,
    body.single-product .product-editorial,
    body.single-product .swiat-editorial-section {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body.single-product section [class*="grid"],
    body.single-product section [class*="columns"],
    body.single-product section [class*="layout"],
    body.single-product .product-editorial,
    body.single-product .swiat-editorial-section,
    body.single-product .product-story,
    body.single-product .swiat-product-story,
    body.single-product .delivery-grid,
    body.single-product .returns-grid,
    body.single-product .faq-grid,
    body.single-product .materials-grid,
    body.single-product .benefits-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 34px !important;
    }

    body.single-product section [class*="grid"] > *,
    body.single-product section [class*="columns"] > *,
    body.single-product section [class*="layout"] > * {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }


    /* Duże nagłówki — koniec z łamaniem co 2 litery */

    body.single-product section h1,
    body.single-product section h2,
    body.single-product section h3,
    body.single-product .product-editorial h2,
    body.single-product .swiat-editorial-section h2 {
        max-width: 100% !important;
        font-size: clamp(42px, 13vw, 62px) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.035em !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body.single-product section p,
    body.single-product section li {
        max-width: 100% !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }


    /* Dostawa i zwroty / benefity — zamiast 4 wąskich słupków */

    body.single-product [class*="delivery"] *,
    body.single-product [class*="returns"] *,
    body.single-product [class*="benefit"] *,
    body.single-product [class*="shipping"] * {
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body.single-product [class*="delivery"],
    body.single-product [class*="returns"],
    body.single-product [class*="benefit"],
    body.single-product [class*="shipping"] {
        max-width: 100% !important;
    }


    /* FAQ — jedna kolumna */

    body.single-product [class*="faq"],
    body.single-product [class*="accordion"] {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product [class*="faq"] [class*="grid"],
    body.single-product [class*="accordion"] [class*="grid"] {
        grid-template-columns: 1fr !important;
    }


    /* Dobierz do kompletu / powiązane produkty */

    body.single-product .related.products,
    body.single-product .upsells.products,
    body.single-product .cross-sells,
    body.single-product [class*="related"],
    body.single-product [class*="upsell"] {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 22px !important;
        padding-right: 22px !important;
        overflow-x: hidden !important;
    }

    body.single-product .related.products ul.products,
    body.single-product .upsells.products ul.products,
    body.single-product .cross-sells ul.products,
    body.single-product [class*="related"] ul.products,
    body.single-product [class*="upsell"] ul.products {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 54px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product .related.products ul.products li.product,
    body.single-product .upsells.products ul.products li.product,
    body.single-product .cross-sells ul.products li.product,
    body.single-product [class*="related"] ul.products li.product,
    body.single-product [class*="upsell"] ul.products li.product {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    body.single-product .related.products img,
    body.single-product .upsells.products img,
    body.single-product .cross-sells img,
    body.single-product [class*="related"] img,
    body.single-product [class*="upsell"] img {
        width: 100% !important;
        height: min(520px, 118vw) !important;
        object-fit: cover !important;
        object-position: center top !important;
        display: block !important;
    }


    /* Stopka — lekka korekta mobile */

    .site-footer,
    .footer,
    .footer-inner,
    .footer-main,
    .footer-grid {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .footer-grid,
    .footer-main {
        grid-template-columns: 1fr !important;
        gap: 46px !important;
    }
}

/* =====================================================
   MOBILE FOOTER — CENTERED PREMIUM
===================================================== */

@media (max-width: 768px) {

    .site-footer,
    .footer,
    .footer-inner,
    .footer-main,
    .footer-grid {
        text-align: center !important;
    }

    .footer-inner,
    .footer-main,
    .footer-grid {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 54px !important;
    }

    .footer-brand,
    .footer-column,
    .footer-col,
    .footer-nav,
    .footer-contact {
        width: 100% !important;
        max-width: 360px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        align-items: center !important;
    }

    .footer-brand img,
    .footer-logo img,
    .site-footer img {
        display: block !important;
        max-width: 230px !important;
        height: auto !important;
        margin: 0 auto 34px !important;
    }

    .footer-brand p,
    .footer-description,
    .footer-text {
        max-width: 320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        font-size: 18px !important;
        line-height: 1.9 !important;
    }

    .footer-column h4,
    .footer-col h4,
    .footer-title {
        text-align: center !important;
        margin: 0 auto 26px !important;
        font-size: 11px !important;
        letter-spacing: .34em !important;
    }

    .footer-column a,
    .footer-col a,
    .footer-nav a,
    .footer-contact a {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        margin: 0 auto 22px !important;
        font-size: 24px !important;
        line-height: 1.25 !important;
    }

    .footer-socials,
    .footer-social,
    .social-links {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 34px !important;
        width: 100% !important;
        margin: 34px auto 0 !important;
    }

    .footer-socials a,
    .footer-social a,
    .social-links a {
        width: auto !important;
        margin: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .footer-bottom,
    .footer-legal,
    .footer-bottom-inner {
        width: 100% !important;
        max-width: 360px !important;
        margin-left: auto !important;
        margin-right: auto !important;

        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 16px 22px !important;

        text-align: center !important;
    }

    .footer-bottom a,
    .footer-legal a {
        margin: 0 !important;
        width: auto !important;
        display: inline-flex !important;
        text-align: center !important;
        font-size: 18px !important;
        line-height: 1.4 !important;
    }

    .footer-copy,
    .footer-copyright,
    .footer-made,
    .footer-credit {
        width: 100% !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* =====================================================
   MOBILE FOOTER — CENTERED BUT SMALLER
===================================================== */

@media (max-width: 768px) {

    .site-footer,
    .footer {
        padding-top: 72px !important;
        padding-bottom: 70px !important;
    }

    .footer-inner,
    .footer-main,
    .footer-grid {
        gap: 38px !important;
    }

    .footer-brand,
    .footer-column,
    .footer-col,
    .footer-nav,
    .footer-contact {
        max-width: 320px !important;
    }

    .footer-brand img,
    .footer-logo img,
    .site-footer img {
        max-width: 180px !important;
        margin-bottom: 24px !important;
    }

    .footer-brand p,
    .footer-description,
    .footer-text {
        max-width: 300px !important;
        font-size: 15px !important;
        line-height: 1.75 !important;
    }

    .footer-column h4,
    .footer-col h4,
    .footer-title {
        margin-bottom: 18px !important;
        font-size: 10px !important;
        letter-spacing: .28em !important;
    }

    .footer-column a,
    .footer-col a,
    .footer-nav a,
    .footer-contact a {
        margin-bottom: 15px !important;
        font-size: 18px !important;
        line-height: 1.28 !important;
    }

    .footer-socials,
    .footer-social,
    .social-links {
        gap: 24px !important;
        margin-top: 24px !important;
    }

    .footer-bottom,
    .footer-legal,
    .footer-bottom-inner {
        max-width: 330px !important;
        gap: 12px 16px !important;
        margin-top: 36px !important;
    }

    .footer-bottom a,
    .footer-legal a {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    .footer-copy,
    .footer-copyright,
    .footer-made,
    .footer-credit {
        font-size: 15px !important;
        line-height: 1.45 !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — QTY + ADD TO CART SIDE BY SIDE
===================================================== */

@media (max-width: 768px) {

    body.single-product form.cart,
    body.single-product form.variations_form.cart,
    body.single-product .woocommerce-variation-add-to-cart {
        width: 100% !important;
        max-width: 100% !important;

        display: grid !important;
        grid-template-columns: 92px minmax(0, 1fr) !important;
        gap: 14px !important;
        align-items: stretch !important;

        margin-top: 42px !important;
    }

    body.single-product .quantity {
        width: 92px !important;
        max-width: 92px !important;
        height: 68px !important;

        margin: 0 !important;

        display: flex !important;
        align-items: stretch !important;
        justify-content: stretch !important;
    }

    body.single-product .quantity input.qty,
    body.single-product input.qty {
        width: 92px !important;
        height: 68px !important;

        text-align: center !important;
        font-size: 25px !important;
        line-height: 68px !important;

        border: 1px solid rgba(45, 41, 38, .14) !important;
        background: transparent !important;
        border-radius: 0 !important;
    }

    body.single-product .single_add_to_cart_button,
    body.single-product button.single_add_to_cart_button,
    body.single-product form.cart .button,
    body.single-product .woocommerce-variation-add-to-cart .button {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        height: 68px !important;
        min-height: 68px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 16px !important;
        margin: 0 !important;

        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;

        font-size: 12px !important;
        line-height: 1 !important;
        letter-spacing: .24em !important;
        text-align: center !important;
    }

    body.single-product .single_add_to_cart_button br,
    body.single-product button.single_add_to_cart_button br {
        display: none !important;
    }
}

/* =====================================================
   MOBILE — JOURNAL / HISTORIE ONE BY ONE
===================================================== */

@media (max-width: 768px) {

    .home-journal,
    .journal-section,
    .journal-page,
    .journal-grid,
    .journal-mosaic,
    .journal-list,
    .latest-journal,
    .latest-stories,
    .stories-grid,
    .stories-mosaic {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .home-journal .journal-grid,
    .home-journal .journal-mosaic,
    .journal-section .journal-grid,
    .journal-section .journal-mosaic,
    .latest-journal .journal-grid,
    .latest-stories .stories-grid,
    .stories-grid,
    .stories-mosaic {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 34px !important;
    }

    .home-journal article,
    .journal-section article,
    .journal-card,
    .story-card,
    .latest-story,
    .stories-grid > *,
    .journal-grid > *,
    .journal-mosaic > * {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: flex !important;
        flex-direction: column !important;
    }

    .home-journal img,
    .journal-section img,
    .journal-card img,
    .story-card img,
    .latest-story img {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center top !important;
        display: block !important;
    }

    .home-journal .journal-card,
    .journal-section .journal-card,
    .story-card,
    .latest-story {
        background: #f4eee7 !important;
    }

    .home-journal h2,
    .home-journal h3,
    .journal-section h2,
    .journal-section h3,
    .journal-card h2,
    .journal-card h3,
    .story-card h2,
    .story-card h3,
    .latest-story h2,
    .latest-story h3 {
        width: 100% !important;
        max-width: 100% !important;

        font-size: clamp(34px, 11vw, 54px) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.035em !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;

        text-align: left !important;
    }

    .home-journal p,
    .journal-section p,
    .journal-card p,
    .story-card p,
    .latest-story p {
        width: 100% !important;
        max-width: 100% !important;

        font-size: 17px !important;
        line-height: 1.65 !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    .home-journal a,
    .journal-section a,
    .journal-card a,
    .story-card a,
    .latest-story a {
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }
}

/* =====================================================
   MOBILE JOURNAL — HARD RESET, ONE BY ONE
   MUSI BYĆ NA SAMYM KOŃCU responsive.css
===================================================== */

@media screen and (max-width: 768px) {

    body .journal-page .journal-grid-section {
        width: 100% !important;
        max-width: 100% !important;
        padding: 70px 24px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    body .journal-page .journal-grid {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;

        grid-template-columns: none !important;
        grid-template-rows: none !important;
        grid-template-areas: none !important;
        column-gap: 0 !important;
        row-gap: 0 !important;
        gap: 0 !important;
    }

    body .journal-page .journal-card,
    body .journal-page .journal-card--a,
    body .journal-page .journal-card--b,
    body .journal-page .journal-card--c,
    body .journal-page .journal-card--d,
    body .journal-page .journal-card--e {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 0 34px 0 !important;
        padding: 0 !important;

        grid-column: auto !important;
        grid-row: auto !important;
        grid-area: auto !important;

        transform: none !important;
        position: relative !important;

        background: #f4eee7 !important;
        overflow: hidden !important;
    }

    body .journal-page .journal-card-image {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        grid-column: auto !important;
        grid-row: auto !important;
        grid-area: auto !important;
    }

    body .journal-page .journal-card-image img {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        height: 360px !important;
        min-height: 0 !important;

        object-fit: cover !important;
        object-position: center top !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    body .journal-page .journal-card-content {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 30px 26px 34px !important;

        grid-column: auto !important;
        grid-row: auto !important;
        grid-area: auto !important;

        text-align: left !important;
    }

    body .journal-page .journal-card-content > span {
        display: block !important;
        margin: 0 0 20px 0 !important;

        font-size: 12px !important;
        line-height: 1 !important;
        letter-spacing: .24em !important;

        color: #b7a28c !important;
    }

    body .journal-page .journal-card-content h3,
    body .journal-page .journal-card-content h3 a {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 38px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.035em !important;

        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;

        text-align: left !important;
    }

    body .journal-page .journal-card-content p {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 20px 0 0 0 !important;
        padding: 0 !important;

        font-size: 17px !important;
        line-height: 1.65 !important;

        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;

        text-align: left !important;
    }

    body .journal-page .journal-card-link {
        display: inline-flex !important;
        align-items: center !important;
        gap: 12px !important;

        margin: 26px 0 0 0 !important;

        font-size: 12px !important;
        letter-spacing: .24em !important;
        text-transform: uppercase !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — DOBIERZ DO KOMPLETU IMAGE FINAL
===================================================== */

@media screen and (max-width: 768px) {

    body.single-product .complete-look {
        padding: 86px 24px !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body.single-product .complete-look-header {
        margin: 0 auto 42px !important;
        text-align: center !important;
    }

    body.single-product .complete-look-header h2 {
        font-size: clamp(42px, 13vw, 58px) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.04em !important;
        text-align: center !important;
    }

    body.single-product .complete-look-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 52px !important;

        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.single-product .complete-look-card {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    body.single-product .complete-look-card img,
    body.single-product .complete-look-card .product-card-image img,
    body.single-product .complete-look-card picture img {
        width: 100% !important;
        max-width: 100% !important;

        height: 320px !important;
        max-height: 320px !important;
        min-height: 0 !important;

        aspect-ratio: auto !important;

        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;

        margin: 0 0 22px !important;
        padding: 0 !important;
    }

    body.single-product .complete-look-card h3,
    body.single-product .complete-look-card .woocommerce-loop-product__title,
    body.single-product .complete-look-card .product-title {
        margin: 0 0 8px !important;

        font-size: 30px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.035em !important;

        text-align: left !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body.single-product .complete-look-card .price,
    body.single-product .complete-look-card .amount {
        font-size: 20px !important;
        line-height: 1.35 !important;
        text-align: left !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — DOBIERZ DO KOMPLETU PORTRAIT IMAGE
===================================================== */

@media screen and (max-width: 768px) {

    body.single-product .complete-look-card img,
    body.single-product .complete-look-card .product-card-image img,
    body.single-product .complete-look-card picture img {
        width: 100% !important;
        max-width: 100% !important;

        height: clamp(430px, 122vw, 560px) !important;
        max-height: none !important;

        display: block !important;

        object-fit: cover !important;
        object-position: center top !important;

        margin: 0 0 22px !important;
        padding: 0 !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — DELIVERY + NEWSLETTER SMALLER
===================================================== */

@media screen and (max-width: 768px) {

    body.single-product .delivery-section {
        width: 100% !important;
        max-width: 100% !important;

        margin: 80px auto 90px !important;
        padding: 0 32px !important;

        text-align: center !important;
    }

    body.single-product .delivery-header {
        margin: 0 auto 46px !important;
        text-align: center !important;
    }

    body.single-product .delivery-header span {
        display: block !important;
        margin-bottom: 18px !important;

        font-size: 11px !important;
        letter-spacing: .28em !important;
    }

    body.single-product .delivery-header h2 {
        max-width: 320px !important;
        margin: 0 auto !important;

        font-size: 48px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.04em !important;

        text-align: center !important;
    }

    body.single-product .delivery-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0 !important;

        width: 100% !important;
        max-width: 420px !important;
        margin: 0 auto !important;
    }

    body.single-product .delivery-card {
        padding: 34px 0 !important;
        border-top: 1px solid rgba(45, 41, 38, .14) !important;

        text-align: center !important;
    }

    body.single-product .delivery-card:last-child {
        border-bottom: 1px solid rgba(45, 41, 38, .14) !important;
    }

    body.single-product .delivery-card h3 {
        max-width: 280px !important;
        margin: 0 auto 14px !important;

        font-size: 34px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.035em !important;

        text-align: center !important;
    }

    body.single-product .delivery-card p {
        max-width: 280px !important;
        margin: 0 auto !important;

        font-size: 18px !important;
        line-height: 1.55 !important;

        opacity: .72 !important;
        text-align: center !important;
    }

    /* Newsletter pod produktem — spokojniej na telefonie */

    body.single-product .newsletter {
        width: 100% !important;
        max-width: 100% !important;

        margin: 80px auto 90px !important;
        padding: 0 32px !important;

        text-align: center !important;
    }

    body.single-product .newsletter-label,
    body.single-product .newsletter span {
        font-size: 10px !important;
        letter-spacing: .28em !important;
    }

    body.single-product .newsletter h2 {
        max-width: 340px !important;
        margin: 22px auto 42px !important;

        font-size: 42px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.04em !important;

        text-align: center !important;
    }

    body.single-product .newsletter-form {
        width: 100% !important;
        max-width: 100% !important;

        padding-bottom: 16px !important;
    }

    body.single-product .newsletter-form input {
        font-size: 24px !important;
    }

    body.single-product .newsletter-form input::placeholder {
        font-size: 24px !important;
    }

    body.single-product .newsletter-form button {
        font-size: 30px !important;
    }

    body.single-product .newsletter-note {
        max-width: 300px !important;
        margin: 18px auto 0 !important;

        font-size: 15px !important;
        line-height: 1.55 !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — FAQ ACCORDION
===================================================== */

@media screen and (max-width: 768px) {

    body.single-product .product-faq,
    body.single-product .faq-section,
    body.single-product .single-product-faq {
        width: 100% !important;
        max-width: 100% !important;
        margin: 80px auto 90px !important;
        padding: 0 32px !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    body.single-product .faq-heading,
    body.single-product .faq-left,
    body.single-product .faq-intro {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto 46px !important;
        padding: 0 !important;
        text-align: center !important;
    }

    body.single-product .faq-heading h2,
    body.single-product .faq-left h2,
    body.single-product .faq-intro h2,
    body.single-product .faq-section h2 {
        max-width: 340px !important;
        margin: 0 auto 24px !important;
        font-size: 46px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.045em !important;
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body.single-product .faq-heading p,
    body.single-product .faq-left p,
    body.single-product .faq-intro p,
    body.single-product .faq-section > p {
        max-width: 320px !important;
        margin: 0 auto !important;
        font-size: 18px !important;
        line-height: 1.6 !important;
        text-align: center !important;
        opacity: .7 !important;
    }

    body.single-product .faq-list,
    body.single-product .faq-items,
    body.single-product .faq-right,
    body.single-product .accordion,
    body.single-product .accordion-list {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.single-product .faq-item,
    body.single-product .accordion-item {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 24px 0 !important;
        border-top: 1px solid rgba(45, 41, 38, .16) !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body.single-product .faq-item:last-child,
    body.single-product .accordion-item:last-child {
        border-bottom: 1px solid rgba(45, 41, 38, .16) !important;
    }

    body.single-product .faq-question,
    body.single-product .accordion-question,
    body.single-product .faq-item button,
    body.single-product .accordion-item button,
    body.single-product .faq-item h3,
    body.single-product .faq-item h4 {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 18px !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 28px !important;
        line-height: 1.12 !important;
        letter-spacing: -0.035em !important;
        color: #2d2926 !important;
        background: transparent !important;
        border: 0 !important;
        text-align: left !important;
        cursor: pointer !important;
    }

    body.single-product .faq-item > p,
    body.single-product .faq-item .faq-content,
    body.single-product .faq-item .faq-answer,
    body.single-product .faq-item .accordion-answer {
        display: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 16px 0 0 !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        position: static !important;
        transform: none !important;
        overflow: visible !important;
    }

    body.single-product .faq-item.active > p,
    body.single-product .faq-item.open > p,
    body.single-product .faq-item.is-open > p,
    body.single-product .faq-item.active .faq-content,
    body.single-product .faq-item.open .faq-content,
    body.single-product .faq-item.is-open .faq-content,
    body.single-product .faq-item.active .faq-answer,
    body.single-product .faq-item.open .faq-answer,
    body.single-product .faq-item.is-open .faq-answer,
    body.single-product .accordion-item.active .accordion-answer,
    body.single-product .accordion-item.open .accordion-answer,
    body.single-product .accordion-item.is-open .accordion-answer,
    body.single-product .faq-item button[aria-expanded="true"] + .faq-content,
    body.single-product .faq-item button[aria-expanded="true"] + .faq-answer,
    body.single-product .accordion-item button[aria-expanded="true"] + .accordion-answer {
        display: block !important;
    }

    body.single-product .faq-item > p,
    body.single-product .faq-content p,
    body.single-product .faq-answer p,
    body.single-product .accordion-answer p {
        margin: 0 !important;
        font-size: 17px !important;
        line-height: 1.65 !important;
        color: #6f675f !important;
        text-align: left !important;
    }
}

/* =====================================================
   MOBILE — PRODUCT FAQ UNDER TITLE
===================================================== */

@media screen and (max-width: 768px) {

    body.single-product .product-faq,
    body.single-product .swiat-product-faq,
    body.single-product .product-faq-section,
    body.single-product .faq-section {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.single-product .product-faq-inner,
    body.single-product .swiat-product-faq-inner,
    body.single-product .product-faq-grid,
    body.single-product .faq-grid,
    body.single-product .faq-wrapper {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 42px !important;
        overflow: visible !important;
    }

    body.single-product .product-faq-heading,
    body.single-product .swiat-product-faq-heading,
    body.single-product .faq-heading,
    body.single-product .faq-intro {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    body.single-product .product-faq-list,
    body.single-product .swiat-product-faq-list,
    body.single-product .faq-list,
    body.single-product .faq-items,
    body.single-product .accordion {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        transform: none !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
    }

    body.single-product .faq-item,
    body.single-product .product-faq-item {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product .faq-question,
    body.single-product .product-faq-question {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 24px !important;
        text-align: left !important;
    }

    body.single-product .faq-content,
    body.single-product .product-faq-content {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* =========================================================
   CONTACT — tablet + mobile fix
========================================================= */

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {

    .contact-page {
        overflow-x: hidden;
    }

    .contact-page .contact-grid,
    .contact-page .contact-cards,
    .contact-page .contact-columns,
    .contact-page .contact-boxes,
    .contact-page .contact-info-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 20px !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
        box-sizing: border-box !important;
    }

    /* jeżeli są 3 kafle, ostatni niech idzie na całą szerokość */
    .contact-page .contact-grid > *:last-child,
    .contact-page .contact-cards > *:last-child,
    .contact-page .contact-columns > *:last-child,
    .contact-page .contact-boxes > *:last-child,
    .contact-page .contact-info-grid > *:last-child {
        grid-column: 1 / -1;
    }

    .contact-page .contact-card,
    .contact-page .contact-box,
    .contact-page .contact-column,
    .contact-page .contact-info-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: auto !important;
        padding: 40px 24px !important;
        box-sizing: border-box !important;
    }

    .contact-page .contact-card h1,
    .contact-page .contact-card h2,
    .contact-page .contact-card h3,
    .contact-page .contact-box h1,
    .contact-page .contact-box h2,
    .contact-page .contact-box h3,
    .contact-page .contact-column h1,
    .contact-page .contact-column h2,
    .contact-page .contact-column h3,
    .contact-page .contact-info-card h1,
    .contact-page .contact-info-card h2,
    .contact-page .contact-info-card h3,
    .contact-page .contact-card p,
    .contact-page .contact-box p,
    .contact-page .contact-column p,
    .contact-page .contact-info-card p,
    .contact-page .contact-card a,
    .contact-page .contact-box a,
    .contact-page .contact-column a,
    .contact-page .contact-info-card a,
    .contact-page .contact-card span,
    .contact-page .contact-box span,
    .contact-page .contact-column span,
    .contact-page .contact-info-card span {
        writing-mode: horizontal-tb !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
        text-align: left !important;
    }

    .contact-page .contact-card .contact-title,
    .contact-page .contact-box .contact-title,
    .contact-page .contact-column .contact-title,
    .contact-page .contact-info-card .contact-title {
        font-size: 42px !important;
        line-height: 1.08 !important;
        letter-spacing: 0.02em !important;
        margin-bottom: 24px !important;
    }

    .contact-page .contact-card a,
    .contact-page .contact-box a,
    .contact-page .contact-column a,
    .contact-page .contact-info-card a {
        display: inline-block;
        max-width: 100%;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }
}


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

    .contact-page .contact-grid,
    .contact-page .contact-cards,
    .contact-page .contact-columns,
    .contact-page .contact-boxes,
    .contact-page .contact-info-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .contact-page .contact-grid > *,
    .contact-page .contact-cards > *,
    .contact-page .contact-columns > *,
    .contact-page .contact-boxes > *,
    .contact-page .contact-info-grid > * {
        grid-column: auto !important;
    }

    .contact-page .contact-card,
    .contact-page .contact-box,
    .contact-page .contact-column,
    .contact-page .contact-info-card {
        padding: 34px 20px !important;
    }

    .contact-page .contact-card .contact-title,
    .contact-page .contact-box .contact-title,
    .contact-page .contact-column .contact-title,
    .contact-page .contact-info-card .contact-title {
        font-size: 34px !important;
        line-height: 1.08 !important;
        margin-bottom: 20px !important;
    }

    .contact-page .contact-card h2,
    .contact-page .contact-card h3,
    .contact-page .contact-box h2,
    .contact-page .contact-box h3,
    .contact-page .contact-column h2,
    .contact-page .contact-column h3,
    .contact-page .contact-info-card h2,
    .contact-page .contact-info-card h3 {
        font-size: 12px !important;
        line-height: 1.45 !important;
        letter-spacing: 0.22em !important;
        margin-bottom: 32px !important;
    }
}

/* =========================================================
   HOME / EDITORIAL SECTIONS — mobile spacing fix
   Naprawa dużych pustych przestrzeni i numerów 03/05
========================================================= */

@media (max-width: 767px) {

    .home-editorial,
    .editorial-section,
    .home-story-section,
    .home-image-section,
    .lookbook-section,
    .brand-section {
        min-height: auto !important;
    }

    .home-editorial .section-inner,
    .editorial-section .section-inner,
    .home-story-section .section-inner,
    .home-image-section .section-inner,
    .lookbook-section .section-inner,
    .brand-section .section-inner {
        min-height: auto !important;
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    .home-editorial img,
    .editorial-section img,
    .home-story-section img,
    .home-image-section img,
    .lookbook-section img,
    .brand-section img {
        width: 100% !important;
        height: auto !important;
        display: block !important;
    }

    .home-editorial .section-line,
    .editorial-section .section-line,
    .home-story-section .section-line,
    .home-image-section .section-line,
    .lookbook-section .section-line,
    .brand-section .section-line {
        height: 180px !important;
        margin: 0 0 48px !important;
    }

    .home-editorial .section-number,
    .editorial-section .section-number,
    .home-story-section .section-number,
    .home-image-section .section-number,
    .lookbook-section .section-number,
    .brand-section .section-number {
        display: block !important;
        position: static !important;
        margin: 0 0 12px !important;
        font-size: 14px !important;
        line-height: 1 !important;
        letter-spacing: 0.08em !important;
        white-space: nowrap !important;
    }

    .home-editorial h2,
    .editorial-section h2,
    .home-story-section h2,
    .home-image-section h2,
    .lookbook-section h2,
    .brand-section h2 {
        margin: 0 !important;
        font-size: 42px !important;
        line-height: 0.95 !important;
    }
}

@media (max-width: 767px) {

    .home-page section,
    .front-page section {
        min-height: auto !important;
    }

    .home-page section:not(.hero),
    .front-page section:not(.hero) {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    .home-page section img,
    .front-page section img {
        display: block;
        width: 100%;
        height: auto;
    }
}

/* =========================================================
   ABOUT PAGE — section 03 mobile/tablet fix
   Sekcja: "Nie wszystko trzeba nazywać."
========================================================= */

@media (max-width: 1024px) {

    .about-page .about-pause {
        min-height: auto !important;
        height: auto !important;
        padding: 90px 40px 80px !important;
        display: block !important;
        position: relative !important;
        box-sizing: border-box !important;
    }

    .about-page .about-pause span {
        display: block !important;
        position: static !important;
        margin: 0 0 20px !important;
        font-size: 14px !important;
        line-height: 1 !important;
        letter-spacing: 0.08em !important;
        color: #2d2926 !important;
        transform: none !important;
    }

    .about-page .about-pause-line {
        display: block !important;
        width: 1px !important;
        height: 160px !important;
        margin: 0 0 56px !important;
        background: rgba(45, 41, 38, 0.22) !important;
        position: static !important;
        transform: none !important;
    }

    .about-page .about-pause p {
        position: static !important;
        margin: 0 !important;
        max-width: 520px !important;
        font-size: clamp(42px, 8vw, 72px) !important;
        line-height: 0.95 !important;
        letter-spacing: -0.04em !important;
        color: #2d2926 !important;
        transform: none !important;
    }
}


@media (max-width: 767px) {

    .about-page .about-pause {
        padding: 72px 40px 64px !important;
    }

    .about-page .about-pause span {
        margin-bottom: 18px !important;
        font-size: 13px !important;
    }

    .about-page .about-pause-line {
        height: 150px !important;
        margin-bottom: 52px !important;
    }

    .about-page .about-pause p {
        font-size: 42px !important;
        line-height: 0.95 !important;
        max-width: 320px !important;
    }
}

/* =========================================================
   ABOUT PAGE — section 05 portrait mobile/tablet fix
========================================================= */

@media (max-width: 1024px) {

    .about-page .about-portrait {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        background: #f4efe9 !important;
    }

    .about-page .about-portrait span {
        position: absolute !important;
        left: 40px !important;
        bottom: 48px !important;
        z-index: 2 !important;
        display: block !important;
        margin: 0 !important;
        font-size: 14px !important;
        line-height: 1 !important;
        letter-spacing: 0.08em !important;
        color: #fff !important;
        transform: none !important;
    }

    .about-page .about-portrait img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 620px !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center top !important;
    }

    .about-page .about-manifest {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .about-page .about-manifest-image {
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .about-page .about-manifest-image img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
    }
}


@media (max-width: 767px) {

    .about-page .about-portrait {
        margin-bottom: 0 !important;
    }

    .about-page .about-portrait span {
        left: 40px !important;
        bottom: 44px !important;
        font-size: 13px !important;
    }

    .about-page .about-portrait img {
        min-height: 640px !important;
        height: 82vh !important;
        object-fit: cover !important;
        object-position: center top !important;
    }

    .about-page .about-manifest-image img {
        height: auto !important;
        min-height: 520px !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}

/* =========================================================
   PRODUCT LOOP — FINAL OVERRIDE
   sklep / swetry / koszule
   Ładowane na końcu, po style/category/product.css
========================================================= */

body ul.products,
body .category-product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 72px 42px !important;
    width: 100% !important;
    max-width: 1720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 64px !important;
    padding-right: 64px !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

body ul.products li.product,
body .category-product-grid li.product {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    text-align: left !important;
    overflow: visible !important;
}


/* link produktu */

body ul.products li.product a.woocommerce-LoopProduct-link,
body .category-product-grid li.product a.woocommerce-LoopProduct-link {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 300px !important;
    column-gap: 42px !important;
    row-gap: 0 !important;
    align-items: start !important;
    color: #2d2926 !important;
    text-decoration: none !important;
}


/* zdjęcie */

body ul.products li.product a.woocommerce-LoopProduct-link img,
body .category-product-grid li.product a.woocommerce-LoopProduct-link img {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 24px !important;
    border: 0 !important;
    box-shadow: none !important;
    object-fit: cover !important;
    transition: transform .45s ease, filter .35s ease, opacity .35s ease !important;
}


/* nazwa produktu — lewa strona */

body ul.products li.product .woocommerce-loop-product__title,
body .category-product-grid li.product .woocommerce-loop-product__title {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    text-align: left !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: #2d2926 !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 18px !important;
    line-height: 1.08 !important;
    font-weight: 500 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    min-height: 78px !important;
height: auto !important;

overflow: visible !important;

margin: 0 !important;
padding: 0 10px 0 0 !important;
}


/* cena — lewa strona */

body ul.products li.product .price,
body .category-product-grid li.product .price {
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-self: start !important;
    text-align: left !important;
    display: block !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    color: #2d2926 !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 16px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
    position: relative !important;
z-index: 1 !important;


/* warianty — prawa strona, wyśrodkowane */

body ul.products li.product .swiat-loop-attributes,
body .category-product-grid li.product .swiat-loop-attributes {
    grid-column: 2 !important;
    grid-row: 2 / 4 !important;
    display: grid !important;
    gap: 12px !important;
    align-self: center !important;
    justify-self: center !important;
    justify-items: center !important;
    width: 100% !important;
    max-width: 300px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}


/* ukrywamy napisy KOLOR / ROZMIAR */

body ul.products li.product .swiat-loop-attribute__label,
body .category-product-grid li.product .swiat-loop-attribute__label {
    display: none !important;
}


/* grupy wariantów */

body ul.products li.product .swiat-loop-attribute,
body .category-product-grid li.product .swiat-loop-attribute {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* kolory */

body ul.products li.product .swiat-loop-colors,
body .category-product-grid li.product .swiat-loop-colors {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

body ul.products li.product .swiat-loop-color,
body .category-product-grid li.product .swiat-loop-color {
    display: block !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 999px !important;
    background: var(--swiat-loop-color) !important;
    border: 1px solid rgba(45, 41, 38, .2) !important;
    box-shadow: inset 0 0 0 2px rgba(246, 241, 235, .95) !important;
}


/* rozmiary — bez ramek, bardziej premium */

body ul.products li.product .swiat-loop-sizes,
body .category-product-grid li.product .swiat-loop-sizes {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

body ul.products li.product .swiat-loop-size,
body .category-product-grid li.product .swiat-loop-size {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: rgba(45, 41, 38, .66) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}


/* ukrycie domyślnych przycisków, gdyby jeszcze gdzieś zostały */

body ul.products li.product .button,
body ul.products li.product a.button,
body ul.products li.product .add_to_cart_button,
body .category-product-grid li.product .button,
body .category-product-grid li.product a.button,
body .category-product-grid li.product .add_to_cart_button {
    display: none !important;
}


/* hover na zdjęciu */

body ul.products li.product a.woocommerce-LoopProduct-link::after,
body .category-product-grid li.product a.woocommerce-LoopProduct-link::after {
    content: "Zobacz produkt" !important;
    position: absolute !important;
    left: 50% !important;
    top: 42% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 4 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    padding: 14px 22px !important;
    border: 1px solid rgba(255, 255, 255, .65) !important;
    background: rgba(45, 41, 38, .22) !important;
    color: #fff !important;
    backdrop-filter: blur(8px) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    transition: opacity .35s ease, transform .35s ease !important;
}

body ul.products li.product:hover a.woocommerce-LoopProduct-link img,
body .category-product-grid li.product:hover a.woocommerce-LoopProduct-link img {
    opacity: .9 !important;
    filter: brightness(.92) !important;
    transform: scale(1.01) !important;
}

body ul.products li.product:hover a.woocommerce-LoopProduct-link::after,
body .category-product-grid li.product:hover a.woocommerce-LoopProduct-link::after {
    opacity: 1 !important;
}


/* accessibility text */

body ul.products li.product .screen-reader-text,
body .category-product-grid li.product .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}


/* tablet */

@media (max-width: 1024px) {
    body ul.products,
    body .category-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 54px 28px !important;
        padding-left: 28px !important;
        padding-right: 28px !important;
    }

    body ul.products li.product a.woocommerce-LoopProduct-link,
    body .category-product-grid li.product a.woocommerce-LoopProduct-link {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
    }

    body ul.products li.product .woocommerce-loop-product__title,
    body ul.products li.product .price,
    body ul.products li.product .swiat-loop-attributes,
    body .category-product-grid li.product .woocommerce-loop-product__title,
    body .category-product-grid li.product .price,
    body .category-product-grid li.product .swiat-loop-attributes {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    body ul.products li.product .swiat-loop-attributes,
    body .category-product-grid li.product .swiat-loop-attributes {
        justify-self: start !important;
        justify-items: start !important;
        text-align: left !important;
        margin-top: 14px !important;
        max-width: 100% !important;
    }

    body ul.products li.product .swiat-loop-colors,
    body ul.products li.product .swiat-loop-sizes,
    body .category-product-grid li.product .swiat-loop-colors,
    body .category-product-grid li.product .swiat-loop-sizes {
        justify-content: flex-start !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    body ul.products,
    body .category-product-grid {
        grid-template-columns: 1fr !important;
        gap: 48px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
}

/* =========================================================
   PRODUCT — Story section calmer / smaller
========================================================= */

.single-product .story-section {
    max-width: 1320px !important;
    margin: 150px auto 140px !important;
    padding: 0 48px !important;
}

.single-product .story-heading {
    text-align: left !important;
    margin-bottom: 64px !important;
}

.single-product .story-number {
    margin-bottom: 34px !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 10px !important;
    line-height: 1 !important;
    letter-spacing: 0.32em !important;
    color: rgba(45, 41, 38, 0.34) !important;
}

.single-product .story-heading h2 {
    max-width: 980px !important;
    margin: 0 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(54px, 5vw, 92px) !important;
    line-height: 0.98 !important;
    font-weight: 400 !important;
    letter-spacing: -0.025em !important;

    color: #2d2926 !important;
}

.single-product .story-content {
    max-width: 520px !important;
    margin: 0 8% 72px auto !important;
}

.single-product .story-content p {
    margin: 0 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 22px !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;

    color: rgba(45, 41, 38, 0.68) !important;
}

.single-product .story-image {
    max-width: 1180px !important;
    margin: 0 auto !important;
}

.single-product .story-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;

    max-height: 760px !important;
    object-fit: cover !important;
    object-position: center !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .story-section {
        margin: 110px auto 100px !important;
        padding: 0 28px !important;
    }

    .single-product .story-heading {
        margin-bottom: 44px !important;
    }

    .single-product .story-heading h2 {
        max-width: 760px !important;
        font-size: clamp(44px, 7vw, 70px) !important;
    }

    .single-product .story-content {
        max-width: 620px !important;
        margin: 0 0 56px !important;
    }

    .single-product .story-content p {
        font-size: 20px !important;
        line-height: 1.7 !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .story-section {
        margin: 80px auto 80px !important;
        padding: 0 20px !important;
    }

    .single-product .story-number {
        margin-bottom: 24px !important;
        font-size: 9px !important;
        letter-spacing: 0.26em !important;
    }

    .single-product .story-heading {
        margin-bottom: 32px !important;
    }

    .single-product .story-heading h2 {
        max-width: 100% !important;
        font-size: clamp(36px, 11vw, 48px) !important;
        line-height: 1.02 !important;
        letter-spacing: -0.02em !important;
    }

    .single-product .story-content {
        max-width: 100% !important;
        margin: 0 0 42px !important;
    }

    .single-product .story-content p {
        font-size: 18px !important;
        line-height: 1.65 !important;
    }

    .single-product .story-image img {
        max-height: none !important;
    }
}

/* =========================================================
   PRODUCT — Story section even smaller / calmer
========================================================= */

.single-product .story-section {
    max-width: 1180px !important;
    margin: 110px auto 110px !important;
    padding: 0 48px !important;
}

.single-product .story-heading {
    margin-bottom: 46px !important;
}

.single-product .story-number {
    margin-bottom: 24px !important;
    font-size: 9px !important;
    letter-spacing: 0.28em !important;
}

.single-product .story-heading h2 {
    max-width: 820px !important;

    font-size: clamp(44px, 4.2vw, 72px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.02em !important;
}

.single-product .story-content {
    max-width: 460px !important;
    margin: 0 10% 56px auto !important;
}

.single-product .story-content p {
    font-size: 19px !important;
    line-height: 1.7 !important;
}

.single-product .story-image {
    max-width: 980px !important;
}

.single-product .story-image img {
    max-height: 620px !important;
    object-fit: cover !important;
    object-position: center !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .story-section {
        max-width: 100% !important;
        margin: 90px auto 90px !important;
        padding: 0 28px !important;
    }

    .single-product .story-heading {
        margin-bottom: 36px !important;
    }

    .single-product .story-heading h2 {
        max-width: 640px !important;
        font-size: clamp(38px, 6vw, 58px) !important;
    }

    .single-product .story-content {
        max-width: 560px !important;
        margin: 0 0 44px !important;
    }

    .single-product .story-content p {
        font-size: 18px !important;
        line-height: 1.65 !important;
    }

    .single-product .story-image {
        max-width: 100% !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .story-section {
        margin: 64px auto 64px !important;
        padding: 0 20px !important;
    }

    .single-product .story-number {
        margin-bottom: 18px !important;
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .story-heading {
        margin-bottom: 26px !important;
    }

    .single-product .story-heading h2 {
        font-size: clamp(32px, 9vw, 42px) !important;
        line-height: 1.04 !important;
    }

    .single-product .story-content {
        margin: 0 0 34px !important;
    }

    .single-product .story-content p {
        font-size: 16.5px !important;
        line-height: 1.62 !important;
    }

    .single-product .story-image img {
        max-height: none !important;
    }
}

/* =========================================================
   PRODUCT — Details / Editorial section smaller
========================================================= */

.single-product .details-section {
    max-width: 1180px !important;
    margin: 90px auto 90px !important;
    padding: 0 48px !important;
}

.single-product .details-content {
    max-width: 520px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

.single-product .details-content span {
    margin-bottom: 22px !important;

    font-size: 9px !important;
    letter-spacing: 0.28em !important;
    color: rgba(45, 41, 38, 0.32) !important;
}

.single-product .details-content h2 {
    max-width: 540px !important;
    margin: 0 auto 28px !important;

    font-size: clamp(42px, 4.2vw, 66px) !important;
    line-height: 1.02 !important;
    font-weight: 400 !important;
    letter-spacing: -0.018em !important;
}

.single-product .details-content p {
    max-width: 460px !important;
    margin: 0 auto 34px !important;

    font-size: 18px !important;
    line-height: 1.68 !important;
    color: rgba(45, 41, 38, 0.66) !important;
}

.single-product .details-content a {
    font-size: 10px !important;
    letter-spacing: 0.18em !important;
    padding-bottom: 6px !important;
}


/* zdjęcia w tej sekcji */

.single-product .details-image img {
    width: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

.single-product .image-top {
    width: 42% !important;
    margin: 0 auto 56px !important;
}

.single-product .image-bottom {
    width: 42% !important;
    margin: 56px auto 0 !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .details-section {
        max-width: 100% !important;
        margin: 78px auto 78px !important;
        padding: 0 28px !important;
    }

    .single-product .details-content {
        max-width: 560px !important;
    }

    .single-product .details-content h2 {
        font-size: clamp(38px, 6vw, 56px) !important;
        margin-bottom: 24px !important;
    }

    .single-product .details-content p {
        max-width: 520px !important;
        font-size: 17px !important;
        line-height: 1.65 !important;
    }

    .single-product .image-top,
    .single-product .image-bottom {
        width: 68% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .details-section {
        margin: 64px auto 64px !important;
        padding: 0 20px !important;
    }

    .single-product .details-content span {
        margin-bottom: 18px !important;
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .details-content h2 {
        max-width: 100% !important;
        font-size: clamp(32px, 9vw, 42px) !important;
        line-height: 1.04 !important;
        margin-bottom: 22px !important;
    }

    .single-product .details-content p {
        max-width: 100% !important;
        font-size: 16px !important;
        line-height: 1.62 !important;
        margin-bottom: 28px !important;
    }

    .single-product .image-top,
    .single-product .image-bottom {
        width: 100% !important;
        margin: 0 0 34px !important;
    }

    .single-product .image-bottom {
        margin-top: 34px !important;
    }
}

/* =========================================================
   PRODUCT — Materials section smaller / calmer
========================================================= */

.single-product .materials-section {
    max-width: 1120px !important;
    margin: 90px auto 90px !important;
    padding: 0 48px !important;
}

.single-product .materials-gallery {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;

    max-width: 860px !important;
    margin: 0 auto !important;
}

.single-product .materials-gallery img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center !important;
}

.single-product .materials-text {
    max-width: 640px !important;
    margin: 62px auto 0 !important;

    text-align: center !important;
}

.single-product .materials-text h2 {
    max-width: 560px !important;
    margin: 0 auto 24px !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(38px, 3.8vw, 58px) !important;
    line-height: 1.04 !important;
    font-weight: 400 !important;
    letter-spacing: -0.015em !important;

    color: #2d2926 !important;
}

.single-product .materials-text p {
    max-width: 520px !important;
    margin: 0 auto !important;

    color: rgba(45, 41, 38, 0.68) !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

.single-product .materials-text a {
    display: inline-flex !important;
    margin-top: 28px !important;

    color: #2d2926 !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;

    border-bottom: 1px solid rgba(45, 41, 38, 0.35) !important;
    padding-bottom: 7px !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .materials-section {
        max-width: 100% !important;
        margin: 76px auto 76px !important;
        padding: 0 28px !important;
    }

    .single-product .materials-gallery {
        max-width: 760px !important;
        gap: 22px !important;
    }

    .single-product .materials-text {
        max-width: 560px !important;
        margin-top: 48px !important;
    }

    .single-product .materials-text h2 {
        font-size: clamp(34px, 5.6vw, 50px) !important;
        margin-bottom: 20px !important;
    }

    .single-product .materials-text p {
        font-size: 16.5px !important;
        line-height: 1.62 !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .materials-section {
        margin: 62px auto 62px !important;
        padding: 0 20px !important;
    }

    .single-product .materials-gallery {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        max-width: 100% !important;
    }

    .single-product .materials-text {
        max-width: 100% !important;
        margin-top: 34px !important;
    }

    .single-product .materials-text h2 {
        max-width: 100% !important;

        font-size: clamp(30px, 8.5vw, 40px) !important;
        line-height: 1.06 !important;
        margin-bottom: 18px !important;
    }

    .single-product .materials-text p {
        max-width: 100% !important;

        font-size: 16px !important;
        line-height: 1.58 !important;
    }

    .single-product .materials-text a {
        margin-top: 24px !important;
        font-size: 9.5px !important;
        letter-spacing: 0.16em !important;
    }
}

/* =========================================================
   PRODUCT — Dynamic lookbook / stylizacje max 3
========================================================= */

.single-product .looks-section {
    max-width: 1280px !important;
    margin: 90px auto 100px !important;
    padding: 0 48px !important;
}

.single-product .looks-header {
    margin-bottom: 54px !important;
    text-align: center !important;
}

.single-product .looks-header span {
    display: block !important;

    margin-bottom: 18px !important;

    color: rgba(45, 41, 38, 0.32) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.28em !important;
}

.single-product .looks-header h2 {
    margin: 0 !important;

    color: #2d2926 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(40px, 4vw, 64px) !important;
    line-height: 1.02 !important;
    font-weight: 400 !important;
    letter-spacing: -0.018em !important;
}

.single-product .looks-grid {
    display: grid !important;
    grid-template-columns: repeat(var(--looks-count, 3), minmax(0, 1fr)) !important;
    gap: 28px !important;

    width: 100% !important;
    margin: 0 auto !important;
}

.single-product .looks-grid[data-count="1"] {
    max-width: 430px !important;
}

.single-product .looks-grid[data-count="2"] {
    max-width: 860px !important;
}

.single-product .looks-grid[data-count="3"] {
    max-width: 1120px !important;
}

.single-product .looks-item {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    background: #f6f1eb !important;
}

.single-product .looks-item img,
.single-product .looks-grid img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center !important;

    transition:
        transform 0.45s ease,
        filter 0.35s ease !important;
}

.single-product .looks-item:hover img {
    transform: scale(1.015) !important;
    filter: brightness(0.94) !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .looks-section {
        max-width: 100% !important;
        margin: 76px auto 84px !important;
        padding: 0 28px !important;
    }

    .single-product .looks-header {
        margin-bottom: 42px !important;
    }

    .single-product .looks-header h2 {
        font-size: clamp(36px, 5.6vw, 54px) !important;
    }

    .single-product .looks-grid {
        gap: 22px !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .looks-section {
        margin: 62px auto 68px !important;
        padding: 0 20px !important;
    }

    .single-product .looks-header {
        margin-bottom: 30px !important;
    }

    .single-product .looks-header span {
        margin-bottom: 14px !important;

        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .looks-header h2 {
        font-size: clamp(30px, 8.5vw, 40px) !important;
        line-height: 1.05 !important;
    }

    .single-product .looks-grid,
    .single-product .looks-grid[data-count="1"],
    .single-product .looks-grid[data-count="2"],
    .single-product .looks-grid[data-count="3"] {
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
        gap: 18px !important;
    }
}

/* =========================================================
   PRODUCT — Features / Zalety section stronger
========================================================= */

.single-product .features-section {
    max-width: 1180px !important;
    margin: 120px auto 130px !important;
    padding: 0 48px !important;

    transform: none !important;
}

.single-product .features-left {
    max-width: 720px !important;
    margin: 0 auto 72px !important;

    text-align: center !important;
}

.single-product .features-left span {
    display: block !important;

    margin-bottom: 24px !important;

    color: rgba(45, 41, 38, 0.34) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.28em !important;
}

.single-product .features-left h2 {
    max-width: 720px !important;
    margin: 0 auto 24px !important;

    color: #2d2926 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(42px, 4vw, 64px) !important;
    line-height: 1.04 !important;
    font-weight: 400 !important;
    letter-spacing: -0.018em !important;
}

.single-product .features-left p {
    max-width: 520px !important;
    margin: 0 auto !important;

    color: rgba(45, 41, 38, 0.62) !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 18px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

.single-product .features-right {
    max-width: 980px !important;
    margin: 0 auto !important;
}

.single-product .feature-item {
    display: grid !important;
    grid-template-columns: 86px 1fr !important;
    gap: 34px !important;
    align-items: baseline !important;

    padding: 30px 0 !important;

    border-bottom: 1px solid rgba(45, 41, 38, 0.14) !important;
}

.single-product .feature-item:first-child {
    border-top: 1px solid rgba(45, 41, 38, 0.14) !important;
}

.single-product .feature-index {
    color: rgba(45, 41, 38, 0.34) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.32em !important;
}

.single-product .feature-text {
    display: block !important;

    color: #2d2926 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 30px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .features-section {
        max-width: 100% !important;
        margin: 90px auto 96px !important;
        padding: 0 28px !important;
    }

    .single-product .features-left {
        margin-bottom: 54px !important;
    }

    .single-product .features-left h2 {
        font-size: clamp(36px, 5.8vw, 54px) !important;
    }

    .single-product .features-left p {
        font-size: 17px !important;
        line-height: 1.6 !important;
    }

    .single-product .features-right {
        max-width: 760px !important;
    }

    .single-product .feature-item {
        grid-template-columns: 64px 1fr !important;
        gap: 24px !important;
        padding: 26px 0 !important;
    }

    .single-product .feature-text {
        font-size: 26px !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .features-section {
        margin: 68px auto 74px !important;
        padding: 0 20px !important;
    }

    .single-product .features-left {
        margin-bottom: 38px !important;
        text-align: left !important;
    }

    .single-product .features-left span {
        margin-bottom: 18px !important;
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .features-left h2 {
        max-width: 100% !important;
        margin: 0 0 18px !important;

        font-size: clamp(32px, 8.5vw, 42px) !important;
        line-height: 1.06 !important;
    }

    .single-product .features-left p {
        max-width: 100% !important;
        margin: 0 !important;

        font-size: 16px !important;
        line-height: 1.58 !important;
    }

    .single-product .feature-item {
        grid-template-columns: 44px 1fr !important;
        gap: 18px !important;
        padding: 22px 0 !important;
    }

    .single-product .feature-index {
        font-size: 9px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .feature-text {
        font-size: 22px !important;
        line-height: 1.28 !important;
    }
}

/* =========================================================
   PRODUCT — Care / Pielęgnacja section final
========================================================= */

.single-product .care-section {
    max-width: 1180px !important;
    margin: 105px auto 115px !important;
    padding: 0 48px !important;
}

.single-product .care-note {
    border-top: 0 !important;
    padding-top: 0 !important;
}

.single-product .care-number {
    display: block !important;

    margin: 0 0 52px !important;

    text-align: center !important;

    color: rgba(45, 41, 38, 0.32) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.28em !important;
}

.single-product .care-layout {
    display: grid !important;
    grid-template-columns: 0.9fr 1.1fr !important;
    gap: 96px !important;
    align-items: start !important;
}

.single-product .care-heading span {
    display: block !important;

    margin-bottom: 28px !important;

    color: rgba(45, 41, 38, 0.58) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.24em !important;
    text-transform: uppercase !important;
}

.single-product .care-heading h2 {
    max-width: 420px !important;
    margin: 0 !important;

    color: #2d2926 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: clamp(34px, 3.2vw, 48px) !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    letter-spacing: -0.015em !important;
}

.single-product .care-heading p {
    max-width: 360px !important;
    margin: 30px 0 0 !important;

    color: rgba(45, 41, 38, 0.64) !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 19px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

.single-product .care-rules {
    margin-top: 0 !important;
}

.single-product .care-rule {
    display: grid !important;
    grid-template-columns: 56px 1fr !important;
    gap: 30px !important;
    align-items: baseline !important;

    padding: 28px 0 !important;

    border-bottom: 1px solid rgba(45, 41, 38, 0.14) !important;
}

.single-product .care-rule:first-child {
    border-top: 1px solid rgba(45, 41, 38, 0.14) !important;
}

.single-product .care-rule-index {
    color: rgba(45, 41, 38, 0.32) !important;

    font-family: "Lato", Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: 0.28em !important;
}

.single-product .care-rule p {
    margin: 0 !important;

    color: #2d2926 !important;

    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 22px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
}


/* tablet */

@media (max-width: 1024px) {
    .single-product .care-section {
        max-width: 100% !important;
        margin: 84px auto 92px !important;
        padding: 0 28px !important;
    }

    .single-product .care-number {
        margin-bottom: 42px !important;
    }

    .single-product .care-layout {
        grid-template-columns: 1fr !important;
        gap: 48px !important;
    }

    .single-product .care-heading h2 {
        max-width: 540px !important;
        font-size: clamp(32px, 5vw, 44px) !important;
    }

    .single-product .care-heading p {
        max-width: 520px !important;
        font-size: 18px !important;
        line-height: 1.62 !important;
    }

    .single-product .care-rule p {
        font-size: 20px !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    .single-product .care-section {
        margin: 64px auto 72px !important;
        padding: 0 20px !important;
    }

    .single-product .care-number {
        margin-bottom: 30px !important;
        font-size: 8px !important;
        letter-spacing: 0.22em !important;
    }

    .single-product .care-layout {
        gap: 34px !important;
    }

    .single-product .care-heading span {
        margin-bottom: 20px !important;
        font-size: 9px !important;
        letter-spacing: 0.2em !important;
    }

    .single-product .care-heading h2 {
        max-width: 100% !important;
        font-size: clamp(30px, 8vw, 40px) !important;
        line-height: 1.06 !important;
    }

    .single-product .care-heading p {
        max-width: 100% !important;
        margin-top: 22px !important;

        font-size: 16.5px !important;
        line-height: 1.58 !important;
    }

    .single-product .care-rule {
        grid-template-columns: 42px 1fr !important;
        gap: 18px !important;
        padding: 22px 0 !important;
    }

    .single-product .care-rule-index {
        font-size: 8px !important;
        letter-spacing: 0.2em !important;
    }

    .single-product .care-rule p {
        font-size: 18px !important;
        line-height: 1.5 !important;
    }
}

/* =========================================================
   PRODUCT HERO — laptop hierarchy + gallery image repair
========================================================= */

/* NIE rozciągamy zdjęć na siłę */

.single-product-page .gallery-main,
.single-product-page .gallery-main img {
    height: auto !important;
}

.single-product-page .gallery-main img {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    image-rendering: auto !important;
}


/* miniaturki wracają do normalnego formatu 4:5 */

.single-product-page .gallery-thumbs {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;

    align-self: flex-start !important;

    width: 86px !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}

.single-product-page .gallery-thumbs img {
    display: block !important;

    width: 86px !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
}


/* laptop — prawa kolumna spokojniejsza */

@media (min-width: 1025px) and (max-width: 1540px) {
    .single-product-page .single-product-info {
        max-width: 500px !important;
    }

    .single-product-page .product-title {
        max-width: 480px !important;

        margin-bottom: 22px !important;

        font-size: clamp(42px, 3.4vw, 58px) !important;
        line-height: 1.02 !important;
        letter-spacing: -0.02em !important;
    }

    .single-product-page .product-price {
        margin-bottom: 30px !important;
    }

    .single-product-page .product-price,
    .single-product-page .product-price .swiat-price-line,
    .single-product-page .product-price ins,
    .single-product-page .product-price .woocommerce-Price-amount {
        font-size: 28px !important;
        line-height: 1.1 !important;
    }

    .single-product-page .product-description {
        max-width: 460px !important;

        margin-bottom: 34px !important;

        font-size: 17px !important;
        line-height: 1.62 !important;
    }

    .single-product-page .product-info-block {
        margin-top: 28px !important;
        padding-top: 18px !important;
    }

    .single-product-page .product-info-label {
        margin-bottom: 13px !important;

        font-size: 8.5px !important;
        letter-spacing: 0.2em !important;
    }

    .single-product-page .product-composition p {
        font-size: 16px !important;
        line-height: 1.45 !important;
    }

    .single-product-page .product-benefits {
        gap: 8px !important;
    }

    .single-product-page .product-benefits div {
        font-size: 15.5px !important;
        line-height: 1.42 !important;
    }

    .single-product-page .product-choice-block h4 {
        margin-bottom: 12px !important;

        font-size: 8.5px !important;
        letter-spacing: 0.18em !important;
    }

    .single-product-page .size-guide-trigger {
        font-size: 11px !important;
    }

    .single-product-page .product-choice-block form.cart {
        margin-top: 26px !important;
    }

    .single-product-page .product-scroll-link {
        margin-top: 18px !important;
        font-size: 8.5px !important;
    }
}


/* tablet i mobile — miniaturki poziomo, bez rozciągania */

@media (max-width: 1024px) {
    .single-product-page .gallery-thumbs {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;

        width: 100% !important;
        height: auto !important;

        overflow-x: auto !important;
    }

    .single-product-page .gallery-thumbs img {
        flex: 0 0 auto !important;

        width: 72px !important;
        height: auto !important;

        aspect-ratio: 4 / 5 !important;
        object-fit: cover !important;
    }
}

@media (max-width: 767px) {
    .single-product-page .product-title {
        font-size: clamp(34px, 9vw, 44px) !important;
    }

    .single-product-page .product-description {
        font-size: 16px !important;
        line-height: 1.58 !important;
    }
}

/* =========================================================
   PRODUCT HERO — bigger centered thumbnails
========================================================= */

@media (min-width: 1025px) {
    .single-product-page .gallery-thumbs {
        display: flex !important;
        flex-direction: column !important;
        align-self: center !important;
        justify-self: center !important;

        width: 104px !important;
        max-width: 104px !important;

        gap: 12px !important;

        margin: 0 !important;
        padding: 0 !important;

        height: auto !important;
    }

    .single-product-page .gallery-thumbs img {
        display: block !important;

        width: 104px !important;
        height: auto !important;

        aspect-ratio: 4 / 5 !important;
        object-fit: cover !important;
        object-position: center top !important;

        margin: 0 !important;
        padding: 0 !important;

        opacity: 0.72 !important;
        border: 1px solid transparent !important;

        transition:
            opacity 0.25s ease,
            border-color 0.25s ease,
            transform 0.25s ease !important;
    }

    .single-product-page .gallery-thumbs img:hover {
        opacity: 1 !important;
        border-color: rgba(45, 41, 38, 0.45) !important;
        transform: scale(1.015) !important;
    }

    .single-product-page .gallery-thumbs img:first-child {
        opacity: 1 !important;
        border-color: rgba(45, 41, 38, 0.72) !important;
    }
}

/* =========================================================
   PRODUCT HERO — final laptop balance
   bigger thumbnails, top aligned + calmer right column
========================================================= */

/* MINIATURKI — większe, ale wyrównane do góry zdjęcia */

@media (min-width: 1025px) {
    .single-product-page .gallery-thumbs {
        display: flex !important;
        flex-direction: column !important;

        align-self: flex-start !important;
        justify-self: center !important;
        justify-content: flex-start !important;

        width: 104px !important;
        max-width: 104px !important;

        gap: 12px !important;

        margin: 0 !important;
        padding: 0 !important;

        height: auto !important;
    }

    .single-product-page .gallery-thumbs img {
        display: block !important;

        width: 104px !important;
        height: auto !important;

        aspect-ratio: 4 / 5 !important;
        object-fit: cover !important;
        object-position: center top !important;

        margin: 0 !important;
        padding: 0 !important;

        opacity: 0.74 !important;
        border: 1px solid transparent !important;

        transition:
            opacity 0.25s ease,
            border-color 0.25s ease,
            transform 0.25s ease !important;
    }

    .single-product-page .gallery-thumbs img:hover {
        opacity: 1 !important;
        border-color: rgba(45, 41, 38, 0.45) !important;
        transform: scale(1.015) !important;
    }

    .single-product-page .gallery-thumbs img:first-child {
        opacity: 1 !important;
        border-color: rgba(45, 41, 38, 0.72) !important;
    }
}


/* PRAWA KOLUMNA — laptop spokojniej */

@media (min-width: 1025px) and (max-width: 1540px) {
    .single-product-page .single-product-info {
        max-width: 470px !important;
    }

    .single-product-page .product-title {
        max-width: 460px !important;

        margin: 0 0 20px !important;

        font-size: clamp(38px, 3vw, 52px) !important;
        line-height: 1.03 !important;
        letter-spacing: -0.018em !important;
        font-weight: 400 !important;
    }

    .single-product-page .product-price {
        margin: 0 0 26px !important;
    }

    .single-product-page .product-price,
    .single-product-page .product-price .swiat-price-line,
    .single-product-page .product-price ins,
    .single-product-page .product-price .woocommerce-Price-amount {
        font-size: 26px !important;
        line-height: 1.1 !important;
    }

    .single-product-page .product-description {
        max-width: 430px !important;

        margin: 0 0 30px !important;

        font-size: 15.5px !important;
        line-height: 1.62 !important;
    }

    .single-product-page .product-info-block {
        margin-top: 24px !important;
        padding-top: 16px !important;
    }

    .single-product-page .product-info-label {
        margin-bottom: 11px !important;

        font-size: 8px !important;
        letter-spacing: 0.2em !important;
    }

    .single-product-page .product-composition p {
        font-size: 15px !important;
        line-height: 1.45 !important;
    }

    .single-product-page .product-benefits {
        gap: 7px !important;
    }

    .single-product-page .product-benefits div {
        font-size: 14.5px !important;
        line-height: 1.4 !important;
    }

    .single-product-page .product-choice-block {
        margin-top: 28px !important;
    }

    .single-product-page .product-choice-block h4 {
        margin-bottom: 10px !important;

        font-size: 8px !important;
        letter-spacing: 0.18em !important;
    }

    .single-product-page .size-guide-trigger {
        font-size: 10px !important;
    }

    .single-product-page .product-choice-block form.cart {
        margin-top: 22px !important;
    }

    .single-product-page .product-scroll-link {
        margin-top: 16px !important;
        font-size: 8px !important;
        letter-spacing: 0.16em !important;
    }
}


/* bardzo duże ekrany — zostawiamy bardziej oddechowy styl */

@media (min-width: 1541px) {
    .single-product-page .single-product-info {
        max-width: 560px !important;
    }

    .single-product-page .product-title {
        font-size: clamp(48px, 4vw, 72px) !important;
    }

    .single-product-page .product-description {
        font-size: 18px !important;
        line-height: 1.68 !important;
    }
}

/* =========================================================
   PRODUCT — Features / Dlaczego go pokochasz smaller
========================================================= */

body.single-product .single-product-page .features-section {
    max-width: 1040px !important;
    margin: 82px auto 92px !important;
    padding: 0 48px !important;
}

body.single-product .single-product-page .features-left {
    max-width: 560px !important;
    margin: 0 auto 48px !important;
    text-align: center !important;
}

body.single-product .single-product-page .features-left span {
    margin-bottom: 18px !important;

    font-size: 8px !important;
    letter-spacing: 0.24em !important;
}

body.single-product .single-product-page .features-left h2 {
    max-width: 560px !important;
    margin: 0 auto 18px !important;

    font-size: clamp(34px, 3.2vw, 48px) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.015em !important;
}

body.single-product .single-product-page .features-left p {
    max-width: 420px !important;
    margin: 0 auto !important;

    font-size: 15.5px !important;
    line-height: 1.58 !important;
}

body.single-product .single-product-page .features-right {
    max-width: 820px !important;
    margin: 0 auto !important;
}

body.single-product .single-product-page .feature-item {
    grid-template-columns: 58px 1fr !important;
    gap: 24px !important;

    padding: 22px 0 !important;

    border-bottom: 1px solid rgba(45, 41, 38, 0.13) !important;
}

body.single-product .single-product-page .feature-item:first-child {
    border-top: 1px solid rgba(45, 41, 38, 0.13) !important;
}

body.single-product .single-product-page .feature-index {
    font-size: 8px !important;
    letter-spacing: 0.24em !important;
}

body.single-product .single-product-page .feature-text {
    font-size: 23px !important;
    line-height: 1.28 !important;
    letter-spacing: -0.006em !important;
}


/* laptop */

@media (min-width: 1025px) and (max-width: 1540px) {
    body.single-product .single-product-page .features-section {
        max-width: 900px !important;
        margin: 72px auto 82px !important;
    }

    body.single-product .single-product-page .features-left {
        margin-bottom: 40px !important;
    }

    body.single-product .single-product-page .features-left h2 {
        font-size: clamp(30px, 2.8vw, 42px) !important;
    }

    body.single-product .single-product-page .features-left p {
        font-size: 14.5px !important;
    }

    body.single-product .single-product-page .features-right {
        max-width: 720px !important;
    }

    body.single-product .single-product-page .feature-item {
        grid-template-columns: 48px 1fr !important;
        gap: 20px !important;
        padding: 18px 0 !important;
    }

    body.single-product .single-product-page .feature-text {
        font-size: 20px !important;
    }
}


/* tablet */

@media (max-width: 1024px) {
    body.single-product .single-product-page .features-section {
        max-width: 100% !important;
        margin: 68px auto 76px !important;
        padding: 0 28px !important;
    }

    body.single-product .single-product-page .features-left {
        margin-bottom: 38px !important;
    }

    body.single-product .single-product-page .features-left h2 {
        font-size: clamp(30px, 5vw, 42px) !important;
    }

    body.single-product .single-product-page .features-left p {
        font-size: 15.5px !important;
    }

    body.single-product .single-product-page .feature-item {
        grid-template-columns: 44px 1fr !important;
        gap: 18px !important;
        padding: 18px 0 !important;
    }

    body.single-product .single-product-page .feature-text {
        font-size: 20px !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    body.single-product .single-product-page .features-section {
        margin: 58px auto 64px !important;
        padding: 0 20px !important;
    }

    body.single-product .single-product-page .features-left {
        margin-bottom: 30px !important;
        text-align: left !important;
    }

    body.single-product .single-product-page .features-left span {
        margin-bottom: 14px !important;
        font-size: 8px !important;
        letter-spacing: 0.2em !important;
    }

    body.single-product .single-product-page .features-left h2 {
        max-width: 100% !important;
        margin: 0 0 14px !important;

        font-size: clamp(28px, 8vw, 36px) !important;
        line-height: 1.06 !important;
    }

    body.single-product .single-product-page .features-left p {
        max-width: 100% !important;
        margin: 0 !important;

        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    body.single-product .single-product-page .feature-item {
        grid-template-columns: 36px 1fr !important;
        gap: 14px !important;
        padding: 17px 0 !important;
    }

    body.single-product .single-product-page .feature-index {
        font-size: 8px !important;
        letter-spacing: 0.18em !important;
    }

    body.single-product .single-product-page .feature-text {
        font-size: 18px !important;
        line-height: 1.28 !important;
    }
}

/* =========================================================
   PRODUCT — dynamic full width image
========================================================= */

body.single-product .single-product-page .full-image {
    width: min(1480px, calc(100vw - 96px)) !important;

    margin: 90px auto 100px !important;
    padding: 0 !important;
}

body.single-product .single-product-page .full-image img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    max-height: 760px !important;

    object-fit: cover !important;
    object-position: center !important;
}

@media (max-width: 1024px) {
    body.single-product .single-product-page .full-image {
        width: calc(100vw - 56px) !important;
        margin: 72px auto 80px !important;
    }

    body.single-product .single-product-page .full-image img {
        max-height: 620px !important;
    }
}

@media (max-width: 767px) {
    body.single-product .single-product-page .full-image {
        width: calc(100vw - 40px) !important;
        margin: 56px auto 64px !important;
    }

    body.single-product .single-product-page .full-image img {
        max-height: none !important;
    }
}

/* =========================================================
   PRODUCT HERO — clean reset after experiments
========================================================= */

body.single-product .single-product-page .product-top {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 720px) minmax(360px, 500px) !important;
    gap: 48px !important;
    align-items: start !important;

    max-width: 1540px !important;
    margin: 120px auto 120px !important;
    padding: 0 56px !important;
}


/* miniaturki — większe, ale normalne, bez rozciągania */

body.single-product .single-product-page .gallery-thumbs {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;

    width: 96px !important;
    max-width: 96px !important;

    margin: 0 !important;
    padding: 0 !important;

    align-self: start !important;
    justify-self: center !important;

    height: auto !important;
}

body.single-product .single-product-page .gallery-thumbs img {
    display: block !important;

    width: 96px !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 0.78 !important;
    border: 1px solid transparent !important;
}

body.single-product .single-product-page .gallery-thumbs img:first-child {
    opacity: 1 !important;
    border-color: rgba(45, 41, 38, 0.7) !important;
}

body.single-product .single-product-page .gallery-thumbs img:hover {
    opacity: 1 !important;
    border-color: rgba(45, 41, 38, 0.45) !important;
}


/* główne zdjęcie — ostre, bez sztucznego rozciągania */

body.single-product .single-product-page .gallery-main {
    width: 100% !important;
    height: auto !important;
    align-self: start !important;
}

body.single-product .single-product-page .gallery-main img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    image-rendering: auto !important;
}


/* prawa kolumna — spokojniej na laptopie */

body.single-product .single-product-page .single-product-info {
    max-width: 500px !important;
    padding-top: 8px !important;
}

body.single-product .single-product-page .product-title {
    max-width: 500px !important;

    margin: 0 0 22px !important;

    font-size: clamp(42px, 3.4vw, 58px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.018em !important;
    font-weight: 400 !important;
}

body.single-product .single-product-page .product-price {
    margin: 0 0 30px !important;
}

body.single-product .single-product-page .product-price,
body.single-product .single-product-page .product-price .woocommerce-Price-amount,
body.single-product .single-product-page .product-price .swiat-price-line {
    font-size: 28px !important;
    line-height: 1.1 !important;
}

body.single-product .single-product-page .product-description {
    max-width: 460px !important;

    margin: 0 0 34px !important;

    font-size: 16px !important;
    line-height: 1.62 !important;
}

body.single-product .single-product-page .product-info-block {
    margin-top: 28px !important;
    padding-top: 18px !important;
}

body.single-product .single-product-page .product-info-label {
    margin-bottom: 12px !important;

    font-size: 8px !important;
    letter-spacing: 0.2em !important;
}

body.single-product .single-product-page .product-composition p {
    font-size: 15.5px !important;
    line-height: 1.45 !important;
}

body.single-product .single-product-page .product-benefits {
    gap: 8px !important;
}

body.single-product .single-product-page .product-benefits div {
    font-size: 15px !important;
    line-height: 1.4 !important;
}


/* laptop mniejszy */

@media (min-width: 1025px) and (max-width: 1440px) {
    body.single-product .single-product-page .product-top {
        grid-template-columns: 88px minmax(0, 620px) minmax(340px, 440px) !important;
        gap: 42px !important;

        max-width: 1320px !important;
        margin: 100px auto 100px !important;
        padding: 0 44px !important;
    }

    body.single-product .single-product-page .gallery-thumbs {
        width: 88px !important;
        max-width: 88px !important;
    }

    body.single-product .single-product-page .gallery-thumbs img {
        width: 88px !important;
    }

    body.single-product .single-product-page .single-product-info {
        max-width: 420px !important;
    }

    body.single-product .single-product-page .product-title {
        max-width: 420px !important;
        font-size: clamp(36px, 3vw, 48px) !important;
    }

    body.single-product .single-product-page .product-description {
        max-width: 400px !important;
        font-size: 14.5px !important;
        line-height: 1.58 !important;
    }
}


/* tablet */

@media (max-width: 1024px) {
    body.single-product .single-product-page .product-top {
        display: block !important;

        max-width: 100% !important;
        margin: 80px auto 80px !important;
        padding: 0 28px !important;
    }

    body.single-product .single-product-page .gallery-thumbs {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-bottom: 16px !important;
        overflow-x: auto !important;
    }

    body.single-product .single-product-page .gallery-thumbs img {
        width: 72px !important;
        flex: 0 0 72px !important;
    }

    body.single-product .single-product-page .gallery-main {
        margin-bottom: 36px !important;
    }
}


/* mobile */

@media (max-width: 767px) {
    body.single-product .single-product-page .product-top {
        margin: 56px auto 64px !important;
        padding: 0 20px !important;
    }

    body.single-product .single-product-page .product-title {
        font-size: clamp(34px, 9vw, 44px) !important;
    }

    body.single-product .single-product-page .product-description {
        font-size: 16px !important;
        line-height: 1.58 !important;
    }
}

/* =========================================================
   PRODUCT HERO — FINAL CLEAN VERSION
========================================================= */

body.single-product .single-product-page {
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

body.single-product .single-product-page .product-top {
    display: grid !important;
    grid-template-columns: 104px minmax(0, 700px) minmax(360px, 460px) !important;
    gap: 54px !important;
    align-items: start !important;

    max-width: 1500px !important;
    margin: 90px auto 110px !important;
    padding: 0 56px !important;
}


/* MINIATURKI */

body.single-product .single-product-page .gallery-thumbs {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;

    width: 104px !important;
    max-width: 104px !important;

    margin: 0 !important;
    padding: 0 !important;

    align-self: start !important;
    justify-self: center !important;

    height: auto !important;
}

body.single-product .single-product-page .gallery-thumbs img {
    display: block !important;

    width: 104px !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 0.78 !important;
    border: 1px solid transparent !important;
}

body.single-product .single-product-page .gallery-thumbs img:first-child {
    opacity: 1 !important;
    border-color: rgba(45, 41, 38, 0.7) !important;
}

body.single-product .single-product-page .gallery-thumbs img:hover {
    opacity: 1 !important;
    border-color: rgba(45, 41, 38, 0.45) !important;
}


/* DUŻE ZDJĘCIE */

body.single-product .single-product-page .gallery-main {
    width: 100% !important;
    height: auto !important;
    align-self: start !important;
}

body.single-product .single-product-page .gallery-main img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;

    image-rendering: auto !important;
}


/* PRAWA KOLUMNA */

body.single-product .single-product-page .single-product-info {
    max-width: 460px !important;
    padding-top: 2px !important;
}

body.single-product .single-product-page .product-title {
    max-width: 440px !important;

    margin: 0 0 20px !important;

    font-size: clamp(38px, 3vw, 52px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.018em !important;
    font-weight: 400 !important;
}

body.single-product .single-product-page .product-price {
    margin: 0 0 26px !important;
}

body.single-product .single-product-page .product-price,
body.single-product .single-product-page .product-price .woocommerce-Price-amount,
body.single-product .single-product-page .product-price .swiat-price-line {
    font-size: 27px !important;
    line-height: 1.1 !important;
}

body.single-product .single-product-page .product-description {
    max-width: 420px !important;

    margin: 0 0 30px !important;

    font-size: 15px !important;
    line-height: 1.58 !important;
}

body.single-product .single-product-page .product-info-block {
    margin-top: 24px !important;
    padding-top: 16px !important;
}

body.single-product .single-product-page .product-info-label {
    margin-bottom: 10px !important;

    font-size: 8px !important;
    letter-spacing: 0.2em !important;
}

body.single-product .single-product-page .product-composition p {
    font-size: 15px !important;
    line-height: 1.45 !important;
}

body.single-product .single-product-page .product-benefits {
    gap: 7px !important;
}

body.single-product .single-product-page .product-benefits div {
    font-size: 14.5px !important;
    line-height: 1.4 !important;
}


/* MNIEJSZY LAPTOP */

@media (min-width: 1025px) and (max-width: 1440px) {
    body.single-product .single-product-page .product-top {
        grid-template-columns: 96px minmax(0, 620px) minmax(340px, 420px) !important;
        gap: 42px !important;

        max-width: 1320px !important;
        margin: 76px auto 96px !important;
        padding: 0 44px !important;
    }

    body.single-product .single-product-page .gallery-thumbs {
        width: 96px !important;
        max-width: 96px !important;
    }

    body.single-product .single-product-page .gallery-thumbs img {
        width: 96px !important;
    }

    body.single-product .single-product-page .single-product-info {
        max-width: 420px !important;
    }

    body.single-product .single-product-page .product-title {
        max-width: 410px !important;
        font-size: clamp(34px, 2.9vw, 46px) !important;
    }

    body.single-product .single-product-page .product-description {
        max-width: 390px !important;
        font-size: 14px !important;
        line-height: 1.56 !important;
    }
}


/* TABLET */

@media (max-width: 1024px) {
    body.single-product .single-product-page .product-top {
        display: block !important;

        max-width: 100% !important;
        margin: 70px auto 80px !important;
        padding: 0 28px !important;
    }

    body.single-product .single-product-page .gallery-thumbs {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-bottom: 16px !important;
        overflow-x: auto !important;
    }

    body.single-product .single-product-page .gallery-thumbs img {
        width: 72px !important;
        flex: 0 0 72px !important;
    }

    body.single-product .single-product-page .gallery-main {
        margin-bottom: 36px !important;
    }
}


/* MOBILE */

@media (max-width: 767px) {
    body.single-product .single-product-page .product-top {
        margin: 52px auto 64px !important;
        padding: 0 20px !important;
    }

    body.single-product .single-product-page .product-title {
        font-size: clamp(34px, 9vw, 44px) !important;
    }

    body.single-product .single-product-page .product-description {
        font-size: 16px !important;
        line-height: 1.58 !important;
    }
}

/* =====================================================
   LISTING — FINALNE WYRÓWNANIE KOLORÓW I ROZMIARÓW
   Desktop
===================================================== */

@media screen and (min-width: 1025px) {

    body ul.products li.product a.woocommerce-LoopProduct-link,
    body ul.products li.product a.woocommerce-loop-product__link,
    body .category-product-grid li.product a.woocommerce-LoopProduct-link,
    body .category-product-grid li.product a.woocommerce-loop-product__link {

        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            100px !important;

        grid-template-rows:
            auto
            minmax(78px, auto)
            auto !important;

        column-gap: 24px !important;
        row-gap: 0 !important;

        align-items: start !important;
    }

    body ul.products li.product .woocommerce-loop-product__title,
    body .category-product-grid li.product .woocommerce-loop-product__title {

        grid-column: 1 !important;
        grid-row: 2 !important;

        min-height: 78px !important;
        height: auto !important;

        overflow: visible !important;

        margin: 0 !important;
        padding: 0 10px 0 0 !important;
    }

    body ul.products li.product .price,
    body .category-product-grid li.product .price {

        grid-column: 1 !important;
        grid-row: 3 !important;

        margin: 8px 0 0 !important;
        padding: 0 !important;

        position: relative !important;
        z-index: 1 !important;
    }
}


    /* ZDJĘCIE */

    body ul.products li.product a.woocommerce-LoopProduct-link img,
    body ul.products li.product a.woocommerce-loop-product__link img,
    body .category-product-grid li.product a.woocommerce-LoopProduct-link img,
    body .category-product-grid li.product a.woocommerce-loop-product__link img {

        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
    }


    /* TYTUŁ */

    body ul.products li.product .woocommerce-loop-product__title,
    body .category-product-grid li.product .woocommerce-loop-product__title {

        grid-column: 1 !important;
        grid-row: 2 !important;

        align-self: start !important;
        justify-self: start !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* CENA */

    body ul.products li.product .price,
    body .category-product-grid li.product .price {

        grid-column: 1 !important;
        grid-row: 3 !important;

        align-self: start !important;
        justify-self: start !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* PRAWA KOLUMNA Z WARIANTAMI */

    body ul.products li.product .swiat-loop-attributes,
    body .category-product-grid li.product .swiat-loop-attributes {

        grid-column: 2 !important;
        grid-row: 2 / 4 !important;

        display: grid !important;

        grid-template-columns: 1fr !important;
        grid-template-rows:
            18px
            18px !important;

        gap: 10px !important;

        width: 120px !important;
        max-width: 120px !important;

        align-self: start !important;
        justify-self: end !important;
        align-content: start !important;
        justify-items: end !important;

        margin: 0 !important;
        padding: 4px 0 0 !important;
    }


    /* KOLOR ZAWSZE PIERWSZY */

    body ul.products li.product .swiat-loop-attribute--colors,
    body .category-product-grid li.product .swiat-loop-attribute--colors {

        grid-column: 1 !important;
        grid-row: 1 !important;

        order: 1 !important;

        width: 100% !important;
        height: 18px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* ROZMIAR ZAWSZE DRUGI */

    body ul.products li.product .swiat-loop-attribute--sizes,
    body .category-product-grid li.product .swiat-loop-attribute--sizes {

        grid-column: 1 !important;
        grid-row: 2 !important;

        order: 2 !important;

        width: 100% !important;
        height: 18px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* WEWNĘTRZNE KONTENERY */

    body ul.products li.product .swiat-loop-colors,
    body .category-product-grid li.product .swiat-loop-colors,
    body ul.products li.product .swiat-loop-sizes,
    body .category-product-grid li.product .swiat-loop-sizes {

        width: 100% !important;

        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;

        flex-wrap: nowrap !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    body ul.products li.product .swiat-loop-colors,
    body .category-product-grid li.product .swiat-loop-colors {
        gap: 7px !important;
    }


    body ul.products li.product .swiat-loop-sizes,
    body .category-product-grid li.product .swiat-loop-sizes {
        gap: 11px !important;
    }


    /* POJEDYNCZE ROZMIARY */

    body ul.products li.product .swiat-loop-size,
    body .category-product-grid li.product .swiat-loop-size {

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin: 0 !important;
        padding: 0 !important;

        white-space: nowrap !important;
    }
}

/* =====================================================
   SWETRY I KOSZULE — WHATSAPP
===================================================== */

.swiat-whatsapp {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 9990;

    display: inline-flex;
    align-items: center;
    gap: 12px;

    min-height: 54px;
    padding: 9px 18px 9px 10px;

    background: #f6f1eb;
    color: #2f2925;

    border: 1px solid rgba(47, 41, 37, 0.24);
    border-radius: 999px;

    box-shadow: 0 12px 30px rgba(47, 41, 37, 0.13);

    text-decoration: none;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.swiat-whatsapp:hover {
    transform: translateY(-3px);

    background: #fffaf4;
    color: #2f2925;

    box-shadow: 0 16px 36px rgba(47, 41, 37, 0.18);
}

.swiat-whatsapp__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 36px;

    width: 36px;
    height: 36px;

    color: #2f2925;
}

.swiat-whatsapp__icon svg {
    display: block;

    width: 25px;
    height: 25px;
}

.swiat-whatsapp__text {
    display: flex;
    flex-direction: column;

    min-width: 0;
}

.swiat-whatsapp__text strong {
    margin: 0;

    font-family: "Lato", Arial, sans-serif;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.swiat-whatsapp__text small {
    margin-top: 3px;

    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 15px;
    line-height: 1;
    font-weight: 400;
}


/* tablet i mobile */

@media screen and (max-width: 767px) {

    .swiat-whatsapp {
        right: 14px;
        bottom: 14px;

        gap: 8px;

        min-height: 46px;
        padding: 6px 14px 6px 7px;
    }

    .swiat-whatsapp__icon {
        flex-basis: 32px;

        width: 32px;
        height: 32px;
    }

    .swiat-whatsapp__icon svg {
        width: 23px;
        height: 23px;
    }

    .swiat-whatsapp__text strong {
        display: none;
    }

    .swiat-whatsapp__text small {
        margin: 0;

        font-family: "Lato", Arial, sans-serif;
        font-size: 9px;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }
}


/* bardzo małe telefony */

@media screen and (max-width: 390px) {

    .swiat-whatsapp {
        padding-right: 9px;
    }

    .swiat-whatsapp__text {
        display: none;
    }
}

/* =====================================================
   MOBILE PRODUCT — USUNIĘCIE DOMYŚLNYCH WARIANTÓW WC
===================================================== */

@media (max-width: 768px) {

    /* Ukrywamy natywną tabelę WooCommerce.
       Korzystamy wyłącznie z własnych przycisków wariantów. */

    body.single-product table.variations,
    body.single-product table.variations tbody,
    body.single-product table.variations tr,
    body.single-product table.variations th,
    body.single-product table.variations td,
    body.single-product .variations_form .variations {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    /* Formularz nie może być gridem razem z tabelą wariantów */

    body.single-product form.variations_form.cart {
        display: block !important;
        width: 100% !important;
        margin-top: 28px !important;
    }

    /* Grid stosujemy wyłącznie do ilości i przycisku */

    body.single-product .woocommerce-variation-add-to-cart {
        display: grid !important;
        grid-template-columns: 92px minmax(0, 1fr) !important;
        gap: 14px !important;
        align-items: stretch !important;
        width: 100% !important;
        margin: 0 !important;
    }
}

/* =====================================================
   MOBILE PRODUCT — kropka koloru bliżej ceny i do lewej
===================================================== */

@media (max-width: 768px) {

    .single-product-page .product-choice-block {
        margin-top: 22px !important;
    }

    .single-product-page .custom-variations {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;

        width: 100% !important;
        max-width: 100% !important;
    }

    .single-product-page .custom-colors {
        width: auto !important;
        margin: 0 !important;
    }

    .single-product-page .custom-colors h4 {
        margin-bottom: 10px !important;
    }

    .single-product-page .color-buttons {
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 10px !important;

        width: auto !important;
        margin: 0 !important;
    }

    .single-product-page .color-swatch {
        width: 22px !important;
        height: 22px !important;
        margin: 0 !important;
    }

    .single-product-page .custom-sizes {
        width: 100% !important;
        margin-top: 2px !important;
    }
}