@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;800&display=swap");

:root {
  --font: "Montserrat";
  --font-color: #262626;
  --gap: 3em;
  --red: #83002c;
  --green: #00a0af;
}

* {
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-size: 1em;
  border: 0 none;
  background-color: transparent;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  outline: none;
}

body {
  font-size: 62.5%;
}

* {
  font-variant-ligatures: none;
}

html,
body {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font);
  color: var(--font-color);
  font-weight: 300;
}

.container {
  max-width: 94.5em;
  margin: 0 auto;
  padding: 0 var(--gap);
}

#header .container {
  text-align: center;
  padding-top: var(--gap);
  padding-bottom: var(--gap);
}

#header:after {
  height: 0.4em;
  content: "";
  display: block;
  background-image: url(../images/divider.png);
  background-size: 100% 100%;
}

#header .logo img {
  max-width: 20em;
}

#header #menu {
  margin: var(--gap) 0;
}
#header #menu a {
  font-size: 1.6em;
  color: inherit;
  text-decoration: none;
  display: block;
  margin: 0.25em 0;
}
#header #menu a:hover,
#header #menu li.active a {
  color: var(--red);
  font-weight: 600;
  position: relative;
}

#header .social .ja {
  width: 16.6em;
  display: block;
  margin: 0 auto 2.5em auto;
}

@media (min-width: 720px) {
  #header .logo img {
    max-width: 26em;
  }
}

@media (min-width: 960px) {
  #header .container {
    display: flex;
    align-items: flex-end;
    text-align: left;
    padding-bottom: calc(var(--gap) * 1.5);
  }
  #header #menu {
    margin: 0 0 -0.5em var(--gap);
    flex-grow: 1;
  }
  #header #menu ul {
    display: flex;
  }
  #header #menu ul li {
    margin-left: var(--gap);
  }
  #header #menu a:hover:after,
  #header #menu li.active a:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: var(--red) transparent transparent transparent;
    content: "";
    position: absolute;
    bottom: -1.5em;
    left: 50%;
    transform: translateX(-50%);
  }
  #header .social {
    display: block;
    text-align: right;
  }
  #header .social .facebook,
  #header .social .ja {
    margin-right: 0;
  }
}

#footer {
  background: #00a0af;
  background: linear-gradient(90deg, #d0df5d 0%, #00a0af 100%);
  text-align: center;
}
#footer:before {
  height: 0.4em;
  content: "";
  display: block;
  background-image: url(../images/divider.png);
  background-size: 100% 100%;
}
#footer .container {
  padding-top: var(--gap);
  padding-bottom: var(--gap);
}
#footer .logo {
  margin-bottom: var(--gap);
}
#footer .logo img {
  max-width: 100%;
}
#footer .social a {
  margin-right: 1em;
  margin-bottom: 0.5em;
  display: inline-block;
}
#footer .links {
  color: var(--green);
}
#footer .links a {
  color: inherit;
  font-size: 1.2em;
  text-decoration: none;
}
#footer p {
  color: #fff;
  font-size: 1.2em;
  line-height: 1.25em;
  margin-top: 0.5em;
  margin-bottom: 0;
}
@media (min-width: 720px) {
  #footer .container {
    display: flex;
    align-items: flex-start;
    padding-top: calc(var(--gap) * 1.5);
    padding-bottom: calc(var(--gap) * 1.5);
  }
  #footer .logo {
    flex-grow: 1;
    text-align: left;
    margin-bottom: 0;
  }
}

.banner {
  background-image: url(../images/slide1.jpg);
  background-size: cover;
  position: relative;
  display: flex;
  min-height: 20em;
}
.banner img {
  width: 100%;
  display: block;
  min-height: 25em;
  object-fit: cover;
  object-position: center center;
}
.banner p {
  margin: auto;
  color: #fff;
  width: 100%;
  text-align: center;
  font-size: 3em;
  text-transform: uppercase;
  text-shadow: 0 0 0.2em rgba(0, 0, 0, 0.5);
}
.banner p strong {
  font-weight: 800;
}
@media (min-width: 500px) {
  .banner {
    min-height: 41vw;
  }
  .banner p {
    font-size: 4em;
  }
}
@media (min-width: 720px) {
  .banner p {
    font-size: 5em;
  }
}

.titulo {
  font-size: 2.7em;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 0.5em;
}
@media (min-width: 500px) {
  .titulo {
    font-size: 3.6em;
  }
}

strong {
  font-weight: 600;
}
.buttons {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding-top: 2rem;
}
@media (min-width: 500px) {
  .buttons {
    flex-flow: row nowrap;
  }
}
.intro {
  padding-top: calc(var(--gap) * 1.5);
  text-align: center;
}
.intro p {
  font-size: 1.5em;
  line-height: 1.3em;
}
@media (min-width: 500px) {
  .intro p {
    font-size: 2em;
  }
}
.intro p + p {
  margin-top: 1em;
}
.intro p a {
  color: var(--red);
  text-decoration: none;
}
.intro .button {
  margin-top: 2em;
}

