/*
Theme Name: astra-child
Template: astra
Version: 1.0
Made for Studio Larum
*/


/*
Fonts
*/

h1, 
h2, 
h3, 
h4, 
.txt-h2,
{line-height: 105%!important;}

.stronger {font-weight:500;}
.thicker {font-weight:100;}

/*
Buttons
*/
.wp-block-button .wp-block-button__link, .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button {
    width: clamp(170px, 20vw, 250px);
    }
    
    button {
        white-space: nowrap;
        box-shadow: none;
    }
    
    /*button hover*/
    
    
    /* Styl podstawowy */
    button, 
    .cta-custom, 
    .cta-custom a, 
    .wp-element-button, 
    .menu-toggle, 
    .ast-button, 
    .ast-custom-button, 
    .button, 
    input#submit, 
    input[type="button"], 
    input[type="submit"], 
    input[type="reset"], 
    #comments .submit, 
    .search .search-submit {
        font-size: 16px;
        text-align: center;
    }
    
    /* Styl dla  WooCommerce */
    .woocommerce a.button, 
    .woocommerce button.button, 
    .woocommerce .woocommerce-message a.button, 
    .woocommerce #respond input#submit.alt, 
    .woocommerce input.button.alt, 
    .woocommerce input.button {
        font-size: 16px;
        text-align: center;
    }
    
    /* Styl dla przycisków WooCommerce w specyficznych stanach */
    .woocommerce input.button:disabled, 
    .woocommerce input.button:disabled[disabled], 
    .woocommerce input.button:disabled:hover, 
    .woocommerce input.button:disabled[disabled]:hover, 
    .woocommerce button.button.alt.disabled, 
    .woocommerce button.button.alt.disabled.wc-variation-selection-needed {
        font-size: 16px;
        text-align: center;
    }
    
    /* Styl dla przycisków w koszyku WooCommerce */
    .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), 
    .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout {
        font-size: 16px;
        text-align: center;
    }
    
    /* Styl dla bloków WC i Gutenberg */
    .wc-block-grid__products .wc-block-grid__product .wp-block-button__link, 
    .wc-block-grid__product-onsale, 
    [CLASS*="wc-block"] button, 
    [CLASS*="wc-block"] .wc-block-components-button, 
    form.wp-block-search .wp-block-search__button, 
    body .wp-block-file .wp-block-file__button {
        font-size: 16px;
        text-align: center;
    }

/*
Basic Tvorcza
*/


.hidden {
    display: none;
}

/* Sub menu pod sobą ( block) */
.main-header-menu .sub-menu {
        flex-direction: column;
;}

/* Layout */
@media (max-width:921px){

.is-layout-flex p{padding-top:10px;}
:root :where(.is-layout-flex),
.woocommerce ul.products, .woocommerce-page ul.products {
    gap:10px;} 
}

@media (max-width:781px)
{
	.custom-button-col a {margin-bottom: 50px;margin-top:20px;}
	}

@media (min-width:922px){
:root :where(.is-layout-flex),
.woocommerce ul.products, .woocommerce-page ul.products {
    gap:20px;
}
}

@media (min-width:922px) {

    .hide-col-desktop {display:none!important;}

    .w-30 {
        width: 30%;
    }
    .w-40 {
        width: 40%;
    }
    .w-50 {
        width: 50%;
    }
    .w-60 {
        width: 60%;
    }
    .w-70 {
        width: 70%;
    }
    .w-80 {
        width: 80%;
    }
    .w-90 {
        width: 90%;
    }
    .padding-right {
        padding-right: 5vw;
    }
    .padding-left {
        padding-left: 5vw;
    }
    .padding-left-inner {
        padding-left: 12vw;
    }
    .wp-block-spacer.padding-bottom {
        min-height: 200px;
    }

    .sticky-col {
        position: sticky;
        top: 150px;
    }
}

@media (max-width:921px) {
    .w-30,
    .w-40,
    .w-50,
    .w-60,
    .w-70,
    .w-80,
    .w-90 {
        width: 100%;
    }
    .order-1 {order:1}
    .order-2 {order:2}
    .order-3 {order:3}
    .order-4 {order:4}

    .img-width-100 {
        max-width: 100%;
        padding: 0;
        margin: auto;
        position: relative;
        text-align: center;
        align-items: center;
    }
    .extra-padding-on-mobile {
        padding-top: 20px;
    }
    .hide-col-mobile {
        display: none;
    }
    .text-to-left {
        text-align: left;
    }
    .col-to-left {align-items: flex-start!important;}
    .text-center {
        text-align: center;
        justify-content: flex-start;
    }

    .wp-block-spacer.padding-bottom {
        max-height: 70px;
    }

/* 4 kolumny na telefonie są 2 */
   .wp-block-columns.is-not-stacked-on-mobile {flex-wrap: wrap!important;}
    
   .wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {flex-basis:46%!important;}
    
}

