/*
Theme Name: Optiveda
Text Domain: optiveda
Author: Webcomum
Author URI: https://www.webcomum.com
Version: 1.0
*/

/* -------------------------------------------*--------------*--------------------------------------------------*/
/*                    -----------------------*   CUSTOM CSS   *------------------------                         */
/* -------------------------------------------*--------------*--------------------------------------------------*/


@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:opsz,wght@6..12,400;6..12,600;6..12,700;6..12,800&display=swap');
/*
font-family: 'Nunito Sans', sans-serif;
*/

:root {
  --blue: #044b99;
  --light: #58a7eb;
  --tr: all .3s ease-in-out;
  --tr2: all 1s cubic-bezier(0.7, 0, 0.3, 1);
  --tr3: all .7s cubic-bezier(0.7, 0, 0.3, 1);
}

html,
body {
	overflow-x: hidden;
}

html {
  box-sizing: border-box;
}

body {
	font-family: 'Nunito Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
	color: #000;
	margin: 0;
	padding: 0;
	background-color: #fff;
}

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

* {
    -webkit-tap-highlight-color: transparent;
}

a {
	text-decoration: unset;
	color: var(--blue);
}

a:active,
a:focus {
	outline: 0;
}

h1,h2,h3,h4,h5,h6 {
	font-family: 'Nunito Sans', sans-serif;
	font-size: 32px;
	font-weight: 800;
	color: #000;
	margin: 0;
	line-height: 1.2;
}

p {
	margin: 0;
}

input:active,
input:focus,
select:active,
select:focus,
textarea:active,
textarea:focus,
button:active,
button:focus {
	outline: 0;
}

button {
	border: 0;
    background-color: transparent;
}

.section {
	padding-left: 10%;
	padding-right: 10%;
}

.section-small {
	padding-left: 15%;
	padding-right: 15%;
}

img {
	width: 100%;
	height: auto;
}

.header-inner {
	padding-left: 28px;
	display: flex;
	justify-content: space-between;
	box-shadow: 0px 7px 12px -5px rgb(206 206 206);
	position: relative;
	z-index: 3;
	background-color: #fff;
	transition: var(--tr);
}

.header-left {
	display: flex;
	padding: 4px 0;
}

.header-left .header-menu {
	display: flex;
	align-items: center;
	margin-left: 84px;
}

.header-left img {
	width: 86px;
}

header ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

header li {
	display: inline-block;
	margin-right: 27px;
}

header li a {
	color: #000;
}

.header-right {
	display: flex;
	align-items: center;
}

.header-cart {
	margin-right: 24px;
	display: flex;
}

.header-cart img {
	width: 22px;
}

.header-right ul a {
	color: #fff;
	background-color: var(--blue);
	padding: 15px 70px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.header-right li {
	margin-right: 0;
}

.header-right * {
	height: 100%;
}

.header-logo {
	display: flex;
}

footer {
	color: #fff;
	background-color: var(--blue);
	padding: 34px 28px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	width: 100%;
}

footer img {
	width: 84px;
}

footer .header-logo {
	margin-bottom: 25px;
}

footer p {
	margin-bottom: 6px;
}

footer p:last-child {
	margin-bottom: 0;
}

.home-banner {
	height: 800px;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
}

.home-banner h1 {
	color: #fff;
	font-size: 80px;
	line-height: 1;
}

.home-banner h1 span {
	color: var(--light);
}

.heading {
	font-size: 32px;
}

.heading:before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 23px;
	background-color: var(--light);
	margin-right: 9px; 
}

.section-pad {
	padding-top: 60px;
	padding-bottom: 60px;
}

.home-products .heading {
	margin-bottom: 37px;
}

.home-products-items {
	box-shadow: 3px 6px 30px 0 rgba(0, 0, 0, 0.35);
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1px;
	color: #000;
	background-color: rgba(0,0,0,.05);
}

.home-products-item {
	padding: 35px;
	background-color: #fff;
	color: #000;
}

.home-products-item img {
	height: 90px;
	width: auto;
	margin-bottom: 10px;
}

.home-products-item h3 {
	font-size: 22px;
	margin-bottom: 10px;
}

.btn {
	font-weight: 700;
	padding: 13px 30px;
	display: inline-block;
}

.btn-blue {
	background-color: var(--blue);
	color: #fff;
}

.btn-center {
	text-align: center;
}

.home-products .btn {
	margin-top: 50px;
} 

