html {
  padding: 0;
  margin: 0;
}

body {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  overflow-x: hidden;
  overflow-y: scroll;
  background-color: #fff;
  color: #636363;
  min-height: 110vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

body.home > header {
  background-color: transparent;
  position: fixed;
}

html:not([data-scroll="0"]) body.home > header {
  position: fixed;
  background-color: #43424266;
}

html:not([data-scroll="0"]) body > header {
  position: fixed;
  background-color: #434242;
}

html:not([data-scroll="0"]) body > header .navbar-brand img.normal{
  display: none;
}

html:not([data-scroll="0"]) body > header .navbar-brand img.scroll{
  display: inline-block !important;
}

body > header .navbar-brand img.scroll {
  width: 100px;
}


body > header {
  position: relative;
  z-index: 999;
  width: 100%;
  background-color: #434242;
}

a {
  color: #3b3b3e;
  outline: 0;
}

a:hover {
  color: #041549;
  text-decoration: underline;
}

body .main {
  min-height: 65vh;
}

header .hat {
  padding: .1rem .5rem;
  background-color: #6f6d6d;
}

header .navbar-nav {
  justify-content: space-around;
}
header .hat .row .col-md-2,
header  .navbar-brand {
  padding-left: .75rem !important;
}

header .navbar-nav li > a {
  color: #fff;
  text-transform: uppercase;
  font-size: 0.8rem;
  display: block;
  padding: 0.4rem 0.5rem;
  border-radius: 1rem;
  text-decoration: none;
  position: relative;
}

header .navbar-nav li.current-menu-item > a,
header .navbar-nav li.current_page_item > a,
header .navbar-nav li.active > a,
header .navbar-nav li > a:hover {
  background-color: #00b16f;
}
/*
header .navbar-nav .menu-item-has-children > a::after {
  content: "";
  position: absolute;
  left: 40%;
  top: 100%;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #00b16f;
  clear: both;
  visibility: hidden;
  opacity: 0;
  transition: opacity 1.5s ease-out;
}
*/
header .navbar-nav li .sub-menu {
  min-width: 150px;
  max-width: 200px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  display: block;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  border-top: 2px solid #00b16f;
  transition: opacity 1.5s ease-out;
  margin-top: 10px;
}

header .navbar-nav li .sub-menu a {
  color: #8d8d8d;
  text-transform: none;
  border-radius: 0;
}
/*
header .navbar-nav .active .sub-menu a::after {
  content: ">";
  right: 4px;
  position: absolute;
  font-size: 0.8rem;
  font-weight: bold;
  color: #00b16f;
}
*/
header .navbar-nav .active .sub-menu a:hover::after,
header .navbar-nav li .sub-menu a:hover {
  color: #fff;
  background-color: #00b16f;
}

header .navbar-nav li.active .sub-menu {
  visibility: visible;
  opacity: 1;
}

header .navbar-nav li.active > a::after {
  visibility: visible;
  opacity: 1;
}

header .menu-top-container {
  width: 100%;
}

header ul {
  list-style: none;
}

header .red-social li {
  display: flex;
  width: 25px;
  margin: 0 10px;
}

header .red-social li a {
  opacity: 0.8;
}

header .red-social li a:hover {
  opacity: 1;
}

header .btn-buscar {
  position: relative;
}

header .btn-buscar.active + .search-form {
  display: flex;
}

header .search-form {
  position: absolute;
  right: 1rem;
  display: none;
  font-size: 0.8rem;
}

.woocommerce-product-search {
  display: flex;
align-content: center;
justify-content: center;
}

.woocommerce-product-search input,
header .search-form .search-field {
  border-radius: 1rem 0 0 1rem;
  border: none;
  padding: 0.4rem 0.4rem 0.4rem 1rem;
}

.woocommerce-product-search input {
  border-top: 1px solid #434242;
  border-left: 1px solid #434242;
  border-bottom: 1px solid #434242;
  line-height: 1rem;
  font-size: 0.95rem;
}

.woocommerce-product-search button,
header .search-form button {
  width: 34px;
  height: 34px;
  border: none;
  border-radius: 0 1rem 1rem 0;
  background-image: url(http://casasergio.info/wp-content/themes/casasergio/images/lupa.png.pagespeed.ce.UUgxhWueft.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
  background-color: #00b16f;
}

.woocommerce-product-search button {
  text-indent: -9999px;
  border-top: 1px solid #434242;
  border-right: 1px solid #434242;
  border-bottom: 1px solid #434242;
}

body.home .sliders {
  padding-top: 14px;
}

footer {
  font-size: 0.6rem;
  color: #fff;
  background-color:#404040;
}

footer a {
  font-size: 0.8rem;
  color: #fff;
  text-decoration: none;
}

footer a:hover {
  color: #fff;
  text-decoration: none;
}

footer h4 {
  font-size: 0.9rem;
  font-weight: bold;
}

footer h5 {
  font-size: 0.9rem;
  font-weight: bold;
}

footer .datos p {
  margin-bottom: 0.9rem;
}

footer .red-social {
  margin: 0;
  padding: 0;
}

footer .red-social li {
  display: flex;
  width: 25px;
  margin: 0 10px;
}

footer .red-social li a {
  opacity: 0.8;
}

footer .red-social li a:hover {
  opacity: 1;
}

footer .navbar-nav ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

footer .navbar-nav li a {
  color: #fff;
  text-transform: uppercase;
  font-size: 0.8rem;
}

footer .newsletter  form {
  display: flex;
  justify-content: space-evenly;
  border-bottom: 1px solid #fff;
}

footer .newsletter input {
  font-size: 0.75rem;
  color: #00b16f;
  border: none;
  background-color: transparent;
  padding: 0.2rem 0.5rem;
  width: 80%;
}

footer .newsletter p { 
  font-size: 0.8rem;
  padding: 0.2rem;
  margin: 0;
}
footer .newsletter button {
  border: none;
  background-color: transparent;
  background-image: url("../images/flecha.png");
  background-repeat: no-repeat;
  background-size: 16px;
  height: 1.2rem;
  width: 1.6rem;
  background-position: right;
}

footer .newsletter button.loading {
  background-image: url("../images/loading.gif");
}

footer .copy-text {
  font-size: 0.6rem;
}

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

footer .copy-text a img {
  width: 32px;
}

footer hr {
  border-top-color: #fff;
}

footer.small {
  font-size: 0.7rem;
}

footer.small .newsletter h4 {
  font-size: 0.8rem;
}

footer .gray {
  background-color: #6f6d6d;
}

footer .gray .navbar-nav a {
  font-size: 0.85rem;
}

footer.big .navbar-nav li {
  margin-bottom: 1rem;
}

footer .horarios {
  font-size: 1rem;
}

footer .horarios p {
  font-size: 1rem;
  margin-bottom: 0.2rem;
}

/*** BACK ***/

#return-to-top {
  width: 94px;
  height: 87px;
  background-image: url('../images/flecha-arriba.png');
  background-size: 80px;
  background-repeat: no-repeat;
  background-position: center;
  position: fixed; /* Fixed/sticky position */
  bottom: 1rem; /* Place the button at the bottom of the page */
  right: calc((100%/2) - 40px); /* Place the button 30px from the right */
  z-index: 99; /* Make sure it does not overlap */
  border: none; /* Remove borders */
  outline: none; /* Remove outline */
  cursor: pointer; /* Add a mouse pointer on hover */
  opacity: 0.9;
}

#return-to-top:hover {
  opacity: 1; /* Add a dark-grey background on hover */
}


