/**
 * Legacy production CSS migrated from Simple Custom CSS and JS snippet 41948.
 *
 * This file preserves the current production cascade while rules are moved
 * progressively into their owning components. Do not add new rules here.
 */

da {
	cursor: pointer;
}
h1 {
	font-family: var(--font-rama-e);
	margin-bottom: 15px;	
	font-weight: 700;
}
h2 {
  	font-size: 26px;
  	font-weight: 700;
  	line-height: 32px;
  	color: var(--bs-body-color);
	padding-bottom: 10px;
}
h3 {
	font-size: 24px;
  	font-weight: 500;
	line-height: 30px;
	color: var(--bs-body-color);
	padding-bottom: 10px;
}
h4 {
	font-size: 24px;
  	font-weight: 400;
	line-height: 30px;
}
h5 {
	font-family: var(--font-rama-e);
	font-size: 30px;
	line-height: 30px;
	margin-bottom: 10px;
}
h6 {
	font-family: var(--font-rama-e);
	font-size: 60px;
	line-height: 65px;
	margin-bottom: 10px;
	font-weight: 700;
}
li {
	font-size: 14px;
	line-height: 22px;
	color: var(--bs-body-color);
}
main {
	padding-top: 160px;
}
number {
	font-family: var(--font-rama-e);
	color: #487CFF1A;
	font-size: 300px;
	font-weight: bold;
	line-height: 300px;
}
ol.numbers {
	list-style: none;         /* Elimina números per defecte */
  	counter-reset: step;      /* Inicialitza el comptador */
  	padding-left: 0;
  	max-width: 700px;
}
ol.numbers li {
	counter-increment: step;  /* Incrementa el comptador */
  	display: flex;
  	align-items: flex-start;
  	gap: 15px;
  	margin-bottom: 20px;
	line-height: 19px;
}
ol.numbers li:before {
	content: counter(step);
  	min-width: 25px;
  	height: 25px;
  	border: 1px solid #000;
  	border-radius: 50%;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	font-weight: 400;
  	font-size: 14px;
}
p {
	font-size: 14px;
	line-height: 1.5;
	color: var(--bs-body-color);
	padding-bottom: 15px;
}
strong {
	color: var(--bs-body-color);
}
ul {
	padding-left: 20px;
}
#formcontact {
	scroll-margin-top: 112px;	
}
.aaccordion {
  max-width: 900px;
  margin: 10px auto 50px auto;
}
.aaccordion.m100 {
  max-width: unset;	
}

.aaccordion-item {
  border-top: 4px solid #e7e3e3;
}
.aaccordion-item:last-child {
  border-bottom: 4px solid #e7e3e3;
}
.aaccordion-item.blau {
  border-top: 2px solid #2b3053;
}
.aaccordion-item.blau:last-child {
  border-bottom: 2px solid #2b3053;
}

.aaccordion-header {
  width: 100%;
  background: transparent;
  border: none;
  padding: 10px;
  display: flex;
  align-items: center;
  cursor: pointer;
  gap: 50px;
}
.aaccordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
  padding-left: 80px;
}
.aaccordion-content.aprogram {
  padding-left: 55px;
}
.aaccordion-content.aleft {
  padding-left: 63px;
}

.aaccordion-content ul {
  margin: 10px 0 25px;
  padding: 0;
  list-style: none;
}
.aaccordion-content.topborder[aria-hidden=false] {
	border-top: 1px solid #131940;
}
.aaccordion-content li {
  margin-bottom: 8px;
  font-size: 14px;
  color: #333;
}
.aaccordion-item.active .aaccordion-content {
  max-height: unset;
}
.aaccordion-item.active .icon {
  transform: rotate(180deg);
}
.aaccordion-item.thinline2 {
	border-top: 2px solid #131940;
    padding-top: 0px;
    padding-bottom: 0px;
}
.aaccordion-item.thinline2:last-child {
   	border-bottom: 2px solid #131940;
}
.aaccordion-item.thinline3 {
	border-top: 2px solid #131940;
    padding-top: 0px;
    padding-bottom: 0px;
}
.aaccordion-item.thinline3:last-child {
   	border-bottom: 2px solid #131940;
}
.aim-list.desktop > :first-child {
  grid-column: 1 / -1; /* ocupa de la primera a l'última columna */
}
.arrow {
	font-size: 30px;
}
.arrow2 {
	font-size: 30px;
    line-height: 12px;
}
.arrowblue {
	padding-left: 10px;
    width: 40px;
}
.bgblack {
	background-color: #070707;
}
.bgblue {
	background-color: #487CFF;
}
.bgcruyff {
	position: relative;
	overflow: hidden;
	background-color: #070707;
	padding: 50px 0 !important;
}
.bgcruyff > .jci-about-johan__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: right center;
}
.bgcruyff > :not(.jci-about-johan__image) {
	position: relative;
	z-index: 1;
}
.bgdarkblue {
	background-color: #041C40;
}
.bggray {
	background-color: #f1eff0;
}
.bglightblue {
	background-color: #487CFF1A;
}
.bglightgray {
	background-color: #1D1D1D1A;
}
.bglightorange {
	background-color: #EB5E4E1A;
}
.bgpurple {
	background-color: #ECF2FF;
}
.bground {
	border-radius: 30px;
	padding: 30px;
}
.bgwhite {
	background-color: #FFFFFF;
}
.blues li::marker {
	color: #487CFF;
  	font-size: 25px;
}
.bordersblue {
	border-top: 2px solid #487CFF;
	border-bottom: 2px solid #487CFF;
	align-items: center;
	padding: 10px 0;
}
/* Legacy button skins kept for backward compatibility with historic templates
 * and stored markup. New component behavior must live in shared/component
 * classes rather than adding interaction rules to btn1/btn2/btn3/btn4. */
