@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap');

body, p, h1, h2, h3, h4, h5, h6{font-family: 'Montserrat', sans-serif; text-align: inherit;transition: all 0.4s ease-out;}
body, p {font-size: clamp(14px,1.5vw,18px); line-height: 1.3;transition: all 0.4s ease-out;}
h1, h2 {font-size: clamp(24px,2.5vw,30px); line-height: 1.3em; font-weight: 600;}
.caption h1, .caption h2, .caption h3, .caption h4, .caption h5, .caption h6, .caption p {font-family: 'Montserrat', sans-serif; text-align: inherit;}
a, img, butto, ::after, ::before, input {transition: all 0.4s ease-out;}
:root {
    --dark-blue: #0F2B4E;
	--blue: #00457E;
	--light-blue: #0071BC;
	--brillant-blue: #96c5e3;
	--white-blue: #E5F1F8;
	--red: #FF0000;
	--bg_header_url: url(/imagen_dispositivos/paginas/1/13043/home_slider-l.webp);
	--bg_header_position: top left;
	--bg_header_repeat: no-repeat;
}

/* HEADER */
.cbp-af-header.header-transparent,
.cbp-af-header.header-transparent.cbp-af-header-shrink,
#index .cbp-af-header.header-transparent.cbp-af-header-shrink {
	background: var(--bg_header_url), var(--bg_header_position), var(--bg_header_repeat);
	border-bottom: 0;
}
.cbp-af-header.header-transparent .logo1, .cbp-af-header.header-transparent .logo2 {animation-name: fadeInDown;transition:all 0.500s ease-in-out;}
.cbp-af-header.header-transparent .logo1 {display: none; }
.cbp-af-header.header-transparent.cbp-af-header-shrink .logo2 {display: initial;}
.cbp-af-header.cbp-af-header-shrink .navbar-brand, .navbar-brand {height: 45px;}
.cbp-af-header.header-transparent .ml-auto{margin-left: inherit !important;}
.cbp-af-header.header-transparent .headline::before,
#index .cbp-af-header.header-transparent.cbp-af-header-shrink .headline::before{
    content: "";
    border-top: 3px solid #fff;
    width: 100%;
    bottom: 0;
    margin: 0;
    display: flex;
    position: absolute;
}
#index .cbp-af-header.header-transparent .headline::before {content: none;}
.cbp-af-header.cbp-af-header-shrink .dropdown-menu,
.navbar-expand-lg .navbar-nav .dropdown-menu,
#index .cbp-af-header.header-transparent.cbp-af-header-shrink .navbar-expand-lg .navbar-nav .dropdown-menu {margin-top: 9px !important;}
#index .cbp-af-header.header-transparent {background: transparent;}
#index .cbp-af-header.header-transparent .logo2,
#index .cbp-af-header.header-transparent.cbp-af-header-shrink .logo1 {display: none;}
#index .cbp-af-header.header-transparent .logo1, #index .cbp-af-header.header-transparent.cbp-af-header-shrink .logo2 {display: initial;}
#index .navbar-brand img.logo1 {height: 180px; margin-left: 0;}
#index .cbp-af-header.header-transparent .navbar-expand-lg .navbar-collapse {margin-top: 55px;}
#index .cbp-af-header.header-transparent.cbp-af-header-shrink .navbar-expand-lg .navbar-collapse {margin-top: 0;}

