/*
Theme Name: Design Cart
Theme URI: = http://example.com/designcart/
Description: Child theme for the Hello Elementor theme
Author: Design Cart
Author URI: https://www.designcart.pl
Template: hello-elementor
Version: 1.0.0
*/
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css');

body.woocommerce,
.woocommerce-page,
.woocommerce div,
.woocommerce ul,
.woocommerce li,
.woocommerce a,
.woocommerce span,
.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6,
.woocommerce p,
.woocommerce input,
.woocommerce button,
.woocommerce select,
.woocommerce label {
    font-family: 'Lato', sans-serif !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button {
  color: #fff !important;
  background-color: #E2CDBC !important;

}

#productpage-add-cart-fixed{
    position: fixed;
    bottom: -100%;
    left:0;
    width: 100%;
    z-index: 9999;
    background: #fff;
    padding: 0 15px 0 15px;
    box-shadow: 0 -2px 20px rgba(0,0,0,0.1);
    transition: bottom 0.5s ease;
}

#productpage-add-cart-fixed.visible {
    bottom: 0; /* Move to 0 to show */
}

p{

}

.flex-container {
    display: flex;
    width: 100%; /* Pełna szerokość */
    align-items: center; /* Wyrównanie elementów w pionie */
    padding: 10px 0; /* Dodatkowe padding dla lepszego wyglądu */
}

.flex-item {
    padding: 5px; /* Odstępy wewnątrz elementów */
    box-sizing: border-box; /* Wliczanie paddingu i borderu do szerokości */
}

.panel-fixed-image, .panel-fixed-button, .panel-fixed-price {
    flex: 0 0 auto; /* Nie rozciągają się i nie kurczą, tylko dostosowują do zawartości */
}

.panel-fixed-name {
    flex: 1 1 auto; /* Rozciąga się, aby zająć możliwie jak najwięcej miejsca */
}

.panel-fixed-image img {
    width: 100px;
    height: 100px; /* Stałe rozmiary obrazu */
}

.panel-fixed-button button.single_add_to_cart_button.button {
    font-family: "Roboto", Sans-serif;
    font-size: 16px;
    font-weight: 300;
    text-transform: uppercase;
    font-style: normal;
    text-decoration: none;
    line-height: 1em;
    letter-spacing: 1px;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 7px 7px 7px 7px;
    padding: 15px 50px 15px 50px;
    color: #FFFFFF;
    background-color: #444444;
    border-color: #444444;
    transition: all 0.2s;
    margin-left: 15px;
}

.panel-fixed-button button.single_add_to_cart_button.button:hover,
.panel-fixed-button button.single_add_to_cart_button.button:focus,
.panel-fixed-button button.single_add_to_cart_button.button:active{
    background: #fff;
    color:#E2CDBC;
    border-color: #E2CDBC;
}

.panel-fixed-price {
    white-space: nowrap; /* Zapobieganie łamaniu tekstu cen */
}

.panel-fixed-button {
    display: flex; /* Ustawienie kontenera jako flexbox */
    align-items: center; /* Wyrównanie elementów pionowo do środka */
    justify-content: flex-start; /* Wyrównanie elementów poziomo do lewej */
}

.panel-fixed-button form {
    display: flex; /* Ustawienie formularza jako flexbox */
    align-items: center; /* Wyrównanie elementów formularza pionowo do środka */
}

.woocommerce-product-details__short-description ul li {
    list-style: none; /* Usuwa domyślną listę stylów */
    position: relative; /* Pozycjonuje ikonę względem li */
    padding-left: 30px; /* Dodaje miejsce na ikonę */
    margin-bottom: 15px;
}

.woocommerce-product-details__short-description ul li:last-child {
    margin-bottom: 0; /* Usuwa margines dolny dla ostatniego elementu li */
}

