/* Color in Hex */
/*Fonts*/
/* Layout basics */
@keyframes slideInFromLeft {
  0% {
    transform: translateX(-100%); }
  100% {
    transform: translateX(0); } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes changecolor {
  0% {
    background-color: #A6206A; }
  12% {
    background-color: #EC1C4B; }
  25% {
    background-color: #F16A43; }
  37% {
    background-color: #f1c939; }
  50% {
    background-color: #299e7b; }
  62% {
    background-color: #1a7e80; }
  75% {
    background-color: #1a6e8f; }
  87% {
    background-color: #085297; } }

.animations .flexamples .flexample {
  width: 100%; }
  .animations .flexamples .flexample .transition-1 .cajita-1 {
    width: 150px;
    transition: all 2s ease-in-out .25s;
    -webkit-transition: all 2s ease-in-out .25s; }
    .animations .flexamples .flexample .transition-1 .cajita-1:hover {
      width: 100%;
      background-color: #1a7e80; }
  .animations .flexamples .flexample .transition-2 .cajita-1 {
    width: 150px;
    transition: all 2s cubic-bezier(0.1, 0.7, 1, 0.1) 0.25s;
    -webkit-transition: all 2s cubic-bezier(0.1, 0.7, 1, 0.1) 0.25s; }
    .animations .flexamples .flexample .transition-2 .cajita-1:hover {
      width: 100%;
      background-color: #1a7e80; }
  .animations .flexamples .flexample .animacion-color .cajita-1 {
    width: 200em;
    animation: changecolor 10s ease .2s infinite normal forwards running; }
  .animations .flexamples .flexample .flexbox.animacion-color {
    flex: 0 1 0%;
    border: none;
    margin: 1em 0; }
    .animations .flexamples .flexample .flexbox.animacion-color img {
      box-shadow: 0 0.5rem 1.5rem 0.125rem rgba(0, 0, 0, 0.25);
      filter: brightness(130%) contrast(105%); }
    .animations .flexamples .flexample .flexbox.animacion-color .cajita-1 {
      width: 40vw;
      height: 125px;
      margin: 0; }

.animations .flexamples.animaciones .flexample {
  flex: 0 1 0%; }

.animations .flexamples .styled-table {
  border-collapse: collapse;
  margin: 1em 0; }
  .animations .flexamples .styled-table th, .animations .flexamples .styled-table td {
    border: 1px solid #cdcdcd;
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }
  .animations .flexamples .styled-table th {
    background-color: #d0e8e5; }

.animations .bold {
  font-weight: 600; }

.animations h5 + h6 {
  font-size: 1.5em;
  font-weight: 100; }

.animations .styled-table {
  border-collapse: collapse;
  margin: 1em 0; }
  .animations .styled-table th, .animations .styled-table td {
    border: 1px solid #cdcdcd;
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }
  .animations .styled-table th {
    background-color: #d0e8e5; }

.animations .bold {
  font-weight: 600; }

.animations h5 + h6 {
  font-size: 1.5em;
  font-weight: 100; }

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

body {
  background-color: #fff; }
  body h1, body h2, body h3, body h4, body h5, body h6, body p, body span {
    font-family: "Roboto", sans-serif; }

section, .sizes, .flexbody, .flexbody, .gridbody {
  animation: fadeIn .75s ease-in-out 0s; }

/* width */
body::-webkit-scrollbar {
  width: .65em;
  height: .65em; }

/* Track */
body::-webkit-scrollbar-track {
  background: #f0f0f0;
  width: .5em; }

/* Handle */
body::-webkit-scrollbar-thumb {
  background: #bcbcbc;
  border-radius: 1em;
  border: 2px solid #f0f0f0; }

.home {
  display: flex;
  flex-flow: column wrap;
  width: 100%;
  line-height: 1.5; }
  .home.flexbody {
    padding-bottom: 5rem;
    background: url(../img/bg-home.jpg) bottom center no-repeat fixed;
    background-size: cover; }
    .home.flexbody h4, .home.flexbody h2, .home.flexbody h5 {
      width: 40%; }
      @media (max-width: 1080px) {
        .home.flexbody h4, .home.flexbody h2, .home.flexbody h5 {
          width: 100%; } }
    .home.flexbody h5 {
      font-weight: 500;
      text-transform: unset;
      font-size: 1rem; }
  .home h2, .home h3, .home h4, .home h5, .home h6, .home ol, .home li, .home span {
    font-family: 'Montserrat', sans-serif;
    color: #333; }
  .home h4 {
    margin: 1.5rem auto; }
  .home ol {
    margin-left: 1rem; }
    .home ol > li {
      text-indent: 0rem; }
      .home ol > li ol {
        margin-bottom: 1.5rem; }
  .home ul {
    margin-left: 1rem; }
    .home ul > li {
      text-indent: 0rem; }
      .home ul > li > ul {
        margin-bottom: 1.5rem; }
  .home .bold {
    font-weight: 500; }

.flexbody h2 {
  margin: 2rem 0 0 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 2rem;
  margin: 1em 0 0 0; }
  @media (max-width: 1080px) {
    .flexbody h2 {
      font-size: 1.5rem;
      line-height: 1.15; } }

.flexbody h4 {
  margin: 0 0 1rem 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  font-size: 1.5rem;
  margin: 3rem 0 1.5rem 0;
  color: #666;
  border-top: 3px solid #d4d4e4;
  padding: 1rem;
  position: relative;
  background-color: #ebf1f7;
  width: 100%; }

.flexbody h5 {
  margin: 0 0 1rem 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  margin: 1.5rem 0 1rem 0; }

.flexbody p {
  font: 300 1rem 'roboto', 'sans-serif';
  line-height: 1.2rem; }

.flexbody .flexamples {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 2rem; }
  .flexbody .flexamples.nowrap {
    flex-flow: row nowrap; }

.flexbody .flexample {
  display: flex;
  flex-flow: column wrap;
  margin-right: 1rem; }
  @media (max-width: 1080px) {
    .flexbody .flexample {
      width: 100%; } }
  .flexbody .flexample.w-100 {
    width: 100%; }

.flexbody .flexbox {
  border: 1px solid #666;
  width: 100%;
  padding: 0;
  display: flex; }
  .flexbody .flexbox.col {
    width: 120px; }
  .flexbody .flexbox.for-wrapping {
    max-width: 600px; }
  .flexbody .flexbox.flex {
    display: flex;
    width: auto;
    margin: 1rem auto; }
  .flexbody .flexbox.inline-flex {
    display: inline-flex;
    width: auto;
    margin: 1rem auto; }
  .flexbody .flexbox .cajita-1 {
    background-color: #A6206A;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-1 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-1.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-2 {
    background-color: #EC1C4B;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-2 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-2.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-3 {
    background-color: #F16A43;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-3 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-3.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-4 {
    background-color: #f1c939;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-4 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-4.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-5 {
    background-color: #299e7b;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-5 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-5.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-6 {
    background-color: #1a7e80;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-6 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-6.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-7 {
    background-color: #1a6e8f;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-7 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-7.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-8 {
    background-color: #085297;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-8 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-8.width-100 {
      width: 100px; }
  .flexbody .flexbox.direction-row {
    flex-direction: row; }
  .flexbody .flexbox.direction-row-reverse {
    flex-direction: row-reverse; }
  .flexbody .flexbox.direction-column {
    flex-direction: column; }
  .flexbody .flexbox.direction-column-reverse {
    flex-direction: column-reverse; }
  .flexbody .flexbox.wrap {
    flex-wrap: wrap; }
    .flexbody .flexbox.wrap-no {
      flex-wrap: nowrap; }
    .flexbody .flexbox.wrap-reverse {
      flex-wrap: wrap-reverse; }
  .flexbody .flexbox .order {
    order: 4; }
  .flexbody .flexbox.flexsizes .grow {
    flex-grow: 1;
    flex-shrink: 0; }
  .flexbody .flexbox.flexsizes .grow-x2 {
    flex-grow: 2;
    flex-shrink: 0; }
  .flexbody .flexbox.flexsizes .shrink {
    flex-shrink: 1;
    flex-grow: 0; }
  .flexbody .flexbox.flexsizes .shrink-x2 {
    flex-shrink: 2;
    flex-grow: 0; }
  .flexbody .flexbox.flexsizes .basis {
    flex-basis: 30%; }
  .flexbody .flexbox.flexsizes #shorthand-flex {
    flex: 1 0 240px; }
  .flexbody .flexbox.justify-flexstart {
    justify-content: flex-start; }
  .flexbody .flexbox.justify-flexend {
    justify-content: flex-end; }
  .flexbody .flexbox.justify-center {
    justify-content: center; }
  .flexbody .flexbox.justify-space-between {
    justify-content: space-between; }
  .flexbody .flexbox.justify-space-around {
    justify-content: space-around; }
  .flexbody .flexbox.justify-space-evenly {
    justify-content: space-evenly; }
  .flexbody .flexbox.align-flexstart {
    align-items: flex-start; }
  .flexbody .flexbox.align-flexend {
    align-items: flex-end; }
  .flexbody .flexbox.align-center {
    align-items: center; }
  .flexbody .flexbox.align-stretch {
    align-items: stretch; }
  .flexbody .flexbox.align-baseline {
    align-items: baseline; }
    .flexbody .flexbox.align-baseline .text-xxl {
      font-size: 3rem; }
    .flexbody .flexbox.align-baseline .text-xl {
      font-size: 2.25rem; }
  .flexbody .flexbox .self-flexstart {
    align-self: flex-start; }
  .flexbody .flexbox .self-flexend {
    align-self: flex-end; }
  .flexbody .flexbox .self-center {
    align-self: center; }
  .flexbody .flexbox .self-stretch {
    align-self: stretch; }
  .flexbody .flexbox .self-baseline {
    align-self: baseline; }
    .flexbody .flexbox .self-baseline.text-xxl {
      font-size: 3rem; }
    .flexbody .flexbox .self-baseline.text-xl {
      font-size: 2.25rem; }
  .flexbody .flexbox.content-flexstart {
    align-content: flex-start; }
  .flexbody .flexbox.content-flexend {
    align-content: flex-end; }
  .flexbody .flexbox.content-center {
    align-content: center; }
  .flexbody .flexbox.content-stretch {
    align-content: stretch; }
  .flexbody .flexbox.content-space-between {
    align-content: space-between; }
  .flexbody .flexbox.content-space-around {
    align-content: space-around; }
  .flexbody .flexbox.height {
    height: 120px; }
  .flexbody .flexbox.height-250 {
    height: 250px; }
  .flexbody .flexbox.wrap-row {
    flex-flow: row wrap; }

.flexbody .inline-flex {
  display: inline-flex; }

.flexbody .flex {
  display: flex; }

.flexbody .wrap-row {
  flex-flow: row wrap; }

.flexbody .nowrap-row {
  flex-flow: row nowrap; }

.responsive {
  position: relative; }
  .responsive ul {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%;
    margin-left: 1rem; }
  .responsive.flexbody .flexample img {
    width: fit-content; }
  .responsive.flexbody .flexample.responsive {
    width: 50%; }
    @media (max-width: 1480px) {
      .responsive.flexbody .flexample.responsive {
        width: 60%; } }
    @media (max-width: 1280px) {
      .responsive.flexbody .flexample.responsive {
        width: 80%; } }
    @media (max-width: 960px) {
      .responsive.flexbody .flexample.responsive {
        width: 100%; } }
    .responsive.flexbody .flexample.responsive .flexbox {
      overflow-x: auto;
      border: 1px dashed #333; }
      @media (max-width: 960px) {
        .responsive.flexbody .flexample.responsive .flexbox {
          display: flex; }
          .responsive.flexbody .flexample.responsive .flexbox > div {
            flex: 0 1 auto; } }
      @media (max-width: 780px) {
        .responsive.flexbody .flexample.responsive .flexbox {
          flex-flow: row wrap; } }
      @media (max-width: 480px) {
        .responsive.flexbody .flexample.responsive .flexbox {
          display: block; } }
  .responsive.flexbody p {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }
  .responsive.flexbody img {
    max-width: 33vw;
    margin: 1em; }
    @media (max-width: 1080px) {
      .responsive.flexbody img {
        max-width: 100%; } }
  .responsive.flexbody a {
    text-decoration: none;
    color: inherit;
    font-weight: 700; }
  .responsive.flexbody .btn.download {
    text-decoration: none;
    color: white;
    background: #6b4b79;
    background: linear-gradient(#6b4b79 0%, #BF3F57 100%);
    border: none;
    border-radius: 2em;
    padding: 1em;
    font-weight: 800;
    font-family: 'montserrat', sans-serif;
    text-transform: uppercase;
    margin: 1.5em 0;
    display: flex; }
    .responsive.flexbody .btn.download:hover {
      background: linear-gradient(#33243a 0%, #722634 100%);
      transition: background .25s ease-in-out .01s; }
    .responsive.flexbody .btn.download:focus {
      outline: 1px solid #f0f0f0; }
  .responsive.flexbody .flexample {
    width: fit-content; }

header {
  width: 100%;
  margin: 0 auto;
  padding: 2em 1em 0 1em;
  background-color: #BF3F57;
  z-index: 100;
  height: 80px;
  display: flex;
  align-items: flex-end; }
  header h1 {
    color: #fafafa;
    font-size: 2.5rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 100; }
    @media (max-width: 1080px) {
      header h1 {
        font-size: 1.5rem; } }

nav {
  width: 100%;
  height: 50px;
  background-color: #7A9FBF;
  position: sticky;
  top: 0;
  z-index: 99;
  box-shadow: 0 0.5rem 1.5rem 0.125rem rgba(0, 0, 0, 0.25); }
  nav ul li {
    display: inline-block;
    padding: 1em 0;
    transition: background-color 0.25s linear; }
    nav ul li:hover {
      transition: background-color 0.25s linear;
      background-color: #6993b7; }
    nav ul li a {
      padding: 1em;
      height: 50px;
      text-decoration: none;
      font-family: 'Montserrat', sans-serif;
      color: #ffffff;
      font-size: 90%; }
      nav ul li a:active, nav ul li a :focus {
        font-weight: 500; }
  nav label, nav input {
    display: none; }
  @media (max-width: 1080px) {
    nav {
      overflow-y: visible;
      min-height: 50px;
      height: auto;
      max-height: 100%;
      width: auto;
      min-width: 50px; }
      nav label {
        cursor: pointer; }
      nav label, nav #content {
        height: 45px;
        width: 50px;
        margin-bottom: 0;
        display: flex; }
      nav #menu-toggle {
        display: none; }
      nav #menu {
        width: 100%;
        overflow: hidden;
        max-height: 0;
        -webkit-transition: height,max-height 0.75s ease-in-out 0.01s;
        transition: height,max-height 0.75s ease-in-out 0.01s; }
      nav #menu-toggle:checked + #menu {
        max-height: 150px; }
      nav .nav-icon {
        margin: 10px;
        width: 40px; }
        nav .nav-icon:after, nav .nav-icon:before, nav .nav-icon div {
          background-color: #fff;
          border-radius: 3px;
          content: '';
          display: block;
          height: 3px;
          margin: 6px 0;
          transition: all .25s ease-in-out; }
        nav .nav-icon.active {
          transition: all .25s ease-in-out; }
          nav .nav-icon.active:after {
            transform: translateY(-12px) rotate(135deg); }
          nav .nav-icon.active:before {
            transform: translateY(6px) rotate(-135deg); }
          nav .nav-icon.active div {
            transform: scale(0); } }

section {
  float: left;
  width: 80%;
  margin: 0;
  background-color: #fafafa;
  padding: 1em; }
  section article {
    padding: 1em; }

aside {
  float: right;
  width: 20%;
  padding: 1em;
  background-color: #f5d8cd; }
  aside img {
    width: 45%;
    margin: 2rem auto;
    display: block; }

footer {
  clear: both;
  width: 100%;
  height: 50px;
  background-color: #6b4b79;
  color: #fafafa;
  padding: 1em;
  position: fixed;
  bottom: 0;
  box-shadow: 0 -0.5rem 1.5rem 0.125rem rgba(0, 0, 0, 0.25); }
  footer p {
    width: auto;
    margin: 0 auto;
    text-align: center;
    font-size: .875em; }
    @media (max-width: 1080px) {
      footer p {
        font-size: .75em; } }
  footer a {
    text-decoration: none;
    color: #fff; }
  footer.nofixed {
    position: static; }

.gridbody, .sizes, .flexbody, .flexbody {
  min-height: calc(100vh - 180px); }

.font-italic {
  font-style: italic; }

.w100 {
  width: 100%; }

aside {
  display: flex;
  flex-direction: column;
  flex: 1 0 100%; }

.text-styles .flexample {
  flex: 1 0 0%; }
  .text-styles .flexample .flexbox {
    border: none; }
  .text-styles .flexample.t-align p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%; }
    .text-styles .flexample.t-align p.text-align-left {
      text-align: left; }
    .text-styles .flexample.t-align p.text-align-right {
      text-align: right; }
    .text-styles .flexample.t-align p.text-align-center {
      text-align: center; }
    .text-styles .flexample.t-align p.text-align-justify {
      text-align: justify; }
  .text-styles .flexample.v-align .vertical-align-baseline {
    vertical-align: baseline; }
  .text-styles .flexample.v-align .vertical-align-sub {
    vertical-align: sub; }
  .text-styles .flexample.v-align .vertical-align-super {
    vertical-align: super; }
  .text-styles .flexample.v-align .vertical-align-top {
    vertical-align: top; }
  .text-styles .flexample.v-align .vertical-align-text-top {
    vertical-align: text-top; }
  .text-styles .flexample.v-align .vertical-align-middle {
    vertical-align: middle; }
  .text-styles .flexample.v-align .vertical-align-bottom {
    vertical-align: bottom; }
  .text-styles .flexample.v-align .vertical-align-text-bottom {
    vertical-align: text-bottom; }
  .text-styles .flexample.v-align p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%;
    line-height: 250%;
    font-size: 1.5rem;
    text-decoration: underline;
    font-family: 'Roboto Condensed', sans-serif; }
  .text-styles .flexample.v-align img {
    width: 1em;
    height: auto; }
  .text-styles .flexample.w-space p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%; }
  .text-styles .flexample.w-space .word-spacing.positive {
    word-spacing: 50px; }
  .text-styles .flexample.w-space .word-spacing.negative {
    word-spacing: -5px; }
  .text-styles .flexample.l-space p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%; }
  .text-styles .flexample.l-space .letter-spacing.positive {
    letter-spacing: 10px; }
  .text-styles .flexample.l-space .letter-spacing.negative {
    letter-spacing: -2px; }
  .text-styles .flexample.t-decoration p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%; }
  .text-styles .flexample.t-decoration .t-deco.none {
    text-decoration: none; }
  .text-styles .flexample.t-decoration .t-deco.underline {
    text-decoration: underline; }
  .text-styles .flexample.t-decoration .t-deco.overline {
    text-decoration: overline; }
  .text-styles .flexample.t-decoration .t-deco.line-through {
    text-decoration: line-through; }
  .text-styles .flexample.t-transform p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%; }
  .text-styles .flexample.t-transform .t-trans.none {
    text-transform: none; }
  .text-styles .flexample.t-transform .t-trans.capitalize {
    text-transform: capitalize; }
  .text-styles .flexample.t-transform .t-trans.uppercase {
    text-transform: uppercase; }
  .text-styles .flexample.t-transform .t-trans.lowercase {
    text-transform: lowercase; }
  .text-styles .flexample.t-shadow p {
    padding: 1em;
    border: 1px solid #cdcdcd;
    line-height: 120%;
    font-size: 1.5rem;
    line-height: 150%; }
  .text-styles .flexample.t-shadow .ts-right {
    text-shadow: #cdcdcd 4px 0; }
  .text-styles .flexample.t-shadow .ts-bottom {
    text-shadow: #cdcdcd 0 4px; }
  .text-styles .flexample.t-shadow .ts-xy {
    text-shadow: #cdcdcd 4px 4px; }
  .text-styles .flexample.t-shadow .ts-blur {
    text-shadow: #333 0 0 4px; }
  .text-styles .flexample.t-shadow .ts-blur-xy {
    text-shadow: #333 4px 4px 4px; }
  .text-styles .flexample.t-shadow .ts-blur-2 {
    text-shadow: #333 4px 4px 2px, #333 -4px -4px 2px; }
  .text-styles .flexample.white-space .ws {
    border: 1px solid #cdcdcd;
    width: 200px;
    height: 200px;
    overflow: auto;
    margin: 1em; }
    .text-styles .flexample.white-space .ws.normal {
      white-space: normal; }
    .text-styles .flexample.white-space .ws.pre {
      white-space: pre; }
    .text-styles .flexample.white-space .ws.nowrap {
      white-space: nowrap; }
    .text-styles .flexample.white-space .ws.pre-wrap {
      white-space: pre-wrap; }
    .text-styles .flexample.white-space .ws.pre-line {
      white-space: pre-line; }
    .text-styles .flexample.white-space .ws .ellipsis {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
  .text-styles .flexample.white-space .table-ws {
    margin: 1em; }
    .text-styles .flexample.white-space .table-ws table {
      border-collapse: collapse; }
    .text-styles .flexample.white-space .table-ws thead, .text-styles .flexample.white-space .table-ws th, .text-styles .flexample.white-space .table-ws tbody, .text-styles .flexample.white-space .table-ws tr, .text-styles .flexample.white-space .table-ws td {
      border: 1px solid #cdcdcd;
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0.5em;
      line-height: 120%; }
    .text-styles .flexample.white-space .table-ws td {
      text-transform: uppercase; }
      .text-styles .flexample.white-space .table-ws td code {
        text-transform: lowercase; }

.tables {
  display: block;
  /* width */
  /* Track */
  /* Handle */ }
  .tables .bordered table, .tables .bordered th, .tables .bordered td {
    border: 1px solid #cdcdcd; }
  .tables .collapse {
    border-collapse: collapse; }
  .tables .separate {
    border-collapse: separate;
    border-spacing: 1em; }
  .tables table {
    margin-bottom: 2em; }
  .tables p {
    margin: 1em 0; }
  .tables h6 + h5 {
    margin-top: 0;
    font-size: .75em; }
  .tables h6 {
    font-weight: 300;
    font-size: 1.25em; }
  .tables caption {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0;
    font-weight: 300;
    line-height: 120%;
    font-size: .8em;
    font-style: oblique; }
  .tables .tag {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }
    .tables .tag.head {
      position: relative;
      top: -230px;
      left: 650px; }
    .tables .tag.body {
      position: relative;
      top: -150px;
      left: 650px; }
  .tables ul {
    margin: 1em auto;
    list-style: circle;
    text-indent: 1em;
    padding: 2em;
    width: max-content;
    background-color: #e8f5f3; }
    .tables ul li {
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0;
      font-weight: 300;
      line-height: 120%;
      padding: 0;
      line-height: 150%; }
      .tables ul li span {
        font-weight: 600; }
  .tables .destacada {
    background-color: #d0e8e5; }
  .tables .sticky {
    position: sticky;
    background-color: #d0e8e5;
    border: 1px solid black; }
    .tables .sticky.top {
      top: 0;
      z-index: 20; }
    .tables .sticky.left {
      left: 0;
      z-index: 20; }
  .tables .styled-table th, .tables .styled-table td {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }
  .tables .table-stick-first-col tr td:first-child {
    position: sticky;
    left: 1px;
    z-index: 15;
    background-color: #d0e8e5;
    border: 1px solid black; }
  .tables .flexample::-webkit-scrollbar {
    width: .65em;
    height: .65em; }
  .tables .flexample::-webkit-scrollbar-track {
    background: #f0f0f0;
    width: .5em; }
  .tables .flexample::-webkit-scrollbar-thumb {
    background: #bcbcbc;
    border-radius: 1em;
    border: 2px solid #f0f0f0; }
  .tables .table-tiki {
    width: 25%;
    overflow: auto;
    height: 150px; }
    @media (max-width: 1080px) {
      .tables .table-tiki {
        width: 340px; } }

.sizes, .flexbody {
  display: block;
  padding: 1em;
  background-color: #fafafa; }
  .sizes h2, .flexbody h2 {
    margin: 2rem 0 0 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600; }
  .sizes h4, .flexbody h4 {
    margin: 0 0 1rem 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300; }
  .sizes h5, .flexbody h5 {
    margin: 0 0 1rem 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    text-transform: uppercase; }
  .sizes p, .flexbody p {
    font: 300 1rem 'roboto', 'sans-serif';
    line-height: 1.2rem; }
  .sizes .container, .flexbody .container {
    margin: 0 0 1rem 0;
    width: 200px;
    background-color: #1a7e80; }
    .sizes .container .caja-size, .flexbody .container .caja-size {
      width: 150px;
      background-color: #299e7b; }
      .sizes .container .caja-size .texto-size, .flexbody .container .caja-size .texto-size {
        font-size: .75rem;
        color: #ffffff; }
    .sizes .container .caja-desborda, .flexbody .container .caja-desborda {
      overflow: auto;
      width: 150px;
      height: 90px;
      background-color: #299e7b; }
      .sizes .container .caja-desborda .texto-desborda, .flexbody .container .caja-desborda .texto-desborda {
        font-size: .75rem;
        color: #ffffff; }
    .sizes .container.p-flotante, .flexbody .container.p-flotante {
      width: 600px; }
      .sizes .container.p-flotante .img-flotante_left, .flexbody .container.p-flotante .img-flotante_left {
        float: left;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-flotante .img-flotante_right, .flexbody .container.p-flotante .img-flotante_right {
        float: right;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-flotante .caja-flow, .flexbody .container.p-flotante .caja-flow {
        width: 100%;
        height: auto;
        padding: .5rem;
        background-color: #299e7b; }
        .sizes .container.p-flotante .caja-flow .texto-flow, .flexbody .container.p-flotante .caja-flow .texto-flow {
          font-size: .75rem;
          color: #ffffff; }
    .sizes .container.p-position, .flexbody .container.p-position {
      width: 600px;
      position: relative;
      height: auto;
      max-height: 600px; }
      .sizes .container.p-position .absolute, .flexbody .container.p-position .absolute {
        position: absolute;
        top: 20px;
        left: 40px;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-position .relative, .flexbody .container.p-position .relative {
        position: relative;
        top: 0px;
        left: 0px;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-position .static, .flexbody .container.p-position .static {
        position: static;
        top: 0px;
        left: 0px;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-position .fixed, .flexbody .container.p-position .fixed {
        position: fixed;
        top: calc(50% - 185px);
        right: 0px;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-position.overflow, .flexbody .container.p-position.overflow {
        overflow: auto;
        max-height: 280px; }
      .sizes .container.p-position .sticky, .flexbody .container.p-position .sticky {
        position: sticky;
        top: 0px;
        left: 0px;
        width: 60px;
        margin: 1rem; }
      .sizes .container.p-position .caja-flow, .flexbody .container.p-position .caja-flow {
        width: 100%;
        height: auto;
        padding: .5rem;
        background-color: #299e7b; }
        .sizes .container.p-position .caja-flow .texto-flow, .flexbody .container.p-position .caja-flow .texto-flow {
          font-size: .75rem;
          color: #ffffff; }

.flexbody h2 {
  margin: 2rem 0 0 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 2rem;
  margin: 1em 0 0 0; }
  @media (max-width: 1080px) {
    .flexbody h2 {
      font-size: 1.5rem;
      line-height: 1.15; } }

.flexbody h4 {
  margin: 0 0 1rem 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  font-size: 1.5rem;
  margin: 3rem 0 1.5rem 0;
  color: #666;
  border-top: 3px solid #d4d4e4;
  padding: 1rem;
  position: relative;
  background-color: #ebf1f7;
  width: 100%; }

.flexbody h5 {
  margin: 0 0 1rem 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  margin: 1.5rem 0 1rem 0; }

.flexbody p {
  font: 300 1rem 'roboto', 'sans-serif';
  line-height: 1.2rem; }

.flexbody .flexamples {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 2rem; }
  .flexbody .flexamples.nowrap {
    flex-flow: row nowrap; }

.flexbody .flexample {
  display: flex;
  flex-flow: column wrap;
  margin-right: 1rem; }
  @media (max-width: 1080px) {
    .flexbody .flexample {
      width: 100%; } }
  .flexbody .flexample.w-100 {
    width: 100%; }

.flexbody .flexbox {
  border: 1px solid #666;
  width: 100%;
  padding: 0;
  display: flex; }
  .flexbody .flexbox.col {
    width: 120px; }
  .flexbody .flexbox.for-wrapping {
    max-width: 600px; }
  .flexbody .flexbox.flex {
    display: flex;
    width: auto;
    margin: 1rem auto; }
  .flexbody .flexbox.inline-flex {
    display: inline-flex;
    width: auto;
    margin: 1rem auto; }
  .flexbody .flexbox .cajita-1 {
    background-color: #A6206A;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-1 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-1.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-2 {
    background-color: #EC1C4B;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-2 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-2.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-3 {
    background-color: #F16A43;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-3 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-3.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-4 {
    background-color: #f1c939;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-4 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-4.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-5 {
    background-color: #299e7b;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-5 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-5.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-6 {
    background-color: #1a7e80;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-6 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-6.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-7 {
    background-color: #1a6e8f;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-7 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-7.width-100 {
      width: 100px; }
  .flexbody .flexbox .cajita-8 {
    background-color: #085297;
    color: #fff;
    width: auto;
    font: 600 1rem 'montserrat';
    text-transform: uppercase;
    margin: .5rem;
    padding: .5rem;
    text-align: center; }
    @media (max-width: 1080px) {
      .flexbody .flexbox .cajita-8 {
        font: 600 1.5vw 'montserrat'; } }
    .flexbody .flexbox .cajita-8.width-100 {
      width: 100px; }
  .flexbody .flexbox.direction-row {
    flex-direction: row; }
  .flexbody .flexbox.direction-row-reverse {
    flex-direction: row-reverse; }
  .flexbody .flexbox.direction-column {
    flex-direction: column; }
  .flexbody .flexbox.direction-column-reverse {
    flex-direction: column-reverse; }
  .flexbody .flexbox.wrap {
    flex-wrap: wrap; }
    .flexbody .flexbox.wrap-no {
      flex-wrap: nowrap; }
    .flexbody .flexbox.wrap-reverse {
      flex-wrap: wrap-reverse; }
  .flexbody .flexbox .order {
    order: 4; }
  .flexbody .flexbox.flexsizes .grow {
    flex-grow: 1;
    flex-shrink: 0; }
  .flexbody .flexbox.flexsizes .grow-x2 {
    flex-grow: 2;
    flex-shrink: 0; }
  .flexbody .flexbox.flexsizes .shrink {
    flex-shrink: 1;
    flex-grow: 0; }
  .flexbody .flexbox.flexsizes .shrink-x2 {
    flex-shrink: 2;
    flex-grow: 0; }
  .flexbody .flexbox.flexsizes .basis {
    flex-basis: 30%; }
  .flexbody .flexbox.flexsizes #shorthand-flex {
    flex: 1 0 240px; }
  .flexbody .flexbox.justify-flexstart {
    justify-content: flex-start; }
  .flexbody .flexbox.justify-flexend {
    justify-content: flex-end; }
  .flexbody .flexbox.justify-center {
    justify-content: center; }
  .flexbody .flexbox.justify-space-between {
    justify-content: space-between; }
  .flexbody .flexbox.justify-space-around {
    justify-content: space-around; }
  .flexbody .flexbox.justify-space-evenly {
    justify-content: space-evenly; }
  .flexbody .flexbox.align-flexstart {
    align-items: flex-start; }
  .flexbody .flexbox.align-flexend {
    align-items: flex-end; }
  .flexbody .flexbox.align-center {
    align-items: center; }
  .flexbody .flexbox.align-stretch {
    align-items: stretch; }
  .flexbody .flexbox.align-baseline {
    align-items: baseline; }
    .flexbody .flexbox.align-baseline .text-xxl {
      font-size: 3rem; }
    .flexbody .flexbox.align-baseline .text-xl {
      font-size: 2.25rem; }
  .flexbody .flexbox .self-flexstart {
    align-self: flex-start; }
  .flexbody .flexbox .self-flexend {
    align-self: flex-end; }
  .flexbody .flexbox .self-center {
    align-self: center; }
  .flexbody .flexbox .self-stretch {
    align-self: stretch; }
  .flexbody .flexbox .self-baseline {
    align-self: baseline; }
    .flexbody .flexbox .self-baseline.text-xxl {
      font-size: 3rem; }
    .flexbody .flexbox .self-baseline.text-xl {
      font-size: 2.25rem; }
  .flexbody .flexbox.content-flexstart {
    align-content: flex-start; }
  .flexbody .flexbox.content-flexend {
    align-content: flex-end; }
  .flexbody .flexbox.content-center {
    align-content: center; }
  .flexbody .flexbox.content-stretch {
    align-content: stretch; }
  .flexbody .flexbox.content-space-between {
    align-content: space-between; }
  .flexbody .flexbox.content-space-around {
    align-content: space-around; }
  .flexbody .flexbox.height {
    height: 120px; }
  .flexbody .flexbox.height-250 {
    height: 250px; }
  .flexbody .flexbox.wrap-row {
    flex-flow: row wrap; }

.flexbody .inline-flex {
  display: inline-flex; }

.flexbody .flex {
  display: flex; }

.flexbody .wrap-row {
  flex-flow: row wrap; }

.flexbody .nowrap-row {
  flex-flow: row nowrap; }

.gridbody {
  display: block;
  padding: 1em;
  background-color: #fafafa; }
  .gridbody h2 {
    margin: 2rem 0 0 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 2rem;
    margin: 1em 0; }
    @media (max-width: 1080px) {
      .gridbody h2 {
        font-size: 1.5rem;
        line-height: 1.15; } }
  .gridbody h4 {
    margin: 0 0 1rem 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300; }
  .gridbody h5 {
    margin: 0 0 1rem 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    text-transform: uppercase; }
  .gridbody .grid-examples {
    display: flex;
    flex-flow: row wrap;
    margin-bottom: 2rem; }
    .gridbody .grid-examples .grid-example {
      display: block;
      width: 400px;
      min-height: 335px;
      margin-right: 1rem;
      margin-bottom: 2rem; }
      .gridbody .grid-examples .grid-example .area-1 {
        background-color: #A6206A;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-2 {
        background-color: #EC1C4B;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-3 {
        background-color: #F16A43;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-4 {
        background-color: #f1c939;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-5 {
        background-color: #299e7b;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-6 {
        background-color: #1a7e80;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-7 {
        background-color: #1a6e8f;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-8 {
        background-color: #085297;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .area-9 {
        background-color: #1c2d77;
        color: #fff;
        width: auto;
        font: 600 .875rem 'montserrat';
        text-transform: uppercase; }
      .gridbody .grid-examples .grid-example .full {
        width: 100%;
        height: calc(100% - 35px); }
      .gridbody .grid-examples .grid-example .grid-template-columns-px {
        display: grid;
        grid-template-columns: 33.33% 33.33% 33.33%;
        grid-template-rows: 100px 100px 100px; }
      .gridbody .grid-examples .grid-example .grid-template-columns-fr {
        display: grid;
        grid-template-columns: 1fr 4fr 1fr;
        grid-template-rows: 1fr 3fr 2fr; }
      .gridbody .grid-examples .grid-example .grid-template-columns-fr-gap {
        display: grid;
        grid-template-columns: 1fr 4fr 1fr;
        grid-template-rows: 1fr 3fr 2fr;
        grid-gap: 16px; }
      .gridbody .grid-examples .grid-example .grid-template-columns-minmax {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
        grid-auto-rows: minmax(20px, 1fr);
        grid-gap: 8px; }
      .gridbody .grid-examples .grid-example .grid-template-start-end {
        display: grid;
        grid-gap: 20px; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-1 {
          grid-column: 1 / 3;
          grid-row: 1; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-2 {
          grid-column: 2;
          grid-row: 2; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-3 {
          grid-column: 1;
          grid-row: 2; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-4 {
          grid-column: 1 / 3;
          grid-row: 3; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-5 {
          grid-column: 1 / 2;
          grid-row: 4 / 6; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-6 {
          grid-column: 2 / 3;
          grid-row: 4 / 5; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-7 {
          grid-column: 2 / 3;
          grid-row: 5 / 7;
          z-index: 1; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-8 {
          grid-column: 1 / 3;
          grid-row: 6 / 6; }
        .gridbody .grid-examples .grid-example .grid-template-start-end .area-9 {
          grid-column: 1 / 3;
          grid-row: 7 / 7; }
      .gridbody .grid-examples .grid-example .grid-template-areas {
        display: grid;
        grid-template-areas: "header header" "sidebar content" "footer footer";
        grid-template-columns: 1fr 3fr;
        grid-gap: 10px; }
        .gridbody .grid-examples .grid-example .grid-template-areas .area-1 {
          grid-area: header; }
        .gridbody .grid-examples .grid-example .grid-template-areas .area-2 {
          grid-area: content; }
        .gridbody .grid-examples .grid-example .grid-template-areas .area-3 {
          grid-area: sidebar; }
        .gridbody .grid-examples .grid-example .grid-template-areas .area-4 {
          grid-area: footer; }

pre {
  font-family: 'Courier New', Courier, monospace;
  background-color: #333;
  padding: 1em;
  margin: 1em 0;
  width: fit-content;
  color: #fff;
  box-shadow: 0 0.5rem 1.5rem 0.125rem rgba(0, 0, 0, 0.25); }
  pre span {
    font-family: 'Courier New', Courier, monospace; }
  pre .selector {
    color: yellow; }
  pre .properties {
    color: skyblue; }
  pre .values {
    color: lightgreen; }
  pre .rule {
    color: violet; }

.forms form {
  background-color: #eff5f7;
  max-width: 50%;
  margin: 0 auto;
  font-family: 'Roboto', sans-serif;
  font-size: 1em;
  padding: 0.5em;
  line-height: 120%;
  padding: 0;
  display: flex;
  flex-flow: row wrap; }
  .forms form .form-group {
    display: flex;
    flex: 0 1 auto;
    min-width: 25%;
    max-width: 33%;
    margin: 1rem 0;
    padding: 0 1em;
    justify-content: flex-start;
    align-items: baseline; }
    .forms form .form-group.col {
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start; }
      .forms form .form-group.col input + label {
        display: inline-block; }
    .forms form .form-group.w100 {
      width: 100%;
      max-width: 100%; }
      .forms form .form-group.w100.flex-end {
        justify-content: flex-end; }
    .forms form .form-group label {
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0.5em;
      line-height: 120%; }
    .forms form .form-group input {
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0.5em;
      line-height: 120%;
      border: 2px solid #cdcdcd;
      border-radius: 4px; }
      .forms form .form-group input[type=radio] {
        margin: 0 .5rem; }
        .forms form .form-group input[type=radio]::after {
          display: inline-flex; }
      .forms form .form-group input[type=checkbox] {
        margin: 0 .5rem; }
        .forms form .form-group input[type=checkbox]::after {
          display: inline-flex; }
    .forms form .form-group select {
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0.5em;
      line-height: 120%;
      border: 2px solid #cdcdcd;
      border-radius: 4px; }
    .forms form .form-group textarea {
      font-family: 'Roboto', sans-serif;
      font-size: 1em;
      padding: 0.5em;
      line-height: 120%;
      border: 2px solid #cdcdcd;
      border-radius: 4px; }

.exercises ol, .exercises ul {
  margin: .5rem 1.25rem; }
  .exercises ol li, .exercises ul li {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    padding: 0.5em;
    line-height: 120%; }

.exercises a {
  text-decoration: none;
  color: purple;
  font-weight: 400; }

.exercises img.example-solution {
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.6);
  width: 60%;
  margin: 20px auto; }

.links h6 {
  margin: 0 0 1rem 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  text-transform: uppercase; }

.links ul {
  margin-bottom: 1em; }

.links a {
  text-decoration: none;
  color: #6b4b79;
  font-weight: 600; }

.links .btn.download {
  color: white;
  background: #6b4b79;
  background: linear-gradient(#6b4b79 0%, #BF3F57 100%);
  border: none;
  border-radius: 2em;
  padding: 1em;
  font-weight: 800;
  font-family: 'montserrat', sans-serif;
  text-transform: uppercase;
  margin: 1.5em 0;
  display: flex; }
  .links .btn.download:hover {
    background: linear-gradient(#33243a 0%, #722634 100%);
    transition: background .25s ease-in-out .01s; }
  .links .btn.download:focus {
    outline: 1px solid #f0f0f0; }