#loginmodule {margin-top: 5px !important;}
#loginmodule .nav-item > a:not(.dropdown-menu a){
	width: auto;
    padding: 0 !important;
    font-size: 14px;
    line-height: 28px;
    font-weight: 500;
    text-transform: initial;
    color: #fff !important;
}
#loginmodule .data{cursor: pointer;}
#loginmodule .nav-item.dropdown:not(.dropdown-menu li) {
	background: rgb(0, 113, 188, 0.3);
    padding: 0 20px 0 0;
    border: 1px solid #fff;
    border-radius: 50px;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    transition: all 0.4s ease-out;
    height: 30px;
	line-height: 28px;
}
#loginmodule .nav-item.dropdown:not(.dropdown-menu li):hover {background: rgb(0, 113, 188, 0.8);}
#loginmodule .nav-item.dropdown:not(.dropdown-menu):hover .fa-user {background: var(--blue);}
#loginmodule .nav-item.dropdown .data{padding-left: 40px;}
#loginmodule .nav-item .dropdown-menu .data {padding: 0 15px;}
#loginmodule .nav-item.dropdown .fa-user {
    color: #fff;
    border: 1px solid #fff;
    height: 28px;
    width: 28px;
    position: absolute;
    top: 0;
    left: -1px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgb(0, 113, 188, 1);
	transition: all 0.4s ease-out;
}
.main-navigation #loginmodule ul li.nav-item ul li.nav-item .nav-link {text-indent: -30px;} 
.carrito {display: inline-block;}
.carrito .link-carrito {
	margin-top: 5px;
	background: rgb(0, 113, 188, 0.3);
    padding: 5px;
    border: 1px solid #fff;
    border-radius: 50%;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    width: 30px;
	height: 30px;
	display: flex !important;
    justify-content: center;
    align-items: center;
	transition: all 0.4s ease-out;
}
.carrito .link-carrito:hover {color: #fff!important; background: var(--blue)!important;}
.top-bar .main-navigation {display: inline-block;}
.top-bar .just-right .row {justify-content: flex-end; align-items: center;}
.top-bar .center {margin: initial;}
.intsocial {justify-content: right !important;}
.social-icons ul {margin: 5px 0;}
.social-icons li {font-size: 16px; margin-right: 8px;}
.social-icons li a {
    color: #fff;
    background: var(--blue);
    width: 28px;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    position: relative;
    display: block;
    line-height: 28px;
    transition: .5s;
}
.social-icons li a:hover {
	color: #fff; 
	background: var(--light-blue);
	box-shadow: 0 0 3px var(--light-blue);
}
.social-icons li a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	z-index: -1;	
	transform: scale(.9);
	background: var(--light-blue);
}
.social-icons li a:hover::before {box-shadow: 0 0 10px var(--light-blue); transform: scale(1.1);}