.button,
.duplicateLink,
.removeLink {
  background-color: var(--red);
  font-weight: bold;
  font-size: 1.8em;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.75em 1.5em 0.85em 1.5em;
  border-radius: 4px;
  display: inline-block;
  cursor: pointer;
}
@media (min-width: 500px) {
  .button,
  .duplicateLink,
  .removeLink {
    font-size: 2.4em;
  }
}

.duplicateLink,
.removeLink {
  font-size: 1.4em;
}

.programa {
  background: #c3dd9f;
  background: linear-gradient(
    90deg,
    rgba(197, 222, 160, 0.4) 0%,
    rgba(119, 193, 186, 0.2) 100%
  );
  padding: calc(var(--gap) * 2) 0 calc(var(--gap) * 1.5);
  margin-top: -2.5em;
}
.programa li {
  max-width: 46em;
  margin: 0 auto var(--gap) auto;
}
.programa header {
  display: flex;
  align-items: center;
}
.programa .icono {
  margin-right: 2em;
}
.programa h2,
.programa .mod {
  font-size: 1.8em;
  font-weight: bold;
  margin: 0;
}
.programa .mod {
  color: var(--green);
  text-transform: uppercase;
}
.programa p {
  font-size: 1.6em;
  margin: 1.5em 0;
  line-height: 1.5em;
}
@media (min-width: 500px) {
  .programa {
    margin-top: -3.5em;
    padding-top: calc(var(--gap) * 3);
  }
}
@media (min-width: 720px) {
  .programa .items {
    column-count: 2;
    column-gap: var(--gap);
  }
  .programa li {
    break-inside: avoid;
  }
  .programa p {
    margin-top: 1em;
  }
}

.titulo {
  color: var(--green);
  text-align: center;
  margin-bottom: 2em;
}

#form-container .wFormTitle,
#form-container .wFormHeader,
#form-container > div {
  display: none;
}
.inscripcion .wForm form {
  max-width: 47rem;
  margin: 0 auto;
  font-size: 1rem !important;
  padding: 0 !important;
}
/* .inscripcion .wForm form label#tfa_1-L, */
.inscripcion .wForm form label#tfa_145-L,
.inscripcion .wForm form label#tfa_51-L {
  color: var(--blue) !important;
  text-align: center !important;
  font-size: 2rem !important;
  font-weight: 600 !important;
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}
.inscripcion .wForm form .section:not(:last-child) .oneField {
  margin-bottom: 2rem !important;
}
.inscripcion .wForm form .section.inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0.5rem;
}
.inscripcion .wForm form .section.inline .oneField,
.inscripcion
  .wForm
  form
  .section.inline
  .oneField:not([role="radiogroup"])
  .inputWrapper {
  width: 100% !important;
  min-width: 49% !important;
}
.inscripcion .wForm form .section.inline .oneField {
  max-width: 49% !important;
}
.inscripcion .wForm form .section.inline .oneField.removeable {
  max-width: 100% !important;
}
.inscripcion .wForm form .oneChoice {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -ms-flex-flow: row wrap !important;
  flex-flow: row wrap !important;
  -webkit-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  gap: 0.5em !important;
}
.inscripcion .wForm form .oneChoice input {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  margin: 0 !important;
}
.inscripcion .wForm form .oneField[role="radiogroup"] > label {
  font-weight: 700 !important;
}
.inscripcion .wForm form > .oneField[role="radiogroup"] {
  margin-bottom: 2em !important;
  max-width: 100% !important;
}
.inscripcion .wForm form .htmlSection,
.inscripcion .wForm form .oneField {
  margin: 0 !important;
  padding: 0 !important;
}
.inscripcion .wForm form .htmlSection .inputWrapper,
.inscripcion .wForm form .oneField .inputWrapper {
  width: 100% !important;
}
.inscripcion
  .wForm
  form
  .htmlSection
  .inputWrapper
  input:not([type="radio"], [type="checkbox"]),
.inscripcion .wForm form .htmlSection .inputWrapper select,
.inscripcion
  .wForm
  form
  .oneField
  .inputWrapper
  input:not([type="radio"], [type="checkbox"]),
.inscripcion .wForm form .oneField .inputWrapper select {
  margin: 0 !important;
  padding: 1em !important;
  font-size: 1em !important;
  display: block !important;
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 100% !important;
  height: auto !important;
}
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_11,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_147,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_2,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_9,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_13,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_207,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_413,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_11,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_147,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_2,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_9,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_13,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_207,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_413 {
  width: 100% !important;
}
.inscripcion .wForm form #tfa_72-D {
  max-width: 100% !important;
}
.inscripcion .wForm form .actions,
.inscripcion .wForm form .duplicateSpan,
.inscripcion .wForm form .removeSpan {
  text-align: center !important;
}
.inscripcion .wForm form .duplicateLink,
.inscripcion .wForm form .removeLink {
  color: var(--blue) !important;
  font-size: 1.5rem !important;
  margin-top: 1rem !important;
}
.inscripcion .wForm form .primaryAction {
  color: white !important;
  font-size: 1.2rem !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  background-color: var(--blue) !important;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--yellow)),
    to(var(--blue))
  ) !important;
  background: linear-gradient(
    90deg,
    var(--yellow) 0%,
    var(--blue) 100%
  ) !important;
  border-radius: 4px !important;
  margin-top: 1rem !important;
  padding: 0.75em 1.5em 0.85em 1.5em !important;
  display: inline-block !important;
  cursor: pointer !important;
}