.home-about,
.home-bottom {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.home-about-left,
.home-bottom {
	background-size: cover;
	background-position: center;
}

.home-about-right,
.home-bottom-right {
	padding: 160px 70px;
	background-color: #efecec;
}

.home-about-right h2 {
	font-size: 64px;
	max-width: 355px;
	position: relative;
	line-height: .9;
	z-index: 1;
	margin-bottom: 25px;
}

.home-about-right div {
	margin-bottom: 30px;
}

.home-about-right h2:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 29px;
	background-color: var(--light);
	z-index: -1;
}

.home-bottom-right {
	background-color: transparent;
}

.home-bottom h2 {
	margin-bottom: 10px;
	color: var(--blue);
}

.home-bottom h2,
.home-bottom h4 {
	font-size: 48px;
	line-height: 1;
}

.home-bottom h4 {
	color: #fff;
}

.home-logos {
	padding-top: 40px;
	padding-bottom: 40px;
}

.home-logos img {
	max-height: 80px;
	width: auto; 
}

.slick-slide {
  margin: 0 20px;
}

.slick-list {
  margin: 0 -20px;
}

.home-logos-item {
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.page-heading h1 {
	font-size: 48px;
	line-height: 1;
}

.page-heading {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.breadcrumbs {
	list-style: none;
	margin: 0;
    padding: 0;
}

.breadcrumbs a {
	color: #000;
}

.breadcrumbs li {
	display: inline-block;
}

.breadcrumbs li:after {
	content: '>';
    display: inline-block;
    margin-left: 9px;
    margin-right: 9px;
    font-size: 12px;
    color: #ccc;
}

.breadcrumbs li:last-child:after {
	content: none;
}

.about-section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 130px;
}

.about-right {
	padding-left: 70px;
}

.map-section iframe {
	width: 100%;
	height: 450px;
}

.contact-section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 100px;
}

.contact-address,
.contact-content {
	margin-bottom: 30px;
}

.contact-right h4 {
	font-size: 20px;
	margin-bottom: 15px;
}

.contact-social-inner {
	display: flex;
}

.contact-social-item img {
	height: 24px;
	width: auto; 
}

.contact-social-item {
	margin-right: 10px;
}

.contact-left h4 {
	font-size: 28px;
	color: var(--blue);
	margin-bottom: 40px;
}

input,
textarea {
	font-family: 'Nunito Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #000;
	background-color: #f8f8f8;
	padding: 20px;
	border: 0;
	outline: 0;
	width: 100%;
	margin-bottom: 20px;
}

input {
	height: 54px;
}

textarea {
	height: 109px;
}

input[type="submit"] {
	font-weight: 700;
	padding: 13px 30px;
	display: inline-block;
	background-color: var(--blue);
	color: #fff;
	width: auto;
	margin-top: 20px;
	cursor: pointer;
}

.contact-right-block {
	margin-bottom: 33px;
}

.contact-right-block:first-child {
	margin-top: 10px;
}

.category-list .sem-categoria {
	display: none;
}

.product-list {
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-gap: 30px;
	margin-bottom: 60px;
}

.woocommerce-breadcrumb {
	display: none !important;
}

.archive .products .product-category {
	display: none;
}

.category-in-results-item {
	display: none;
}

.product-list-right-cat div {
	cursor: pointer;
	transition: var(--tr);
}

.product-list-right-cat div:hover {
	opacity: .55;
}

.woocommerce #sidebar {
	display: none;
}

.section-single {
	margin-top: -40px;
	display: flex;
	flex-direction: column;
}

.section-single .summary {
	margin-top: 20px;
	display: flex;
    flex-direction: column;
}

.section-single .summary h1 {
	order: 1;
	font-size: 40px;
}

.section-single .summary .product_meta {
	order: 2;
	margin-bottom: 23px;
}

.section-single .product-description {
	order: 3;
	margin-bottom: 25px;
}

.section-single .summary .price {
	display: none;
}

.section-single form.cart {
	order: 4;
}

.section-single .woocommerce-product-gallery,
.section-single .summary {
	width: 47% !important;
}

.section-single .posted_in {
	display: none;
}

.section-single .sku_wrapper {
    text-transform: lowercase;
    display: block;
    color: #616161;
}

.section-single .sku_wrapper:first-letter {
	text-transform: uppercase;
}

.section-single .up-sells {
	display: flex;
}

