/*

Theme Name: Varikkosuora

Theme URI: https://janneseppanen.site

Description: Varikkosuora Divi Child Theme

Author: Janne Seppänen

Author URI: https://janneseppanen.site

Template: Divi

Version: 1.0.0

License: GNU General Public License v2 or later

License URI: http://www.gnu.org/licenses/gpl-2.0.html

*/

.hidden {
    display: none;
}

.blue-text {
    color: #2ea3f2 !important;
}

/* Sidebar Left Side of Page */

.container:before {
    display: none;
}

.woocommerce .container {
    width: calc(100% - 40px ) !important;
    padding: 0 !important;
}

.woocommerce-products-header {
    margin-bottom: 20px;
}

.woocommerce-sidebar {
    display: none;
}

#sidebar {
    display: none;
}

#left-area {
    width: 100% !important;
    padding-right: 0 !important;
}

.et_pb_widget {
    margin: 20px 0 !important;
    padding: 0 !important;
}

#search-2.et_pb_widget {
    border: none;
}

.screen-reader-text {
    display: none;
}

input {
    border: none;
    border-radius: 3px;
}

.woocommerce .widget_price_filter .price_slider_amount .button,
.woocommerce-page .widget_price_filter .price_slider_amount .button {
    margin: 0 0 10px 10px;
}

.single-product #main-content .container {
    padding-top: 0 !important;
}

.woocommerce-cart #left-area {
    margin-top: 2em;
}

h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title {
    border-top: solid 1px #eee !important;
    padding: 1em 1.4em !important;
}

.price_slider_amount .price_label {
    padding-right: 10px;
    font-size: 14px;
}

.widget_shopping_cart .buttons {
    text-align: center;
    margin-bottom: 15px;
}

#searchform {
    padding: 5px 5px 5px 10px;
}

.et_pb_widget h4 {
    background-color: #2EA3F2;
    padding-top: 5px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
}

.et_pb_widget ul {
    padding: 5px 10px 0 !important;
}

.et_pb_widget:first-of-type {
    margin-top: 0 !important;
}

.widget_search #searchsubmit {
    right: 0;
}

#main-content .container:before {
    right: 0px;
    left: 224px;
}

.category #sidebar .et_pb_widget {
    margin: 0 30px 30px 0px;
}

.woocommerce-product-gallery__image {
    border: #eee solid 1px;
    border-radius: 12px !important;
    margin-bottom: 20px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

/* Featured Products */
.featured-products-container {
    display: flex;
    justify-content: center;
}

.featured-products-container  .et_pb_row .et_pb_column.et-last-child, .et_pb_row .et_pb_column:last-child {
    margin: 0 !important;
}

/* WooCommerce */

.woocommerce-products-header__title.page-title {
    font-weight: 700;
    text-transform: uppercase;
}

.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
    display: none;
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
    margin-top: 2em;
}



.et_pb_column.et_pb_column_3_5.et_pb_column_1_tb_header.et_pb_css_mix_blend_mode_passthrough.et_pb_column--with-menu,
.et_pb_column.et_pb_column_1_5.et_pb_column_0_tb_header.et_pb_css_mix_blend_mode_passthrough {
    margin-bottom: 0;
}

header.et-l.et-l--header {
    background: #282828;
}

.woocommerce-products-header .term-description {
    max-width: 800px;
}

.woocommerce .quantity input.qty, .woocommerce-page .quantity input.qty {
    padding: 13px;
}

/* TUOTEKORTIT */

/* === WooCommerce tuotekortit (Divi-yhteensopiva) === */

.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.woocommerce ul.products li.product {
  background: #000;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  text-align: left;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.12);
}

/* Tuotekuva */
.woocommerce ul.products li.product img {
  border-radius: 8px;
  margin: -20px;

}

/* Tuotenimi */
.woocommerce ul.products li.product h2, 
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.2em;
    font-weight: 600;
    line-height: 1.4;
    padding-bottom: 0.1em;
    color: #fff;
    margin: 0 10px;
    text-transform: uppercase;
    line-height: 1.15;
}

/* Hinta */
.woocommerce ul.products li.product .price {
  font-size: 1.2em;
  font-weight: 700;
  color: #2ea3f2 !important; /* Husqvarna-henkinen punainen */
  margin: 0 10px !important;
}

