/* ==========================================================================
   SPECIFICS
   --------------------------------------------------------------------------
   * INVERTING CLICKABLE COLORS (commented and ready to use)
      : Tabs
      : Switcher

   * ELEMENTS
      : XXX

   * COMPONENTS
      : XXX

   * MODULES
      : Forms (Override/complement)
         : Boxed (New)

  * PAGETYPES
      : XXX

   * UTILITIES
      : XXX

   * STRUCTURE
      : Section (Override/complement)

   * ELEMENTS
      : XXX

   * COMPONENTS
      : XXX

   * MODULES
      : Forms (Override/complement)
         : Boxed (New)

  * PAGETYPES
      : XXX

   * UTILITIES
      : XXX

   ========================================================================== */

/* INVERTING CLICKABLE COLORS: Tabs
   -------------------------------------------------------------------------- */

/* INVERTING CLICKABLE COLORS: Switcher
   -------------------------------------------------------------------------- */

/* STRUCTURE: Body
   -------------------------------------------------------------------------- */

@media (min-width: 751px) {
   .body--banner-fixed-on-scroll .body__content {
      padding-top: var(--header--height);
   }
}

@media (max-width: 1024px) {
   .body--header-fixed-on-scroll .body__content {
      padding-top: 4.8rem;
   }
}

/* STRUCTURE: Header
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {
   .header__wrapper {
      min-height: 4.8rem;
  }
}

/* STRUCTURE: Section (Override/complement)
   -------------------------------------------------------------------------- */

   * + .section__header__text__subtitle {
      margin-top: var(--spacer--l);
   }

   * + .section__header__text__paragraph {
      margin-top: var(--spacer--m);
   }

.section__header__text__title {
   font-family: var(--font)
}

.section__header__text {
   width: 100%;
}

.section__header__text__subtitle.section__header__text__subtitle--w--narrower {
   margin-left: 0;
   margin-right: 0;
   max-width: 100%;
}

.section__header+* {
   margin-top: 8rem;
}

.body--footer-sticky.body--login .main {
   margin-top: 0;
}

@media (max-width: 1024px) {
   * + .section__header__text__subtitle {
      margin-top: 1.6rem;
   }

   .section__header+* {
      margin-top: 4rem;
   }

   .body--footer-sticky .main {
      margin-top: 0;
   }

}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .section__header__text__subtitle {
        font-size: 1.6rem;
    }

}

@media (min-width: 751px) {
   .section__header__text__subtitle.sec|tion__header__text__subtitle--w--narrower {
      margin-left: 0;
      margin-right: 0;
      width: 100%;
      max-width: 100%;
   }
}

/* STRUCTURE: Banner
   -------------------------------------------------------------------------- */

.banner {
   border-radius: 1rem;
   padding-left: var(--spacer--xl);
   padding-right: var(--spacer--xl);
   background-clip: content-box;
   background-origin: content-box;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
   .banner {
       padding-left: var(--spacer--m);
       padding-right: var(--spacer--m);
   }
}

/* STRUCTURE: Footer
   -------------------------------------------------------------------------- */

.footer {
   border: none;
   height: 10.8rem;
   font-size: 1.4rem;
   background-color: var(--color--brand--sub-4);
}

.footer__wrapper {
   display: flex;
   height: 100%;

}

.footer__content {
   width: 100%;
}

.footer__rights__copy {
   font-weight: normal;
}

.footer__links__divider {
   margin-left: 2rem;
   margin-right: 2rem;
   color: var(--color--grey--lightest);
}

.footer__links {
   margin-left: -13rem;
}

.footer__social__item {
   height: 2.8rem;
   max-width: 2.8rem;
}

@media (max-width: 1024px) {
   .footer {
      height: 17.2rem;
   }

   .footer * {
      line-height: normal;
  }

  .footer__rights__copy {
      text-align: center;
  }

   .footer__links {
      margin-left: 0;
   }

   .footer__social {
      margin-top: 3.2rem;
   }

   .footer__links__divider {
      margin-left: 0.8rem;
      margin-right: 0.8rem;
   }
}

@media (max-width: 749px) {
   .footer__rights {
      flex-direction: column;
  }
}

/* ELEMENTS: XXX
   -------------------------------------------------------------------------- */

/* COMPONENTS: XXX
   -------------------------------------------------------------------------- */

/* MODULES: Forms (Override/complement)
   -------------------------------------------------------------------------- */

.Separator {
    margin-bottom: var(--spacer--m);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .Separator > legend {
        font-size: 2.2rem;
    }

}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .Separator > legend {
        font-size: 2.6rem;
    }

}

.SchedulingField .tc_formLabel {
   display: none;
}

/* MODULES: Forms: Boxed (New)
   -------------------------------------------------------------------------- */

.form--boxed {
    background-color: var(--color--brand--sub-2);
    border-radius: 0.25rem;
    box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.1);
    border: solid 0.1rem #e8e8e8;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .form--boxed {
        padding-top: var(--spacer--m);
        padding-left: var(--spacer--m);
        padding-right: var(--spacer--m);
        padding-bottom: 2.8rem;
    }

}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .form--boxed {
        padding: var(--spacer--l);
    }

}

/* MODULES: Calendar
   -------------------------------------------------------------------------- */

.SchedulingField .schedulerWidget, .SchedulingField .tc_formField {
   display: flex;
   justify-content: space-between;
}

.datepicker-skin-scheduling {
   width: 49%;
}

.tc_formField .results {
   width: 49%;
}