.quantity {
    float: left;
    margin: 0 4px 0 0;
    display: flex;
    align-items: center;
    margin-top: 30px;
    width: 62px;
    margin-right: 200px;
}

.woocommerce-cart .quantity {
    margin-top: 0;
}

.quantity input {
	height: 40px;
	background-color: #fff;
	border: 1px solid #c4c4c4;
	margin: 0;
}

.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
    display: none;
    margin: 0;
}

.quantity input.qty {
    appearance: textfield;
    -webkit-appearance: none;
    -moz-appearance: textfield;
}

.category-list h2 {
	font-size: 20px;
	color: var(--blue);
	margin-bottom: 20px;
}

.category-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.category-list li:before {
	content: '»';
}

.category-list-zero > li:before {
	color: var(--light);
}

.category-list a {
	font-size: 15px;
	padding-bottom: 5px;
	display: inline-block;
	color: #616161;
	font-weight: 600;
}

.category-list-zero {
	margin-bottom: 3px !important;
}

.category-list-one {
	margin-bottom: 7px !important;
}

.category-list-zero-link {
	font-size: 18px !important;
	font-weight: 700;
	color: var(--light) !important;
}

.category-list-one,
.category-list-two {
	padding-left: 15px !important;
	display: none;
}

.category-list-zero.active .category-list-one {
	display: block;
}

.category-bread {
	display: none;
	text-align: right;
}

.category-list li.active > ul,
.category-list ul.active {
	display: block;
}

.search-form-wrapper {
	display: flex;
	justify-content: flex-end;
}

.search-form {
	display: flex;
	max-width: 345px;
    width: 100%;
}

.search-form-input {
	height: 56px;
	border: 1px solid #c2d7ee;
	padding: 20px 18px;
	width: 100%;
	background-color: #fff;
}

.search-form-input::placeholder {
	color: #c2d7ee;
}

.search-form-submit {
	background-color: var(--light) !important;
	border: 1px solid #c2d7ee;
    margin: 0 !important;
    font-size: 0;
    height: 100%;
    width: 65px;
    cursor: pointer;
}

.search-form-submit-wrapper {
	position: relative;
	height: 56px;
    width: 70px !important;
	margin-left: -1px;
}

