/*
Theme Name:   Calaf Grup
Theme URI:    
Description:  Theme per a Calaf Grup
Author:       Mg Comunicació
Author URI:   
Version:      4.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         
Text Domain:  calafgrup
*/
/****************************
 * Variables del theme
 ****************************/
/********************************************
 * Assignació de les variables del theme
 ********************************************/
/************************************************
 * Colors als estils dels blocks i common styles
 ************************************************/
/*
	@bola_colorFons:    @t_colorMalva;
	@bola_colorFletxa:  @t_colorChicle;
	@bola_colorAnyil:   @t_colorAnyil;
	*/
/************************************************
 * Utils
 ************************************************/
/*----------------------------------------------------------------------------------------------------
	1. Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/) * http://cssreset.com  
----------------------------------------------------------------------------------------------------*/
html,
div,
span,
applet,
object,
iframe,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  text-align: left;
}
body,
h1,
h2,
h3,
h4,
h5,
h6 {
  border: 0;
  vertical-align: baseline;
  text-align: left;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
p {
  text-align: left;
}
.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  display: table;
  line-height: 0;
  content: "";
}
.clearfix:after {
  clear: both;
}
textarea {
  overflow: auto;
}
div.clear,
span.clear {
  clear: both;
  font-size: 1px;
  line-height: 1px;
  height: 0px;
  overflow: hidden;
}
strong {
  font-weight: bold;
}
em,
i {
  font-style: italic;
}
input,
textarea,
button {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
  border: 0;
}
textarea {
  resize: none;
}
textarea:focus,
input:focus {
  outline: 0;
}
small {
  font-size: 0.75em;
}
input[type=checkbox] {
  accent-color: #002d72;
  height: auto;
  width: auto;
  -webkit-appearance: checkbox;
}
input[type=radio] {
  accent-color: #002d72;
  height: auto;
  width: auto;
  -webkit-appearance: checkbox;
}
sup {
  font-size: 0.6em;
  vertical-align: 0.3em;
}
/*----------------------------------------------------------------------------------------------------
	Normalitzacio
----------------------------------------------------------------------------------------------------*/
html {
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
  padding: 0;
  text-align: center;
}
body,
input,
textarea {
  background: #ffffff;
}
body,
input,
textarea,
select,
button {
  font-family: "NeueHGTX", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-size: 19px;
  line-height: 1.4em;
  font-weight: normal;
  color: #5b5b5b;
  font-style: normal;
}
@media screen and (max-width: 670px) {
  body,
  input,
  textarea,
  select,
  button {
    font-size: 17px;
  }
}
/* 
 * Aquests estils Son maquetació només per al front
 */
.mod_fil-ariadna {
  padding: 0 35px;
  margin-bottom: 30px;
  font-size: 0.8em;
}
.mod_fil-ariadna a:not(.foo) {
  color: #5b5b5b;
}
.maq_amb-menu-lateral {
  display: flex;
  padding-right: 35px;
}
.maq_amb-menu-lateral .maq_menu-lateral {
  width: 250px;
  padding-right: 50px;
  box-sizing: content-box;
}
@media only screen and (max-width: 800px) {
  .maq_amb-menu-lateral .maq_menu-lateral {
    display: none;
  }
}
.maq_amb-menu-lateral .maq_col-central {
  flex: 1;
}
.maq_sense-menu-lateral {
  padding-left: 35px;
  padding-right: 35px;
}
/* 
 * Loader de fitxers d'estils compartits al front i al gutenberg
 */
