/*
 Theme Name:   Camsol Theme
 Theme URI:    http://narrative.studio/
 Description:  Hello Child Theme
 Author:       Narrative Studio
 Author URI:   https://narrative.studio/
 Template:     hello-elementor
 Version:      1.0.3
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  camsol
*/

html {
	scroll-behavior: smooth;
}

/*--- typography ---*/
p:last-child {
	margin-bottom: 0;
}
ul {
	padding-left: 1rem;
}
ul li::marker {
    color: #f25d29;
}

/*--- menu ---*/
header .elementor-nav-menu--main .woosc-menu-item a {
    color: var(--e-global-color-primary);
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    text-transform: var(--e-global-typography-accent-text-transform);
    font-style: var(--e-global-typography-accent-font-style);
    text-decoration: var(--e-global-typography-accent-text-decoration);
    line-height: var(--e-global-typography-accent-line-height);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
	padding: 28px 0;
}
header .elementor-nav-menu--main .woosc-menu-item a:hover {
	color: var(--e-global-color-accent);
    padding: 28px 0;
}
footer .elementor-nav-menu--main .woosc-menu-item a {
	color: var(--e-global-color-764183d);
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    text-transform: var(--e-global-typography-text-text-transform);
    font-style: var(--e-global-typography-text-font-style);
    text-decoration: var(--e-global-typography-text-text-decoration);
    line-height: var(--e-global-typography-text-line-height);
    letter-spacing: var(--e-global-typography-text-letter-spacing);
	padding: 0;
}
footer .elementor-nav-menu--main .woosc-menu-item a:hover {
	color: var(--e-global-color-14ef391);
	padding: 0;
}