.navbar {margin: 0;}
.navbar-brand {margin: 0 0 20px 0;}
.navbar-nav::before {
    content: "";
    border-left: 1px solid #fff;
    height: 30px;
    margin: 15px 10px 0 20px;
}
.top-bar .navbar-nav::before {
    content: none;
    border-left: none;
    height: 30px;
    margin: 10px 10px 0 20px;
}
.main-navigation ul li.nav-item {margin: 0 20px 0;display: flex;}
.cbp-af-header.cbp-af-header-shrink .nav-item:last-child, .navbar-nav > .nav-item:last-child {margin-right: 0;}
.nav-item.dropdown a::after {
	content: "\f0d7";
    font-family: FontAwesome;
    margin-left: 2px;
}
.nav-link {font-size: clamp(12px,1.5vw,18px); margin-top: 0; margin-bottom: 0;transition: all 250ms linear;}
.nav-link::before, .nav-link::after {transition: all 250ms linear;}
.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active,
.main-navigation ul li.nav-item button:hover {color: #000 !important;}
.main-navigation ul li.nav-item {border-bottom: 3px solid transparent;}
.main-navigation ul li.nav-item:hover {border-bottom: 3px solid var(--red);}
.main-navigation ul li.nav-item ul li.nav-item {border: 0;}
.main-navigation ul li.nav-item ul li.nav-item:hover, .top-bar .main-navigation ul li.nav-item, .top-bar .main-navigation ul li.nav-item:hover {border-bottom: none;}
.main-navigation .dropdown-menu .dropdown-item:hover {color: var(--light-blue) !important; background: #F0F5F7;}
.dropdown-menu a.dropdown-item::after {content: "";}
.main-navigation .dropdown-menu {
    padding: 15px 0 20px 0!important;
    top: 90%;
    background: var(--white-blue);
    margin-top: 0 !important;
    min-width: 300px;
    left: -10%;
    border-top: none;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}
.menuuser0 .nav-item .dropdown-menu {left: 0%; top: 80%;}
.menuuser0 .nav-item > a {height: auto;color: var(--dark-blue) !important;}
.cbp-af-header.cbp-af-header-shrink .dropdown-menu ul::before { top: 0;}
.main-navigation .dropdown-menu .nav-link {margin: 0 !important;}
.dropdown-menu .nav-item {margin: 0 !important;}
.main-navigation ul li.nav-item button {
	border: 0;
    background: transparent;
    text-transform: uppercase;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
}
button:focus {outline: 0;}
.main-navigation ul li.nav-item .nav-link {color: #fff; text-transform: uppercase;line-height: 62px;}
.main-navigation ul li.nav-item ul li.nav-item .nav-link {
	color: #444;
	font-size: 14px !important;
	text-transform: initial;
    line-height: 32px;
    padding-left: 30px !important;
	font-weight: 600;
}
.cbp-af-header.cbp-af-header-shrink .nav-item { margin: 0 20px;}
.cbp-af-header.cbp-af-header-shrink .nav-link {margin-top: 0; margin-bottom: 0;}
#logout {margin-right: 0;}
#logout button.btn-user-profile {color: var(--blue); font-size: 16px; margin: 5px 0;}
#logout button.btn-user-profile:hover {color: var(--red) !important;}
/* FI HEADER */

/* PASOS */
#passos article .row {align-items: center;}
#passos .caption {padding: 0%!important; transform: translateX(20%); margin-bottom: 35px;}
#passos .caption div {text-align: left;}
#passos .caption .row {max-width: 100%; padding-left: 0;}
#passos .caption .num {color: var(--brillant-blue) !important; font-size: 140px; font-weight: 800; padding: 0; line-height: 1em;}
#passos .caption .text {padding: 0;}
#passos .caption .text p {color:#000 !important; font-size: clamp(14px,2vw,38px); font-weight: 600; line-height: 1.1em; padding: 0;}
.nopointer{pointer-events: none;}
/* FI PASOS */

/* SLIDER */
#index .margin-principal {margin-top: 0 !important; margin-bottom: 0 !important;}
#slider {display: flex; align-items: center;}
#slider .caption div{text-align: inherit;}
#slider .caption {padding-top: 10% !important; max-width: 60%; pointer-events: auto;}
#slider hr {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	border: 0;
	border-top: 8px solid #fff;
	width: 40%;
	margin-left: 0;
}
#slider .caption .button {margin: 20px 0 15px;}
#slider .caption h1 {font-size: clamp(20px,2.5vw,48px)!important;line-height: 1.2em !important;font-weight: 600;}
/* FI SLIDER */

/* CABECERA */
#cabecera {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; margin-bottom: 70px;}
#cabecera .caption {
	width: 35%;
	background: #FFF;
	padding: 10px 10px 20px 10px !important;
	border-radius: 5px;
	transform: translateX(-50%);
	box-shadow: rgba(0, 0, 0, 0.7) 0px 1px 3px 0px;
}
#cabecera .caption .h1 {font-size: clamp(18px,2.5vw,24px) !important; line-height: 1.2em !important; font-weight: 600; color: #000; margin: 15px 0;}
#cabecera .caption .row {max-width: 100%; padding-left: 0;}
#cabecera .caption div {text-align: left; color: #000;}
#cabecera .caption p {font-size: clamp(12px,1.5vw,16px); line-height: 1.3em; margin-bottom: 0!important;}
/* FI CABECERA */

/* NOSOTROS */
.product-list .item img {background: transparent;}
.nosotros .row {justify-content: space-between;;}
.nosotros article img{width: 50px; height: 50px;}
.nosotros article {background-color: #ffffff; padding: clamp(15px,2vw,40px); margin: 5% auto; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.5) -1px 1px 3px 0px;}
.fondo-azul .nosotros article {box-shadow: none;}
.nosotros article h3{font-weight: 700; margin: 10px 0; font-size: clamp(16px,1.5vw,21px); line-height: 1.3em;}
.nosotros article p{font-weight: 600; margin-bottom: 15px; font-size: 18px;}
.nosotros article.item .post-details .block-ellipsis{margin: 20px 0 10px; font-size: clamp(14px,1.5vw,18px);}
/* FI NOSOTROS */

/* CASOS */
.casos .margin-principal {margin-bottom: 0 !important;}
#casos_list .product-list .item {
	width: 95%;
	padding: clamp(10px,1.5vw,30px);
	margin: 30px 1%;
	border-radius: 5px;
	background-color: #ffffff;
	box-shadow: rgba(0, 0, 0, 0.5) -1px 1px 3px 0px;
}
#casos_list .product-list .item img {width: 90px; height: 90px;}
#casos_list .product-list .post-details h3 {font-weight: 700; margin: 10px 0; font-size: clamp(14px,1.5vw,21px); line-height: 1.3em;}
#casos_list .product-list .post-details p {font-size: 18px;line-height: 1.3em;}
#casos_list .product-list .post-details a:hover h3 {color: var(--light-blue);}
.fondo-azul #casos_list .product-list .item {box-shadow: none;}
/* FI CASOS */

/* SERVICIOS */
#headerserv {padding: 3em 0;}
#servicios_list .product-list {margin-top: 2em;}
#servicios_list .product-list .item {text-align: center; padding: 20px;}
#servicios_list .product-list .item img {width: 90px; height: 90px;}
#servicios_list .product-list .post-details h3 {font-size: 16px; line-height: 1.2em; font-weight: 600; margin-top: 20px;}
#servicios_list .product-list .post-details a h3 {color: var(--blue);}
#servicios_list .product-list .post-details a:hover h3 {color: var(--light-blue);}
#servicios_list .product-list .item a:hover img, #servicios_list .product-list .post-details a:hover h3 {transform: translateY(-5px);}
/* FI SERVICIOS */

/* BOTONS */
.btn.btn-brand.btn_blue, .btn-dark-primary {
	font-size: clamp(12px,1.5vw,18px);
	padding: 0.5rem 2rem;
	color: #fff !important;
	transition: all 0.3s;
	position: relative;
	overflow: hidden;
	z-index: 1;
	height: 34px;
	border-radius: 10rem;
	border: 1px solid #fff;
}
.btn.btn-brand.btn_blue::after, .btn-dark-primary::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--blue);
	border-radius: 10rem;
	z-index: -2;
}
.btn.btn-brand.btn_blue::before, .btn-dark-primary::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0%;
	height: 100%;
	background-color: var(--dark-blue);
	transition: all 0.3s;
	border-radius: 10rem;
	z-index: -1;
}
.btn.btn-brand.btn_blue:hover, .btn-dark-primary:hover {
	color: #fff;
    border-color: #fff;
    background-color: transparent !important;
    box-shadow: none !important;
}
.btn.btn-brand.btn_blue:hover::before, .btn-dark-primary:hover::before {width: 100%;}