#cmplz-manage-consent {
  display: none;
}
body #cmplz-document {
  max-width: 1200px;
  margin: 50px auto 0;
  padding-left: 50px;
  padding-right: 50px;
  font-size: inherit;
}
body #cmplz-document * {
  font-size: inherit;
}
@media only screen and (max-width: 1070px) {
  body #cmplz-document {
    padding-left: 35px;
    padding-right: 35px;
  }
}
/*
// Forminator
.forminator-custom-form {
	max-width: 1000px;
	margin: auto;
	padding: 0 50px !important;
}
.forminator-field {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.text-mini .forminator-field {
	font-size: 0.8em;
}
.text-mini .forminator-field p {
	margin-bottom: 1em;
}

label.forminator-label {
    display: block;
	color: @colorCorporatiu !important;
	font-size: 0.9em !important;
	font-weight: normal !important;
	padding-top: 4px;
}
.forminator-field-textarea label {
	width: auto !important;
}
.forminator-input,
.forminator-textarea {
    width: 100% !important;
    max-width: none !important;
}
.camp-entrats .forminator-field .forminator-error-message {
	margin-left: 0 !important;
}
.forminator-input,
.forminator-textarea {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.forminator-input,
.forminator-textarea,
.forminator-checkbox-box {
	border: @colorCorporatiu 2px solid !important;
	background: #fff !important;
	box-shadow: none !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
}
.forminator-has_error {
	.forminator-input,
	.forminator-textarea,
	.forminator-checkbox-box {
		border-color: #f00 !important;
	}
}

.forminator-error-message {
    font-size: 12px;
    font-family: inherit;
    font-weight: 500;
	background-color: #F9E4E8;
	color: #E04562;
}

.forminator-row:has(.camp-menys-espai-sota) {
	margin-bottom: 15px !important;
}
.forminator-button-submit {
	background: @colorCorporatiu;
	color: #fff;
}
.forminator-button-submit:hover {
	background: @colorText;
	box-shadow: none !important;
}

.forminator-response-message {
	background: @colorCorporatiu;
	color: #fff;
	
	&.forminator-error {
		color: #000;
		background-color: #F9E4E8;
	}
}

.forminator-checkbox__wrapper {
    align-items: center !important;
}

@media only screen and (min-width: 783px) {
	.camp-entrats .forminator-field {
		padding-left: 150px !important;
	}
	.forminator-error-message,
	.forminator-description {
		width: 100%;
		margin-left: 150px !important;
	}
	.forminator-input,
	.forminator-textarea {
		flex: 1;
	}
	label.forminator-label {
		width: 150px;
		//text-align: right;
		padding-right: 10px !important;
	}
	.forminator-button-submit {
		margin-left: 150px !important;
	}
}
*/
.forminator-ui.forminator-custom-form[data-design=material] .forminator-input {
  border-bottom-color: #002d72;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-textarea {
  border: 0;
  border-bottom: #002d72 1px solid;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-field-textarea {
  padding-top: 30px !important;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-label[class*="forminator-floating-"] {
  padding-top: 20px !important;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-field-textarea .forminator-is_active .forminator-label[class*="forminator-floating-"] {
  padding: 0 !important;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-field.forminator-is_hover .forminator-textarea--wrap:after {
  border-color: #002d72;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-input--wrap:after {
  background: #002d72;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-field.forminator-has_error .forminator-input--wrap:after {
  border-bottom-color: #ffd100;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-field.forminator-has_error .forminator-textarea--wrap:after {
  border-color: #ffd100;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-error-message {
  color: #000 !important;
  padding-left: 5px;
  background: #ffd100;
}
.forminator-ui.forminator-custom-form[data-design=material] .forminator-button.wp-block-button__link {
  font-size: 19px !important;
  font-weight: 700 !important;
  display: flex;
  align-items: center;
  padding-left: 0;
}
@media only screen and (min-width: 1071px) {
  .saber-text {
    text-align: right;
  }
  .saber-text .is-style-com_titular_2 {
    text-align: left;
    display: inline-block;
  }
}
@media only screen and (max-width: 1070px) {
  .saber-text br {
    display: none;
  }
}
.saber-text .is-style-com_titular_2 {
  font-size: 32px;
}
.wishlist-button,
.simplefavorite-button {
  opacity: 1 !important;
  min-width: 150px;
  border-radius: 0;
  border-width: 0 !important;
  border-style: solid !important;
  padding: 3px 15px;
  font-size: 16px;
  font-weight: bold;
  border: #002d72 1px solid !important;
  cursor: pointer;
  background: #fff;
}
.wishlist-button {
  font-size: 14px;
}
.wishlist-button:hover,
.simplefavorite-button:hover,
.simplefavorite-button.active {
  background: #002d72;
  color: #fff !important;
  text-decoration: none !important;
}
header .wishlist-watch {
  margin-right: 20px;
}
header .wishlist-watch i {
  font-size: 1.1em;
}
.favorites-list .no-favorites {
  display: none;
}
@media only screen and (max-width: 500px) {
  header .wishlist-watch {
    margin-right: -20px;
  }
}
/*
header .wishlist-watch {
	position: absolute;
	right: 40px;
	top: 100px;
}
*/
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro.woff') format('woff'), url('fonts/NHaasGroteskTXPro-55Rg.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro-Italic.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro-Italic.woff') format('woff'), url('fonts/NHaasGroteskTXPro-56It.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro-Medium.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro-Medium.woff') format('woff'), url('fonts/NHaasGroteskTXPro-65Md.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro-MediumItalic.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro-MediumItalic.woff') format('woff'), url('fonts/NHaasGroteskTXPro-66MdIt.ttf') format('truetype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro-Bold.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro-Bold.woff') format('woff'), url('fonts/NHaasGroteskTXPro-75Bd.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'NeueHGTX';
  src: url('fonts/NeueHaasGroteskTextPro-BoldItalic.woff2') format('woff2'), url('fonts/NeueHaasGroteskTextPro-BoldItalic.woff') format('woff'), url('fonts/NHaasGroteskTXPro-76BdIt.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot?dwsfma');
  src: url('fonts/icomoon.eot?dwsfma#iefix') format('embedded-opentype'), url('fonts/icomoon.woff2?dwsfma') format('woff2'), url('fonts/icomoon.ttf?dwsfma') format('truetype'), url('fonts/icomoon.woff?dwsfma') format('woff'), url('fonts/icomoon.svg?dwsfma#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-x:before {
  content: "\e90a";
}
.icon-youtube:before {
  content: "\e905";
}
.icon-instagram:before {
  content: "\e902";
}
.icon-brand:before {
  content: "\e902";
}
.icon-social:before {
  content: "\e902";
}
.icon-facebook:before {
  content: "\e903";
}
.icon-brand1:before {
  content: "\e903";
}
.icon-social1:before {
  content: "\e903";
}
.icon-linkedin:before {
  content: "\e904";
}
.icon-brand2:before {
  content: "\e904";
}
.icon-social2:before {
  content: "\e904";
}
.icon-chevron-right:before {
  content: "\e908";
}
.icon-chevron-left:before {
  content: "\e909";
}
.icon-search:before {
  content: "\e90c";
}
.icon-esquerra:before {
  content: "\e90b";
}
.icon-esquerra-slider:before {
  content: "\e906";
}
.icon-dreta-slider:before {
  content: "\e907";
}
.icon-dreta:before {
  content: "\e900";
}
.icon-home:before {
  content: "\e901";
}
#wp-admin-bar-site-editor {
  display: none;
}
header .maq-contenidor {
  position: relative;
  max-width: none;
}
#wpadminbar {
  position: fixed;
}
#sticky_header {
  position: fixed;
  z-index: 11;
  left: 0;
  top: 0;
  right: 0;
  padding: 30px 0 10px;
  box-sizing: border-box;
  transition: background 0.2s ease-in-out;
}
body.scrolled #sticky_header {
  background: #ffffff;
}
body.scrolled #sticky_header a.logo {
  background: url(img/calaf-grup.svg) no-repeat center top;
  background-size: contain;
}
body.scrolled #sticky_header img {
  width: 150px;
  opacity: 0;
}
body.scrolled #sticky_header #menu_burger {
  margin-top: -20px;
}
body.scrolled #sticky_header .burger span {
  background: #002d72;
}
body.scrolled #sticky_header a:hover .burger span {
  background: #ffd100;
}
#sticky_header .maq-contenidor {
  position: relative;
}
body.admin-bar #sticky_header {
  top: 32px;
}
@media screen and (max-width: 782px) {
  body.admin-bar #sticky_header {
    top: 46px;
  }
}
#sticky_header .wrapper {
  display: flex;
  /* Converteix el contenidor en un element flex */
  align-items: center;
  /* Centra els elements verticalment */
  justify-content: space-between;
  /* Distribueix l'espai uniformement */
}
#sticky_header img {
  flex-shrink: 0;
  /* Assegura que la imatge no es redueixi */
  height: auto;
  transition: all 0.2s ease-in-out;
}
#sticky_header nav {
  flex: 1;
}
#sticky_header li a {
  color: #002d72;
  text-decoration: none;
}
#sticky_header li:hover > a,
#sticky_header li a:not(.foo):hover {
  color: #b1b3b4;
  text-decoration: none;
}
@media screen and (max-width: 650px) {
  #sticky_header img {
    width: 150px;
  }
}
/*
body {
	&::before {
		content: '';
		display: block;
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background: rgba(255,255,255,0.75);
		z-index: 9;

		/ * Inicialment invisible * /
		opacity: 0;
		visibility: hidden;
		
		/ * Transició suau * /
		transition: opacity 0.3s ease-in-out, visibility 0.3s;
	}
}
*/
#menu_principal {
  padding-top: 30px;
  background: rgba(0, 45, 114, 0.8);
  color: #fff;
  position: fixed;
  z-index: 10;
  left: -100vw;
  opacity: 0.6;
  width: 100vw;
  top: 0;
  bottom: 0;
  overflow-y: scroll;
  transition: opacity 0.5s ease-in-out;
  box-sizing: border-box;
  border-top: #b1b3b4 1px solid;
}
#menu_principal img {
  height: auto;
  transition: all 0.2s ease-in-out;
}
body.scrolled #menu_principal img {
  width: 150px;
}
@media screen and (max-width: 650px) {
  #menu_principal img {
    width: 150px;
  }
}
body.admin-bar #menu_principal {
  top: 32px;
}
#menu_principal a {
  color: #fff;
}
#menu_principal a:hover {
  color: #ffd100;
  text-decoration: none;
}
#menu_principal .langs-selectors {
  margin: 0 auto 30px;
  max-width: 1200px;
}
#menu_principal .langs-selectors ul {
  padding: 0;
  font-size: 0.85em;
}
#menu_principal .langs-selectors li {
  display: inline-block;
  list-style: none;
}
#menu_principal .langs-selectors li:after {
  content: '|';
  margin: 0 10px;
}
#menu_principal .langs-selectors li:last-child:after {
  display: none;
}
#menu_principal #layer-menu {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  gap: 10px;
  margin: 50px auto 0;
  max-width: 1200px;
}
#menu_principal #layer-menu ul {
  list-style: none;
  padding: 0;
}
#menu_principal #layer-menu li {
  margin-bottom: 1.2em;
  line-height: 1.8em;
}
#menu_principal #layer-menu li > a {
  font-size: 2em;
  font-weight: bold;
}
#menu_principal #layer-menu li li {
  margin-bottom: 0;
  line-height: 1.5em;
}
#menu_principal #layer-menu li li a {
  font-size: 1em;
  font-weight: normal;
}
@media only screen and (max-width: 949px) {
  #menu_principal #layer-menu {
    max-width: 600px;
  }
}
#menu_burger {
  padding: 26px 20px 10px;
  right: 80px;
  top: 0;
  bottom: 0;
  box-sizing: border-box;
  position: absolute;
  transition: all 0.2s ease-in-out;
}
@media only screen and (max-width: 1070px) {
  #menu_burger {
    right: 15px;
  }
}
@media screen and (max-width: 650px) {
  #menu_burger {
    padding-top: 16px;
  }
}
.burger {
  width: 55px;
  height: 30px;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 30;
}
.burger span {
  display: block;
  position: absolute;
  height: 4px;
  border-radius: 2px;
  width: 100%;
  background: #ffffff;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: all 0.25s ease-in-out;
}
.burger span:nth-child(1) {
  top: 0px;
}
.burger span:nth-child(2),
.burger span:nth-child(3) {
  top: 12px;
}
.burger span:nth-child(4) {
  top: 24px;
}
a:hover .burger span {
  background: #ffd100;
}
@media screen and (max-width: 650px) {
  .burger {
    width: 35px;
    height: 20px;
  }
  .burger span {
    height: 3px;
  }
  .burger span:nth-child(2),
  .burger span:nth-child(3) {
    top: 8px;
  }
  .burger span:nth-child(4) {
    top: 16px;
  }
}
#sticky_header .logo {
  transition: opacity 0.1s ease-in-out;
}
body.js-mostra-menu-lateral .burger span {
  background: #ffffff;
}
body.js-mostra-menu-lateral .burger span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%;
}
body.js-mostra-menu-lateral .burger span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
body.js-mostra-menu-lateral .burger span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
body.js-mostra-menu-lateral .burger span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%;
}
a:hover body.js-mostra-menu-lateral .burger span {
  background: #ffd100 !important;
}
body.js-mostra-menu-lateral {
  overflow: hidden;
}
body.js-mostra-menu-lateral #menu_principal {
  left: 0 !important;
  opacity: 1;
}
body.js-mostra-menu-lateral #sticky_header {
  background: none;
}
body.js-mostra-menu-lateral #sticky_header .logo {
  opacity: 0;
}
body.js-mostra-menu-lateral.scrolled #sticky_header .burger span {
  background: #fff;
}
body.js-mostra-menu-lateral.scrolled #sticky_header a:hover .burger span {
  background: #ffd100;
}
/* 
 * Aquests estils apareixen com a opcions de Gutenberg
 * i defineixen els estils al front i al back.
 *
 * Poso primer el nom que es mostrarà, com a comentari. 
 * a continuació, el class que es farà servir, començant per .is-style- (el Gutenberg ho posa sempre)
 * a continuació, puc definir tags, per exemple titulars, amb el estil per defecte que interessi
 * i finalment, definicions repetides si s'escau per als CSS breakpoints
 */
/* Tit. gegant */
.is-style-com_titular_gegant,
p.is-style-com_titular_gegant,
.is-style-com_titular_1,
.is-style-com_titular_2,
h1,
h2,
h3,
body #cmplz-document h2,
body #cmplz-document h3,
body #cmplz-document .cmplz-subtitle {
  color: #002d72;
  font-family: "NeueHGTX", Arial, sans-serif;
  font-weight: bold;
  line-height: 1.2em;
  margin-bottom: 0.5em;
  font-size: 43px;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 1em;
}
[class*="-com_titular_"] a,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: #002d72 !important;
}
[class*="-com_titular_"] a:hover,
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
  color: #ffd100 !important;
  text-decoration: none !important;
}
.is-style-com_titular_gegant,
p.is-style-com_titular_gegant {
  font-size: 5vw;
  font-weight: 300;
}
.is-style-com_titular_1,
h1 {
  font-size: 56px;
}
/* Tit. tercera */
.is-style-com_titular_peq,
h4,
h5,
h6,
body #cmplz-document h3,
body #cmplz-document .cmplz-subtitle {
  margin-top: 1em;
  font-family: "NeueHGTX", Arial, sans-serif;
  font-weight: bold;
  line-height: 1.2em;
  color: #002d72;
  font-size: 28px;
  padding-top: 0;
  margin-bottom: 0.75em;
}
/*
@media screen and ( max-width: 1400px ) {
	.is-style-com_titular_gegant {
		font-size:   70px;
	}
}
*/
@media screen and (max-width: 550px) {
  /*
	.is-style-com_titular_gegant {
		font-size:   32px;
	}
	*/
  .is-style-com_titular_1,
  h1 {
    font-size: 42px;
  }
  .is-style-com_titular_2,
  h2,
  h3 {
    font-size: 36px;
  }
  .is-style-com_titular_peq,
  h4,
  h5,
  h6 {
    font-size: 24px;
  }
}
/* 
 * Aquests estils sincronitzen la visió al front-end i al Gutenberg
 */