/*** BLOQUES ***/

h2.section-title {
  font-size: 1.8rem;
  color: #00b16f;
  background-image: url("../images/pixel.jpg");
  background-repeat: repeat-x;
  background-position: center;
  text-align: center;
}

h2.section-title span {
  background-color: #fff;
  padding: 0 0.5rem;
}

.featured-products h3 {
  font-size: 1rem;
  color: #00b16f;
  text-align: center;
  text-transform: uppercase;
}

.featured-products a {
  display: inline-block;
  text-decoration: none;
  text-align: center;
}

.featured-products a img {
  transform: scale(1,1);
  transition: all 0.5s ease;
}

.featured-products a:hover img { 
  transform: scale(1.2,1.2);
}

.featured-products .slick-prev::before,
.featured-products .slick-next::before {
  color: #00b16f;
}

.featuredText .slick-prev::before,
.featuredText .slick-next::before {
  color: #00b16f;
  display: none;
}

.featured hr {
  border-top-color: #00b16f;
  border-top-width: 16px;
  width: 40%;
  margin-left: 0;
}

.featured h2 {
  color: #00b16f;
  font-weight: 900;
  margin-bottom: 0.4rem;
}

.featured h3 {
  font-weight: 600;
  margin-bottom: 0.2rem;
}

.featured p {
  font-weight: 500;
}