.woocommerce-product-details__short-description ul li::before {
    font-family: 'Font Awesome 5 Free'; /* Używa czcionki Font Awesome */
    content: '\f005'; /* Kod Unicode dla ikony 'fa-star' */
    display: inline-block;
    width: 20px; /* Ustaw odpowiednią szerokość dla ikony */
    height: 20px; /* Ustaw odpowiednią wysokość dla ikony */
    position: absolute; /* Absolutne pozycjonowanie ikony */
    left: 0; /* Umieszczenie ikony na lewo od tekstu */
    top: 0; /* Dostosowanie pozycji górnej */
    color: #e1cdbb; /* Kolor ikony, zmień według potrzeb */
}

.woocommerce .woocommerce-breadcrumb{
    margin: 0px;
}

/* DESKTOP */
.woocommerce .flex-control-thumbs {
    margin: 10px 0px 10px -5px !important; /* Thumbnails separation top and bottom */
    width: 100% !important; /* Controls width of thumbnails container on desktop - Horizontally */
	display: flex;
}
/* Controls thumbnails width on desktop - vertically
 * Enable this ONLY for VERTICAL display
 */
ol.flex-control-nav.flex-control-thumbs li {
	width: 15% !important;
}
/* Enable this ONLY for HORIZONTAL display */
/*ol.flex-control-nav.flex-control-thumbs li {
	width: 18% !important;
}*/


.elementor-widget-woocommerce-notices{
    display: none;
}
/* PHONES */
@media (max-width:414px){
	ol.flex-control-nav.flex-control-thumbs li {
		width: 18% !important; /* Controls thumbnails width on mobile - Horizontally */
	}
}

/* TABLETS */
@media (min-width:568px) and (max-width:768px){
	/* Controls thumbnails container width on tablet - vertically
	 * Enable this ONLY for VERTICAL display */
	.woocommerce .flex-control-thumbs {
    	margin: 10px 0px 10px -5px !important;
    	width: 15% !important;
	}
	/* Controls width of thumbnails container on tablet - horizontally
	 * Enable this ONLY for HORIZONTAL display */
	/*.woocommerce .flex-control-thumbs {
    	width: 70% !important;
	}*/
	ol.flex-control-nav.flex-control-thumbs li {
		width: 90% !important; /* Controls thumbnails image width on tablet - vertically */
	}
}
@media (min-width:769px) and (max-width:1024px){
	/* Controls thumbnails container width on tablet - vertically
	 * Enable this ONLY for VERTICAL display */
	.woocommerce .flex-control-thumbs {
    	margin: 10px 0px 10px -5px !important;
    	width: 12% !important;
	}
	/* Controls width of thumbnails container on tablet - horizontally
	 * Enable this ONLY for HORIZONTAL display */
	/*.woocommerce .flex-control-thumbs {
    	width: 70% !important;
	}*/
	ol.flex-control-nav.flex-control-thumbs li {
		width: 100% !important; /* Controls thumbnails image width on tablet - vertically */
	}
}

/* Functionality: Product page image thumbnails on left side
 * Date:  2021-03-10
 * Author: Rafael Azuaje
 * Disable this segment if you want to display horizontally
 */
@media (min-width:568px) {
	.woocommerce .flex-control-nav {
		position: absolute;
		top:-10px;
		left: 0px;
	}
	.flex-control-thumbs {
		display: flex;
		flex-direction: column;
	}
}
@media (min-width:568px) and (max-width:768px){
	.woocommerce .flex-viewport {
		width: 86.5% !important;
		left: 100px !important;
	}
}
@media (min-width:769px) and (max-width:1024px){
	.woocommerce .flex-viewport {
		width: 87% !important;
		left: 95px !important;
	}
}
@media (min-width:1025px){
	.woocommerce .flex-viewport {
		width: 85% !important;
		left: 15% !important;
	}
}

table.variations,
table.variations tbody,
table.variations tbody tr,
table.variations tbody tr th,
table.variations tbody tr td{
    background: #fff !important;
}

table.variations tbody tr th{
    padding: 0px;
}

img.zoomImg{
    display:none;
}

.woocommerce-product-gallery__trigger{
    display:none;
}