.btn1 {
	background-color: #487CFF;
    padding: 8px 24px 8px 24px;
    font-size: 16px;
    font-weight: bold;
    color: #FDFDFD;
    border: none;
    border-radius: 10px;
}
.btn11 {
	background-color: #ffffff;
    padding: 8px 24px 8px 24px;
    font-size: 14px;
    font-weight: bold;
    border: 1px solid #1d1d1d;
    border-radius: 10px;
}
.btn2 {
	background-color: #041C40;
    padding: 8px 24px 8px 24px;
    font-size: 16px;
    font-weight: bold;
    color: #FDFDFD;
    border: none;
    border-radius: 10px;
}
.btn3 {
	background-color: #ffffff;
    padding: 8px 24px 8px 24px;
    font-size: 16px;
    font-weight: bold;
    color: var(--bs-body-color);
    border: none;
    border-radius: 10px;
}
.btn4 {
	background-color: #487CFF;
    padding: 8px 24px 8px 24px;
    font-size: 16px;
    font-weight: bold;
    color: #FDFDFD;
    border: none;
    border-radius: 10px;
}
.btnfloat {
	float: left !important;
    margin-right: 20px !important;
}
.card-description {
 	width: 80%;
    position: relative;
    top: -70px;
    background: #fff;
    left: 10%;
    padding: 20px;
}
.center {
	text-align: center;
	margin: auto;
}
.clearboth {
	clear: both;
}
.close {
	float: right;
    max-width: 17px;
    margin-top: 8px;
}
.col-2 {
	width: 16.666%;
}
.col-3 {
	width: 25%;
}
.col-4 {
	width: 33.333%;
}
.col-5 {
	width: 41.666%;
}
.col-6 {
	width: 50%;
}
.col-7 {
	width: 58.333%;
}
.col-7-inner {
	padding-left: calc(50vw - 647.5px);
}
.col-8 {
	width: 66.666%;
}
.col-9 {
	width: 75%;
}
.col-10 {
	width: 83.333%;
}
.container {
	width: 100%;
    max-width: 100%;
    padding: 0;
}
.container-inner {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;	
}
.curso-content {
	background-color: #ECF2FF;
	padding-top: 90px;
	padding-bottom: 90px;
	padding-right: 44px;
	padding-left: calc(50vw - 635px);
	/*margin: auto;*/
	margin-top: auto;
	margin-bottom: auto;
}
.curso-image {
	background-color: #ECF2FF;
}
.curso-image img {
	width: 100%;
	height: 100%;
	display: block;
}
.curso__wrapper {
  display: grid;
  grid-template-columns: 60% 40%;
  gap: 0px;
  align-items: stretch;
}
.custom-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

/* amaga el checkbox natiu sense treure'l del flux */
.custom-check input {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
  width: 0;
  height: 0;
  opacity: 0;
  flex: 0 0 auto;
}

.custom-check .box {
  width: 22px;
  height: 22px;
  border: 1px solid #d1d1d1;
  border-radius: 6px;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  transition: border-color .15s;
}

.custom-check .box::after {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #2d6cff;
  transform: scale(0);
  transition: transform .15s;
}