.search-form-submit-wrapper:before {
	content: '';
	background-image: url('assets/img/search.svg');
	width: 22px;
	height: 23px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.search-form-submit-wrapper.active:before {
	content: none;
}

.spinner {
    background-image: none;
    width: 22px;
    height: 22px;
    border: 3px solid;
    border-color: #fff transparent;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -11px;
    margin-top: -11px;
    background-color: transparent;
    opacity: 0;
    visibility: hidden;
}

.spinner.active {
    opacity: 1;
    visibility: visible;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.product-list-right h2 {
	margin-top: 5px;
	margin-bottom: 15px;
	font-size: 24px;
}

.product-list-right-cat {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}

.category-in-results-item a,
.main-product-loop a,
.search-product-loop a {
	font-size: 15px;
	color: #616161;
	display: flex;
	justify-content: space-between;
	font-weight: 600;
	border-bottom: 1px solid #efecec;
	padding: 5px 0;
}

.category-results-see {
	color: var(--blue);
	padding-left: 15px;
}

.category-results-see span {
	font-size: 10px;
}

.category-in-results {
	margin-top: 20px;
}

.product-sku {
	display: none;
}

.product-list-global-title {
	display: none;
}

.catlevel-3 .category-in-results {
	display: none;
}

.quantity input {
	font-weight: 600;
	padding: 0 13px;
}

.quantity input[type="button"] {
	font-size: 20px;
	cursor: pointer;
}

.quantity input[type="button"].minus {
	margin-right: -1px !important;
}

.quantity input[type="button"].plus {
	margin-left: -1px !important;
}

.single-product form.cart {
	display: flex;
	flex-direction: column;
}

.single_add_to_cart_button {
    margin-right: auto !important;
    margin-top: 20px !important;
    background-color: var(--blue) !important;
    padding: 18px 40px !important;
    border-radius: 0 !important;
}

.product-files-button {
    margin-top: 20px !important;
    background-color: var(--light) !important;
    padding: 10px 28px !important;
    border-radius: 0 !important;
    color: #fff;
    font-weight: 700;
    margin-right: 10px;
    display: inline-block;
}

.stock.in-stock {
	display: none;
}

.stock-warning,
.stock-number {
	display: none;
}

.stock-warning {
	border: solid 1px #ff0a0a;
  	background-color: #ffdbdb;
  	padding: 5px 30px 5px 7px;
  	margin-right: auto;
  	margin-top: 10px;
}

.stock-warning p {
	display: flex;
	align-items: center;
	color: #ff0a0a;
	font-size: 12px;
}

.stock-warning img {
	display: flex;
	margin-right: 6px;
	width: 20px !important;
	height: 20px !important;
}

.no-products {
	font-size: 15px;
    color: var(--light);
    display: flex;
    font-weight: 600;
    border-bottom: 1px solid #efecec;
    padding: 5px 0;
}

.cart-product-name {
	display: flex;
	align-items: center;
	color: #000;
	font-weight: 700;
}

.woocommerce-cart table.cart img {
	width: 75px;
}

.woocommerce a.remove {
	color: #fff !important;
	background: #616161 !important;
	display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    height: 25px;
    width: 25px;
}

.cart-product-sku {
	font-size: 12px;
    color: #898989;
    margin-top: -2px;
}

.shop_table thead {
	background-color: #f5f5f5;
}

.woocommerce table.shop_table td {
    border: 1px solid rgba(0,0,0,.1);
    padding: 20px;
    vertical-align: middle;
    line-height: 1.5em;
}

.woocommerce table.shop_table th {
    border: 1px solid rgba(0,0,0,.1);
    padding-left: 20px;
    padding-right: 20px;
    font-size: 14px;
}

.woocommerce table {
    border-collapse: collapse !important;
    width: 100% !important;
  	table-layout: fixed !important;
}

.woocommerce table .product-remove {
	width: 12%;
}

.woocommerce table .product-thumbnail {
	width: 20%;
}

.woocommerce table .product-quantity {
	width: 26%;
}

.woocommerce-cart .section .woocommerce {
	margin-bottom: 60px;
}

.cart-form {
	background-color: #ebf2f5;
	padding-top: 80px;
	padding-bottom: 80px;
} 

.cart-form h3 {
	color: var(--blue);
	text-align: center;
	margin-bottom: 60px;
}

.cart-form input:not(input[type="submit"]),
.cart-form textarea {
	background-color: #fff;
}

.form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}

.form-row br {
	display: none;
}

.form-row:before,
.form-row:after {
	content: none !important;
}

.cart-form input[type="submit"] {
    margin-top: 0;
    float: right;
}

.form-row-product,
.cart-stock-number {
	display: none;
}

.legal-section {
	margin-bottom: 60px;
}

.woocommerce-cart-form .stock-warning.active {
    display: inline-block;
    margin-top: 7px;
}

.mobile-switcher {
    background-color: var(--blue);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    padding: 0 28px;
    display: none;
}

.mobile-menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.relative {
	position: relative;
}

.mobile-menu {
	position: absolute;
	left: 0;
	top: 0;
	transform: translateY(-100%);
	width: 100%;
	background-color: var(--blue);
	transition: var(--tr);
	z-index: 2;
}

.mobile-menu.active {
	transform: translateY(0);
	top: 70px;
}

.header-inner.active {
    box-shadow: none;
}

.mobile-menu a {
	color: #fff;
	padding: 12px 28px;
	border-bottom: 1px solid #ffffff42;
	display: block;
}

.mobile-menu li {
    display: block;
    margin-right: 0;
}

.mobile-menu > div:last-child li:last-child a {
	border-bottom: 0;
}

.mobile-switcher img {
	width: 27px;
	height: 27px;
}

.category-list li.active > a {
	font-weight: 800;
	color: var(--blue);
}

.related.products .button {
	display: none !important; 
}





/* -------------------------------------------*-----------------*--------------------------------------------------*/
/*                    -----------------------*   MEDIA QUERIES   *------------------------                         */
/* -------------------------------------------*-----------------*--------------------------------------------------*/


@media (max-width: 1500px) { 

	

}

@media (max-width: 1350px) { 

	.page-heading {
	    align-items: flex-start;
	    flex-direction: column;
	    gap: 6px;
	}

	.category-bread {
		text-align: left;
	}

}

@media (max-width: 1199px) { 

	.home-products-items {
	    grid-template-columns: 1fr 1fr;
	}

	.home-about-right h2 {
	    font-size: 44px;
	}

	.home-about-right h2:before {
	    height: 19px;
	}

	.product-list {
	    grid-template-columns: 1fr;
	}

	.search-form-wrapper {
	    justify-content: flex-start;
	}

	.product-list-right h2 {
	    margin-top: 15px;
	}

}	

@media (max-width: 1099px) { 

	.mobile-switcher {
	    display: flex;
	}

	.header-menu {
		display: none !important;
	}

	.header-left img {
	    width: 56px;
	}

	.header-left {
	    padding: 7px 0;
	}

}

@media (max-width: 991px) { 

	.home-banner {
	    height: 600px;
	}

	.home-banner h1 {
	    font-size: 60px;
	}

	.section, .section-small {
	    padding-left: 6%;
	    padding-right: 6%;
	}

	.about-section {
	    grid-template-columns: 1fr;
	    margin-bottom: 90px;
	    gap: 40px;
	}

	.about-right {
	    padding-left: 0;
	}

}

@media (max-width: 767px) {
	
	.home-about, .home-bottom {
	    grid-template-columns: 1fr;
	}

	.home-about-left {
	    height: 300px;
	}

	.home-about-right, .home-bottom-right {
	    padding: 70px 20px;
	    background-color: #efecec;
	}

	.home-bottom-right {
		background-color: transparent;
	}

	.page-heading h1 {
	    font-size: 28px;
	}

	.breadcrumbs {
	    font-size: 14px;
	}

	.breadcrumbs li:after {
	    margin-left: 6px;
	    margin-right: 4px;
	}

	.contact-section {
	    grid-template-columns: 1fr;
	    grid-gap: 40px;
	}

	.form-row {
	    grid-template-columns: 1fr;
	    grid-gap: 0;
	}

	.woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        content: attr(data-title) ": ";
        font-weight: 700;
        float: left;
        margin-right: 5px;
    }

    .cart-product-sku {
	    padding: 0;
	    margin: 0;
	}

	.woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td {
        text-align: left !important;
    }

    .woocommerce table .product-quantity {
	    width: 100%;
	}

	.woocommerce table.shop_table_responsive tr, .woocommerce-page table.shop_table_responsive tr {
        display: table-row;
    }

    .product-quantity {
    	height: 80px;
    }

    .woocommerce table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
        background-color: transparent;
    }

    .quantity {
	    margin-right: 0;
	    margin-left: 10px;
	}

	.product-remove {
		width: 66px !important;
	}

	.product-quantity::before {
		padding-top: 7px !important;
	}

	.section-single .woocommerce-product-gallery, .section-single .summary {
	    width: 100% !important;
	}

	.category-in-results-item a, .main-product-loop a, .search-product-loop a {
	    flex-direction: column;
	}

	.category-results-see {
	    padding-left: 0;
	}

}