.featured a {
  text-decoration: none;
}

.featured a.btn-green {
  color: #fff;
  font-weight: 700;
  padding: 0.4rem 0.5rem;
  border-radius: 1rem;
  text-decoration: none;
  background-color: #00b16f;
}

.featured .border-bottom {
  border-bottom-color: #00b16f !important;
  border-bottom-width: 2px !important;
}

.insta-gallery-feed[data-feed_layout="carousel"]
  .swiper-pagination-bullet-active {
  background-color: #00b16f !important;
}

.insta-gallery-feed[data-feed_layout="carousel"] .swiper-button-next,
.insta-gallery-feed[data-feed_layout="carousel"] .swiper-button-prev {
  display: none;
}

.insta-gallery-feed[data-feed_layout="carousel"] .swiper-button-next > i,
.insta-gallery-feed[data-feed_layout="carousel"] .swiper-button-prev > i {
  color: #00b16f !important;
}

.grid-item .over p {
  font-size: 1.4rem;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
}

.grid-item .over .ico {
  width: 62px;
  height: 62px;
  background-image: url("../images/flecha-rubros.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

/*** PAGE ***/

body.page {
  font-size: 1.2rem;
}

body.page section {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

body.page h1 {
  font-size: 2rem;
  text-transform: uppercase;
  color: #00b16f;
  font-weight: 700;
}

body.page .ajustar img {
  max-width: 100%;
  height: auto;
}

body.page .wp-block-columns {
    padding-bottom: 2rem !important;
    margin-bottom: 2rem !important;
}

/*** CONTACTO Y HORARIOS ***/
.contactTime {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  margin-left: auto;
  margin-right: auto;
}  


.contactTime h2 {
  font-size: 1.5rem;
  color: #00b16f;
  font-weight: 700;
}

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

.contactTime ul li{
  font-size: 1.1rem;
  margin-bottom: 1.2rem;
}

.contactTime hr {
  border-top: 2px solid #00b16f;
}

.contactTime a.btn-link {
  border-radius: 1rem;
  background-color: #00b16f;;
  color: #fff;
  text-transform: uppercase;
  padding: 0.4rem 0.5rem;
  text-decoration: none;
}

.contactTime a.btn-link:hover {
  text-decoration: none;
}

.contactTime .horarios p {
  font-size: 1rem;
  line-height: 1.4rem;
  margin-bottom: 0.2rem;
}

.contactTime .horarios p strong {
  color: #00b16f
}

/*** FORMULARIO ***/

.nf-before-form-content {
  display: none;
}

.nf-form-cont h3 {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  color: #00b16f;
  text-transform: uppercase;
}

.nf-form-cont .nf-field-label {
  display: none;
}

.nf-form-cont .nf-form-fields-required {
  text-align: center;
}

.nf-form-cont .nf-field-element .ninja-forms-field {
  background-color: #fff;
  border: none;
  border-bottom: 2px solid #00b16f;
}

.nf-form-cont .nf-field-element textarea.ninja-forms-field {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.nf-form-cont .submit-container {
  text-align: right;
  position: relative;
  top: -30px;
}

.nf-form-cont .submit-container .nf-field input {
  border-radius: 1rem;
  background-color: #00b16f;
  color: #fff;
  text-transform: uppercase;
}

.nf-response-msg {
  padding: 75px;
}
.html-container.todos-container,
.nf-field-container.consulta-container {
  margin-bottom: 0;
}

.todos-container p {
  font-size: 1rem;
}

.btn-whatsapp {
  width: 80px;
  height: auto;
  position: fixed;
  bottom: 2%;
  right: 1%;
  z-index: 999;
}

.tiktok-feed-button,
.insta-gallery-button {
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
}
.tiktok-feed-feed .tiktok-feed-actions .tiktok-feed-button > svg {
  max-height: 1rem !important;
}
.insta-gallery-feed .insta-gallery-actions .insta-gallery-button > i {
  font-size: 1rem !important;
}

.breadcrumbs {
  font-size: 0.8rem;
  text-transform: uppercase;
}

/* CATEGORÍAS */
.content-area,
.archive .products {
  min-height: 60vh;
}

.main-cats {
  margin-top: 1rem !important;
  display: flex;
  align-items: baseline;
  width: 100%;
  padding: 0;
}

.main-cats li {
  transform: skewX(30deg);
  margin-left: 3px;
}

.main-cats span {
  transform: skewX(150deg);
  display: block;
}

.main-cats li a {
  color: #fff;
  font-weight: 700;
  padding: 0.3rem 2rem;
  display: inline-block;
  background-color:#00b16f;
  border-bottom: 2px solid #00b16f;
}

.main-cats li.active h1 {
  background-color:#fff;
  border-top: 2px solid #00b16f;
  border-right: 2px solid #00b16f;
  margin-left: 0;
  padding-top: 0.3rem;
  padding-bottom: 0.3rem;
  padding-left: 0;
  padding-right: 1.2rem;
}

.main-cats li.active h1 a {
  font-size: 2rem;
  text-transform: uppercase;
  color: #00b16f;
  font-weight: 700;
  background-color: transparent;
  border-top: none;
  border-right: none;
  border-bottom: none;
  padding: 0;
  margin: 0;
}


.main-cats li.active h1 span {
  margin-left: -1rem;
}

.main-cats li:first-child {
  margin-left: 32px;
}

.main-cats li.line {
  border-bottom: 2px solid #00b16f;
  width: 100%;
  min-height: 24px;
  transform: none;
  position: relative;
  bottom: -5px;
} 

.main-cats li.line a {
  border: none;
  background-color: transparent;
}


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

.menu-cat li a {
  color: #6f6d6d;
  font-size: 0.9rem;
  font-weight: 600;
  text-transform: uppercase;
}

.menu-cat li.current-cat > a {
  color: #00b16f;
}

.menu-cat li .children {
  display: none;
  padding-left: 1rem;
}

.menu-cat li.current-cat .children,
.menu-cat li.current-cat-parent .children {
  display: block;
}

.list-cat {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 160px));
  grid-auto-flow: dense;
  grid-gap: 1.5px;
}

.list-cat > a {
  background-color: #00b16f;
  grid-column: span 3, autofit;
  position: relative;
  max-width: 160px;
  min-height: 160px;
  display: inline-block;
  overflow: hidden;
}

.list-cat > a h3 {
  color: #fff;
  font-size: 0.8rem;
  margin: 0;
  position: absolute;
  bottom: 0;
  text-align: center;
  width: 100%;
  background-color: #000000a6;
  padding: 0.2rem;
  text-transform: uppercase;
}

.list-cat a img {
  transform: scale(1,1);
  transition: all 0.5s ease;
}

.list-cat a:hover img { 
  transform: scale(1.2,1.2);
}

.breadcrumb_last {
  font-weight: 700;
}

.products-list h4 {
  font-size: 0.8rem;
  color: #00b16f;
  text-align: center;
  text-transform: uppercase;
}

.products-list p {
  font-size: 0.8rem;
}

.products-list a {
  display: inline-block;
  text-decoration: none;
  text-align: center;
}

.products-list a .image {
  overflow: hidden;
}

.products-list a img {
  transform: scale(1,1);
  transition: all 0.5s ease;
  max-height: 150px;
}

.products-list a:hover img { 
  transform: scale(1.2,1.2);
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: #00b16f;
}

.woocommerce-message,
.woocommerce-info {
    border-top-color: #00b16f;
}

.woocommerce div.product .product_title {
  font-size: 1.8rem;
  color: #00b16f;
  font-weight: 700;
  text-transform: uppercase;
}

.woocommerce div.product .variations {

}

.woocommerce div.product .variations .label {
  font-weight: 400;
  color: #00b16f;
}

.woocommerce div.product .variations tr {
  display: flex;
  flex-direction: column;
}

.woocommerce div.product .variations tr td{ 
  width: 100%;
}

.woocommerce div.product .variations tr td select {
  border: 1px solid #ccc;
  padding: 0.5rem;
}

.woocommerce div.product .price {
  display: none;
}

.related h2 {
  font-size: 1.6rem;
  background: #00b16f;
  text-transform: uppercase;
  height:1px;
  margin-top:10px;
  text-align: center;
}
.related h2 span{ 
  color:#00b16f;
  background: #fff;
  padding:10px;
  position:relative;
  top:-0.8rem;
}

.yith_ywraq_add_item_browse_message a {
	display: inline-block;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid transparent;
	padding: .375rem .75rem;
	font-size: 1rem;
	line-height: 1.5;
	border-radius: .25rem;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.btn-mas-productos,
.yith_ywraq_add_item_browse_message a {
	border-radius: 1rem;
	background-color: #00b16f;
	color: #fff;
	text-transform: uppercase;
	padding: 0.4rem 0.5rem;
	text-decoration: none;
}

.ywraq-form-table-wrapper
.shop_table_responsive
.product-subtotal {
  display: none;
}

#request-quote-cart {
  right: 1rem;
  bottom: -5rem;
  position: absolute;
}

#request-quote-cart a {
  font-size: .8rem;
  color: #fff;
  font-weight: 700;
  display: block;
  text-decoration: none;
  background-color: #fff;
  padding: .6rem;
  border-radius: 3rem;
  line-height: .8rem;
  border: 2px solid #00b16f;
}

#request-quote-cart a .badge {
	position: absolute;
	top: -4px;
	right: -4px;
	background-color: #00b16f;
	font-size: 0.8rem;
	padding: .4em .6em;
	border-radius: 1rem;
}

#request-quote-cart a img {
  width: 40px;
  transition: width .15s ease-in-out;
}

#request-quote-cart a:hover {
  -webkit-box-shadow: 5px 5px 2px 2px rgba(0,0,0,0.1);
  -moz-box-shadow: 5px 5px 2px 2px rgba(0,0,0,0.1);
  box-shadow: 5px 5px 2px 2px rgba(0,0,0,0.1);
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

#request-quote-cart a:hover img {
  width: 42px;
}

.easyzoom-flyout{  
    background:#fff;
    color:#333;
    position:absolute;
    top:0;
    left:0;
    overflow:hidden;
    /* vertical and horizontal alignment used for preloader text */
    line-height:400px;
    text-align:center;
    cursor: grabbing;
}

.easyzoom-flyout img { 
  max-width: initial !important;
  width: initial !important;
  height: initial !important;
}