.entry-content > .wp-block-group, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns {padding-left: 0px!important; padding-right:0px!important;}

/* Scrollbar */

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #f7f6f4;
}

::-webkit-scrollbar-thumb {
    background: #d0d0d0;
}

::-webkit-scrollbar-thumb:hover {
    background: #a0a09e;
}

/* Punktowanie dla custom-list do ul*/

.custom-list {
    list-style: none;
    padding-left: 20px;
}

.custom-list li {
    position: relative;
    padding-left: 20px;
}

.custom-list li::before {
    content: "+ ";
    position: absolute;
    left: 0;
    top: 0;
    color: inherit;
    font-weight: light;
}


/*
footer 5 col
*/
@media (min-width:922px) {
	.payments-img{ text-align:right;}
}

.payments-img img{ width:auto; height:30px; vertical-align:middle;object-fit:cover;}

.footer-column h3 {
    color: #383838;
    font-weight: 400 !important;
    margin-bottom: clamp(10px, 4vw, 20px);
    font-size: 15px!important;
}

.footer-column ul li,
.footer-column p {
    margin-bottom: 5px;
}

.footer-column ul li a,
.footer-column p {
    color: #383838;
    /* Kolor linków */
    font-weight: 300;
    /* Linki o grubości 300 */
    font-size: 12px;
    text-decoration: none;
    transition: color 0.3s;
}

.footer-column ul li a:hover {
    color: #aaa;
    /* Kolor po najechaniu */
}

.footer-follow .social-icon {
    display: inline-block;
    margin-right: 10px;
}

.footer-follow .social-icon img {
    width: 15px;
    height: 15px;
}

.site-primary-footer-wrap .site-footer-section-2 {
    justify-content: flex-end;
}

@media (min-width:922px) {
    .ast-builder-grid-row-5-equal .ast-builder-grid-row {
        grid-template-columns: 30% repeat(4, 1fr);
    }
}

/*footer mobile*/

@media (max-width: 921px) {
    .site-footer-above-section-1 {
        order: 1
    }
    .site-footer-above-section-5 {
        order: 2
    }
    .site-footer-above-section-2 {
        order: 3;
        margin-top: 20px;
    }
    .site-footer-above-section-3 {
        order: 4;
        margin-top: 20px;
    }
    .site-footer-above-section-4 {
        order: 5;
        margin-top: 20px;
    }
    .site-above-footer-wrap.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row {
        grid-template-columns: repeat(2, 40%);
    }
    .ast-footer-copyright p {
        text-align: center !important;
    }
}

/*Custom Tvorcza 

/*Hero home*/

@media (max-width: 922px) {

	
	
	.buttons-left
	{text-align:left;}
	
	.wp-block-buttons.is-content-justification-center.buttons-left
	{justify-content: left;}
	
	.full-height {height: 75vh!important;
    display: flex;
	align-items: flex-end;}
}

@media (min-width: 922px) {
.full-height {height: 80vh!important;
    display: flex;}

}

.home .hero-desc {color: white;}

.hero-desc {font-size: 16px!important;
	letter-spacing:2px; text-transform:uppercase; font-weight:500;}


/*
Custom category link
*/

.custom-category a:hover {opacity:0.7};