.custom-check input:checked + .box::after {
  transform: scale(1);
}
.darkblue {
	color: #0b2a55 !important;
}
.desktop {
	display: block !important;
}
.displayblock {
	display: block;
}
.down1 {
	padding-bottom: 190px;
}
.downarrow {
	max-width: 18px;
    float: right;
}
.filtraracademic {
	position: fixed;
    bottom: 18px;
    width: 150px;
    left: calc(50vw - 75px);
}
.fletxa {
	float: right;
    max-width: 20px;
    margin-top: 8px;
}
.fletxa2 {
    margin-right: 5px;
}
.fletxa3 {
    max-width: 28px;
	margin-left: 10px;
}
.fletxa4 {
	padding-left: 10px;
}
.flexing {
	display: flex;
    align-items: flex-start; /* alinea verticalment */
    gap: 12px;
}
.flexing2 {
	display: flex;
    align-items: flex-end; /* alinea verticalment */
    gap: 0px !important;
}
.flexing3 {
	display: flex;
    align-items: center; /* alinea verticalment */
    gap: 10px !important;
}
.flexingimp {
	display: flex !important;
}
.floatleft {
	float: left;
	margin-right: 20px;
}
.font12 {
	font-size: 12px;
	line-height: 16px;
}
.font13 {
	font-size: 13px;
	line-height: 18px;
}
.font14 {
	font-size: 14px;
	line-height: 18px;
}
.font16,
.font16 * {
	font-size: 16px !important;
	line-height: 22px !important;
}
.font18, .font18 p {
	font-size: 18px;
	line-height: 24px;
}
.font20 {
	font-size: 20px;
	line-height: 26px;
}
.font20.extra {
	font-size: 20px;
	line-height: 30px;
}
.font20mobile {
	font-size: 20px;
	line-height: 26px;
}
.font24,
.font24 p {
	font-size: 24px;
	line-height: 30px;
}
.font26 {
	font-size: 26px;
	line-height: 32px;
}
.font30 {
	font-size: 30px;
	line-height: 35px;
}
.font34,
.font34 p {
	font-size: 34px;
	line-height: 40px;
}
.font40 {
	font-size: 40px;
	line-height: 50px;
}
.font60 {
	font-size: 60px;
	line-height: 60px;
}
.font70 {
	font-size: 70px !important;
	line-height: 60px !important;
}
.font80 {
	font-size: 80px;
	line-height: 80px;
}
.font85 {
	font-size: 85px !important;
	line-height: 80px !important;
}
.font-rala {	
	font-family: var(--font-rama-e);
}
.fotografia {
	max-width: 120px;
    padding-top: 20px;
}
.fotografia-max {
	max-width: 248px;
}
.fotografia-desc {
	background-color: #fff;
	position: relative;
    top: -50px;
    left: 70px;
    padding: 30px;
    max-width: 480px;
}
.fotografia-desc-big {
	/*height: 80%;*/
    position: relative;
    left: -100px;
    padding: 100px;
    background: #fff;
    top: 10%;
}
.fotografia-desc-big2 {
	height: calc(70% + 30px);
    position: relative;
    left: -100px;
    padding: 30px;
    background: #fff;
    top: 30%;
}
.frmlat {
	background-color: #fdfdfd;
    box-shadow: 0px 10px 15px 5px rgba(0, 0, 0, 0.2);
}
.frmlat label {
	padding-bottom: 10px;
}
.grey {
	color: #767474a1;
}
.hero {
  	padding: 40px 0 0;
}
.hidden {
	display: none !important;
}
.hr {
	color: #767474;
	margin-bottom: 15px;
	opacity: 1;
}
.hr2 {
	color: #767474;
	margin-top: 15px;
	margin-bottom: 15px;
	opacity: 1;
}
.hr3 {
	border: none;
  	border-top: 5px solid #FDFDFD; /* gruix i color */
	opacity: 1;
}
.hr4 {
	border: none;
  	border-top: 8px solid #E6E2E2; /* gruix i color */
	opacity: 1;	
}
.hr5 {
	border: none;
  	border-top: 8px solid #487CFF; /* gruix i color */
	opacity: 1;	
}
.hr6 {
	border: none;
  	border-top: 5px solid #487CFF; /* gruix i color */
	opacity: 1;	
	margin: 40px 0;
}
.hr7 {
	border: none;
  	border-top: 2px solid #E6E2E2; /* gruix i color */
	opacity: 1;	
}
.hr8 {
	border: none;
  	border-top: 4px solid #E6E2E2; /* gruix i color */
	opacity: 1;	
}
.ico-contact {
	max-width: 20px;
	max-height: 20px;
}
.icon {
  	font-size: 18px;
  	transition: transform 0.3s ease;
	margin-left: auto;
	color: #487CFF;
}
.icona {
	width: 30px;
}
.iconaleft10 {
	margin-left: 10px;
}
.img-mapa {
	border-left: 5px solid #487CFF;
}
.imgmasters {
	margin-top: -250px;
}
.insideimg {
	background-color: #487CFF;
    position: relative;
    top: -50px;
    left: 70px;
    padding: 40px 30px;
    max-width: calc(100% - 140px);
}
.insideimg, .insideimg * {
	color: #fff !important;
}
.insideimg2 {
	background-color: #ecf2ff;
    position: relative;
    top: -50px;
    left: 70px;
    padding: 40px 30px;
    max-width: calc(100% - 140px);
}
.insideimg2, .insideimg2 * {
	color: #487CFF !important;
}