.btn.btn-send,
#frm_nuevo_usr .btn,
#intranet .btn.btn-brand,
.tornar.btn.btn-brand,
#reserva .btn,
#reserva .filterbutton,
#transaction .btn,
#transaction .filterbutton,
.carrito-navegacion .btn,
.btn-system,
.btn-decline,
.boton-cookie {
	font-size: clamp(12px,1.5vw,16px) !important;
	position: relative !important;
    background-color: var(--light-blue) !important;
    border: 0 !important;
    margin-top: 40px !important;
    border-radius: 5px !important;
    color: #fff !important;
	margin-left: 30px !important;
	text-transform: uppercase !important;
    padding: 0 25px !important;
	font-weight: 600;
}
#reserva .inttotalstep2 .btn, #transaction .inttotalstep2 .btn{background-color: var(--dark-blue) !important;}
#reserva .btn, .carrito-navegacion .btn, #transaction .btn {margin-top: 0!important;}
.btn.btn-send:hover,
#frm_nuevo_usr .btn:hover,
#intranet .btn.btn-brand:hover,
.tornar.btn.btn-brand:hover,
#reserva .btn:hover,
#reserva .filterbutton:hover,
#transaction .btn:hover,
#transaction .filterbutton:hover,
.carrito-navegacion .btn:hover,
.btn-system:hover,
.btn-decline:hover,
.boton-cookie:hover {color: #fff !important; background-color: var(--blue) !important;  opacity: 1;}
.btn-primary:hover {box-shadow: none !important;}

/* btn seguent */
.btn.btn-send::after {
	content: '';
    position: absolute;
    top: 0px;
    width: 0;
    height: 0;
    border-style: solid;
    right: -46px;
    border-width: 24px;
    border-color: transparent transparent transparent var(--light-blue);
}
.btn.btn-send:hover::after  {border-color: transparent transparent transparent var(--blue);}
.boton-cookie.big {margin: 0;}
.buttons-cookies {margin: 0; padding: 0; width: 100%; display: flex; justify-content: space-evenly;}
.boton-cookie, .btn-decline {vertical-align: bottom; height: 48px; line-height: 48px; margin: 40px 5px 0 5px !important; padding: 0 15px !important;}

/* btn tornar */
.tornar.btn.btn-brand::after,
.tornar.btn::after{
	content: '';
    position: absolute;
    top: 0px;
    width: 0;
    height: 0;
    border-style: solid;
    left: -46px;
    border-width: 24px;
    border-color: transparent var(--light-blue) transparent transparent;
}
.tornar.btn.btn-brand:hover::after,
.tornar.btn:hover::after {border-color: transparent var(--blue) transparent transparent;}

article a.btn.btn-brand{color: var(--light-blue); font-weight: 700; border: none; height: 1em; padding: 0;margin-top: 15px;}
article a.btn.btn-brand::before{content: "["; margin-right: 5px;}
article a.btn.btn-brand::after{content: "]"; margin-left: 5px;}
article a.btn.btn-brand:hover{color: var(--red); border: 0; background-color: transparent !important; box-shadow: none;}
/* FI BOTONS */

/*INTRANET*/
#contacte .margin-principal {margin-bottom: 0;}
button i:nth-child(2) {display: none;}
#intranet .edit-usr #logout2 i {margin: 10px 15px 0 0 !important;}
#intranet h1, #s_recuperar_pwd h1, #frm_nuevo_usr h1 {color: var(--dark-blue); padding-left: 0;}
#registro .margin-principal, .logged .margin-principal {margin-top: 150px !important;}
#intranet.login h1{color:#000;padding-left: 0;}
#intranet.login .section {width: 50%; margin: 0 auto;}
#intranet.login .bg-white {
    background-color: var(--white-blue) !important;
    border: 1px solid var(--light-blue);
}
#intranet.login .border-4 {border-radius: 10px;}
#intranet.login .landing-shadow-4 {box-shadow: 0px 2px 5px 2px rgba(0, 0, 0, 0.3);}
#intranet.login .togglepw {
    margin-top: 0;
    padding: 0 15px;
    top: 0;
    line-height: 60px;
}
#intranet form input[type="text"],
#intranet form input[type="password"],
#intranet form input[type="email"],
#intranet .form-control,
#frm_nuevo_usr .form-control,
#booking-form input,
#intranet select,
#intranet input,
#booking-form .form-control,
#transaction .form-control{
    background-color: #fff;
    border-radius: 5px;
	border: 1px solid #bfbfbf;
	transition: all 0.4s ease-out;
	height: 50px;
}
#order-transaction small {margin-left: 15px; margin-bottom: 20px; display: block;}
textarea.form-control {height: auto !important;}
#reserva .filterProds .filterbutton:hover ,#transaction .filterProds .filterbutton:hover{color: #FFF!important;}
#intranet .form-style.big {border: 1px solid #bfbfbf;}
#intranet .form-style.big:focus, #intranet .form-style.big:active,
#frm_nuevo_usr .form-control:focus, #frm_nuevo_usr .form-control:active,
#intranet .form-control:focus, #intranet .form-control:active,
#booking-form input:focus, #booking-form input:active,
#intranet select:focus, #intranet select:active,
#intranet input:focus, #intranet input:active,
#booking-form .form-control:focus, #booking-form .form-control:active, 
#transaction .form-control:focus, #transaction .form-control:active {border: 1px solid var(--brillant-blue); !important; box-shadow: 0px 0px 5px 3px rgba(0,113,188,0.6);}
#intranet .btn-info {background-color: var(--light-blue) ; border-color: var(--light-blue);}
#intranet .btn-info:hover {background-color: var(--dark-blue) ; border-color: var(--dark-blue);}
#intranet.login .btn-dark-primary {margin-bottom: 1em;}
#linkAdress a {background-color: var(--light-blue) !important;}
#linkOrders .bg-warning {background-color: var(--blue) !important;}
#linkIdentity .bg-secondary {background-color: var(--dark-blue) !important;}
#linkOrders .color-box.bg-warning::after {box-shadow: none;}
#linkAdress a:focus, #linkAdress a:hover,
#linkOrders .bg-warning:focus, #linkOrders .bg-warning:hover,
#linkIdentity .bg-secondary:focus, #linkIdentity .bg-secondary:hover {background-color: #222!important;}