ol:not([class*="wp-block-"]) {
  list-style: decimal outside;
  padding-left: 2.25em;
  margin-bottom: 1.4em;
}
ul:not([class*="wp-block-"]) {
  list-style: disc outside;
  padding-left: 2.25em;
  margin-bottom: 1.4em;
}
p,
li {
  padding: 0;
  margin: 0 0 1.4em 0;
  line-height: 1.4em;
}
li {
  margin: 0 0 0.7em 0;
}
a:not(.wp-block-button__link) {
  color: #002d72;
  text-decoration: none;
}
a:not(.wp-block-button__link):hover {
  color: #ffd100;
  text-decoration: underline;
}
/* 
 * Pagina cercador
 */
body.search main {
  margin-top: 200px;
}
body.search .wp-block-query-title {
  margin-bottom: 1.5em;
}
nav.wp-block-query-pagination {
  justify-content: center;
  font-size: 4em;
  line-height: 3em;
}
/* 
 * Overrides als estils de moduls nadius WP
 */
.wp-block-button + .wp-block-button {
  margin-left: 20px;
}
.wp-block-button__link {
  border-radius: 30px;
  text-decoration: none;
  border: 0;
  padding: 2px 0;
  min-width: 130px;
  line-height: 1.3em;
  display: inline-block;
  text-align: center;
  font-weight: 400;
  display: flex;
  align-items: center;
  font-weight: bold;
}
.wp-block-button__link::after {
  content: "\e900";
  vertical-align: -0.25em;
  margin-left: 0.25em;
  font-size: 2em;
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: margin 0.25s ease-in-out;
}
.wp-block-button__link:hover::after {
  margin-left: 0.5em;
  margin-right: -0.25em;
}
.wp-block-button__link,
.is-style-blau-groc .wp-block-button__link {
  background: none;
  color: #002d72;
}
.is-style-blau-gris .wp-block-button__link {
  color: #002d72;
}
.is-style-blanc-groc .wp-block-button__link {
  color: #fff;
}
.is-style-gris-blau .wp-block-button__link {
  color: #5b5b5b;
}
.is-style-groc-blau .wp-block-button__link {
  color: #ffd100;
}
.wp-block-button__link:hover,
.is-style-blau-groc .wp-block-button__link:hover {
  background: none;
  color: #ffd100;
}
.is-style-blau-gris .wp-block-button__link:hover {
  color: #5b5b5b;
}
.is-style-blanc-groc .wp-block-button__link:hover {
  color: #ffd100;
}
.is-style-gris-blau .wp-block-button__link:hover {
  color: #002d72;
}
.is-style-groc-blau .wp-block-button__link:hover {
  color: #002d72;
}
.wp-block-gallery {
  gap: 1px !important;
}
/* ISSU */
.wp-block-embed-issuu .wp-block-embed__wrapper {
  position: relative;
  padding-bottom: 50%;
}
.wp-block-embed-issuu iframe {
  border: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
}
/* no funciona, fa un scroll al fer play!
.wp-block-embed.is-type-video {
	
	position: relative;
	overflow: hidden;
	padding-bottom: 41%;
	
	.wp-block-embed__wrapper {
		position: absolute;
		left: -7vw;
		right: -7vw;
		top: -4vw;
		bottom: -4vw;
	}
	iframe {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
	}
}
*/
/* 
 * Fix problemes Iphone
 */
.has-text-align-center strong {
  text-align: center;
}
/* 
 * Estils comuns, poder ser usats a diferents mòduls
 */