.custom-category,
.wp-block-image :where(figcaption)
{font-size:13px; color: #7a7269;} 

@media (min-width: 922px) {
.custom-product-title {margin-top: 10px;padding:0px; }
}
@media (max-width: 921px) {
.custom-product-title {margin-top: 10px;padding-bottom:20px;padding:0px;     }
}

.custom-product-title a {margin-top:0px; color: #212121;}

/*Toggle*/
details summary {
    list-style: none;
    -webkit-appearance: none; 
    appearance: none; 
}

details summary::-webkit-details-marker {
    display: none;
}

details[open] summary::after {
    content: "-";
    font-size: 20px;
    font-weight: 200 !important;
}

details summary::after {
    content: "+";
    font-size: 20px;
    font-weight: 200 !important;
    display: inline-block;
    line-height: 0;
}

.wp-block-details {
    border-bottom: 1px solid #212121;
    padding-bottom: 30px;
}

.wp-block-details:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-transform: uppercase;
    line-height: 1.15;
}

.astra-shop-thumbnail-wrap {
  position: relative;
}

/*
Tulla only
*/

.tc-epo-metadata .tc-value:not(:last-of-type)::after{content:","; margin-right: 3px; margin-left: -3px;}
.tc-price-in-cart, .tc-quantity-in-cart {font-size:inherit;}



dd {margin:0px!important;}

/*Zakładka Fronty*/
.post-823 h2.header_line,
.post-3103 h2.header_line { border-bottom: solid #232323 1px; text-align:left;}

@media (min-width:922px){
	.post-823 h2.header_line,
	.post-3103 h2.header_line,
	h2.header_xl { font-size:4rem!important;}
}

@media (max-width:921px){
.post-823 h2.header_line,
	.post-3103 h2.header_line,
	h2.header_xl { font-size:2.8rem!important;}
}

.wp-block-media-text {display:block; }

.border-bottom {border-bottom: 1px solid #c7c7c7;width:46%;}

@media (min-width:1201px)
{
	.page-id-826 .sticky-col {
        position: sticky;
        top: 150px;
		margin-bottom: 320px;
		
	}
}
@media (max-width:1201px)
{
	.page-id-826 .sticky-col {
        position: relative;
		top: 0px;
		margin-bottom: 0px;
	}
}
@media (min-width:922px)
{
	.leftleft, 
	.rightright {width:50%;}
.leftleft {padding-right:2%;}
.rightright {padding-left:2%;}
	.wp-block-media-text__content {max-width:70%; padding-left:0px!important; margin-top: 40px;}
	.wp-block-media-text__media { max-width:90px;}
}

@media (max-width:921px)
{
	.wp-block-media-text__media { max-width:80px;margin-top: 30px!important;}
	.block-mobile {flex-wrap:wrap!important;}
	.leftleft, 
	.rightright {width:100%;}
	.wp-block-media-text__content { padding-left:0px!important; margin-top: 20px;}
	.border-bottom {margin-bottom: 20px!important;}
}

/*Woocommerce all site*/

/*Mini koszyk*/
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation {opacity:0.7;}
.astra-mobile-cart-overlay {background-color: rgba(0, 0, 0, 0.65);}
.ast-desktop .astra-cart-drawer {width:500px;}
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation {display:flex; font-size:12px;flex-wrap: wrap;
    white-space: nowrap;}
    .woocommerce-js ul.cart_list li>a, .woocommerce-js ul.product_list_widget li>a {font-weight: 500;}

.woocommerce .widget_shopping_cart .cart_list li a.remove, .woocommerce.widget_shopping_cart .cart_list li a.remove {right:6px;}
.woocommerce-js a.remove:before 
{content:"Usuń"; font-size: 11px; border: none; font-family: "manrope", sans-serif;}
.mini_cart_item
.ahfb-svg-iconset svg>* {visibility:hidden;}

.astra-cart-drawer .astra-cart-drawer-header,
.woocommerce-js .widget_shopping_cart .cart_list li, .woocommerce-js .widget_shopping_cart li {border-bottom: 1px solid rgba(0, 0, 0, 0.09);}

.woocommerce-js .widget_shopping_cart .total {border-bottom: 1px solid rgba(0, 0, 0, 0.08);border-top: 1px solid rgba(0, 0, 0, 0.09);}

/*mini-koszyk - obrazki*/
.woocommerce-js ul.product_list_widget li img {width:5em; height: 6em; }

.astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content ul li {
    min-height: 110px;
}

.woocommerce .widget_shopping_cart .cart_list li, .woocommerce.widget_shopping_cart .cart_list li {
    padding: 1.2em 0 1.2em 5.8em;
}

.astra-cart-drawer {border: none;}

.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation {
    margin-bottom: 0px;
}

.woocommerce-js ul.cart_list li dl dt, 
.woocommerce-js ul.product_list_widget li dl dt {margin:0px;}

.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation dt {font-size: 0px; }

.woocommerce-js ul.cart_list li dl,
.woocommerce-js ul.product_list_widget li dl {
    border-left: 0px;
}

.woocommerce-js ul.cart_list li dl,
.woocommerce-js ul.product_list_widget li dl {
    padding-left: 0px;
}

.woocommerce-js ul.cart_list li dl dd,
.woocommerce-js ul.product_list_widget li dl dd {
    padding: 0px;
}

dd {
    margin: 0 0.5em 1em;
}

#astra-mobile-cart-drawer .amount,
#astra-mobile-cart-drawer .quantity 
 {font-size: 12px;
font-weight: 500;}

 .woocommerce-mini-cart__total bdi { font-size:15px; font-weight: 700;letter-spacing: -0.02;}


/* ---------- SINGLE PRODUCT LAYOUT ---------- */

/* MOBILE: jedna kolumna */
@media (max-width: 921px) {
  .single-product div.product {
    display: block !important;
  }

  .single-product div.product .product-gallery-wrapper,
  .single-product div.product .summary {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    flex: none !important;
    margin: 0 !important;
    clear: both !important;
  }
}

/* DESKTOP: dwie kolumny (galeria + summary) */
@media (min-width: 922px) {
  .single-product div.product {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 32px;
    align-items: start;
  }

  /* kolumna z galerią */
  .single-product div.product .product-gallery-wrapper,
  .single-product div.product .woocommerce-product-gallery {
    grid-column: 1;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }

  /* kolumna z treścią (summary) */
  .single-product div.product .summary.entry-summary {
    grid-column: 2;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    float: none !important;
    margin: 0 !important;
  }

  /* Related zawsze pod obiema kolumnami */
  .single-product section.related {
    grid-column: 1 / -1;
    width: 100% !important;
    margin-top: 40px;
  }
}

/* Gdyby jakieś style Astry próbowały narzucić 50% szerokości */
.single-product .product-gallery-wrapper,
.single-product .summary { flex: none !important; }

/* ---------- SWIPER (galeria) ---------- */

.main-swiper { width: 100%; position: relative; margin-bottom: 20px; }
.main-swiper .swiper-slide img {
  width: 65%; height: auto; object-fit: contain; transition: filter .3s ease;  display: block;
  margin: auto;
}
.main-swiper:hover img { filter: brightness(1.05); }

/* Miniatury */
.thumbs-swiper { margin-top: 10px; padding-bottom: 10px; }
.thumbs-swiper .swiper-slide {
  opacity: .6; transition: .3s ease; cursor: pointer;
  padding: 3px; border: 2px solid transparent; border-radius: 4px;
}
.thumbs-swiper .swiper-slide-thumb-active,
.thumbs-swiper .swiper-slide.active { opacity: 1; border-color: #aaa; }
.thumbs-swiper .swiper-slide img {
  width: 100%; height: auto; object-fit: cover; aspect-ratio: 1 / 1; border-radius: 4px;
}

/* Strzałki – wymuszenie widoczności także na mobile */
.product-gallery-wrapper .swiper-button-prev,
.product-gallery-wrapper .swiper-button-next {
  width: 40px; height: 100%;
  top: 0; background: none; display: flex; align-items: center; justify-content: center;
  pointer-events: auto; transition: color .3s ease; border:2px;
  z-index: 5;
}
.product-gallery-wrapper .swiper-button-prev::after,
.product-gallery-wrapper .swiper-button-next::after {
  color: rgba(30,30,30,.6) !important;
  font-size: 22px !important;
}
.product-gallery-wrapper .swiper-button-prev:hover::after,
.product-gallery-wrapper .swiper-button-next:hover::after {
  color: rgba(30,30,30,.85) !important;
}

/* Miniatury: szerokości */
@media (min-width: 922px) {
  .thumbs-swiper .swiper-slide { width: 20%; }
}
@media (max-width: 921px) {
  .thumbs-swiper .swiper-slide { width: 33.33%; }
  .thumbs-button-prev::after, .thumbs-button-next::after { font-size: 12px; }
  .thumbs-button-prev, .thumbs-button-next { width: 18px; }
}

/* ---------- RELATED PRODUCTS ---------- */

/* Mobile: zawsze jedna kolumna */
@media (max-width: 921px) {
  .single-product section.related ul.products {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .single-product section.related ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    clear: both !important;
  }
}

/* Na wszelki wypadek – Related pełna szerokość i pod kolumnami */
.single-product section.related {
  width: 100% !important;
  clear: both !important;
}

/* ---------- DROBNE UŁATWIENIA ---------- */

/* Zdjęcia w siatce 1:1 (jeśli gdziekolwiek potrzebne) */
.single-product .woocommerce-product-gallery__image img {
  width: 100%; height: auto; object-fit: contain;
}

/* Usuń resztkowe floaty/szerokości z motywu/pluginów */
.single-product .summary, 
.single-product .woocommerce-product-gallery,
.single-product .product .summary,
.single-product .product .woocommerce-product-gallery {
  float: none !important;
  max-width: 100% !important;
}

@media (min-width: 922px) {
.single-product div.product form.cart, .single-product div.product form.cart {
width:50% !important;
}