/* nuevo usuario */
#frm_nuevo_usr {display: flex !important; /*flex-wrap: wrap; */}
.contratar #cabecera {margin-bottom: 0;}
#frm_nuevo_usr {text-align: left;}
#frm_nuevo_usr input[type="text"], #frm_nuevo_usr input[type="email"], #frm_nuevo_usr input[type="password"], #frm_nuevo_usr select,  #frm_nuevo_usr input[type="date"] {padding-left: 30px; margin: 0 0 10px 0;}


/* editar usuario */
#frm_editar_usr {display: flex !important; flex-wrap: wrap;}
#frm_editar_usr .form-group {width: 50%; padding-right: 30px;}
#frm_editar_usr .form-group:first-child {display:none;}
#frm_editar_usr .form-group:last-child {width: 100%;}
#frm_editar_usr label {font-size: 16px;font-weight: 600;}


/* arraform */
#arraform h2 {width: 100%; color: var(--light-blue);}
#arraform small {width: 100%;margin-bottom: 1.5em;}
#arraform .rendered-form {display: flex !important; flex-wrap: wrap;}
#arraform .form-group {width: 45%; padding-right: 15px;}
#arraform .radio-group {display: flex; margin-bottom: 10px }
#arraform .form-group input[type="radio"] {
    display: inline-flex;
    height: 30px;
    vertical-align: middle;
}
#arraform .form-group input[type="radio"]:focus {border: 0 !important; box-shadow: none;}
#arraform .formbuilder-radio {padding: 0 10px 0 0;}
#arraform label {margin-top: 5px;}