/*--- footer ---*/
.back-to-top {
	opacity: 0;
    transition: 0.3s;
}
header:has(.elementor-sticky--active) + div + footer .back-to-top, 
header:has(.elementor-sticky--active) + div + div + footer .back-to-top {
	opacity: 1;
}
.back-to-top .elementor-icon-wrapper, 
.whatsapp .elementor-icon-wrapper {
	display: flex;
}
.back-to-top .elementor-icon, 
.whatsapp .elementor-icon {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

/*--- tables ---*/
table {
	background: #fff;
    margin-bottom: 0;
	text-align: left;
}
table td,
table th {
    border-color: #dee2e6;
}
table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th, 
.woosc-inner .woosc-table .woosc-table-inner .woosc-table-items table tbody tr:nth-child(2n) td {
    background-color: var( --e-global-color-764183d );
}
table tbody tr:hover > td,
table tbody tr:hover > th {
    background-color: var( --e-global-color-secondary ) !important;
}
thead {
    width: 100%;
    text-align: center;
    font-weight: 500;
    padding: 15px;
    line-height: 1.5;
    vertical-align: top;
    border: 1px solid #dee2e6;
    border-bottom: none;
}
.woocommerce table.shop_attributes {
	margin-bottom: 0;
}
.woocommerce table.shop_attributes td, 
.woocommerce table.shop_attributes th {
	border: none;
	font-style: normal;
	padding: 15px 10px;
}
.woocommerce table.shop_attributes th {
	font-weight: 500;
}
.woocommerce table.shop_attributes tr:nth-child(even) td, 
.woocommerce table.shop_attributes tr:nth-child(even) th {
	background: transparent;
}
.woocommerce table.shop_attributes {
	border: none;
}
.woocommerce table.shop_attributes td p {
	padding: 0;
}

/*--- filters ---*/
.jet-smart-filters-select .jet-select .jet-select__control, 
.jet-range__slider{
    height: calc(2.25rem + 2px);
}
.jet-select__control:focus, 
 .jet-range__slider__input:focus::-webkit-slider-thumb, 
[type=button]:focus, 
[type=submit]:focus, button:focus {
    border-color: #80bdff !important;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}
.jet-range .jet-range__slider {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 0;
}
.jet-range__slider__track__range {
    border-radius: 50px;
}
.jet-filters-counter {
    font-size: 75%;
}

/*--- shop ---*/
.woocommerce-shop .elementor-element .swiper .elementor-swiper-button-prev {
	left: 0;
}
.woocommerce-shop .elementor-element .swiper .elementor-swiper-button-next {
	right: 0;
}
.woocommerce-shop .elementor-swiper-button, 
.woocommerce-shop .swiper-pagination {
    opacity: 0;
    transition: 0.3s;
}
.woocommerce-shop .swiper:hover .elementor-swiper-button, 
.woocommerce-shop .swiper:hover .swiper-pagination {
    opacity: 1;
}

/*--- single product ---*/
.single-product .wpgs-nav .slick-slide {
    border-radius: 4px;
    overflow: hidden;
}
.single-product .attachment-shop_single {
    border-radius: 8px;
}
.single-product .wpgs-for .slick-arrow.flaticon-back {
    left: 15px;
}
.single-product .wpgs-for .slick-arrow.flaticon-right-arrow {
    right: 15px;
}
@keyframes focus {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    to {
        transform: scale(2);
        opacity: 0;
    }
}
.single-product .threesixty-btn::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    right: unset;
    opacity: 0;
    animation: focus 2s infinite;
    background-color: var(--e-global-color-accent);
    border-radius: 50%;
}
.single-product .threesixty-btn::after {
    display: none;
}

.single-product .threesixty-btn {
	width: 35px;
    height: 35px;
	top: 12.5px;
    right: 12.5px;
    background: var( --e-global-color-accent ) !important;
}
.single-product .threesixty-btn img {
    width: 20px !important;
    height: 20px !important;
    top: 7.5px;
    left: 7.5px;
}
.single-product .wpgs-nav .slick-list {
    margin-left: -3.8px;
}
.single-product .fancybox-button, 
.mfp-close {
    background: rgba(30,30,30,.6) !important;
    padding: 10px !important;
	line-height; 1 !important;
}
.single-product .fancybox-button svg path {
    fill: #fff;
}
.threesixty, 
.mfp-content {
    height: 80vh !important;
    width: 80vw !important;
}
.threesixty {
    overflow: visible;
}
.threesixty img {
    max-width: 80vw;
    max-height: 90vh;
}
.threesixty_content_wrap .threesixty .threesixty_images img {
    top: 40vh;
    transform: translate(0px, -50%);
}
.threesixty_content_wrap .threesixty .threesixty_images {
    top: 0;
}
.threesixty_content_wrap .threesixty-products {
    background-color: transparent;
}
.threesixty .spinner {
    background: #fff;
    margin: 0 !important;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.threesixty .spinner span {
    width: 60px;
    display: block;
    background: #333;
    border-radius: 4px;
}

/*--- comparador ---*/
.woosc_table img {
	width: 100%;
}
.woosc-tooltip .woosc-btn::before {
	content: "";
    top: 19px;
    left: 3px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent var(--e-global-color-accent) transparent;
}
.woosc-tooltip .woosc-btn::after {
    content: "Comparar";
	font-size: 14px;
	padding: 2px 10px;
	border-radius: 2px;
    top: 29px;
    left: 0;
    transform: translate(-50%, 0);
    margin-left: 8px;
    background: var(--e-global-color-accent);
    color: var(--e-global-color-d6cea4e);
}
.woosc-tooltip .woosc-btn::before, 
.woosc-tooltip .woosc-btn::after {
	position: absolute;
	z-index: 9;
    transition: 0.3s;
	visibility: hidden;
	opacity: 0;
}
.woosc-tooltip .woosc-btn:hover::before, 
.woosc-tooltip .woosc-btn:hover::after {
	visibility: visible;
	opacity: 1;
}
.woosc-tooltip .woosc-btn.woosc-btn-has-icon.woosc-btn-added:before {
    display: block !important;
}
.woosc-tooltip .woosc-icon-16 {
	transform: scale(1.25);
}
.woosc-area .woosc-inner .woosc-table .woosc-table-inner .woosc-table-close .woosc-table-close-icon {
	min-width: 50px;
    min-height: 50px;
}

/*--- Forms ---*/
.elementor-widget-form .elementor-field-group > label {
    margin-bottom: 8px;
}
.elementor-field-group .elementor-field-textual:focus {
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}
.elementor-message:not(.elementor-help-inline) {
    color: #004085;
    background-color: #cce5ff;
    position: relative;
    padding: 12px 20px;
    margin-top: 16px;
    margin-bottom: 0;
    border: 1px solid #b8daff;
    border-radius: 4px;
}
.elementor-message:before {
    display: none;
}
.elementor-message.elementor-message-success:not(.elementor-help-inline) {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}
.elementor-message.elementor-message-danger:not(.elementor-help-inline) {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}
.elementor-help-inline.elementor-message-danger {
    width: 100%;
    margin-top: 4px;
    margin-bottom: 0;
    font-size: 80%;
    color: #dc3545;
}
.elementor-default .elementor-error .elementor-field[aria-invalid="true"] {
    border-color: #dc3545;
}