.fieldSpec.ButtonBarField.fieldSpecPadder .button-bar__wrap.tc_formField {
   justify-content: center;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-title {
   font-family: 'Industry', Arial, Helvetica, sans-serif;
   color: var(--color--black);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar th {
   font-family: 'Industry', Arial, Helvetica, sans-serif;
   color: var(--color--black);
   background-color: #cccccc;
   border: solid 0.1rem var(--color--white);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar th span {
   font-size: 1.8rem;
   color: var(--color--black);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar {
   font-size: 1.4rem;
   background-color: var(--color--white);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.selectable-day a {
   text-decoration: none;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.selectable-day a:hover{
   border: solid 0.1rem var(--color--brand);
   background-color: var(--color--brand);
   color: var(--color--white);
   font-size: 1.6rem;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a.ui-state-active {
   border: solid 0.1rem var(--color--brand--sub-3);
   background-color: var(--color--brand--sub-3);
   font-size: 1.6rem;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a:not(.ui-state-active):after, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today span:not(.ui-state-active):after {
   border: 0.2rem solid var(--color--grey--darkest);
}

.SchedulingField .schedulerWidget .results .availability, .SchedulingField .tc_formField .results .availability {
   color: var(--color--black);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem .time, .SchedulingField .tc_formField .results .resultsList .resultItem .time {
   font-family: 'ProximaNova', Arial, Helvetica, sans-serif;
   font-size: 1.4rem;
   font-weight: normal;
   color: var(--color--grey--darkest);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem:hover, .SchedulingField .tc_formField .results .resultsList .resultItem:hover
{
   background-color: var(--color--brand);
   color: var(--color--white);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem.selected, .SchedulingField .tc_formField .results .resultsList .resultItem.selected {
   background-color: var(--color--brand--sub-3);
   color: var(--color--white);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem:hover, .SchedulingField .tc_formField .results .resultsList .resultItem:hover .time,
.SchedulingField .schedulerWidget .results .resultsList .resultItem.selected, .SchedulingField .tc_formField .results .resultsList .resultItem.selected .time {
   color:var(--color--white);
}

.SchedulingField .tc_formField .results .resultsList .resultItem {
   height: 5.6rem;
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem .time span.timeLocal, .SchedulingField .tc_formField .results .resultsList .resultItem .time span.timeLocal {
   display: block;
   position: relative;
   width: 100%;
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem .time span.timeLocal .localTimeZone, .SchedulingField .tc_formField .results .resultsList .resultItem .time span.timeLocal .localTimeZone {
   position: absolute;
   left: 0;
   top: 2.4rem;
}

.ButtonBarField [class*=Button], .button {
   background-color: var(--color--brand);
   font-family: 'ProximaNova', Arial, Helvetica, sans-serif;
   font-size: 1.6rem;
   font-weight: bold;
   font-stretch: normal;
   font-style: normal;
   line-height: normal;
   letter-spacing: normal;
   text-align: center;
   color: var(--color--white);
   border: none;
   border-radius: 4.8rem;
   width: 18.7rem;
}

.ButtonBarField [class*=Button]:hover {
   background-color: var(--color--brand--sub-3);
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
   .ButtonBarField [class*=Button], .button {
       width: 100%;
   }

}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-next, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
   color: #1063BA;
}

@media (max-width: 1024px) {
   .SchedulingField .schedulerWidget, .SchedulingField .tc_formField {
      display: block;
   }

   .datepicker-skin-scheduling {
      width: 100%;
  }

  .tc_formField .results {
      width: 100%;
   }
}

/* PAGETYPES: Main page
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {
   .logo {
      height: 3.5rem;
   }

   .mainPage .main__wrapper {
      padding-top: 4rem;
      padding-bottom: 4rem;
   }

   .title.title--10 {
      font-size: 2.8rem;
   }
}

/* PAGETYPES: Success
   -------------------------------------------------------------------------- */

.article__header__text__title {
   padding-bottom: 2.4rem;
}

.article.article--success .button.button--primary {
   width: 22.6rem;
}

@media (min-width: 1025px) {
   .grid--dividers--h {
      min-width: var(--content--w--narrow);
   }

   .grid--dividers>.grid__item>.article {
      min-width: 100%;
   }
}

/* PAGETYPES: Error
   -------------------------------------------------------------------------- */

.article__header+* {
   margin-top: 2.4rem;
}

.article__footer {
   margin-top: 3.2rem;
}

@media (max-width: 1024px) {
   .article__footer {
      margin-top: 4.8rem;
   }
}

/* PAGETYPES: Login
   -------------------------------------------------------------------------- */

.body--login .main__wrapper {
   min-height: 100%;
}

.body--login .body--footer-sticky .main {
   margin-top: 0;
}

.body--login .article {
   border-radius: 0;
}

.body--login .article__header {
   justify-content: center;
}

.body--login .logo {
   height: 3.6rem;
}

.form--login label {
   color: var(--color--black);
}

.body--login .fieldSpec {
   padding-bottom: 1.6rem;
}

.body--login .button.button--cancel {
   background-color: #fff;
   border: solid 1px #f49522;
   color: #1d2e5d;
}

.body--login .tc_formLabel {
   color: var(--color--black);
}

/* UTILITIES: XXX
   -------------------------------------------------------------------------- */

@media (width>=1600px) {
   html {
         font-size: 70.3125%; /* this increase all rem units values and enhance the portals for a better view in bigger screens */
   }
}
  