/* reserva */
.step .tempo {margin-top: 15px;}
#reserva #booking-form .form-control,#transaction .form-control{font-size: 0.81rem; height: 50px;}
#reserva #booking-form .step.step-1, #reserva #booking-form .step.step-2 {display: flex; align-items: center;}
#reserva #booking-form .step.step-3,#transaction {align-items: flex-start;}
#booking-form .step-6::before,.step-6::before{content: "6";}
#reserva #booking-form label, #booking-form input, #reserva #booking-form .filterProds li,#transaction label,#transaction input ,#transaction .filterProds li{margin-bottom: 5px; font-size: clamp(14px, 1.5vw, 18px);}
#reserva #booking-form .step::before, .step::before{
    display: flex;
    justify-content: center;
    align-items: center;
}
#reserva #booking-form .tauladisponibilitat .reservar .btn {font-size: 13px!important; margin-top: 0 !important; margin-left: 0 !important; background: var(--brillant-blue);}
#reserva .add-to-cart[data-purchased="1"] {background-color: var(--red) !important;}
#reserva .add-to-cart[data-purchased="1"]:hover, #reserva .add-to-cart[data-purchased="1"]:focus {color: transparent !important;}
#reserva .totalstep2 label {padding: 20px 30px 10px;}
#reserva #booking-form .resum {margin: 20px 0;}
#booking-form #acepto_condiciones {height: auto;}
#customer-info .product-info span {display: math;}
#customer-info .product-info .product,
#customer-info .product-info .horari,
#customer-info .product-info .qty,
#customer-info .product-info .preu { width:inherit;}

#pedido-carrito p.nombre-del-producto,
#pedido-carrito p.descripcion-carrito {font-weight: 600; color: var(--light-blue);}
#reserva h1 {
    color: var(--dark-blue)!important;
    font-family: inherit;
    font-weight: 600;
    font-size: clamp(28px,2.5vw,34px);
}
#reserva h2 {
    color: var(--light-blue)!important;
    font-family: inherit;
    font-weight: 600;
    font-size: clamp(20px,2.5vw,30px);
}
#reserva h3, #transaction h3 {font-size: clamp(16px,2.5vw,26px); font-weight: 600; margin-left: 15px; color: var(--light-blue) !important;}
#insite-payment h4 {
    text-align: center;
    border: 1px solid var(--light-blue);
    padding: 15px 30px;
    display: table;
    margin: 50px auto;
}
#reserva #customer-info .form-group, #transaction .form-group {display: inline-block;}
#reserva #customer-info .form-group label, #transaction .form-group label:not(.radio-group label) {font-weight: bold;}
#reserva .messageContainer h1 {color: var(--light-blue)!important;}

#transaction .btn{margin-left: 0px!important;}
#transaction .form-group input[type="radio"] {visibility: visible; display: inline;}
#transaction .formbuilder-radio {display: inline;}
#transaction .formbuilder-textarea.form-group{display: block;}
#transaction .form-group {padding: 0 15px; margin-bottom: 20px;}