.insideimg3 {
	background-color: #6a2cb8;
    position: relative;
    top: 0px;
    left: 70px;
    padding: 40px 30px;
    max-width: calc(100% - 140px);
	margin-top: 40px;
}
.insideimg3, .insideimg3 * {
	color: #fff !important;
}
.insideimg4 {
	background-color: #cdbbe0;
    position: relative;
    top: 0px;
    left: 70px;
    padding: 40px 30px;
    max-width: calc(100% - 140px);
}
.insideimg4, .insideimg4 * {
	color: #6a2cb8 !important;
}
.left {
	text-align: left;
}
.lh {
	line-height: 30px !important;
}
.listblue li {
	margin-bottom:20px;
}
.listblue li::marker {
  	color: #487CFF;
	font-size: 25px;
}
.margtop0 {
	margin-top: 0px;
}
.margtop10 {
	margin-top: 10px;
}
.margtop20 {
	margin-top: 20px;
}
.margtop40 {
	margin-top: 40px;
}
.margtop60 {
	margin-top: 60px;
}
.margtop100 {
	margin-top: 100px;
}
.margbot0 {
	margin-bottom: 0px;
}
.margbot20 {
	margin-bottom: 20px;
}
.margbot40 {
	margin-bottom: 40px;
}
.margbot60 {
	margin-bottom: 60px;
}
.master-content {
	background-color: #487CFF1A;
	padding: 75px 60px;
}
.master-image img {
	width: 100%;
	display: block;
}
.master__list {
  	list-style: none;
  	margin: 30px 0 0 0;
  	padding: 0;
  	border-top: 1px solid #3C3B3B;
}
.master__list li {
  	border-bottom: 1px solid #3C3B3B;
}
.master__list a {
  	display: block;
  	padding: 18px 0;
  	font-size: 16px;
	line-height: 22px;
  	font-weight: 600;
  	color: var(--bs-body-color);
  	text-decoration: none;
  	position: relative;
}
.master__list a span {
	font-weight: 400;
  	font-size: 14px;
}
/*.master__list a::before {
  	content: "→";
	font-size: 30px;
  	position: absolute;
  	left: 0;
  	top: 14px;
  	color: #487cff;
}*/
.masters-background {
	background-repeat: no-repeat;
    background-position-y: bottom;
    background-position-x: 150px;
}
.masters-content {
  	display: grid;
  	grid-template-columns: 1fr 1fr;
  	gap: 60px;
  	align-items: start;
}
.masters-content__right p {
  	font-size: 18px;	
  	line-height: 24px;
  	color: var(--bs-body-color);
  	max-width: 520px;
}
.masters-dades {
	background-color: #487CFF;
    max-width: 260px;
    margin: auto;
    position: relative;
    top: -40px;
    padding: 25px 15px 15px;
	text-align: left;
}
.masters-dades * {
    color: #FDFDFD;	
	font-size: 14px;
	line-height: 14px;
	text-align: left;
}
.masters-features {
	margin: 0px auto 40px;
  	background-color: #76747433;
  	display: grid;
  	grid-template-columns: 25% 25% 25% 25%;
  	padding: 30px 0;
}
.masters-feature {
  	text-align: left;
  	padding: 0 40px;
  	position: relative;
}
.masters-feature:not(:first-child)::before {
  	content: "";
  	position: absolute;
  	left: 0;
  	width: 4px;
    height: 100%;
    background-color: #fff;
}
.masters-feature strong {
  	font-size: 14px;
	line-height: 20px;
  	font-weight: 700;
  	color: var(--bs-body-color);
}
.masters-feature span {
  	font-size: 14px;
	line-height: 20px;
  	color: var(--bs-body-color);
}
.masters-hero {
  	padding: 60px 0 0;
}
.masters-title {
  	font-size: 60px;
	line-height: 60px;
  	letter-spacing: 0px;
  	color: #0b2a55;
  	margin-bottom: 0px;
	max-width: 500px;
}
.masters-title-max {
  	font-size: 85px;
	line-height: 85px;
  	letter-spacing: 0px;
  	color: var(--bs-body-color);
  	margin-bottom: 0px;
}
.masters-subtitle {	
  	max-width: 420px;
	padding-top: 20px;
}
.masters-subtitle-ax {	
  	max-width: unset;
}
.masters__wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0px;
  align-items: stretch;
}
.medium {
	font-weight: 500 !important;
}
.menu-courses {
	cursor: pointer;
}
.mmb0 > p:not(.padbot10) {
	margin-bottom: 0 !important;
	/*padding-bottom: 0 !important;*/
}
.mobile {
	display: none !important;
}
.noshr {
	display: none;
}
.numb {
	font-size: 30px;
    border: 2px solid #487CFF;
    color: #487CFF;
    border-radius: 50px;
    text-align: center;
    line-height: 50px;
    width: 55px;
    display: block;
}
.numb2 {
	font-size: 80px;
    text-align: center;
    line-height: 80px;    
	font-family: var(--font-rama-e);
	font-weight: 600;
}
.nums {
	min-height: 320px;
    display: grid;
    place-items: center;
}
.pad0 {
	padding: 0;
}
.pad10 {
	padding-left: 10px;
	padding-right: 10px;
}
.pad20 {
	padding-left: 20px;
	padding-right: 20px;
}
.pad20 {
	padding: 20px 20px 20px 20px;
}
.pad40 {
	padding: 40px 40px 20px 40px;
}
.padbot0 {
	padding-bottom: 0px;
}
.padbot10 {
	padding-bottom: 10px;
}
.padbot20 {
	padding-bottom: 20px;
}
.padbot40 {
	padding-bottom: 40px;
}
.padbot70 {
	padding-bottom: 70px;
}
.padtop0 {
	padding-top: 0px;
}
.padtop10 {
	padding-top: 10px;
}
.padtop20 {
	padding-top: 20px;
}
.padtop40 {
	padding-top: 40px;
}
.padtop100 {
	padding-top: 100px;
}
.padleft0 {
	padding-left: 0 !important;
}
.padleft10 {
	padding-left: 10px !important;
}
.padleft50 {
	padding-left: 50px !important;
}
.paisos a:hover {
	font-weight: bold;
}
.patros {
	max-width: 140px;padding: 50px 20px;filter: grayscale(1); opacity: 50%;
}
.purple, .purple * {
	color: #6A2CB8 !important;
}
.regular {
	font-weight: 400 !important;
}
.rightalign {
	text-align: right;
}
.row {
  	display: flex;
  	gap: 2rem;
	flex-wrap: nowrap;
}
.row > * {
	flex-shrink: unset;
}
.row.double-gap {
	gap: 4rem;
}
.searchdiv {
	background-color: #fff;
    position: fixed;
    top: 125px;
    z-index: 999999;
    height: calc(100% - 125px);
    width: calc(100vw - 15px);
	overflow-y: auto;
	overflow-x: hidden
}
.searchgrid {
	display: grid; 
	grid-template-columns: repeat(3, 1fr); 
	gap: 8px 24px;
}
.semi {
	font-weight: 600 !important;
}
.strong {
	font-weight: 700 !important;
}
.sup-nav:not(.jci-horizontal-menu),
.sup-nav-mini:not(.jci-horizontal-menu) {
  	border-top: 1px solid #808080;
  	border-bottom: 1px solid #808080;
  	margin-bottom: 40px;
}
.sup-nav__list {
  	display: flex;
  	justify-content: space-between;
  	gap: 10px;
  	list-style: none;
  	margin: 0;
  	padding: 12px 30px;
}
.sup-nav__list li {
	text-align: center;
}
.sup-nav__list li a {
  	font-size: 14px;
  	font-weight: 500;
  	color: #767474;
  	text-decoration: none;
  	transition: color 0.2s ease;
}
.sup-nav__list li.active a,
.sup-nav__list li a:hover,
.sup-nav-mini__list li.active a,
.sup-nav-mini__list li a:hover,
.sup-nav__list li.active span,
.sup-nav__list li span:hover,
.sup-nav-mini__list li.active span,
.sup-nav-mini__list li span:hover {
  	color: var(--bs-body-color);
	font-weight: 500;
}
.sup-nav-mini__list {
  	display: flex;
  	justify-content: space-between;
  	/*gap: 45px;*/
  	list-style: none;
  	margin: 0;
  	padding: 15px 0;
}
.sup-nav-mini__list li a,
.sup-nav-mini__list li span {
	cursor: pointer;
  	font-size: 13px;
  	font-weight: 500;
  	color: #767474;
  	text-decoration: none;
  	transition: color 0.2s ease;
}
.sup-nav__list.justify {
    display: flex !important;
    justify-content: space-between !important;
}
.svgblanc {
	filter: brightness(0) invert(1);
}
.up1 {
	margin-top: -150px;
	background-color: #fff;
    padding: clamp(30px, 4vw, 52px);
}
.uppercase {
	text-transform: uppercase;
}
.w100 {
	width: 100%;
}