.dialog-widget.dialog-lightbox-widget.dialog-type-buttons.dialog-type-lightbox.elementor-lightbox{
    display:none !important;
}


ul.flex-direction-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 100%;
    left: 0;
    margin: 0;
    padding: 0px;
    list-style: none;
    text-align: center;
    display: block;
}


li.flex-nav-prev { float: left; margin-left: 17%}
li.flex-nav-next {float: right; margin-right: 15px;}
a.flex-next {visibility:hidden;}
a.flex-prev {visibility:hidden;}

ul.flex-direction-nav li.flex-nav-prev,
ul.flex-direction-nav li.flex-nav-next {
    width:40px;
    font-size: 0px;
}

ul.flex-direction-nav li a.flex-prev,
ul.flex-direction-nav li a.flex-next{

}

a.flex-next::after {
	visibility:visible;content: '\f054';
	font-family: 'Font Awesome 5 Free';
	margin-right: 10px;
	font-size: 20px;
	font-weight: bold;
    border-radius: 50%;
    height:40px;
    width:40px;
    line-height: 40px;
    background: #e0cdbd !important;
    color:#fff;
    display: block;
}

a.flex-prev::before {
    visibility:visible;
    content: '\f053';
	font-family: 'Font Awesome 5 Free';
	margin-left: 10px;
	font-size: 20px;
	font-weight: bold;
    border-radius: 50%;
    height:40px;
    width:40px;
    line-height: 40px;
    background: #e0cdbd !important;
    color:#fff;
    display: block;
}

ul.flex-direction-nav li a {
	color: #ccc;
}

ul.flex-direction-nav li a:hover {
	text-decoration: none;
}

ul.flex-direction-nav li a {
	color: #ccc;
}

ul.flex-direction-nav li a:hover {
	text-decoration: none;
}

h1.product_title.entry-title.elementor-heading-title.elementor-size-default{
    text-align:left;
}


#productpage-add-cart form{
    display: flex;
    justify-content: flex-start;
}

#product-grammage{
    padding: 7px 10px 4px 10px;
    border:1px solid #444;
    border-radius: 5px;
}

#grammage-label p{
    margin-bottom: 0px;
}

#product-descripcion-mobile{
    text-transform: none;
}

#products-carousel{
    padding-left: 60px;
    padding-right: 60px;
}

#products-carousel ul.products.elementor-grid{
    display: flex; /* Ustawienie flex zamiast grid, możesz również spróbować 'block' jeśli to lepiej pasuje */
    flex-wrap: wrap; /* Pozwala elementom przechodzić na nowe linie */
    justify-content: start; /* Wyrównanie elementów do początku kontenera */
    margin: 0;
    column-gap: 20px; /* Zastąpienie grid-column-gap dla flex */
    row-gap: 40px;
}

#products-carousel  .owl-item{
    background: #f8f3ef;
    text-align: center;
    padding-bottom: 15px;
}

#products-carousel .owl-prev,
#products-carousel .owl-next,
#page-cart-featureds .owl-prev,
#page-cart-featureds .owl-next{
    position: absolute;
    top:50%;
    transform: translateY(-40px);
    width: 40px;
    height: 40px;
    line-height: 40px;
    color:#444;
    border:none;
    text-align: center;
    border-radius:50%;
    font-size: 24px;
}

#products-carousel .owl-prev,
#page-cart-featureds .owl-prev{
    left:-50px;
}

#products-carousel .owl-next,
#page-cart-featureds .owl-next{
    right: -50px;
}

@media (max-width: 567px) {
    li.flex-nav-prev { float: left; margin-left: 10px}
}

/* CART CAROUSEL */
.products-carousel {
	margin-top: 20px;
}

.dc-featured-product {
	text-align: center;
	padding: 10px;
	background: #fff;
	border-radius: 6px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.dc-featured-product img {
	border-radius: 4px;
}

.dc-product-title {
	font-size: 16px;
	margin-top: 10px;
	margin-bottom: 5px;
}

.dc-product-price {
	color: #333;
	font-weight: bold;
}

img.dc-cart-remove-icon,
.elementor-widget-woocommerce-cart .woocommerce table.cart img.dc-cart-remove-icon,
#cart-table img.dc-cart-remove-icon{
    max-width: 20px;
    height: auto;
}

