
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');



:root {
    --base-color: #ea530e;
    --base-color2: #d6d1ca;
    --medium-gray: #7b7a7a; 
    --dark-gray: #3d3d3c;
    --light-medium-gray: #d6d1ca;
    --charcoal-blue: #232323;
    --alt-font: 'Montserrat', sans-serif;
    --primary-font: 'Montserrat', sans-serif;
}
 
body {
    font-size: 16px;
    line-height: 27px; 
    
} 
.opacity-extra-medium {
    opacity: 0.6;
}
.bg-gradient-bottom-dark-transparent {
   
	
	background-image: linear-gradient(to bottom, #000000, rgb(0 0 0 / 38%), rgba(37, 44, 62, 0.42), rgba(37, 44, 62, 0), rgba(37, 44, 62, 0));
	
}

.navbar .navbar-nav .simple-dropdown .dropdown-menu li {
    padding: 0;
}

@media (max-width: 991px) {
    [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner .navbar-nav .nav-item .dropdown-toggle {
        color: #585857;
        top: 10px;
        right: 0;
    }
}

.portfolio-slider .portfolio-box:hover {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.border-base-color{
	border-color:  var(--base-color)!important;
}
.text h1 {font-size: 40px;font-weight: 600;line-height: 42px;} 


 
.opacity-medium {
    opacity: 0.7;
}

.overlay-bg {
    position: absolute;
    height: 100%;
    width: 100%;
    opacity: 1;
    top: 0;
    left: 0;
    z-index: 0;
}


.bg-degradat{
	background: #F47722;
background: -webkit-linear-gradient(180deg, rgba(244, 119, 34, 1) 15%, rgba(250, 146, 77, 1) 100%);
background: -moz-linear-gradient(180deg, rgba(244, 119, 34, 1) 15%, rgba(250, 146, 77, 1) 100%);
background: linear-gradient(180deg, rgba(244, 119, 34, 1) 15%, rgba(250, 146, 77, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#F47722", endColorstr="#FA924D", GradientType=0);
}

.extra-large-icon li {
    margin: 0;
}

.navbar .navbar-nav .dropdown .dropdown-menu li a {
    padding-left: 0;
    color: var(--dark-gray) !important;
}

.navbar .navbar-nav .dropdown .dropdown-menu li a:hover {
    padding-left: 0;
    color: var(--base-color) !important;
}

.navbar .navbar-nav .dropdown .dropdown-menu .navbar .navbar-nav .nav-item:hover .nav-link, .navbar .navbar-nav .nav-item.active .nav-link { 
color: RED;}


.text-base-color{ color: var(--base-color);
}


header.sticky.sticky-active [data-header-hover=light] .widget-text, header.sticky.sticky-active [data-header-hover=light] .widget-text a {
    color: #ffffff;
}



.btn.btn-blau{
    background-color: #00bca0;
    color: var(--white);
    }


.btn.btn-blau:hover,btn.btn-blau:active{
    background: #00bca0;
    color: var(--white);
    border-color: #00bca0;
}

.btn.btn-dark-gray {
    background-color: var(--base-color2);
    color: var(--white);
}

.btn.btn-box-shadow.btn-dark-gray:hover, .btn.btn-box-shadow.btn-dark-gray:active {
    background: var(--base-color2);
    color: var(--white);
    border-color: var(--base-color2);
}


.bg-base-color2 {
    background-color: var(--base-color2);
}


header.sticky.sticky-active .header-reverse .header-icon .icon > a {
    color: var(--dark-gray);
}



@media (max-width: 991px) {
    header .navbar-brand .mobile-logo {
        visibility: visible !important;
        opacity: 1 !important;
        width: auto !important;
        max-height: 55px;
    }
	
	 [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner .navbar-nav .nav-item.active .nav-link {
        opacity: 1;
        color: var(--base-color);
    }
	
	
	    [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner .navbar-nav .nav-item:hover .nav-link {
        color: var(--base-color);
    }
}




@media (max-width: 991px) {
    [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner .navbar-nav .nav-item .nav-link {
        display: inline-block;
        line-height: 25px;
        font-size: 17px;
        font-weight: 500;
        color: var(--dark-gray);
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}
 

.box {
    height: 270px;
    overflow: hidden;
}

@supports (object-fit: cover){
.box img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.box img {
    width: 100%;
 
}
	
}



.box2 {
    height: 400px; 
    overflow: hidden;
}

@supports (object-fit: cover){
.box2 img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.box2 img {
    width: 100%;
 
}
	
}






.hamburger-menu-simple .menu-item-list .nav-link {
    font-size: 25px;
    line-height: 34px;
    left: 0;
    color: var(--dark-gray);
    padding: 0;
    margin: 6px;
}
 

.btn.btn-base-color {
    color: var(--white);
}
.btn.btn-base-color {
    background-color: var(--base-color);
    color: var(--white);
}



.opacity-menu {background: #000000;background: linear-gradient(to bottom, #000000, rgb(0 0 0 / 38%), rgba(37, 44, 62, 0.42), rgba(37, 44, 62, 0), rgba(37, 44, 62, 0));}


.outside-box-top-95px {
    margin-top: -95px;
}


@media (hover: hover) and (pointer: fine) {
    .custom-cursor .circle-cursor-inner {
        width: 20px;
        height: 20px;
        left: -5px;
        cursor: help;
        display: none;
        top: -5px;
        background: var(--dark-gray);
    }
}

.bg-groc{background-color: var(--white);}

@media (hover: hover) and (pointer: fine) {
    .custom-cursor .circle-cursor-outer {
        margin-left: -15px;
        margin-top: -15px;
        width: 30px;
        display: none;
        height: 30px;
        border: 1px solid var(--base-color);
        z-index: 10000000;
        opacity: 0.8;
        -webkit-transition: 0.1s;
        transition: 0.1s;
    }
}


@media (max-width: 991px) {
	

    .navbar .navbar-nav .dropdown .dropdown-menu li, .navbar-modern-inner .navbar-nav .dropdown .dropdown-menu li, .navbar-full-screen-menu-inner .navbar-nav .dropdown .dropdown-menu li {
        padding: 0 15px 0;
        text-align: center;
    }

	
	
	
    [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner .navbar-nav .nav-item .dropdown-menu a {
        color: #3d3d3c;
        opacity: 1;
        font-size: 17px;
        line-height: 17px;
        text-align: center;
    }
}
@media (max-width: 991px) {
    .navbar.bg-transparent, .navbar-modern-inner.bg-transparent, .navbar-full-screen-menu-inner.bg-transparent {
        background-color: #ffffff !important;
    }
}

    .navbar-collapse-show[data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner {
        top: 0;
        visibility: visible !important;
        transition: all 0.2s ease-in;
        transition-delay: 0.2s;
    }


header.sticky .navbar-brand {
    padding: 20px 0 20px 0;
}





header.sticky.sticky-active .header-reverse .header-push-button .push-button span {
	background: var(--dark-gray);
	}




header.sticky.sticky-active .header-reverse {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    border-color: transparent !important;
    background-color: #ffffff !important;
    box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
}

@media (max-width: 991px) {
    .navbar.header-dark .header-icon .icon > a, .navbar-modern-inner.header-dark .header-icon .icon > a, .navbar-full-screen-menu-inner.header-dark .header-icon .icon > a {
        color: var(--dark-gray);
    }
}
 
a.added_to_cart.wc-forward{display: none;}


.navbar .navbar-nav .dropdown .dropdown-menu a {
    color: var(--medium-gray);
    font-size: 15px;
    line-height: 20px;
    font-weight: 500;
    padding-bottom: 0px;
    display: block;
}
.navbar .navbar-nav .dropdown .dropdown-menu {
    margin: 0;
    padding: 15px 10px 25px 30px;
    width: 250px;
    border: 0;
    top: 100%;
    background-color: #ffffff;
    box-shadow: 0 45px 45px 0 rgba(0, 0, 0, 0.05);
    -webkit-animation: hide-animation 0.5s;
    animation: hide-animation 0.5s;
    -webkit-border-radius: 0;
    border-radius: 5px;
}
header .header-top-bar + .navbar {
    -webkit-transition: 0.3s;
    transition: 0.3s;
	top: 30px;}

.text ul{}
.text li{
    list-style: disc;
    list-style-position: inside;
}

.text h2{
    font-size: 28px;
    line-height: 36px;
    font-weight: 500;
}

.docs {
    background-color: #accee5;
    color: #2b2b2b;
    font-size: 17px;
    padding: 18px 30px;
    margin-top: 30px;
    border: 1px solid #3f3f3f;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
}


.docs:hover {
    background-color: #e4f3fd;
    color: #2b2b2b;
    font-size: 17px;
    padding: 18px 30px;
    margin-top: 30px;
    border: 1px solid #3f3f3f;
}


.t-shadow{text-shadow: 0px 0px 10px #000000ba;}
.navbar .navbar-nav .nav-item:hover .nav-link, .navbar .navbar-nav .nav-item.active .nav-link {
    opacity: 1;
    color: var(--base-color);
}
.bg-2{background-color: #AEACE6;}

.sticky-wrap a {
    color: #bdbdbd !important;
}

.navbar .navbar-nav .nav-link {
    font-weight: 700;
    font-size: 15px;
    padding: 10px 15px;
}








input.numero {
   
    height: 61px;

}



.header-cart-icon .header-cart .cart-item-list {
    display: none;
    left: auto;
    right: 0;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.1);
    border-radius: 0;
    background-color: #ffffff;
    border: 0;
    padding: 0;
    min-width: 250px;
    margin: 0;
    position: absolute; 
    border-radius: 6px;
    padding: 10px 30px 25px;
    min-width: 260px;
    z-index: 1;
    top: 100%;
}



input, select, textarea, .form-control, .form-select {
    /* padding: 6px 15px; */
    width: 100%;
    max-width: 100%;
    resize: none;
    margin-bottom: 18px;
    outline: none;
    border-radius: 8px;
    font-size: 16px;
    border: 1px solid #e4e4e4;
    color: var(--medium-gray);
    line-height: inherit;
    word-break: normal;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

a:hover {
    color: #7cafd3;
    text-decoration: none;
}



.text-base-color2, .btn-link.text-base-color2 {
    color: var(--base-color2);
}

.icon-with-text-style-10 .feature-box-icon:before {
    width: 100%;
    height: 50%;
    background-color: #accee5;
    opacity: 0.12;
    z-index: -1;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transform: rotate(-40deg);
    -ms-transform: rotate(-40deg);
    transform: rotate(-40deg);
    -webkit-transform-origin: bottom center;
    -ms-transform-origin: bottom center;
    transform-origin: bottom center;
    -webkit-transition: 0.4s cubic-bezier(0.12, 0, 0.39, 0);
    transition: 0.4s cubic-bezier(0.12, 0, 0.39, 0);
}

.icon-with-text-style-10:hover .feature-box-icon i {
    color: #ffffff;
}


.accept{width: inherit;}

#cmplz-document, .editor-styles-wrapper .cmplz-unlinked-mode {
    font-size: 14px;
    margin-top: 0;
    max-width: none;
    text-justify: inter-word;
}



.anima img{-webkit-transition: all 750ms cubic-bezier(.12,0,.39,0);
    transition: all 750ms cubic-bezier(.12,0,.39,0);
    will-change: transform;}


.anima img:hover {
    -webkit-transform: scale(1.1);
    transform: scale(0.90);
}

.btn-gradient-fuel-yellow-blue {
    background-image: linear-gradient(to right, #1c2e50, #354e7d, #1c2e50);
    background-size: 200% auto;
    color: var(--white);
} 
.fs-22 {
    font-size: 22px;
    line-height: 31px;
}

.counter-style-04 .vertical-counter:before {
    content: attr(data-text); 
    display: inline-block;
    margin-left: 3px;
    word-break: normal;
}
 
.counter-style-04 .vertical-counter:after {
    content: attr(data-text2);
    display: inline-block; 
    margin-left: 3px;
    font-size: 30px;
    padding-top: 13px;
    padding-left: 7px;
    line-height: 28px;
    word-break: normal;
}


.bt-sleeve{
    background-color: #a22136 !important;!i;!;
    border: none;
    background: rgb(232,81,112);
    background: -moz-linear-gradient(0deg, rgba(232,81,112,1) 0%, rgba(170,16,52,1) 68%);
    background: -webkit-linear-gradient(0deg, rgba(232,81,112,1) 0%, rgba(170,16,52,1) 68%);
    background: linear-gradient(0deg, rgba(232,81,112,1) 0%, rgba(170,16,52,1) 68%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e85170",endColorstr="#aa1034",GradientType=1);
}
.bt-adco{
    background-color: #093d85 !important;!i;!;
    border: none;
    background: rgb(132,196,179);
    background: -moz-linear-gradient(0deg, rgba(132,196,179,1) 0%, rgba(20,77,146,1) 68%);
    background: -webkit-linear-gradient(0deg, rgba(132,196,179,1) 0%, rgba(20,77,146,1) 68%);
    background: linear-gradient(0deg, rgba(132,196,179,1) 0%, rgba(20,77,146,1) 68%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#84c4b3",endColorstr="#144d92",GradientType=1);
}
.bt-bol{
    background-color: #ff5200 !important;!i;!;
    border: none;
    background: rgb(248,233,104);
    background: -moz-linear-gradient(0deg, rgba(248,233,104,1) 0%, rgba(234,95,10,1) 68%);
    background: -webkit-linear-gradient(0deg, rgba(248,233,104,1) 0%, rgba(234,95,10,1) 68%);
    background: linear-gradient(0deg, rgba(248,233,104,1) 0%, rgba(234,95,10,1) 68%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f8e968",endColorstr="#ea5f0a",GradientType=1);
    }

.bg-blaus{background-image: linear-gradient(to right, #9cc7b4, #4762a8, #9cc7b4);}

 
.bg-blau{
    background-color: #accee5;
}

.btn i {
    position: relative;
    /* right: -30px; */
}

footer .footer-logo img {
    max-height: 40px;
}

.text-verd{color: #9cc7b4;}
.text-blau{color: #accee5;}

h1, .h1 {
    font-size: 3.375rem;
    line-height: 4.375rem;
}

h1, .h1 {
    line-height: 3.5rem;
}


.sticky-wrap.shadow-in {
    left: 20px;
    opacity: 1;
    box-shadow: none !important;
    /* transform: translateY(-50%); */
    color: beige;
    mix-blend-mode: difference;
}



.navbar .navbar-nav .nav-link {
    font-size: 16px;
    font-weight: 500;
}
 
.btn.btn-transparent-light-gray {
    background-color: #accee5;
    border-color: var(--extra-medium-gray);
    color: white;
}
header .navbar-brand {
    margin-right: 0;
    vertical-align: middle;
    padding: 20px 0 20px 0;
    display: inline-block;
    font-size: 0;
}

header .navbar-brand img {
    max-height: 65px;
}


.main-content {
    position: relative;
    z-index: 2;
    /* background: #ecebe7; */
}


.box-h {
    height: 450px;
    overflow: hidden;
}

@supports (object-fit: cover){
.box-h img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.box-h img {
    width: 100%;
 
}
	
}




.box-v {
    height: 200px; 
    overflow: hidden;
}

@supports (object-fit: cover){
.box-v img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.box-v img {
    width: 100%;
 
}
	
}







footer a {
    color: #D7D7D7;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    text-decoration: none;
}


footer{background-color: #141414;}

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-border-width: var(--bs-border-width);
    --bs-card-border-color: var(--bs-border-color-translucent);
    --bs-card-border-radius: var(--bs-border-radius);
    --bs-card-inner-border-radius: calc(var(--bs-border-radius) -(var(--bs-border-width)));
    --bs-card-cap-padding-y: 0.5rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
    --bs-card-bg: var(--bs-body-bg);
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 0.75rem;
    display: flex;
    min-width: 0;
    height: var(--bs-card-height);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: none;
    border-radius: inherit;
}





.um a.um-button, .um a.um-button.um-disabled:active, .um a.um-button.um-disabled:focus, .um a.um-button.um-disabled:hover, .um input[type=submit].um-button, .um input[type=submit].um-button:focus {
    background: #accee5;
}


.um a.um-button:hover, .um input[type=submit].um-button:hover {
    background-color: #77a6c5;
}











.form-control {
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #9b9b9b;
    color: #434343; /* o el color que quieras */
}

.bg-transparent {
    background-color: transparent;
}



input::placeholder {

  opacity: 0.9;

}

.placeholder-light::placeholder {
    color: rgba(255, 255, 255, 0.1); /* Placeholder en color claro */
}

.border-color-transparent-white-very-light {
    border-color: rgba(255, 255, 255, 0.3); /* Borde claro */
}



.gm-style .gm-style-iw-c {
    padding: 15px 20px 20px 20px!important;
    border-radius: 0;
    max-width: 330px !important;
    -webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}

.gm-style .gm-style-iw-tc::after {
    background: #ffffff;
}


.gm-ui-hover-effect {
    opacity: 0.8;
    top: -5px !important;
    right: -23px !important;
    width: 25px !important;
    display: block !important;
    height: 15px !important;
}


.gm-ui-hover-effect>span {
    background-color: #000;
    margin: 0 !important;
    height: 18px !important;
}

.bg-color{background: rgb(150,193,181);background: -moz-linear-gradient(90deg, rgba(150,193,181,1) 0%, rgba(112,150,182,1) 47%, rgba(71,98,167,1) 100%);background: -webkit-linear-gradient(360deg, rgba(150, 193, 181, 1) 0%, rgba(112, 150, 182, 1) 47%, rgba(71, 98, 167, 1) 100%);background: linear-gradient(360deg, rgba(150, 193, 181, 1) 0%, rgba(112, 150, 182, 1) 47%, rgba(71, 98, 167, 1) 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#96c1b5",endColorstr="#4762a7",GradientType=1);}


.header-cart-icon .header-cart {
    display: inline-block;
    padding: 0;
}



.header-cart-icon .cart-count {
    position: absolute;
    top: -7px;
    right: 4px;
    width: 17px;
    height: 17px;
    font-weight: 600;
    text-align: center;
    font-size: 10px;
    line-height: 18px;
    font-weight: 600;
    background-color: #ffffff;
    color: var(--base-color);
    -webkit-border-radius: 100%;
    border-radius: 100%;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}






button[name="update_cart"] {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

					
div.uimob500 .um-col-121, div.uimob500 .um-col-122, div.uimob500 .um-col-131, div.uimob500 .um-col-132, div.uimob500 .um-col-133 {
float: left;
    width: auto;
    margin: 2px;
}
					
@media (max-width: 991px) {		
	div.uimob500 .um-col-121, div.uimob500 .um-col-122, div.uimob500 .um-col-131, div.uimob500 .um-col-132, div.uimob500 .um-col-133 {
					float: left;
    width: 100%;
    margin: 2px;
}
	
					}

.um .um-field.meva-classe input {
  background-color: #f5f5f5;
  border: 2px solid #ccc;
}


button[name="update_cart"] {
    display: none !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)) .woocommerce #respond input#submit, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button {
   background-color: var(--dark-gray);
   color: #fff !important;
   border-radius: 4px;
   width: auto !important;
   text-transform: uppercase;
   margin-top: 30px;
   font-size: 15px;
   border: 2px solid transparent !important;
   font-size: 14px !important;
   padding: 18px 34px !important;
   font-size: 14px;
   padding: 18px 34px;
   -webkit-transition: all 300ms ease-in-out !important;
   transition: all 300ms ease-in-out !important;
   font-weight: 400;
   border: none;
}


.woocommerce .row{}




.woocommerce form .form-row .required {
    color: #ae4224;
    font-weight: 700;
    border: 0 !important;
    text-decoration: none;
    visibility: hidden;
}

.woocommerce-info {
    border-top-color: #9b8568;
}


.woocommerce-info::before {
    color: #9b8568;
}


.woocommerce .quantity .qty {
    width: 6.631em;
    text-align: center;
}

.woocommerce form .form-row {
    padding: 3px;
    margin: 0 0 6px;
    display: block;
}

.woocommerce .woocommerce-additional-fields h3 {
    margin-top: 0;
}

.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1, .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
    max-width: unset;
}


#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
    content: "";
    display: block;
    border: 1em solid #cdc6bd;
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
    position: absolute;
    top: -0.75em;
    left: 0;
    margin: -1em 0 0 2em;
}

#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 1em;
    margin: 1em 0;
    font-size: .92em;
    border-radius: 2px;
    line-height: 1.5;
    background-color: #cdc6bd;
    color: #515151;
}

#add_payment_method #payment ul.payment_methods, .woocommerce-cart #payment ul.payment_methods, .woocommerce-checkout #payment ul.payment_methods {
    text-align: left;
    padding: 1em;
    border-bottom: 1px solid #cfc8d8;
    margin: 0;
    list-style: none outside;
}


#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    background: #f6f5f8;
    border-radius: 5px;
}

.woocommerce #content table.cart img, .woocommerce table.cart img, .woocommerce-page #content table.cart img, .woocommerce-page table.cart img {
    height: auto;
    width: 160px;
}

.woocommerce-cart-form{margin-top: 50px;}

.wpml-ls-legacy-list-horizontal {
    border: 0;
    padding: 0px;
    clear: both;
    display: inline-block;
}


.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
    border: 1px solid #cfc8d8;
    padding: 20px;
    margin: 0;
    text-align: left;
    border-radius: 5px;
}

.woocommerce .woocommerce-customer-details, .woocommerce .woocommerce-order-details, .woocommerce .woocommerce-order-downloads {
    margin-bottom: 2em;
    padding: 0;
}


.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
    background-color: #ae4224;
    color: #fff;
    -webkit-font-smoothing: antialiased;
}


.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
    background-color: #ae4224b3;
    color: #fff;
}

.single_add_to_cart_button[type=button]:not(:disabled), .single_add_to_cart_button[type=reset]:not(:disabled), .single_add_to_cart_button[type=submit]:not(:disabled), .single_add_to_cart_button button:not(:disabled) {
    cursor: pointer;
    font-size: 13px !important;
    letter-spacing: 1px !important;
    background: #b24725 !important;
    border-color: #b24725 !important;
    color: #ffffff !important;
    border: 2px solid !important;
    /* font-size: 11px !important; */
    letter-spacing: 0.5px !important;
    padding: 10px 24px !important;
    text-transform: uppercase;
    font-weight: 500 !important;
}

.woocommerce .woocommerce-customer-details .additional-fields:last-child, .woocommerce .woocommerce-customer-details .addresses:last-child {
    margin-bottom: 0;
    padding: 0;
}



.woocommerce-billing-fields h3, .woocommerce-additional-fields h3, h3.perso, h3#order_review_heading, legend, .woocommerce-Address-title h3, .cart_totals h2, .woocommerce h2{
	border: 0;
	border-radius: 0;
	font-size: 25px;
	margin: 0;
	color: #7ba3bb;
	padding: 20px 0px;
	font-weight: 500;
	vertical-align: baseline;
	word-break: break-word;
}



.woocommerce .cart .button, .woocommerce .cart input.button {
    float: none;
    margin: 0;
    padding: 10px 22px !important;
    background-color: #80a7be;
}

.woocommerce-form-login input{
    padding: 0px;
    width: 19px;
    height: 12px;

	
}

 

.woocommerce-message {
    border-top-color: #b8d354;
}
.woocommerce-error, .woocommerce-info, .woocommerce-message {
    padding: 1em 2em 1em 3.5em;
    margin: 0 0 2em;
    position: relative;
    background-color: #fbfbfb;
    border: 1px solid #ddd;
    color: #515151;
    border-top: 3px solid #720eec;
    list-style: none outside; 
    width: auto;
    word-wrap: break-word;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
    display: block;
}

.woocommerce-MyAccount-navigation{
    padding: 0;
    background-color: #f9f9f9;
}


.woocommerce form .form-row::after, .woocommerce form .form-row::before, .woocommerce-page form .form-row::after, .woocommerce-page form .form-row::before {
    content: " ";
    display: table;
}



.woocommerce .cart .button:hover, .woocommerce .cart input.button:hover {
    float: none;
    margin: 0;
    padding: 10px 22px !important;
    background-color: transparent;
    color: #80a7be !important;
    border-color: #80a7be !important;
}


.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button:hover {
    background-color: #dcd7e300;
    text-decoration: none;
    background-image: none;
    border: 2px solid var(--dark-gray) !important;
    color: var(--dark-gray) !important;
}


.wc-block-components-form .wc-block-components-text-input input[type=email], .wc-block-components-form .wc-block-components-text-input input[type=number], .wc-block-components-form .wc-block-components-text-input input[type=password], .wc-block-components-form .wc-block-components-text-input input[type=tel], .wc-block-components-form .wc-block-components-text-input input[type=text], .wc-block-components-form .wc-block-components-text-input input[type=url], .wc-block-components-text-input input[type=email], .wc-block-components-text-input input[type=number], .wc-block-components-text-input input[type=password], .wc-block-components-text-input input[type=tel], .wc-block-components-text-input input[type=text], .wc-block-components-text-input input[type=url] {
    border: 1px solid #aaaaaa !important;
    
}

.wc-blocks-components-select .wc-blocks-components-select__select {

    border: 1px solid #aaaaaa !important;
   
}

.wp-block-woocommerce-checkout-order-summary-block {
    /* border: 1px solid hsla(0, 0%, 7%, .11); */
    border-radius: 5px;
    background-color: #f7f7f7;
    padding: 25px 10px;
}


.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #444;
    line-height: normal;
}
.select2-container .select2-selection--single {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    height: auto;
    user-select: none;
    -webkit-user-select: none;
}

.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
    font-family: inherit;
    font-weight: 400;
    letter-spacing: normal;
    padding: .5em;
    display: block;
    background-color: var(--wc-form-color-background, #fff);
    border: var(--wc-form-border-width) solid rgb(170 170 170);
    border-radius: var(--wc-form-border-radius);
    color: var(--wc-form-color-text, #000);
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    line-height: normal;
    height: auto;
}



/* === ESTILS DEL MENÃƒÆ’Ã†â€™Ãƒâ€¦Ã‚Â¡ === */
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-MyAccount-navigation ul li {
  margin-bottom: 5px;
  list-style: none;
}

.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px 15px;
  border-radius: 6px;
  color: #333;
  text-decoration: none;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
  background-color: #87acc5;
  color: #fff;
}

/* === RESPONSIVE === */
@media screen and (max-width: 768px) {
  .woocommerce-account .woocommerce {
    flex-direction: column;
  }

  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content {
    width: 100%;
  }

  .woocommerce-MyAccount-navigation {
    order: 0;
    margin-bottom: 20px;
  }

  .woocommerce-MyAccount-content {
    order: 1;
  }
}



/* NomÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â©s el botÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³ principal de "Realitzar pedido" al Checkout per blocs */
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button {
  background-color: #333 !important;
  color: white !important;
  border-radius: 12px !important;
  padding: 12px 25px !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  display: table !important;
  margin: 0 auto 15px auto !important;
}

/* Efecte hover */
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button:hover {
  background-color: #111 !important;
}



.wc-block-components-checkout-place-order-button {
    background-color: var(--dark-gray); /* Fons fosc */
    color: #fff !important;
    border-radius: 4px;
    width: auto !important;
    text-transform: uppercase;
    font-size: 15px;
    border: 2px solid transparent !important;
    font-size: 14px !important;
    padding: 18px 34px !important;
    font-size: 14px;
    padding: 18px 34px;
    -webkit-transition: all 300ms ease-in-out !important;
    transition: all 300ms ease-in-out !important;
    font-weight: 400;
    border: none;
}

.wc-block-components-checkout-place-order-button:hover {
    background-color: white;
    color: var(--dark-gray) !important;
    border: 2px solid var(--dark-gray) !important;
    box-shadow: 0 6px 14px rgba(0,0,0,0.2);
}

.wc-block-components-checkout-place-order-button__text {
    display: inline-block;
}

.wc-block-components-button__text {
    display: flex;
    align-items: center;
    justify-content: center;
}


.wc-block-components-totals-coupon__button{    background-color: #7ba3bb;
    color: rgb(0, 0, 0);
    transition: 300ms ease-in-out;
    color: #fff;
    border: 2px solid #7ba3bb !important;
    -webkit-transition: all 300ms ease-in-out !important;
    transition: all 300ms ease-in-out !important;}


.wc-block-components-totals-coupon__button:hover{    background-color: transparent;
 
    transition: 300ms ease-in-out;
    color: #7ba3bb;
    border: 2px solid #7ba3bb !important;}












/* Formularis */ 



/* Formularis */





.wpcf7-spinner {
    /* visibility: hidden; */
    display: inline-block;
    background-color: #23282d;
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 24px;
    position: relative;
    display: flow;
    margin: 0 auto;
}





.formu p {margin: 0;}
.formu br { display:none; } /* per si queda algun <br> despistat */
.formu {--b: #676767;--b-focus: #000000;--icon:#999;font-size: 16px;}

.formu .cf7-est{/* max-width:620px; */}

/* cada camp */
.formu .field{/* margin:20px 0; */position:relative;}

/* label */
.formu label{display:block;font-weight: 500;margin-bottom:10px;font-size: 16px;line-height: 21px;}

/* inputs */
.formu .input,
.formu input[type="text"],
.formu input[type="email"],
.formu input[type="tel"],
.formu textarea{
  width:100%;
  /* padding: 14px 16px; */
  padding-left: 24px;   /* espai reservat per la icona */
  /* border:1px solid var(--b); */
  background:#fff;
  /* margin-bottom: 30px; */
  font-size:16px;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
  box-sizing:border-box;
}

.formu .input:focus,
.formu input[type="text"]:focus,
.formu input[type="email"]:focus,
.formu input[type="tel"]:focus,
.formu textarea:focus{
  border-color:var(--b-focus);
  box-shadow:0 0 0 3px rgba(0,0,0,.05);
}

/* ---- ICONES AMB ::BEFORE AL WRAP DE CF7 ---- */
/* el wrap de CF7 ÃƒÆ’Ã‚Â©s el <span class="wpcf7-form-control-wrap"> */
.formu .field .wpcf7-form-control-wrap{
  position:relative;   /* ÃƒÆ’Ã‚Â ncora pel ::before */
  display:block;       /* assegurar que ocupa ample del camp */
}


/* icones especÃƒÆ’Ã‚Â­fiques per camp
   (prioritza data-name; CF7 el posa per defecte; 
   si no, queda el fallback per classe del nom del camp) */

/* Nom i cognoms */
.formu .field .wpcf7-form-control-wrap[data-name="est-name"]::before,
.formu .field .wpcf7-form-control-wrap.est-name::before{
	    content: "";
	    height: 19px;
	    left: 16px;
	    position: absolute;
	    top: 28px;
	    transform: translateY(-50%);
	    width: 19px;
	    z-index: 10;
	    background-image:url("../img/fibra/user-solid.svg");
	    background-repeat: no-repeat;
}

/* E-mail */
.formu .field .wpcf7-form-control-wrap[data-name="est-mail"]::before,
.formu .field .wpcf7-form-control-wrap.est-mail::before{
	    content: "";
	    height: 19px;
	    left: 16px;
	    position: absolute;
	    top: 29px;
	    transform: translateY(-50%);
	    width: 19px;
	    z-index: 10;
	    background-image:url("../img/fibra/envelope-solid.svg");
	    background-repeat: no-repeat;
}


/* TelÃƒÆ’Ã‚Â¨fon */
.formu .field .wpcf7-form-control-wrap[data-name="est-phone"]::before,
.formu .field .wpcf7-form-control-wrap.est-phone::before{
	    content: "";
	    height: 22px;
	    left: 16px;
	    position: absolute;
	    top: 29px;
	    transform: translateY(-50%);
	    width: 22px;
	    z-index: 10;
	    background-image:url("../img/fibra/phone-solid-full.svg");
	    background-repeat: no-repeat;
}

/* checkbox group */
.formu .field--choices .field__legend{display:block;font-weight: 500;margin-bottom:12px;}
.formu .wpcf7-list-item{margin-right:22px;display:inline-block;margin-left: 0;}
.formu .wpcf7-list-item label{font-weight: 500;}
.formu label {
  display: flex;
  align-items: flex-start; /* Alinia el checkbox amb la primera lÃƒÂ­nia */
  gap: 8px; /* espai entre checkbox i text */
}

.formu input[type="checkbox"] {
  flex-shrink: 0; /* Evita que el checkbox es redueixi */
  width: 18px;
  height: 18px;
}
.formu .wpcf7-acceptance label {
  
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 20px;
}



/* newsletter i privacitat */
.formu .field--newsletter,
.formu .field--privacy{ margin-top:18px; }
.formu .field--privacy a{ text-decoration:underline; }

/* botÃƒÆ’Ã‚Â³ */
.formu .btn,
.formu input.wpcf7-submit{
  display:inline-block;
  padding:14px 26px;
  background:#000;
  color:#fff;
  /* border:none; */
  border-radius:999px;
  font-weight:600;
  cursor:pointer;
  font-size: 18px;
  text-transform: capitalize;
}
.formu .btn:hover,
.formu input.wpcf7-submit:hover{ opacity:.9; }

/* (opcional) ajust del missatge dÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢error de CF7 perquÃƒÆ’Ã‚Â¨ no ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œempenyiÃƒÂ¢Ã¢â€šÂ¬Ã‚Â lÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢icona */
.formu .wpcf7-not-valid-tip{
  margin-bottom: 18px;      /* separaciÃƒÆ’Ã‚Â³ sota el camp */
  font-size:13px;
  line-height:1.3;
  color:#c00;
}










/*Bases moduls*/




.wrap-image-left{
  float:left;
  margin:0 1.25rem 1rem 0;
  width: min(36%);
  shape-outside: inset(0 round 8px);
}

.wrap-image-right{
  float:right;
  margin:0 0 1rem 1.25rem;
  width:min(36%);

  shape-outside: inset(0 round 8px);
}
 

.text .wrap-image-left li{}
.text .wrap-image-right li{}


.img-text::after{
  content:"";
  display:block; 
  clear:both;
}

@media(max-width:768px){
  .wrap-image-left,
  .wrap-image-right{
    float:none;
    width:100%;
    margin:0 0 1rem 0;
    shape-outside:none;
    display:block;
  }
}


/* Galeria: no alineable Ã¢â€ â€™ sempre flotant a l'esquerra */
.gallery-float-left{
  float: right;
  max-width: min(40%);
  /* margin: 0 1.25rem 1rem 0; */
}

/* Imatge ÃƒÂºnica: alineable via ACF ('Dreta' o esquerra per defecte) */
.wrap-image-left{
  float: left;
  max-width: min(40%, 420px);
  margin: 0 1.25rem 1rem 0;
}
.wrap-image-right{
  float: right;
  max-width: min(40%, 420px);
  margin: 0 0 1rem 1.25rem;
}

/* Envoltar bÃƒÂ© el text quan hi ha floats */
.img-text::after{
  content:"";
  display:block;
  clear:both;
}

/* Hover de la capa de galeria (per si no el tens ja) */
.gallery-image img{ transition: transform .5s ease; }
.gallery-box:hover .gallery-image img{ transform: scale(1.05); }
.gallery-hover{ opacity:0; transition: all .4s ease; }
.gallery-box:hover .gallery-hover{ opacity:1; }

/* Responsive */
@media (max-width: 768px){
  .gallery-float-left,
  .wrap-image-left,
  .wrap-image-right{
    float:none;
    max-width:100%;
    margin:0 0 1rem 0;
  }
}



/* Element flotant perquÃƒÂ¨ el text l'envolti */
.gallery-float {
  float: right;
  width: min(45%, 420px);
  margin: 0 0 1rem 1.5rem;                 /* espai a l'esquerra i sota */
  shape-outside: polygon(100% 0, 100% 100%, 0 100%, 0 17%);
  shape-margin: 12px;
  aspect-ratio: var(--thumb-ratio, 4/3);   /* dona alÃƒÂ§ada abans que carregui la img */
}

/* Retall diagonal tambÃƒÂ© per a l'overlay */
.thumb-clip {
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 17%);
}

/* Imatge dins la targeta */
.thumb-clip img {
  display: block;
  width: 100%;
  height: auto;
}

/* MÃƒÂ²bil/tablet: sense float ni shape; 100% d'ample */
@media (max-width: 991.98px) {
  .gallery-float {
    float: none;
    width: 100%;
    margin: 0 0 1rem 0;
    shape-outside: none;
    aspect-ratio: auto;
  }
  .thumb-clip { clip-path: none; }
}

/* Clearfix per contenidors que tallin floats */
.clearfix::after { content: ""; display: block; clear: both; }








/* ---- Radios i checkboxes alineats correctament ---- */
.wpcf7 form .wpcf7-list-item {
  display: inline-flex;
  align-items: center;
  margin-right: 0; /* espai entre opcions */
  margin-bottom: 8px; /* petita separaciÃ³ vertical per lÃ­nies llargues */
  margin-right: 15px;
  white-space: nowrap; /* evita que el text es talli o baixi sota el cercle */
}

.wpcf7 form .wpcf7-list-item label {
  display: contents;
  align-items: center;
  font-weight: 400;
  cursor: pointer;
}

.wpcf7 form .wpcf7-list-item input[type="radio"],
.wpcf7 form .wpcf7-list-item input[type="checkbox"] {
  margin-right: 5px;
  accent-color: #ea530e; /* color del cercle quan estÃ  seleccionat */
  width: 34px;
  height: 20px;
  margin-bottom: 0;
  flex-shrink: 0;
}

/* ---- Ajust per pantalles petites ---- */
@media (max-width: 600px) {
  .wpcf7 form .wpcf7-list-item {
    display: flex;
    flex-wrap: wrap;
    white-space: normal; /* permet que el text faci salt de lÃ­nia si cal */
  }
}

 








/* Overlay i spinner */
#wc-cart-loading-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.6);
  z-index: 9999;
  display: none;
}

#wc-cart-loading-overlay::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  width: 48px; height: 48px;
  margin-top: -24px;
  margin-left: -24px;
  border: 4px solid #ccc;
  border-top: 4px solid #333;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* Assegurem que el contenidor tingui position: relative */
.wp-block-woocommerce-cart {
  position: relative;
}








.spin {
  animation: spin 1.2s linear infinite;
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}



















/* ===== Scrollbar CSS =====  */


  /* Chrome, Edge, and Safari */
  *::-webkit-scrollbar {
    width: 12px;
  }

  *::-webkit-scrollbar-track {
    background: #ffffff;
  }

  *::-webkit-scrollbar-thumb {
    background-color: var(--base-color2);
    border: 3px solid #ffffff;
    border-radius: 0px;
  }