@media (max-width: 550px) {

	.header-inner {
	    padding-left: 15px;
	}

	.mobile-switcher {
	    padding: 0 15px;
	}

	.header-cart {
	    margin-right: 20px;
	}

	.header-left img {
	    width: 46px;
	}

	.mobile-menu.active {
		top: 60px;
	}

	.mobile-menu a {
		padding: 10px 15px;
	}

	.section, .section-small {
	    padding-left: 20px;
	    padding-right: 20px;
	}

	.home-banner h1 {
        font-size: 40px;
    }

    .heading {
	    font-size: 28px;
	}

	.home-products-items {
        grid-template-columns: 1fr;
    }

    .home-banner {
        height: 500px;
    }

    .home-products-item img {
	    height: 70px;
	}

	.home-bottom h2, .home-bottom h4 {
	    font-size: 36px;
	    line-height: 1;
	}

	.home-about-right h2 {
        font-size: 37px;
    }

    .home-bottom-right {
        padding: 100px 20px;
    }

    .section-pad {
	    padding-top: 40px;	
	    padding-bottom: 40px;
	}

	.cart-form {
	    padding-top: 50px;
	}

	.cart-form h3 {
	    margin-bottom: 31px;
	}

	.section-single .summary h1 {
	    font-size: 30px;
	}

	.related.products h2 {
		font-size: 28px;
		margin-bottom: 20px;
	}

	.related.products li {
		margin: 0 !important;
        margin-bottom: 20px !important;
	}

	.single-product .section-pad {
        padding-bottom: 0;
    }

    .single-product .page-heading {
        padding-bottom: 40px;
    }

    .search-form {
	    max-width: 100%;
	    width: 100%;
	}
				
}

@media (max-width: 450px) {

	

	
}