/* Wiersze w tabeli */
/* ---------- desktopowy layout: obrazek + zawartość ---------- */
.dc-cart-row {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e0cdbd;
  padding-top:10px;
}

/* kolumna z obrazkiem: stała szerokość */
.dc-col-image {
  flex: 0 0 100px;
  margin-right: 1em;
}

/* pozostała zawartość rozciąga się na resztę */
.dc-col-content {
  display: flex;
  flex: 1;
  justify-content: space-between;
  align-items: center;
}

/* lewa część: nazwa + cena */
.dc-col-info {
  flex: 1;
}

/* prawa część: quantity + remove */
.dc-col-interface {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.75em;
  padding-bottom: 15px;
}

/* opcjonalnie dopracuj odstępy wewnątrz */
.dc-col-info .dc-product-name,
.dc-col-info .dc-product-price {
  margin-bottom: 0.5em;
}

/* ---------- mobilny layout: interface pod info ---------- */
@media (max-width: 768px) {
  /* Nie ruszamy .dc-cart-row — pozostaje dalej flex‑row */

  /* Za to .dc-col-content robimy kolumną */
  .dc-col-content {
    flex-direction: column;
    align-items: flex-start;
  }

  .dc-col-image {
    flex: 0 0 40%;
    margin-right: 1em;
  }

  /* i dopinamy interface pod info */
  .dc-col-info {
    order: 1;
  }
  .dc-col-interface {
    order: 2;
    margin-top: 0.75em; /* odstęp nad interface */
  }

  /* ew. zmniejsz gap, jeśli trzeba */
  .dc-col-interface {
    gap: 0.5em;
  }
}

.woocommerce-cart-form button[name="update_cart"] {
  display: none !important;
}

.input-text{
    border: 1px solid #e0cdbd !important;
}

/* ######################################## */
/* ######## CART BOTTOM CAROUSEL */
/* ######################################## */
.page-cart-featureds{
    margin-top: 50px;
}
.page-cart-featureds h2{
	font-size: 24px;
	font-weight: 400;
	text-align: center;
}

.dc-carousel-item{
    background: #f8f3ef;
    padding: 15px;
}

.dc-carousel-title{
    font-family: "Lato", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.dc-carousel-price{
    color: #444444;
    font-family: "Lato", Sans-serif;
    font-size: 0.857em;
    font-weight: 400;
    letter-spacing: 2px;
}

.page-cart-featureds .button.add_to_cart_button,
.page-cart-featureds .button.add_to_cart_button:focus,
.page-cart-featureds .button.add_to_cart_button:hover{
    font-family: "Lato", Sans-serif;
    font-size: 14px;
    letter-spacing: 1px;
    color: #FFFFFF;
    background-color: var(--e-global-color-accent);
    transition: all 0.2s;
}

.redirect-cart{
    cursor: pointer;
}

.align-top{
    align-self: flex-start  !important;
}

.woocommerce-product-details__short-description ul{

}

.dc-mini-cart-bottom{
    box-shadow: 0 -5px 10px -5px rgba(0, 0, 0, 0.3);
    padding:10px 15px 10px 15px;
}

#product-descripcion-mobile{
    gap: 10px;
}

.woocommerce-mini-cart__buttons.buttons{
    padding-left: 15px;
    padding-right: 15px;
}

.dc-featured-product a.button.dc-button-add-to-cart{
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.added_to_cart.wc-forward{
    display:none !important;
}

.product-page-description-desktop div{
    margin-bottom: 10px;
}


#customer_login{
    margin-top: 50px;
}

#customer_login h2{
    font-size: 1.5rem;
}

a.elementor-register{
    font-size: .85em;
}

.elementor-login-separator{
    margin-left: 10px;
    margin-right: 10px;
}