.orders-table .btn {margin: auto 5px;}
.orders-table .accions{justify-content: center; display: flex;}
.modal-title {
    color: var(--blue);
    font-size: 32px;
    font-weight: 600;
}
.modal-header {border-bottom: 1px solid var(--brillant-blue);}
.modal-body ul {margin-top: 1em;color: var(--blue);}
/* FI INTRANET*/

/* FOOTER */
#footer {background-color: var(--dark-blue) !important;}
#footer h4 {font-size: 16px; font-weight: 600; line-height: 1.6;}
#footer li{color: #ffffff; font-size: 14px; line-height: 1.6em;}
#footer {padding-top: 35px; padding-bottom: 20px;}
#footer ul {padding-inline-start: 20px;}
#footer .logo_footer {margin: -10px 0 5px;}
#footer p, #footer a {color: #fff !important; font-size: 14px; line-height: 1.6em; margin-bottom: 0;}
#footer a:hover {color: var(--brillant-blue) !important;}

#fastCart p {color: var(--blue) !important;}
#fastCart .desc-product {color: var(--blue) !important;}
#fastCart .producto-cantidad {background-color: var(--blue);}
#fastCart .producto-importe {font-weight: 500;}
/* FI FOOTER */

/* GENERAL */
.breadcrumb ul li {display: inline-flex;}
.breadcrumb ul li a{color: #666;}
.breadcrumb ul li:last-child a{color: var(--light-blue); font-weight: 600;}
.fondo-azul{background-color: var(--white-blue);}
#cta_box {
	background-image: url(/media/images/home/cta_contratar.jpg);
    background-position: top left;
    background-repeat: no-repeat;
	background-size: cover;
	padding: 4rem 1rem;
}
.fitxa h2:not(#casos_list h2) {
	font-size: clamp(18px,2.5vw,24px);
    line-height: 1.3em;
    font-weight: 500;
    color: var(--blue);
}
/* FI GENERAL */

/* COOKIES */
#accordion-cookies .card .card-header h3 {color: var(--light-blue); font-weight: 600;}

.aceptar-footer {margin-bottom: 20px; display: flex; justify-content: center;}

/* FI COOKIES */