blockquote {
  padding-left: 3.07692308em;
}
blockquote blockquote {
  padding-left: 0;
}
blockquote p:first-of-type:before,
blockquote p:last-child:after {
  content: '“';
  color: #002d72;
  margin-top: 0.1em;
  font-size: 2em;
  font-weight: 600;
}
@media screen and (max-width: 550px) {
  blockquote {
    padding-left: 2em;
  }
  blockquote p:first-of-type:before,
  blockquote p:last-child:after {
    font-size: 2.2em;
  }
}
blockquote p:first-of-type:before {
  position: absolute;
  margin-left: -0.5em;
}
blockquote p:last-child:after {
  content: '”';
  vertical-align: -0.6em;
  margin-left: 0.1em;
}
blockquote p.has-text-color:first-of-type:before,
blockquote p.has-text-color:last-child:after {
  color: inherit;
}
ol.com_items-seguits,
ul.com_items-seguits {
  list-style: none;
  padding-left: 0;
}
ol.com_items-seguits li,
ul.com_items-seguits li {
  display: inline;
}
.com_control-logos img {
  max-width: 75%;
  height: auto;
}
.maq-contenidor {
  width: 100%;
  max-width: 1360px;
  padding-left: 80px;
  padding-right: 80px;
  margin: auto;
  box-sizing: border-box;
}
.maq-contenidor.moltestreta {
  max-width: 800px;
}
.maq-contenidor.estreta {
  max-width: 1000px;
}
.maq-contenidor.fullwidth {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
.maq-mig-contenidor {
  width: 100%;
  box-sizing: border-box;
}
.maq-mig-contenidor.moltestreta {
  max-width: 400px;
}
.maq-mig-contenidor.estreta {
  max-width: 500px;
}
.maq-mig-contenidor.esq {
  margin-right: auto;
  padding-right: 80px;
}
.maq-mig-contenidor.dreta {
  margin-left: auto;
  padding-left: 80px;
}
@media only screen and (min-width: calc(1070px + 1px)) {
  .maq-mig-contenidor {
    max-width: 680px;
  }
}
@media only screen and (max-width: 1070px) {
  .maq-mig-contenidor {
    margin-right: auto;
    margin-left: auto;
    padding-right: 80px;
    padding-left: 80px;
  }
}
@media only screen and (max-width: 1070px) {
  .maq-contenidor,
  .maq-mig-contenidor {
    padding-right: 35px;
    padding-left: 35px;
  }
}
.mod-franja.marge-superior-petit,
.maq-contenidor.marge-superior-petit {
  margin-top: 75px;
}
.mod-franja.marge-superior-gran,
.maq-contenidor.marge-superior-gran {
  margin-top: 150px;
}
.mod-franja.marge-inferior-petit,
.maq-contenidor.marge-inferior-petit {
  margin-bottom: 75px;
}
.mod-franja.marge-inferior-gran,
.maq-contenidor.marge-inferior-gran {
  margin-bottom: 150px;
}
.padding_fondo {
  padding-top: 75px;
  padding-bottom: 75px;
}
.padding_fondo_finet {
  padding-top: 30px;
  padding-bottom: 30px;
}
.padding_fondo_xxl {
  padding-top: 150px;
  padding-bottom: 150px;
}
.slick-arrow {
  position: absolute;
  margin-left: 10px;
  margin-top: -24px;
  cursor: pointer;
  font-size: 32px;
  top: 50%;
  z-index: 1;
  color: #002d72;
}
.slick-arrow.dreta {
  margin-left: auto;
  margin-right: 10px;
  right: 0;
}
.slick-arrow:hover {
  color: #ffd100;
}
@media only screen and (min-width: 1500px) {
  .slick-arrow {
    margin-left: 50px;
  }
  .slick-arrow.dreta {
    margin-right: 50px;
  }
}
.slick-slider {
  text-align: center;
}
.slick-dots {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  display: inline-block;
  padding-left: 0 !important;
  list-style: none;
  margin-top: -50px !important;
}
.slick-dots li {
  display: inline-block;
  margin: auto;
  font-size: 0;
  width: 6px;
  height: 6px;
  margin: 0 5px;
  border-radius: 50%;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li:hover,
.slick-dots li.slick-active {
  background: #fff;
}
.slick-dots button {
  background: #fff;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  font-size: 0;
  overflow: hidden;
  padding: 0;
  display: block;
  outline: none;
  cursor: pointer;
}
.slick-dots li:hover button,
.slick-dots li.slick-active button {
  background: #002d72;
}
.post-wrapper img {
  width: 100%;
  height: auto;
}
.mod_paginacio {
  font-size: 70px;
  font-weight: 300;
  margin-top: 1em;
}
.mod_paginacio p {
  text-align: center;
}
.mod_paginacio .page-numbers {
  margin: 0 0.25em;
}
.mod_paginacio .current {
  color: #002d72;
}
.mod_paginacio a:hover {
  text-decoration: none;
}
.wp-block-calafgrup-franja {
  position: relative;
}
.wp-block-calafgrup-franja .maq-contenidor {
  position: relative;
  z-index: 2;
}
.wp-block-calafgrup-franja .capa-blur,
.wp-block-calafgrup-franja .capa-color,
.wp-block-calafgrup-franja .background {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.wp-block-calafgrup-franja .background {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.wp-block-calafgrup-franja.sense_background .background {
  background-image: none !important;
}
.wp-block-calafgrup-franja.somriure-malva {
  padding-bottom: 150px;
}
.wp-block-calafgrup-franja.somriure-malva .background {
  background: url(img/curva-sonrisa.svg) no-repeat bottom center;
  background-size: cover;
  z-index: 1;
  margin-bottom: -1px;
}
.wp-site-blocks .mod-columnes-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  /* 12 columnes */
  width: 100%;
  /* Amplada completa */
}
.wp-site-blocks .mod-columnes-grid.gap-filet {
  margin-top: 4px;
  margin-bottom: 4px;
  gap: 4px;
  /* Gutter entre columnes */
}
.wp-site-blocks .mod-columnes-grid.gap-petit {
  margin-top: 20px;
  margin-bottom: 20px;
  gap: 20px;
}
.wp-site-blocks .mod-columnes-grid.gap-gran {
  margin-top: 40px;
  margin-bottom: 40px;
  gap: 40px;
}
@media only screen and (max-width: 670px) {
  .wp-site-blocks .mod-columnes-grid.gap-gran {
    margin-top: 20px;
    margin-bottom: 20px;
    gap: 20px;
  }
}
.wp-site-blocks .mod-columnes-flex {
  display: flex;
  flex-wrap: wrap;
}
.wp-site-blocks .mod-columnes-flex.gap-filet {
  margin-left: -4px;
  gap: 4px 0;
}
.wp-site-blocks .mod-columnes-flex.gap-filet > .mod-cgw {
  padding-left: 4px;
  /* Gutter entre columnes */
  box-sizing: border-box;
}
.wp-site-blocks .mod-columnes-flex.gap-petit {
  margin-left: -20px;
  gap: 20px 0;
}
.wp-site-blocks .mod-columnes-flex.gap-petit > .mod-cgw {
  padding-left: 20px;
  /* Gutter entre columnes */
  box-sizing: border-box;
}
.wp-site-blocks .mod-columnes-flex.gap-gran {
  margin-left: -40px;
  gap: 40px 0;
}
.wp-site-blocks .mod-columnes-flex.gap-gran > .mod-cgw {
  padding-left: 40px;
  box-sizing: border-box;
}
@media only screen and (max-width: 670px) {
  .wp-site-blocks .mod-columnes-flex.gap-gran {
    margin-left: -20px;
    gap: 20px 0;
  }
  .wp-site-blocks .mod-columnes-flex.gap-gran > .mod-cgw {
    padding-left: 20px;
  }
}
.wp-site-blocks .mod-columnes-flex.esquerra-orfes {
  justify-content: flex-start;
}
.wp-site-blocks .mod-columnes-flex.centra-orfes {
  justify-content: center;
}
.wp-site-blocks .mod-columnes-flex.dreta-orfes {
  justify-content: flex-end;
}
@media only screen and (min-width: calc(1070px + 1px)) {
  .defam_dsk-1 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 1;
  }
  .defam_dsk-2 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 2;
  }
  .defam_dsk-3 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 3;
  }
  .defam_dsk-4 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 4;
  }
  .defam_dsk-5 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 5;
  }
  .defam_dsk-6 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 6;
  }
  .defam_dsk-7 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 7;
  }
  .defam_dsk-8 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 8;
  }
  .defam_dsk-9 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 9;
  }
  .defam_dsk-10 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 10;
  }
  .defam_dsk-11 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 11;
  }
  .defam_dsk-12 > .mod-cgw:not([class*="am_dsk-"]) {
    grid-column-end: span 12;
  }
  .mod-cgw.in_dsk-1 {
    grid-column-start: 1;
  }
  .mod-cgw.am_dsk-1 {
    grid-column-end: span 1;
  }
  .mod-cgw.in_dsk-2 {
    grid-column-start: 2;
  }
  .mod-cgw.am_dsk-2 {
    grid-column-end: span 2;
  }
  .mod-cgw.in_dsk-3 {
    grid-column-start: 3;
  }
  .mod-cgw.am_dsk-3 {
    grid-column-end: span 3;
  }
  .mod-cgw.in_dsk-4 {
    grid-column-start: 4;
  }
  .mod-cgw.am_dsk-4 {
    grid-column-end: span 4;
  }
  .mod-cgw.in_dsk-5 {
    grid-column-start: 5;
  }
  .mod-cgw.am_dsk-5 {
    grid-column-end: span 5;
  }
  .mod-cgw.in_dsk-6 {
    grid-column-start: 6;
  }
  .mod-cgw.am_dsk-6 {
    grid-column-end: span 6;
  }
  .mod-cgw.in_dsk-7 {
    grid-column-start: 7;
  }
  .mod-cgw.am_dsk-7 {
    grid-column-end: span 7;
  }
  .mod-cgw.in_dsk-8 {
    grid-column-start: 8;
  }
  .mod-cgw.am_dsk-8 {
    grid-column-end: span 8;
  }
  .mod-cgw.in_dsk-9 {
    grid-column-start: 9;
  }
  .mod-cgw.am_dsk-9 {
    grid-column-end: span 9;
  }
  .mod-cgw.in_dsk-10 {
    grid-column-start: 10;
  }
  .mod-cgw.am_dsk-10 {
    grid-column-end: span 10;
  }
  .mod-cgw.in_dsk-11 {
    grid-column-start: 11;
  }
  .mod-cgw.am_dsk-11 {
    grid-column-end: span 11;
  }
  .mod-cgw.in_dsk-12 {
    grid-column-start: 12;
  }
  .mod-cgw.am_dsk-12 {
    grid-column-end: span 12;
  }
  .cols-dsk-2 > .mod-cgw {
    width: 50%;
  }
  .cols-dsk-3 > .mod-cgw {
    width: 33.33333333%;
  }
  .cols-dsk-4 > .mod-cgw {
    width: 25%;
  }
  .cols-dsk-5 > .mod-cgw {
    width: 20%;
  }
  .cols-dsk-6 > .mod-cgw {
    width: 16.66666667%;
  }
}
@media only screen and (max-width: 1070px) and (min-width: calc(670px + 1px)) {
  .defam_tbl-1 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 1;
  }
  .defam_tbl-2 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 2;
  }
  .defam_tbl-3 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 3;
  }
  .defam_tbl-4 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 4;
  }
  .defam_tbl-5 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 5;
  }
  .defam_tbl-6 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 6;
  }
  .defam_tbl-7 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 7;
  }
  .defam_tbl-8 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 8;
  }
  .defam_tbl-9 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 9;
  }
  .defam_tbl-10 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 10;
  }
  .defam_tbl-11 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 11;
  }
  .defam_tbl-12 > .mod-cgw:not([class*="am_tbl-"]) {
    grid-column-end: span 12;
  }
  .mod-cgw.in_tbl-1 {
    grid-column-start: 1;
  }
  .mod-cgw.am_tbl-1 {
    grid-column-end: span 1;
  }
  .mod-cgw.in_tbl-2 {
    grid-column-start: 2;
  }
  .mod-cgw.am_tbl-2 {
    grid-column-end: span 2;
  }
  .mod-cgw.in_tbl-3 {
    grid-column-start: 3;
  }
  .mod-cgw.am_tbl-3 {
    grid-column-end: span 3;
  }
  .mod-cgw.in_tbl-4 {
    grid-column-start: 4;
  }
  .mod-cgw.am_tbl-4 {
    grid-column-end: span 4;
  }
  .mod-cgw.in_tbl-5 {
    grid-column-start: 5;
  }
  .mod-cgw.am_tbl-5 {
    grid-column-end: span 5;
  }
  .mod-cgw.in_tbl-6 {
    grid-column-start: 6;
  }
  .mod-cgw.am_tbl-6 {
    grid-column-end: span 6;
  }
  .mod-cgw.in_tbl-7 {
    grid-column-start: 7;
  }
  .mod-cgw.am_tbl-7 {
    grid-column-end: span 7;
  }
  .mod-cgw.in_tbl-8 {
    grid-column-start: 8;
  }
  .mod-cgw.am_tbl-8 {
    grid-column-end: span 8;
  }
  .mod-cgw.in_tbl-9 {
    grid-column-start: 9;
  }
  .mod-cgw.am_tbl-9 {
    grid-column-end: span 9;
  }
  .mod-cgw.in_tbl-10 {
    grid-column-start: 10;
  }
  .mod-cgw.am_tbl-10 {
    grid-column-end: span 10;
  }
  .mod-cgw.in_tbl-11 {
    grid-column-start: 11;
  }
  .mod-cgw.am_tbl-11 {
    grid-column-end: span 11;
  }
  .mod-cgw.in_tbl-12 {
    grid-column-start: 12;
  }
  .mod-cgw.am_tbl-12 {
    grid-column-end: span 12;
  }
  .mod-cgw.or_tbl-1 {
    order: 1;
  }
  .mod-cgw.or_tbl-2 {
    order: 2;
  }
  .mod-cgw.or_tbl-3 {
    order: 3;
  }
  .mod-cgw.or_tbl-4 {
    order: 4;
  }
  .mod-cgw.or_tbl-5 {
    order: 5;
  }
  .cols-tbl-1 > .mod-cgw {
    width: 100%;
  }
  .cols-tbl-2 > .mod-cgw {
    width: 50%;
  }
  .cols-tbl-3 > .mod-cgw {
    width: 33.33333333%;
  }
  .cols-tbl-4 > .mod-cgw {
    width: 25%;
  }
  .cols-tbl-5 > .mod-cgw {
    width: 20%;
  }
  .cols-tbl-6 > .mod-cgw {
    width: 16.66666667%;
  }
}
@media only screen and (max-width: 670px) {
  .defam_mob-1 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 1;
  }
  .defam_mob-2 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 2;
  }
  .defam_mob-3 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 3;
  }
  .defam_mob-4 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 4;
  }
  .defam_mob-5 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 5;
  }
  .defam_mob-6 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 6;
  }
  .defam_mob-7 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 7;
  }
  .defam_mob-8 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 8;
  }
  .defam_mob-9 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 9;
  }
  .defam_mob-10 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 10;
  }
  .defam_mob-11 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 11;
  }
  .defam_mob-12 > .mod-cgw:not([class*="am_mob-"]) {
    grid-column-end: span 12;
  }
  .mod-cgw.in_mob-1 {
    grid-column-start: 1;
  }
  .mod-cgw.am_mob-1 {
    grid-column-end: span 1;
  }
  .mod-cgw.in_mob-2 {
    grid-column-start: 2;
  }
  .mod-cgw.am_mob-2 {
    grid-column-end: span 2;
  }
  .mod-cgw.in_mob-3 {
    grid-column-start: 3;
  }
  .mod-cgw.am_mob-3 {
    grid-column-end: span 3;
  }
  .mod-cgw.in_mob-4 {
    grid-column-start: 4;
  }
  .mod-cgw.am_mob-4 {
    grid-column-end: span 4;
  }
  .mod-cgw.in_mob-5 {
    grid-column-start: 5;
  }
  .mod-cgw.am_mob-5 {
    grid-column-end: span 5;
  }
  .mod-cgw.in_mob-6 {
    grid-column-start: 6;
  }
  .mod-cgw.am_mob-6 {
    grid-column-end: span 6;
  }
  .mod-cgw.in_mob-7 {
    grid-column-start: 7;
  }
  .mod-cgw.am_mob-7 {
    grid-column-end: span 7;
  }
  .mod-cgw.in_mob-8 {
    grid-column-start: 8;
  }
  .mod-cgw.am_mob-8 {
    grid-column-end: span 8;
  }
  .mod-cgw.in_mob-9 {
    grid-column-start: 9;
  }
  .mod-cgw.am_mob-9 {
    grid-column-end: span 9;
  }
  .mod-cgw.in_mob-10 {
    grid-column-start: 10;
  }
  .mod-cgw.am_mob-10 {
    grid-column-end: span 10;
  }
  .mod-cgw.in_mob-11 {
    grid-column-start: 11;
  }
  .mod-cgw.am_mob-11 {
    grid-column-end: span 11;
  }
  .mod-cgw.in_mob-12 {
    grid-column-start: 12;
  }
  .mod-cgw.am_mob-12 {
    grid-column-end: span 12;
  }
  .mod-cgw.or_mob-1 {
    order: 1;
  }
  .mod-cgw.or_mob-2 {
    order: 2;
  }
  .mod-cgw.or_mob-3 {
    order: 3;
  }
  .mod-cgw.or_mob-4 {
    order: 4;
  }
  .mod-cgw.or_mob-5 {
    order: 5;
  }
  .cols-mob-1 > .mod-cgw {
    width: 100%;
  }
  .cols-mob-2 > .mod-cgw {
    width: 50%;
  }
  .cols-mob-3 > .mod-cgw {
    width: 33.33333333%;
  }
  .cols-mob-4 > .mod-cgw {
    width: 25%;
  }
}
.mod-grid-responsive {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.mod-grid-responsive.valign-superior {
  justify-content: flex-start;
}
.mod-grid-responsive.valign-centrat {
  justify-content: center;
}
.mod-grid-responsive.valign-inferior {
  justify-content: flex-end;
}
.mod-grid-responsive.valign-justificat {
  justify-content: space-between;
}
.mod-grid-responsive > *:last-child {
  margin-bottom: 0;
}
.wp-block-calafgrup-cabecera {
  /*
	@media screen and ( max-width: 800px ) {
		iframe {
			top: -10vw;
			left: -20vw;
			right: -20vw;
			width: 140vw;
			height: 150%;
		}
	}
	@media screen and ( max-width: 600px ) {
		.maq-contenidor {
			min-height: 80vw;
		}
		iframe {
			top: -10vw;
			left: -25vw;
			right: -20vw;
			width: 150vw;
			height: 120vw;
		}
	}
	*/
}
.wp-block-calafgrup-cabecera .maq-contenidor {
  min-height: 33vh;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-block-calafgrup-cabecera.full .maq-contenidor {
  height: 100vh;
}
.wp-block-calafgrup-cabecera.full .video-resizer {
  padding-bottom: 114vw;
}
.wp-block-calafgrup-cabecera.f1_2 .maq-contenidor {
  min-height: 0;
  height: 50vh;
}
.wp-block-calafgrup-cabecera.f1_2 .video-resizer {
  padding-bottom: 64vw;
}
.wp-block-calafgrup-cabecera.f16_9 .maq-contenidor {
  min-height: 0;
  height: 56.25vw;
}
.wp-block-calafgrup-cabecera.f16_9 .video-resizer {
  padding-bottom: 70.25vw;
}
@media screen and (max-width: 550px) {
  .wp-block-calafgrup-cabecera.f16_9 .maq-contenidor {
    height: 75vw;
  }
  .wp-block-calafgrup-cabecera.f16_9 .video-resizer {
    padding-bottom: 89vw;
    margin-left: -25vw;
    width: 150vw;
  }
  .wp-block-calafgrup-cabecera.f16_9 .text {
    margin-top: 12vw;
  }
}
.wp-block-calafgrup-cabecera.fina .maq-contenidor {
  min-height: 15vw;
}
.wp-block-calafgrup-cabecera.fina .video-resizer {
  padding-bottom: 29vw;
}
.wp-block-calafgrup-cabecera .image {
  background: #c4c6c7 no-repeat center center;
  background-size: cover;
  display: flex;
}
.wp-block-calafgrup-cabecera .video-wrapper {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.wp-block-calafgrup-cabecera .video-resizer {
  margin-top: -7vw;
  margin-left: -7vw;
  position: relative;
  width: 114vw;
}
.wp-block-calafgrup-cabecera iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.wp-block-calafgrup-cabecera img {
  max-width: 35vw;
}
.wp-block-calafgrup-cabecera .slide {
  position: relative;
}
.wp-block-calafgrup-cabecera .wp-block-embed,
.wp-block-calafgrup-cabecera .media-wrapper,
.wp-block-calafgrup-cabecera .image,
.wp-block-calafgrup-cabecera .capa-color {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.wp-block-calafgrup-cabecera.linea {
  border-bottom: #002d72 4px solid;
  min-height: 100px;
}
.wp-block-calafgrup-cabecera .wp-block-image {
  max-width: 60vw;
}
.mod_breadcrumb {
  margin-top: 10px;
  margin-bottom: 3em;
}
.mod_breadcrumb ul {
  padding: 0;
}
.mod_breadcrumb li {
  font-size: 16px;
  display: inline;
  list-decoration: none;
  margin: none;
}
.mod_breadcrumb li:before {
  content: '_';
  margin: 0 0.25em;
}
.mod_breadcrumb li:first-child:before {
  margin-left: 0;
  display: none;
}
.mod_breadcrumb a {
  color: #002d72;
}
.mod-el-landing .tag-a-edit,
.mod-el-landing a {
  position: relative;
  padding-bottom: 50%;
  display: block;
  overflow: hidden;
}
@media only screen and (max-width: 670px) {
  .mod-el-landing .tag-a-edit,
  .mod-el-landing a {
    padding-bottom: 75%;
  }
}
.mod-el-landing .text,
.mod-el-landing .image {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.mod-el-landing .text {
  display: flex;
  background: rgba(0, 45, 114, 0.3);
  transition: background 0.25s ease-in-out;
  color: #fff;
  font-weight: bold;
  z-index: 1;
  justify-content: center;
  align-items: center;
}
.mod-el-landing .text p {
  margin-bottom: 0;
  font-size: 1.2em;
}
.mod-el-landing .image {
  background: #c4c6c7 no-repeat center center;
  background-size: cover;
  transition: transform 0.25s ease-in-out;
}
.mod-el-landing a:hover .image {
  transform: scale(1.2);
}
.mod-el-landing .tag-a-edit:hover .text,
.mod-el-landing a:hover .text {
  color: #fff;
  background: rgba(0, 0, 0, 0.2);
}
.mod-dada {
  text-align: center;
  padding: 1em 1em 2em 1em;
  /*
	.text {
		font-size: 0.75em;
	}
	*/
}
.mod-dada p {
  text-align: center;
  color: #002d72;
  margin-bottom: 0;
}
.mod-dada p.numeric {
  font-weight: 300;
  font-size: 70px;
}
@media only screen and (min-width: 1071px) {
  .mod-dada p.numeric {
    font-size: 5.5vw;
  }
}
.wp-block-calafgrup-youtube-retallat {
  position: relative;
}
.wp-block-calafgrup-youtube-retallat.f1_2 {
  padding-bottom: 50%;
}
.wp-block-calafgrup-youtube-retallat.f16_9 {
  padding-bottom: 56.25%;
}
.wp-block-calafgrup-youtube-retallat.f4_3 {
  padding-bottom: 75%;
}
.wp-block-calafgrup-youtube-retallat .video-wrapper {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.wp-block-calafgrup-youtube-retallat .video-resizer {
  top: -7vw;
  bottom: -7vw;
  left: -10vw;
  right: -10vw;
  position: absolute;
  width: 120vw;
}
@media screen and (max-width: 550px) {
  .wp-block-calafgrup-youtube-retallat.f1_2,
  .wp-block-calafgrup-youtube-retallat.f16_9,
  .wp-block-calafgrup-youtube-retallat.f4_3 {
    padding-bottom: 75%;
  }
  .wp-block-calafgrup-youtube-retallat .video-resizer {
    left: -25vw;
    right: -25vw;
    top: -10vw;
    bottom: -10vw;
    width: 150vw;
  }
}
.wp-block-calafgrup-youtube-retallat iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.mod-carrusel {
  /*
    &.com_color_modular .fletxa {
        color: @colorModular;
    }
	*/
  /*
    &.com_color_modular .slider_thumbs .slick-current a {
        border-color: @colorModular;
    }
	*/
}
.mod-carrusel .zoom {
  position: relative;
  margin-bottom: 7px;
  background: #eee;
  min-height: 30vw;
}
.mod-carrusel .fletxa {
  position: absolute;
  right: 25px;
  left: auto;
  top: 50%;
  font-size: 50px;
  margin-top: -25px;
  z-index: 2;
  color: #ffffff;
  cursor: pointer;
}
.mod-carrusel .fletxa.esquerra {
  left: 25px;
  right: auto;
}
.mod-carrusel.com_color_modular .fletxa:hover,
.mod-carrusel .fletxa:hover {
  color: #ffd100;
}
.mod-carrusel img {
  display: block;
  width: 100%;
  height: auto;
}
.mod-carrusel .slider_thumbs:not(.slick-initialized) {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.mod-carrusel .slider_thumbs .slick-track {
  margin: auto;
}
.mod-carrusel .slider_thumbs a {
  display: block;
  margin: auto 3px;
  border: transparent 2px solid;
  position: relative;
  padding-bottom: 50%;
}
.mod-carrusel .slider_thumbs a.errorTamany:after {
  background: #fff;
  display: block;
  font-size: 15px;
  padding: 5px 8px 6px;
  border-radius: 50%;
  position: absolute;
  margin-left: 5px;
  margin-top: 5px;
  content: '📐';
  z-index: 1;
}
.mod-carrusel .slider_thumbs img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
}
.mod-carrusel .slider_thumbs .slick-current a:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0, 45, 114, 0.6);
  z-index: 1;
}
@media screen and (max-width: 1000px) {
  .mod-carrusel .fletxa {
    font-size: 10vw;
    margin-top: -5vw;
    right: 2vw;
  }
  .mod-carrusel .fletxa.esquerra {
    left: 2vw;
    right: auto;
  }
}
@media screen and (max-width: 670px) {
  .mod-carrusel {
    /*
		.slider_thumbs {
			display: none;
		.fletxa {
			display: none;
		}
		}*/
  }
}
.mod-escacs .cols_2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.mod-escacs .col {
  position: relative;
}
.mod-escacs .imatge_fons {
  position: relative;
  padding-bottom: 75%;
}
.mod-escacs .imatge_fons .bg-img {
  background: no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.mod-escacs .bloc_text {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-left: 40px;
  padding-right: 40px;
}
@media screen and (max-width: 550px) {
  .mod-escacs .bloc_text {
    padding-left: 25px;
    padding-right: 25px;
  }
}
.mod-escacs .esq.bloc_text {
  align-items: flex-end;
}
.mod-escacs .mig-contenidor {
  max-width: 560px;
}
.mod-escacs .logo_centrat {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
.mod-escacs .capa-color {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}
.mod-escacs .col.video_yt_auto,
.mod-escacs .col.video_yt {
  padding-bottom: 56%;
  overflow: hidden;
  position: relative;
}
.mod-escacs .video-wrapper {
  position: absolute;
  /*
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		*/
  left: -7vw;
  bottom: -5vw;
  top: -5vw;
  right: -7vw;
}
.mod-escacs .video-resizer {
  /*
		position: relative;
		width: 100%;
		padding-bottom: 65%;
		//transform: scale(1.2);
		*/
  position: absolute;
  /*
		width: auto;
		left: -7vw;
		bottom: -5vw;
		top: -5vw;
		right: -7vw;
		*/
  aspect-ratio: 1.77777778;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}
.mod-escacs .video_overlay,
.mod-escacs iframe {
  position: absolute;
  /*
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		*/
  width: 100%;
  height: 100%;
  aspect-ratio: 1.77777778;
}
.mod-escacs .logo-wrapper {
  display: block;
  margin: 3vw auto;
  padding: 20px;
}
.mod-escacs .logo-wrapper img {
  max-width: 300px;
  height: auto;
  width: 30vw;
}
@media screen and (max-width: 670px) {
  .mod-escacs .cols_2 {
    grid-template-columns: 1fr;
  }
  .mod-escacs .responsive-dreta_dalt .col.esq {
    order: 1;
  }
  .mod-escacs .logo_centrat {
    min-height: 75vw;
    position: relative;
  }
  .mod-escacs .logo_centrat:before {
    content: '';
    height: 1px;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.2);
    display: block;
    position: absolute;
  }
  .mod-escacs .responsive-dreta_dalt .col.esq.logo_centrat:before {
    top: 0;
    bottom: auto;
  }
  .mod-escacs .logo-wrapper img {
    max-width: none;
    width: 70vw;
  }
  .mod-escacs .col.video_yt_auto,
  .mod-escacs .col.video_yt {
    padding-bottom: 56vw;
  }
  .mod-escacs .video-wrapper {
    left: -15vw;
    bottom: -10vw;
    top: -10vw;
    right: -15vw;
  }
  .mod-escacs .video-resizer {
    aspect-ratio: auto;
    min-height: 100%;
    transform: none;
    top: auto;
    left: auto;
  }
  .mod-escacs .video_overlay,
  .mod-escacs iframe {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
}
.wp-site-blocks .mod-columnes-responsive {
  display: flex;
  flex-wrap: wrap;
}
.wp-site-blocks .mod-columna-responsive-wrapper {
  height: auto;
}
.mod-columna-responsive {
  overflow-wrap: break-word;
  word-break: break-word;
}
.mod-columna-responsive img {
  max-width: 100%;
  height: auto;
}
.mod-columna-responsive-wrapper,
.mod-columna-responsive {
  height: 100%;
}
/*
// Ajustos de l'editor
.mod-columnes-responsive > .block-editor-inner-blocks > .block-editor-block-list__layout {
	padding-top: 25px;
	padding-bottom: 25px;
	gap: 6px 2px;
}
.mod-columna-responsive > .block-editor-inner-blocks > .block-editor-block-list__layout {
	padding-left: 0;
	padding-right: 0;
}
*/
.wp-site-blocks .mod-columnes-responsive.gap-petit {
  gap: 20px;
}
.wp-site-blocks .mod-columnes-responsive.gap-gran {
  gap: 20px 40px;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-2 .mod-columna-responsive-wrapper {
  width: 50%;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-2.gap-petit .mod-columna-responsive-wrapper {
  width: calc( 50%  -  13.33333333px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-2.gap-gran .mod-columna-responsive-wrapper {
  width: calc( 50%  -  26.66666667px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-3 .mod-columna-responsive-wrapper {
  width: 33.33333333%;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-3.gap-petit .mod-columna-responsive-wrapper {
  width: calc( 33.33333333%  -  15px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-3.gap-gran .mod-columna-responsive-wrapper {
  width: calc( 33.33333333%  -  30px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-4 .mod-columna-responsive-wrapper {
  width: 25%;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-4.gap-petit .mod-columna-responsive-wrapper {
  width: calc( 25%  -  16px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-4.gap-gran .mod-columna-responsive-wrapper {
  width: calc( 25%  -  32px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-5 .mod-columna-responsive-wrapper {
  width: 20%;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-5.gap-petit .mod-columna-responsive-wrapper {
  width: calc( 20%  -  16.66666667px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-5.gap-gran .mod-columna-responsive-wrapper {
  width: calc( 20%  -  33.33333333px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-6 .mod-columna-responsive-wrapper {
  width: 16.66666667%;
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-6.gap-petit .mod-columna-responsive-wrapper {
  width: calc( 16.66666667%  -  17.14285714px );
}
.wp-site-blocks .mod-columnes-responsive.cols-dsk-6.gap-gran .mod-columna-responsive-wrapper {
  width: calc( 16.66666667%  -  34.28571429px );
}
@media only screen and (max-width: 1070px) and (min-width: calc(670px + 1px)) {
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-1 .mod-columna-responsive-wrapper {
    width: 100%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-1.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 100%  -  10px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-1.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 100%  -  20px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-2 .mod-columna-responsive-wrapper {
    width: 50%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-2.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 50%  -  13.33333333px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-2.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 50%  -  26.66666667px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-3 .mod-columna-responsive-wrapper {
    width: 33.33333333%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-3.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 33.33333333%  -  15px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-3.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 33.33333333%  -  30px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-4 .mod-columna-responsive-wrapper {
    width: 25%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-4.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 25%  -  16px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-4.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 25%  -  32px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-5 .mod-columna-responsive-wrapper {
    width: 20%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-5.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 20%  -  16.66666667px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-5.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 20%  -  33.33333333px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-6 .mod-columna-responsive-wrapper {
    width: 16.66666667%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-6.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 16.66666667%  -  17.14285714px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-tbl-6.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 16.66666667%  -  34.28571429px );
  }
}
@media only screen and (max-width: 670px) {
  .wp-site-blocks .mod-columnes-responsive.cols-mob-1 .mod-columna-responsive-wrapper {
    width: 100%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-1.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 100%  -  10px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-1.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 100%  -  20px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-2 .mod-columna-responsive-wrapper {
    width: 50%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-2.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 50%  -  13.33333333px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-2.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 50%  -  26.66666667px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-3 .mod-columna-responsive-wrapper {
    width: 33.33333333%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-3.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 33.33333333%  -  15px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-3.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 33.33333333%  -  30px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-4 .mod-columna-responsive-wrapper {
    width: 25%;
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-4.gap-petit .mod-columna-responsive-wrapper {
    width: calc( 25%  -  16px );
  }
  .wp-site-blocks .mod-columnes-responsive.cols-mob-4.gap-gran .mod-columna-responsive-wrapper {
    width: calc( 25%  -  32px );
  }
}
/*
.mod-columnes-responsive {
	.mixin_columnes_back( dsk, 2 );
	.mixin_columnes_back( dsk, 3 );
	.mixin_columnes_back( dsk, 4 );
	.mixin_columnes_back( dsk, 5 );
	.mixin_columnes_back( dsk, 6 );

	@media only screen and (max-width: 850px) {
		.mixin_columnes_back( tbl, 1 );
		.mixin_columnes_back( tbl, 2 );
		.mixin_columnes_back( tbl, 3 );
		.mixin_columnes_back( tbl, 4 );
		.mixin_columnes_back( tbl, 5 );
		.mixin_columnes_back( tbl, 6 );
	}
	@media only screen and (max-width: 450px) {
		.mixin_columnes_back( mob, 1 );
		.mixin_columnes_back( mob, 2 );
		.mixin_columnes_back( mob, 3 );
		.mixin_columnes_back( mob, 4 );
	}
}

.mixin_columnes_back(@ample, @ncols) {
	@relacioColsGap: @ncols / ( @ncols + 1 );
    &.cols-@{ample}-@{ncols} > .block-editor-inner-blocks > .block-editor-block-list__layout > .wp-block {
        width: ~"calc("(100% / @ncols)~" - "(2px*@relacioColsGap)~")";
    }
    &.cols-@{ample}-@{ncols}.gap-petit > .block-editor-inner-blocks > .block-editor-block-list__layout > .wp-block {
        width: ~"calc("(100% / @ncols)~" - "(@colsGapPetit*@relacioColsGap)~")";
    }
    &.cols-@{ample}-@{ncols}.gap-gran > .block-editor-inner-blocks > .block-editor-block-list__layout > .wp-block {
        width: ~"calc("(100% / @ncols)~" - "(@colsGapGran*@relacioColsGap)~")";
    }
}
*/
.wp-site-blocks .mod-columna-responsive {
  display: flex;
  flex-direction: column;
}
.wp-site-blocks .mod-columna-responsive.valign-superior {
  justify-content: flex-start;
}
.wp-site-blocks .mod-columna-responsive.valign-centrat {
  justify-content: center;
}
.wp-site-blocks .mod-columna-responsive.valign-inferior {
  justify-content: flex-end;
}
.wp-site-blocks .mod-columna-responsive.valign-justificat {
  justify-content: space-between;
}
.wp-site-blocks .mod-columnes-responsive.centra-orfes {
  justify-content: center;
}
.wp-site-blocks .mod-columnes-responsive.esquerra-orfes {
  justify-content: flex-start;
}
.wp-site-blocks .mod-columnes-responsive.dreta-orfes {
  justify-content: flex-end;
}
.wp-site-blocks .mod-columna-responsive > *:last-child {
  margin-bottom: 0;
}
.wp-block-calafgrup-logo-video .wrapper {
  position: relative;
  padding-bottom: 100%;
  /*
		&.f1_2 {
			padding-bottom: 50%;
		}
		&.f16_9 {
			padding-bottom: 100% / 16 * 9;
		}
		&.f4_3 {
			padding-bottom: 100% / 4 * 3;
		}
		*/
}
.wp-block-calafgrup-logo-video .wrapper:before {
  display: block;
  content: '';
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(img/mascara-cc.png) no-repeat center center;
  background-size: cover;
}
.wp-block-calafgrup-logo-video .wrapper .text,
.wp-block-calafgrup-logo-video .wrapper .text-superior {
  position: absolute;
  right: 50%;
  left: 0;
  top: 50%;
  text-align: right;
  color: #002d72;
  z-index: 2;
  font-weight: bold;
  font-size: 40px;
  line-height: 0;
}
.wp-block-calafgrup-logo-video .wrapper .text-superior a:hover {
  text-decoration: none;
}
.wp-block-calafgrup-logo-video .wrapper .text {
  font-size: 20px;
  right: 0;
  left: 60%;
  top: 0;
  bottom: 0;
  line-height: 1.2em;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
}
.wp-block-calafgrup-logo-video .wrapper .text p {
  margin-bottom: 0;
}
.wp-block-calafgrup-logo-video .wrapper .video-wrapper {
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.wp-block-calafgrup-logo-video .wrapper .video-resizer {
  left: -25vw;
  right: -25vw;
  top: -10vw;
  bottom: -10vw;
  position: absolute;
  width: auto;
}
@media screen and (max-width: 550px) {
  .wp-block-calafgrup-logo-video .wrapper {
    /*
			&.f1_2,
			&.f16_9,
			&.f4_3 {
				padding-bottom: 100% / 4 * 3;
			}
			*/
  }
  .wp-block-calafgrup-logo-video .wrapper .video-resizer {
    left: -25vw;
    right: -25vw;
    top: -10vw;
    bottom: -10vw;
    width: 150vw;
  }
}
.wp-block-calafgrup-logo-video .wrapper .after-player,
.wp-block-calafgrup-logo-video .wrapper iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.wp-block-calafgrup-logo-video .wrapper .after-player {
  background: #002d74;
}
.wp-block-calafgrup-logo-video .text-mobile,
.wp-block-calafgrup-logo-video .text-superior-mobile {
  display: none;
}
.wp-block-calafgrup-logo-video .text-mobile p {
  text-align: center;
}
@media screen and (max-width: 1150px) {
  .wp-block-calafgrup-logo-video .text-mobile {
    display: block;
    font-weight: bold;
  }
  .wp-block-calafgrup-logo-video .wrapper .text {
    display: none;
  }
  .wp-block-calafgrup-logo-video .text-superior {
    text-align: center !important;
    width: 100%;
  }
}
.com_relacionats .post {
  overflow: hidden;
}
.com_relacionats a {
  display: block;
  position: relative;
  padding-bottom: 100%;
}
.com_relacionats a h3,
.com_relacionats a h2,
.com_relacionats a p {
  font-size: 1em;
  position: absolute;
  left: 20px;
  bottom: 20px;
  opacity: 0;
  padding: 20px;
  padding: 10px 20px;
  margin: 0;
  color: #fff;
  text-decoration: none;
  z-index: 2;
  transition: opacity 0.3s ease;
  font-weight: 600;
}
.com_relacionats a:before,
.com_relacionats a .img {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.com_relacionats a .img {
  transition: transform 0.3s ease;
  background: #aaaaaa no-repeat center center;
  background-size: cover;
}
.com_relacionats a:before {
  content: ' ';
  display: block;
  opacity: 0;
  background: #000;
  transition: opacity 0.3s ease;
  z-index: 1;
}
.com_relacionats a:hover:before {
  opacity: 0.4;
}
.com_relacionats a:hover .img {
  transform: scale(1.2);
}
.com_relacionats a:hover h3,
.com_relacionats a:hover h2,
.com_relacionats a:hover p {
  opacity: 1;
}
.wp-block-calafgrup-marquesrelacionades .callback-wrapper {
  padding: 0 80px;
}
.wp-block-calafgrup-marquesrelacionades .fletxa.esquerra {
  margin-left: -50px;
}
.wp-block-calafgrup-marquesrelacionades .fletxa.dreta {
  margin-right: -50px;
}
.wp-block-calafgrup-pagprojectesfiltrats {
  margin-top: 0 !important;
}
.filtres-projecte ul {
  text-align: center;
  padding-left: 0;
}
.filtres-projecte li {
  display: inline-block;
  list-style: none;
  margin: 0 1em;
  cursor: pointer;
  color: #002d72;
}
.filtres-projecte li:hover {
  text-decoration: underline;
}
.filtres-projecte li.active {
  font-weight: 600;
}
.filtres-projecte .filtre-projectes-destacats {
  font-size: 1.5em;
}
.filtres-projecte .filtre-projectes-destacats ul {
  margin-bottom: 0.2em;
}
@media (max-width: 650px) {
  .filtres-projecte li {
    display: block;
    margin: 0 10px;
  }
}
/**************************************
 * Moduls pel theme Calaf Grup
 * Theme v.4.0, 05/10/26
 **************************************/
/*
  Scripts pel block gallery + carrega la llibreria fancybox
 */
.wp-block-gallery a {
  overflow: hidden;
  display: block;
}
.wp-block-gallery a:hover {
  background: #002d72;
}
.wp-block-gallery img {
  transition: all 0.3s ease-in-out;
}
.wp-block-gallery a:hover img {
  transform: scale(1.2);
  opacity: 0.7;
}
body:after {
  content: '';
  display: block;
  opacity: 0;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
  background: rgba(0, 45, 114, 0.6);
}
body.mostra-menu-productes:after {
  opacity: 1;
  z-index: 99;
  animation: fadeInFromNone 0.5s ease-out;
}
body.mostra-menu-productes .wp-site-blocks > * {
  filter: blur(1px);
}
@keyframes fadeInFromNone {
  0% {
    opacity: 0;
    z-index: -1;
  }
  1% {
    opacity: 0;
    z-index: 99;
  }
  100% {
    opacity: 1;
    z-index: 99;
  }
}
.mod-menu-productes {
  width: 250px;
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 100;
  background: #fff;
  color: #5b5b5b;
  left: -250px;
  transition: left 0.5s ease-in-out;
}
body.mostra-menu-productes .mod-menu-productes {
  left: 0;
}
.mod-menu-productes ul:not(.foo) {
  padding: 0;
  margin-bottom: 0;
}
.mod-menu-productes .wp-block-site-logo {
  padding-left: 35px;
  padding-top: 14px;
}
body.admin-bar .mod-menu-productes .wp-block-site-logo {
  padding-top: 46px;
}
.mod-menu-productes .tancar {
  position: absolute;
  top: 24px;
  right: 20px;
}
body.admin-bar .mod-menu-productes .tancar {
  top: 56px;
}
.mod-menu-productes ul.menu {
  margin-top: 40px;
  list-style: none;
  padding-left: 35px;
  text-align: left;
}
.mod-menu-productes li {
  display: block;
  margin: 0;
  padding: 0;
}
.mod-menu-productes a:not(.foo) {
  padding: 0;
  display: block;
  color: #5b5b5b;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mod-menu-productes a:hover {
  text-decoration: none !important;
  color: #002d72;
}
.mod-menu-productes h4,
.mod-menu-productes h5 {
  text-transform: none;
  font-size: 1em;
  padding: 0;
}
@media only screen and (min-width: 801px) {
  .mod-menu-productes .submenu-wrapper {
    position: absolute;
    left: 250px;
    top: 80px;
    height: calc(100vh - 100px);
    padding: 0 10px;
    display: none;
    width: 800px;
    font-size: 13px;
  }
  .mod-menu-productes li:hover > .submenu-wrapper {
    display: block;
  }
  .mod-menu-productes .icon-chevron-right {
    margin-right: 10px;
  }
  .mod-menu-productes ul.menu > li {
    font-size: 16px;
    line-height: 1.6em;
  }
  .mod-menu-productes ul.menu > li:hover > a {
    color: #002d72;
  }
  .mod-menu-productes ul.sub-menu {
    column-count: 3;
    background: #fff;
    padding: 25px 30px;
    /*		
			li {
				display: block;
				margin: 0;
			}
			li.current-menu-item a {
				color: @colorTextInvers;
				text-decoration: underline;
			}
			a {
				padding: 3px 15px;
			}
			a:hover {
				color: @colorTextInvers;
			}
			*/
  }
  .mod-menu-productes ul.sub-menu a:hover {
    text-decoration: underline !important;
  }
  .mod-menu-productes ul.sub-menu h4,
  .mod-menu-productes ul.sub-menu > li:not(.foo) > a {
    color: #002d72;
    font-weight: 500;
  }
  .mod-menu-productes ul.sub-menu h5 {
    display: none;
  }
  .mod-menu-productes ul.sub-menu h4,
  .mod-menu-productes ul.sub-menu h5 {
    font-family: "NeueHGTX", Arial, sans-serif;
    margin-bottom: 1em;
  }
  .mod-menu-productes ul.sub-menu > li {
    break-inside: avoid;
    margin-bottom: 16px !important;
  }
  .mod-menu-productes ul.sub-menu > li > ul > li > ul {
    margin-left: 20px;
  }
  .mod-menu-productes .adj-last-col ul.sub-menu:after {
    display: block;
    content: '';
    height: 100px;
  }
  .mod-menu-productes .submenu-wrapper .icon-chevron-right,
  .mod-menu-productes .menu-enrrere {
    display: none;
  }
}
@media only screen and (max-width: 800px) {
  .mod-menu-productes {
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }
  .mod-menu-productes li {
    line-height: 1.2em;
  }
  .mod-menu-productes a:not(.foo) {
    padding: 10px 15px;
  }
  .mod-menu-productes a:hover {
    background: #eeeeee;
  }
  .mod-menu-productes .wp-block-site-logo a:hover,
  .mod-menu-productes a.tancar:hover {
    background: none;
  }
  .mod-menu-productes .menu-wrapper {
    position: relative;
    flex: 1;
    width: 250px;
    overflow: hidden;
    overflow-y: auto;
  }
  .mod-menu-productes ul.menu {
    margin-top: 0;
  }
  .mod-menu-productes ul.deep-3 {
    margin-top: 0 !important;
  }
  .mod-menu-productes ul {
    margin-top: -2000px;
  }
  .mod-menu-productes ul.menu-actiu {
    margin-top: 0;
  }
  .mod-menu-productes ul ul ul.menu-actiu {
    margin-top: 2000px;
  }
  .mod-menu-productes.animant-menu .menu-wrapper {
    overflow: hidden;
    background: #e00;
  }
  .mod-menu-productes.animant-menu ul,
  .mod-menu-productes.animant-menu ul.menu-actiu,
  .mod-menu-productes.animant-menu ul ul ul.menu-actiu {
    margin-top: 0;
  }
  .mod-menu-productes .menu,
  .mod-menu-productes .sub-menu,
  .mod-menu-productes .sub-menu > li > ul {
    transition: left 0.5s ease-in-out;
    position: absolute;
    top: 30px;
    left: 250px;
    width: 250px;
    margin-left: 250px;
  }
  .mod-menu-productes ul.menu {
    left: 0;
    margin-left: 0;
  }
  .mod-menu-productes .wp-block-site-logo,
  .mod-menu-productes .menu {
    padding-left: 0 !important;
  }
  .mod-menu-productes .sub-menu,
  .mod-menu-productes .sub-menu > li > ul {
    top: 0 !important;
  }
  .mod-menu-productes .menu-pare-actiu {
    left: -250px !important;
  }
  .mod-menu-productes .menu-actiu {
    left: 0 !important;
  }
  .mod-menu-productes h4,
  .mod-menu-productes h5 {
    font-size: 1.3em;
  }
  .mod-menu-productes ul.sub-menu > li > ul > li > ul {
    margin-left: 20px;
  }
  .mod-menu-productes .menu-enrrere {
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: #eeeeee 1px solid;
    border-bottom: #eeeeee 1px solid;
    margin-bottom: 16px;
  }
  .mod-menu-productes .menu-enrrere a {
    justify-content: flex-start;
  }
  .mod-menu-productes .icon-chevron-left {
    margin-left: -0.25em;
  }
  .mod-menu-productes .icon-chevron-right {
    margin-right: 0.5em;
  }
}
.mod-menu-lateral {
  /*
	ul.menu {
		margin-top: 100px;
		list-style: none;
		padding-left: 0;
		text-align: left;
	}
	*/
}
.mod-menu-lateral ul:not(.foo) {
  padding: 0;
  margin-bottom: 0;
  padding-left: 20px;
}
.mod-menu-lateral li {
  display: block;
  margin: 0;
  padding: 0;
}
.mod-menu-lateral a:not(.foo) {
  padding: 0;
  display: block;
  color: #5b5b5b;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mod-menu-lateral a:hover {
  text-decoration: none !important;
  color: #002d72;
}
.mod-menu-lateral h4 a {
  font-size: 2em;
  line-height: 1.2em;
}
.mod-menu-lateral h4,
.mod-menu-lateral h5 {
  text-transform: none;
  font-size: 1em;
  padding: 0;
}
.mod-menu-lateral .obert > .nivell-1 {
  display: block;
}
.mod-menu-lateral .nivell-1 {
  font-size: 0.8em;
  display: none;
}
.mod-menu-lateral .nivell-1:after {
  content: '';
  display: block;
  border-top: #5b5b5b solid 1px;
  padding-bottom: 20px;
  margin-top: 10px;
}
.mod-menu-lateral .nivell-2 {
  margin-left: 1.5em;
}
.mod-menu-lateral li {
  line-height: 1.2em;
}
.mod-menu-lateral li.obert > a {
  font-weight: bold;
}
.mod-menu-lateral a:not(.foo) {
  padding: 5px 15px;
}
.mod-menu-lateral a:hover {
  background: #eeeeee;
}
.mod-menu-lateral .menu-wrapper {
  position: relative;
  height: 100vh;
  width: 250px;
  overflow: hidden;
  overflow-y: auto;
}
.mod-menu-lateral a {
  justify-content: flex-start;
}
.mod-menu-lateral .icon-chevron-left {
  margin-left: -0.25em;
}
.mod-menu-lateral .icon-chevron-right {
  margin-right: 0.5em;
}
footer {
  margin-top: 30px;
  color: #5b5b5b;
}
footer .maq-contenidor {
  position: relative;
  max-width: none;
}
footer a:not(.foo) {
  color: #5b5b5b;
}
footer a:not(.foo):hover {
  color: #002d72;
  text-decoration: none;
}
footer .xxss li {
  display: inline-block;
}
footer .copy {
  font-size: 12px;
}
footer .copy .mod-grid-responsive {
  display: flex;
  flex-direction: row;
}
footer .copy .menu-footer-aux-wrapper,
footer .copy p,
footer .copy ul,
footer .copy li {
  line-height: 20px;
  margin: 0 10px 0 0;
  padding: 0;
  display: inline-block;
}
footer .copy p {
  display: block;
}
footer p,
footer li {
  margin-bottom: 1em;
  list-style: none;
}
footer .menu-footer {
  font-size: 1.2em;
  font-weight: bold;
}
footer .menu-footer li {
  margin-bottom: 0;
}
footer .adreca {
  font-size: 0.9em;
}
footer .copy {
  padding-top: 40px;
}
footer .xxss {
  padding-top: 35px;
}
footer .xxss ul {
  padding: 0;
  font-size: 24px;
}
footer .xxss li {
  margin-right: 0.5em;
}
footer .xxss a:hover {
  text-decoration: none !important;
}
footer .inputtext,
footer .inputemail {
  width: 100%;
  max-width: 500px;
  padding-right: 50px;
  position: relative;
  box-sizing: border-box;
  display: block;
}
footer .saber-text p {
  text-align: right;
  padding-right: 20px;
}
footer button {
  background: none;
  color: #fff;
  cursor: pointer;
  font-size: 34px;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
}
footer button:hover {
  color: #ffd100;
}
footer .inputtext input,
footer #email {
  background: none;
  color: #fff;
  width: 100%;
  border-bottom: #fff 1px solid;
  font-size: 17px;
}
footer .inputtext input::placeholder,
footer #email::placeholder {
  color: #c5cfed;
}
footer .mailchimp {
  color: #fff;
}
footer .mailchimp input[type="checkbox"] {
  accent-color: #ffd100;
  width: 20px;
  height: 20px;
  position: absolute;
  margin-left: -30px;
}
footer .mailchimp .agree {
  font-size: 13px;
  padding-left: 30px;
  max-width: 450px;
}
@media only screen and (max-width: 1070px) {
  footer .saber-text p {
    text-align: center;
  }
  footer .mc4wp-form-fields {
    max-width: 500px;
    margin: auto;
  }
}
@media screen and (max-width: 670px) {
  footer .logofooter {
    display: block;
    margin: auto;
  }
  footer img {
    max-width: 50vw;
  }
  footer .menu-footer {
    padding-left: 0;
  }
  footer .menu-footer li,
  footer p {
    display: block;
    text-align: center;
  }
  footer .menu-footer li a {
    text-align: center;
  }
  footer .copy li {
    margin: 0;
  }
  footer .copy .mod-grid-responsive,
  footer .copy .menu-footer-aux-wrapper,
  footer .copy p,
  footer .copy ul,
  footer .copy li {
    display: block;
    text-align: center;
    margin-right: 0;
  }
  footer .copy li a {
    text-align: center;
  }
  footer .xxss ul {
    text-align: center;
  }
}
.xivato-flotant {
  font-family: sans-serif;
  font-size: 14px;
  line-height: 1.5em;
  position: fixed;
  left: 0;
  bottom: 0;
  background: #f4dc88;
  color: #000;
  padding: 3px 6px;
  z-index: 1000000;
}
.xivato-flotant.tipus-info {
  color: #fff;
  background: #006cff;
}
.xivato-flotant.tipus-alerta {
  background: #ff8b00;
}
.xivato-flotant.tipus-error {
  color: #fff;
  background: #b10000;
}
.log-xivato {
  display: none;
}
.cssWidth {
  position: fixed;
  left: -10000px;
  top: 0;
  width: 240px;
}
@media screen and (max-width: 1360px) {
  .cssWidth {
    width: 134px;
  }
  .xivato-flotant {
    background: #fff !important;
  }
}
@media screen and (max-width: 1070px) {
  .cssWidth {
    width: 105px;
  }
  .xivato-flotant {
    background: #ff0 !important;
  }
}
@media screen and (max-width: 670px) {
  .cssWidth {
    width: 65px;
  }
  .xivato-flotant {
    background: #faf !important;
  }
}
/*# sourceMappingURL=style.css.map */