/* Colors */
.black {
	color: var(--bs-body-color);
}
.blue {
	color: #487CFF;
}
.darkblue {
	color: var(--bs-body-color);
}
.orange {
	color: #EB5E4E;
}
.white {
	color: #ffffff;
}

@media (max-width: 992px) {
	.curso__wrapper {
    	grid-template-columns: 1fr;
  	}
	.masters-content {
    	grid-template-columns: 1fr;
    	gap: 00px;
  	}
  	.masters-features {
    	grid-template-columns: 1fr 1fr;
    	row-gap: 20px;
  	}
  	.masters-feature::before {
    	display: none;
  	}
	.masters__wrapper {
    	grid-template-columns: 1fr;
  	}
}

@media (max-width: 576px) {
  	.masters-features {
    	grid-template-columns: 1fr;
  	}
}

@media (max-width: 767px) {
	h2 {
		font-size: 20px;
		line-height: 26px;
	}
	h4 {
		font-size: 20px;
		line-height: 40px;
	}
	h6 {
		font-size: 40px;
		line-height: 40px;
	}
	number {
		font-size: 120px;
		line-height: 120px;
	}
.aaccordion-item.thinline {
		border-top: 1px solid #E6E2E2;
        padding-top: 10px;
        padding-bottom: 10px;
	}
	.aaccordion-item.thinline2 {
		border-top: 1px solid #131940;
        padding-top: 0px;
        padding-bottom: 0px;
	}
	.aaccordion-item.thinline3 {
		border-top: 2px solid #131940;
        padding-top: 0px;
        padding-bottom: 0px;
	}
	.aaccordion-item.thinline:last-child {
    	border-bottom: 1px solid #E6E2E2;
	}
	.aaccordion-item.thinline2:last-child {
    	border-bottom: 1px solid #131940;
	}
	.aaccordion-item.thinline3:last-child {
    	border-bottom: 2px solid #131940;
	}
	.aaccordion-item.active .aaccordion-content {
    	max-height: unset;
	}
	.aaccordion-content {
		padding-left: 0;
	}
	.aaccordion-content.aleft {
  		padding-left: 2px !important;
	}
	.aaccordion-content.aprogram {
    	padding-left: 45px;
	}
	.aaccordion.m100 .aaccordion-header {
		text-align: left;
	}
	.aim-layout {
		min-height: 0 !important;	
	}
	.aim-map-wrap {
		min-height: 0 !important;
	}
	.bgcruyff {
		padding: 430px 20px 20px !important;
	}
	.bgwhitemob {
		background-color: #fff !important;
	}
	.btn1, .btn2, .btn3, .btn4, .btn11 {
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;
	}
	.btn-adm {
		display: block;
		margin-top: 10px;
		width: 100%;
	}
	.btn100 a {
		width: 100% !important;
    	display: block;
    	text-align: center;
	}
	.butstart {
		display: inline-block;
    	text-align: center;
	}
	.centerm {
		text-align: center;
	}
	.col-xs-2 {
		width: 16.66%;
	}
	.col-xs-3 {
		width: 25%;
	}
	.col-xs-4 {
		width: 33.333%;
	}
	.col-xs-5 {
		width: 41.666%;
	}
	.col-xs-6 {
		width: 50%;
	}
	.col-xs-7 {
		width: 58.333%;
	}
	.col-xs-8 {
		width: 66.666%;
	}
	.col-xs-9 {
		width: 75%;
	}
	.col-xs-9 {
		width: 83.33%;
	}
	.col-xs-12 {
		width: 100%;
	}
	.container-inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.curso-content {
		padding: 60px 20px 0;
	}
	.curso-image {
		padding: 0 20px 30px;
	}
	.curso-image img {
    	height: unset;
	}
	.desktop {
		display: none !important;
	}
	.doscolscom {
		display: grid;
    	grid-template-columns: 60px 1fr;
	}
	.doscolscom p {
		margin-top: 0 !important;
	}
	.down1 {
		padding-bottom: 20px;
	}
	.downarrowmasters {
		max-width: 50px !important;
		width: 50px;

	}	
	.fletxa2 {
    	margin-top: -2px;
    	margin-right: 10px;
	}
	.font12 {
		font-size: 12px;
		line-height: 16px;
	}
	.font12m {
		font-size: 12px;
		line-height: 16px;
	}
	.font16m {
		font-size: 16px;
		line-height: 22px;		
	}
	.font18m {
		font-size: 18px !important;
		line-height: 24px !important;
	}
	.font20 {
		font-size: 16px;
		line-height: 22px;
	}
	.font22m {
		font-size: 22px;
		line-height: 30px;
	}
	.font26m {
		font-size: 26px !important;
		line-height: 32px !important;
	}
	.font30 {
		font-size: 20px;
		line-height: 26px;
	}
	.font30m,
	.font30m p {
		font-size: 30px !important;
		line-height: 40px !important;
	}
	.font35m {
		font-size: 35px !important;
		line-height: 40px !important;
	}
	.font40 {
		font-size: 32px;
		line-height: 42px;
	}
	.font40m {
		font-size: 40px !important;
		line-height: 40px !important;
	}
	.font60 {
		font-size: 40px;
		line-height: 40px;
	}
	.fotografia-desc {
    	top: -50px;
    	left: 20px;
    	max-width: calc(100% - 40px);
	}
	.fotografia-desc * {
		font-size: 12px !important;
	}
	.fotografia-desc-big {
    	width: calc(100% - 40px);
    	position: sticky;
    	margin-left: 20px;
    	padding: 30px;
    	background: #fff;
    	margin-top: -60px;
	}
	.fotografia-desc-big2 {
    	width: calc(100% - 40px);
    	position: inherit;
    	margin-left: 20px;
    	padding: 30px;
    	background: #fff;
    	margin-top: -60px;
	}
	.fotografia-max {
		max-width: 100%;
	}
	.fotcurs {
		max-width: unset; width: 100%;
	}
	.gap0 {
	    gap: 0 !important;
	}
	.gradmenu {
		background: linear-gradient(180deg, #c2c6ce, #ecf2ff);
	}
	.hr3.mobile {
		margin: 0;
	}
	.insideimg {
		background-color: #487CFF;
    	position: relative;
    	top: 20px;
    	left: 0px;
    	padding: 40px 30px;
    	max-width: calc(100%);
	}
	.insideimg2 {
		background-color: #ecf2ff;
    	position: relative;
    	top: 0px;
    	left: 0px;
    	padding: 40px 30px;
    	max-width: calc(100%);
	}
	.insideimg3 {
		background-color: #6a2cb8;
    	position: relative;
    	top: 0px;
    	left: 0px;
    	padding: 40px 30px;
    	max-width: calc(100%);
		margin-top: 40px;
	}
	.insideimg4 {
		background-color: #cdbbe0;
    	position: relative;
	    top: 0px;
    	left: 0px;
	    padding: 40px 30px;
    	max-width: calc(100%);
	}
	.margbot0mobile {
		margin-bottom: 0px !important;
	}
	.margbot10mobile {
		margin-bottom: 10px !important;
	}
	.margtop0mobile {
		margin-top: 0px !important;
	}
	.margtop20mobile {
		margin-top: 20px;
	}
	.master__list,
	.master__list li {
		border: 0;
	}
	/*.masters-content {
		margin-top: 20px;
	}*/
	.masters-feature {
		padding: 0 0px;
	}
	body:not(.home):not(.front-page) main .masters-features.container-inner:not(.jci-program-listing-hero__features) {
		margin-left: 20px !important;
		margin-right: 20px !important;
	}
	.masters-hero {
    	padding: 15px 0 0;
	}	
  	.masters-title {
    	font-size: 40px;
		line-height: 60px;
  	}
	.mm {
		width: 32px !important;
	}
	.mobile {
		display: block !important;
	}
	.mobilehide {
		display: none !important;
	}
	.mobiledisplay {
		display: inherit !important;
	}
	.moveup {
		margin-top: -40px;
	}
	.noflexmobile {
		display: block !important;
	}
	.note {
		padding: 0 20px;
	}
	.nums {
		min-height: 0px;
    	display: grid;
    	place-items: center;
	}
	.pad0mobile {
		padding-bottom: 0px !important;
	}
	.pad20mobile {
		padding-bottom: 20px !important;
	}
	.pad027 {
		padding: 0 27px;
	}
	.pad20 {
		padding-top: 20px;
		padding-bottom: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.pad40 {
		padding-top: 20px;
		padding-bottom: 0px;
	}
	.padleft47 {
		padding-left: 47px !important;
	}
	.padleft50 {
    	padding-left: 44px !important;
	}
	.padlr0mobile {
		padding-left: 0px !important;		
		padding-right: 0px !important;
	}
	.padlr10mobile {
		padding-left: 10px !important;		
		padding-right: 10px !important;		
	}
	.padlr12mobile {
		padding-left: 12px !important;		
		padding-right: 12px !important;		
	}
	.padtop0mobile {
		padding-top: 0 !important;
	}
	.padtop10mobile {
		padding-top: 10px !important;
	}
	.padtop20mobile {
		padding-top: 15px !important;
	}
	.padtop40mobile {
		padding-top: 40px !important;
	}
	.reorder {
		display: grid;
	}
	.reorder > div {
		order: 2;
	}
	.reorder > nav {
		order: 1;
	}
	.rowgrid {
		display: grid;
    	grid-template-columns: repeat(2, 1fr);
		gap: 0;
	}
	.rowgrid .card-description {
    	width: 92%;
    	left: 4%;
    	padding: 10px;
	}
	.rowmobile {
    	display: flex;
    	flex-direction: column;
    	gap: 1rem;
	}
	.rowmobile.thin {
    	gap: 0.2rem;
	}
	.squareimg {
		aspect-ratio: 16 / 10 !important;
    	overflow: hidden;
    	width: 100% !important;
    	height: 100% !important;
    	object-fit: cover !important;
	}
  	.sup-nav:not(.jci-horizontal-menu) {
    	overflow-x: auto;
    	margin-top: 0;
  	}
  	.sup-nav__list,
	.sup-nav-mini__list {
    	display: flex;
    	flex-wrap: nowrap;
    	gap: 16px;
    	overflow-x: auto;
    	-webkit-overflow-scrolling: touch;
    	padding-bottom: 8px;
		padding-left: 0;
		padding-right: 0;
  	}
  	.sup-nav__list li,
  	.sup-nav-mini__list li {
    	flex: 0 0 auto;
    	white-space: nowrap;
  	}
	.sup-nav-mini__list {  	
  		justify-content: left;
	}
	.talents > div:nth-of-type(odd){
		padding-right: 5px !important;
	}
	.talents > div:nth-of-type(even){
		padding-left: 5px !important;
	}
	.testimonialmobile {
		position: relative;
    	top: -70px;
    	background: #fff;
    	left: 25px;
    	width: calc(100vw - 66px);
    	padding: 20px;
	}
	.thin {
		gap: 0.2rem;
	}
	.up1 {
		margin-top: 0px;
		background-color: #fff;
    	padding: clamp(30px, 4vw, 52px);
	}
	.uparrow {
		max-width: 70px !important;

	}
	.video-wrapper iframe {
		width: 100%;
    	height: calc(66vw - 40px);
	}
	
	
}


/* SHRINK */
@media only screen and (min-width: 768px){
	#searchclose {
		right: calc(50vw - 640px);
    	position: fixed;
	}	
	.aim-list.desktop {
		display: grid !important;
    	grid-template-columns: 1fr 1fr;
		overflow: hidden;
		width: 250px !important;
	}
	.bright:nth-of-type(1) {
		border-right: 1px solid #707070;
		padding-right: 30px !important;
	}
	.bright:nth-of-type(2) {
		border-right: 1px solid #707070;
		padding-left: 0px !important;
		padding-right: 30px !important;
	}
	.bright:nth-of-type(3) {
		padding-left: 0px !important;
		padding-right: 0px !important;
	}	
	.doscols {
		column-count: 2;
  		column-gap: 20px; /* espai entre columnes, opcional */
	}
	.ddoscols.onecolm {
		column-count: 1;
  		column-gap: 0px; /* espai entre columnes, opcional */
	}
	.masters-content.bigger {
  		grid-template-columns: 1.2fr 0.8fr;
	}
	.masters-title.maxt {
  		font-size: 80px;
		line-height: 80px;
	}
	.searchgrid {
		padding: 0 10% 20px;
	}
	
}



/* Legacy 20px interior-page width remains only for wrappers that have not yet
 * migrated to the canonical JCI container API. Program components carrying
 * .jci-container must be owned exclusively by container-system.css. */
body.single-program main .container-inner:not(.jci-container),
body.page-template-default:not(.home):not(.front-page) main > h1,
body.page-template-default:not(.home):not(.front-page) main > h2,
body.page-template-default:not(.home):not(.front-page) main > h3,
body.page-template-default:not(.home):not(.front-page) main > p {
        width: calc(100% - 40px) !important;
}


/* v146: presentation moved out of frontend markup. */
.jci-social-icon { margin-top: 5px; }