/* Poista alleviivaukset linkeistä */
.woocommerce ul.products li.product a {
  text-decoration: none;
}

/* Lisää hengitystilaa */
.woocommerce ul.products li.product a img {
  display: block;
}

/* === WooCommerce lajittelu (orderby) === */

.woocommerce .woocommerce-ordering {
  margin-bottom: 32px;
  text-align: right;
}

.woocommerce .woocommerce-ordering select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  color: #fff;

  border: none;
  border-radius: 8px;

  padding: 12px 44px 12px 16px;
  font-size: 14px;
  font-weight: 600;

  cursor: pointer;

  background-image: url("data:image/svg+xml;utf8,<svg fill='white' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 18px;
}

/* Hover / focus */
.woocommerce .woocommerce-ordering select:hover,
.woocommerce .woocommerce-ordering select:focus {
  outline: none;
  color: #000 !important;
}

/* Poista oletusnuoli IE/Edge */
.woocommerce .woocommerce-ordering select::-ms-expand {
  display: none;
}

/* === Alakategoria-linkit napeiksi kategorian kuvauksessa === */

.vs-subcategory-buttons a {
  display: inline-block;
  margin: 8px 8px 0 0;
  padding: 5px 10px;

  background-color: #2EA3F2;
  color: #fff;

  font-size: 14px;
  font-weight: 600;
  text-decoration: none;

  border-radius: 5px;

  transition: background-color 0.25s ease, transform 0.25s ease;
}

.vs-subcategory-buttons a:hover {
  transform: translateY(-2px);
}

/* === WooCommerce pagination === */

.woocommerce nav.woocommerce-pagination {
  margin: 48px 0 32px;
  text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
  display: inline-flex;
  gap: 10px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.woocommerce nav.woocommerce-pagination ul li {
  margin: 0;
}

/* Yleinen nappi */
.woocommerce nav.woocommerce-pagination a.page-numbers,
.woocommerce nav.woocommerce-pagination span.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;

  min-width: 44px;
  height: 44px;
  padding: 0 14px;

  border-radius: 10px;

  font-size: 14px;
  font-weight: 600;
  text-decoration: none;

  background-color: #111;
  color: #fff;

  transition: background-color 0.25s ease, transform 0.2s ease;
}

/* Hover */
.woocommerce nav.woocommerce-pagination a.page-numbers:hover {
  background-color: #2ea3f2 !important;
  color: #fff !important;
}

/* Aktiivinen sivu */
.woocommerce nav.woocommerce-pagination span.current {
  background-color: #2ea3f2 !important;
  color: #fff !important;
  cursor: default;
  transform: none;
}

/* Edellinen / seuraava */
.woocommerce nav.woocommerce-pagination a.prev,
.woocommerce nav.woocommerce-pagination a.next {
  font-size: 16px;
  padding: 0 18px;
}

ul.page-numbers,
ul.page-numbers li {
    border: none !important;
}



/*-------------------[768px]------------------*/

@media only screen and (min-width: 981px) {

    .et_pb_section:first-of-type {
        padding-top: 28px;
    }

    .et_pb_widget_area_left {
        border-right: none;
        margin-top: 66px;
    }

    header.woocommerce-products-header {
        border-bottom: solid 1px #ccc;
        padding-bottom: 1em;
        margin-bottom: 1em;
        color: #000;
    }

    .woocommerce .widget_price_filter .price_slider_amount .button,
    .woocommerce-page .widget_price_filter .price_slider_amount .button {
        padding: 5px !important;
    }

}


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

    .vs-product-category-menu .et-menu {
        display: flex !important;
        justify-content: center;
    }
    #left-area {
        width: auto !important;
    }

    .widget_search #searchsubmit {
        position: relative;
    }

}


@media only screen and (max-width: 1819px) and (min-width: 1219px) {

    /* Hide last product on featured products */
    .featured-products ul.products li.product:nth-last-child(1) {
        display: none;
    }
}

@media only screen and (max-width: 1519px) and (min-width: 1219px) {

    /* Hide last product on featured products */
    .featured-products ul.products li.product:nth-last-child(2) {
        display: none;
    }
}

@media (max-width: 767px) {
    .et_pb_slide_description {
        background-color: #00000070;
        border-radius: 12px;
        max-height: 500px;
    }
}