.inscripcion .buttons {
  padding-bottom: 3em;
  margin-top: -3em;
}
.inscripcion .buttons .button {
  position: static;
  margin: 0 0.25em 1em 0.25em;
  font-size: 1.5em;
}
.inscripcion .button {
  position: relative;
  top: 1.25em;
}
@media (min-width: 720px) {
  .inscripcion .row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2em;
  }
  .inscripcion .buttons {
    display: flex;
  }
  .inscripcion .buttons .button {
    width: 50%;
    font-size: 1.7em;
    margin: 0 0.5em 1em 0.5em;
  }
}

.outro {
  padding-top: calc(var(--gap) * 2);
}
@media (min-width: 500px) {
  .outro {
    padding-top: calc(var(--gap) * 3);
  }
}

.nosotros {
  padding-top: calc(var(--gap) * 3);
  padding-bottom: calc(var(--gap) * 3);
}
.nosotros .logo {
  text-align: center;
  margin-bottom: var(--gap);
}
.nosotros .logo img {
  width: 26em;
}
.nosotros h3 {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 1.5em;
}
.nosotros p {
  font-size: 1.4em;
  line-height: 1.5em;
}
.nosotros p + p {
  margin-top: 1em;
}
.nosotros p a {
  color: var(--red);
  text-decoration: none;
}
@media (min-width: 720px) {
  .nosotros .container {
    display: flex;
  }
  .nosotros .logo {
    margin-bottom: 0;
    margin-right: var(--gap);
  }
  .nosotros .info {
    flex-grow: 1;
  }
}

.lengthIndicator {
  display: none !important;
}

.inscripcion .wForm form {
  max-width: 47rem;
  margin: 0 auto;
  font-size: 1rem !important;
  padding: 0 !important;
}
/* .inscripcion .wForm form label#tfa_1-L, */
.inscripcion .wForm form label#tfa_145-L,
.inscripcion .wForm form label#tfa_51-L {
  color: var(--green) !important;
  text-align: center !important;
  font-size: 2rem !important;
  font-weight: 600 !important;
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}
.inscripcion .wForm form .section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 0.5rem;
}
.inscripcion .wForm form .oneChoice {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -ms-flex-flow: row wrap !important;
  flex-flow: row wrap !important;
  -webkit-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  gap: 0.5em !important;
}
.inscripcion .wForm form .oneChoice input {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  margin: 0 !important;
}
.inscripcion .wForm form .oneField[role="radiogroup"] > label {
  font-weight: 700 !important;
}
.inscripcion .wForm form > .oneField[role="radiogroup"] {
  margin-bottom: 2em !important;
  max-width: 100% !important;
}
.inscripcion .wForm form .htmlSection,
.inscripcion .wForm form .oneField {
  margin: 0 !important;
  padding: 0 !important;
}
.inscripcion .wForm form .htmlSection .inputWrapper,
.inscripcion .wForm form .oneField .inputWrapper {
  width: 100% !important;
}
.inscripcion .wForm form .htmlSection .inputWrapper input,
.inscripcion .wForm form .htmlSection .inputWrapper select,
.inscripcion .wForm form .oneField .inputWrapper input,
.inscripcion .wForm form .oneField .inputWrapper select {
  margin: 0 !important;
  padding: 1em !important;
  font-size: 1em !important;
  display: block !important;
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: auto !important;
}
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_11,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_147,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_2,
.inscripcion .wForm form .htmlSection .inputWrapper input#tfa_9,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_13,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_207,
.inscripcion .wForm form .htmlSection .inputWrapper select#tfa_413,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_11,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_147,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_2,
.inscripcion .wForm form .oneField .inputWrapper input#tfa_9,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_13,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_207,
.inscripcion .wForm form .oneField .inputWrapper select#tfa_413 {
  width: 100% !important;
}
.inscripcion .wForm form .inline .oneField,
.inscripcion
  .wForm
  form
  .inline
  .oneField:not([role="radiogroup"])
  .inputWrapper {
  width: 100% !important;
}
.inscripcion .wForm form .actions,
.inscripcion .wForm form .duplicateSpan,
.inscripcion .wForm form .removeSpan {
  text-align: center !important;
}
.inscripcion .wForm form .duplicateLink,
.inscripcion .wForm form .removeLink {
  color: var(--green) !important;
  font-size: 1.5rem !important;
  margin-top: 1rem !important;
}
.inscripcion .wForm form .primaryAction {
  color: white !important;
  font-size: 1.2rem !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  background: var(--green) !important;
  border-radius: 4px !important;
  margin-top: 1rem !important;
  padding: 0.75em 1.5em 0.85em 1.5em !important;
  display: inline-block !important;
  cursor: pointer !important;
}