/* RESPONSIVE */
@media (max-width: 1399px) {
	#index .navbar-brand img.logo1 {margin-left: 40px;}
	#slider .caption {max-width: 65%; bottom: inherit !important;}
	#slider .caption .button {margin: 10px 0;}
	/*.caption h1 {font-size: 38px !important;}*/
	#slider hr {margin-top: 1rem; margin-bottom: 1rem;}
	#passos .caption .num {font-size: 120px;}
	#footer .bloc {margin: 30px;}
	.product-list .row {margin-right: 0; margin-left: 0;}
}
@media (max-width: 1199px) {
	#slider .caption {max-width: 80%; bottom: inherit !important;}
	#passos .caption .num {font-size: 80px;}
	.casos .margin-principal {margin-top: 0!important;}
	#index .cbp-af-header.header-transparent {background: var(--bg_header_url), var(--bg_header_position), var(--bg_header_repeat);}
	.margin-principal, #registro .margin-principal, .logged .margin-principal {margin-top: 0px !important;}
}
@media (min-width: 992px) and (max-width: 1199px) {
	article.col-lg-4 {flex: 0 0 29.333333%; max-width: 0 0 29.333333%;}
	#cabecera .caption {width: 45%; margin-top: 0;}
}
@media (max-width: 991px) {
	#cabecera .caption {width: 45%; margin-top: 0; transform: translateX(-50%); bottom: inherit !important;}
	#login {display: none;}
	.top-bar .center {text-align: right;}
	.navbar-light .navbar-toggler-icon {border-bottom: 2px solid #FFF;}
	.navbar-light .navbar-toggler-icon:before, .navbar-light .navbar-toggler-icon:after {background-color: #fff;}
	.navbar-nav::before {content: none; border-left: none;}
	.navbar-nav {margin-bottom: 20px;}
	.main-navigation ul li.nav-item {margin: 0; display: inline-block;}
	.main-navigation ul li.nav-item:hover {border-bottom: none;}
	.main-navigation ul li.nav-item .nav-link {line-height: 1.6em;}
	.main-navigation .dropdown-menu {padding: 0!important; max-width: 300px;}
	.navbar-expand-lg .navbar-nav .dropdown-menu {margin-top: 0 !important;}
	.main-navigation .nav-item.show .dropdown-menu	{margin-top: 10px !important;}
	#index .cbp-af-header.header-transparent .navbar-expand-lg .navbar-collapse {margin-top: 20px; margin-bottom: 30px;}
	.main-navigation ul li.nav-item button {font-size: 12px; display: flex; line-height: 1.6em; padding: 0;}	
	.nav-item.dropdown .toggler:after {border: none;}	
	#booking-form .step .col-2 {flex: 0 0 26.666667%; max-width: 26.666667%;}
	#booking-form .step .col-10 {flex: 0 0 73.333333%; max-width: 73.333333%;}
}
@media (max-width: 767px) {
	#intranet.login .section {width: 70%;}
	#cabecera .caption {width: 90%; margin-top: 0; transform: translateX(0); bottom: inherit !important; padding-top: 0!important;}
	#frm_nuevo_usr .form-group {width: 50%;}
	#index .cbp-af-header.header-transparent .logo1 {display: none;}
	#index .cbp-af-header.header-transparent .logo2 {display: initial;}
	#slider .caption {max-width: 100%; padding: 0 0 0 8% !important;}
	#slider .col-12 {padding-right: 0; padding-left: 0;}
	#slider hr {border-top: 4px solid #FFF; margin-top: .5rem; margin-bottom: .5rem;}
	.product-list.nosotros {margin: 2em auto;}
	.swiper-slide {min-height: 100px;}
	#passos .row {margin-right: -15px!important; margin-left: -15px!important;}
	.breadcrumb ul {display: block;}
	.gallerycontent .col-sm-4 {
		flex: 0 0 25%;
		max-width: 25%;
		padding-right: 5px;
		padding-left: 5px;
	}
	#customer-info .product-info span {display: block; margin-bottom: 5px;}	   
}
@media (min-width: 680px) {
	#casos_list .col-lg-3 {flex: 0 0 23%; max-width: 23%;}
	.product-list.nosotros .col-lg-4 {flex: 0 0 30.333333%; max-width: 30.333333%;}	
	.product-list.nosotros .col-lg-6 {flex: 0 0 46%; max-width: 46%;}
}
@media (max-width: 680px) {
	.buttons-cookies {display: grid; justify-content: normal;}
	#arraform {padding: 0 20px;}
	#arraform .form-group, #frm_editar_usr .form-group {width: 100%; padding-right: 0;}
	#passos .caption .num {font-size: 50px;}
	#passos .caption {margin-bottom: 0 !important; bottom: 0 !important;}
	#casos_list .product-list .item {margin: 10px 1%;}	
	#reserva p, #reserva, #reserva label {font-size: 14px;}
}
@media (max-width: 575px) {
	#intranet.login .section {width: 100%;}
	#reserva #customer-info .form-group, #transaction .form-group {width: 100%;}
	#reserva .btn, #reserva .filterbutton {padding: 0 15px !important;}
	#frm_nuevo_usr .form-group {width: 100%;}
	.tauladisponibilitat, #booking-form .tauladisponibilitat .timetable {font-size: 11px !important;}
}
@media (max-width: 480px) {
	#registro .margin-principal {margin-top: 80px !important;}
	.fitxa .margin-principal {margin-top: 0 !important;}
	.container {padding-right: 0; padding-left: 0;}
	#reserva, .container#cart {padding-left: 15px; padding-right: 15px;}
	#footer .bloc {margin: 30px 0;}
	#cabecera {min-height: 230px;}
	#cabecera .col-12 {padding-right: 0; padding-left: 0;}
	#cabecera .img-fluid {transform: scale(1.7);}
}
/* FI RESPONSIVE */

.dropdown-menu::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 20px;
    left: 0;
    top: -20px;
}

.Casos.fitxa{}
.Casos.fitxa #cta_box img{width: 100px; height:  auto; margin-bottom: 25px; filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(6448%) hue-rotate(65deg) brightness(107%) contrast(100%);}
.Casos.fitxa #cta_box p{color: #fff; font-size: clamp(20px, 18px + 1vw, 28px);}
.Casos.fitxa #cta_box .btn.btn-brand.btn_blue{height: 42px; font-size: clamp(16px, 14px + 0.5vw, 20px); margin-top: 10px;}
