/*
 Theme Name:     Canterbury Training & Contracting
 Theme URI:      http://ctc.net.nz
 Description:    CTC Child Theme
 Author:         Kirk Woodill
 Author URI:     http://littlelion.co.nz
 Template:       Divi
 Version:        1.0.0
*/
@import url("../Divi/style.css");
/*

/* FONTS - Font style sheet imports.
========================================================================== */
@import url(fonts/brandon_text/stylesheet.css);
@import url(fonts/brandon_grotesque/stylesheet.css);
@import url(fonts/geomanist/stylesheet.css);
/* BASE - Base Variable file along with starting point Mixins and Placeholders.
========================================================================== */
html {
  font-size: 10px; }

p, li, ul {
  font-family: "geomanist", Helvetica, Arial, sans-serif;
  color: #2e2e30;
  font-size: 1.5rem;
  line-height: 2.7rem;
  font-weight: 300;
  letter-spacing: 1px; }

h1, h2, h3, h4, span, a, li, ul {
  font-family: "geomanist", Helvetica, Arial, sans-serif; }

h2 {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.3; }

h2.section-title {
  font-size: 5.4rem;
  text-transform: uppercase;
  border-bottom: 3px solid #f7d157;
  display: inline-block;
  margin-bottom: 20px; }
  @media (max-width: 767px) {
    h2.section-title {
      font-size: 3.5rem; } }

strong {
  font-weight: 500; }

/* COMPONENTS - Small scale modules.
========================================================================== */
a.btn, .btn, form.et_pb_contact_form button.et_pb_contact_submit.et_pb_button {
  transition: all .3s;
  font-family: "Brandon Grotesque", "Brandon Text", "Montserrat", Arial, sans-serif;
  font-size: 1.4rem;
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
  height: 55px;
  line-height: 51px;
  letter-spacing: .1em;
  padding: 0 40px;
  border-radius: 0;
  border-style: solid;
  border-width: 2px;
  background: #000;
  text-align: center;
  text-shadow: none;
  outline: 0;
  display: inline-block; }

.btn.btn-hero-banner, a.btn.btn-hero-banner {
  margin-top: 60px;
  border-color: #f7d157;
  background-color: transparent;
  color: #fff; }
  @media (min-width: 981px) {
    .btn.btn-hero-banner, a.btn.btn-hero-banner {
      margin-left: 10px;
      margin-right: 10px; } }
  .btn.btn-hero-banner:hover, a.btn.btn-hero-banner:hover {
    background-color: #f7d157; }

.btn.btn-view-courses, a.btn.btn-view-courses {
  border-color: #2e2e30;
  background-color: transparent;
  color: #2e2e30; }
  .btn.btn-view-courses:hover, a.btn.btn-view-courses:hover {
    background-color: #2e2e30;
    border-color: #2e2e30;
    color: #fff; }

.block-title h2 {
  color: #2e2e30; }

.upwards-arrow {
  padding-bottom: 100px !important; }
  .upwards-arrow::after {
    display: block;
    position: absolute;
    content: '';
    width: 60px;
    height: 60px;
    bottom: -30px;
    left: 50%;
    margin-left: -30px;
    background-color: #eeeeee;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: 1; }

.course-block .et_pb_column {
  overflow: hidden;
  position: relative; }

.course-block .et_pb_column:hover .et_pb_image:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(247, 209, 87, 0.8);
  content: '';
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.course-block .et_pb_column .et_pb_promo_description:before {
  top: 50px;
  right: 30px;
  bottom: 50px;
  left: 30px;
  position: absolute;
  content: '';
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.course-block .et_pb_column .et_pb_promo_description p, .course-block .et_pb_column .et_pb_promo_description h2 {
  opacity: 0;
  color: #2e2e30;
  position: absolute;
  width: 100%;
  text-align: center;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.course-block .et_pb_column .et_pb_promo_description h2 {
  font-size: 3.2rem;
  top: 45%;
  margin: 0;
  padding: 0; }

.course-block .et_pb_column .et_pb_promo_description p {
  top: 40%;
  padding: 0 20px 0; }

.course-block .et_pb_column:hover .et_pb_promo_description:before, .course-block .et_pb_column:hover .et_pb_promo_description h2, .course-block .et_pb_column:hover .et_pb_promo_description p {
  opacity: 1; }

.course-block .et_pb_promo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.course-block .et_pb_promo_button {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.et_pb_contact p input, .et_pb_contact p textarea {
  border: 1px solid #999;
  background-color: #fff; }
  .et_pb_contact p input:active, .et_pb_contact p input:focus, .et_pb_contact p textarea:active, .et_pb_contact p textarea:focus {
    border-color: #f7d157; }

form.et_pb_contact_form button.et_pb_contact_submit.et_pb_button {
  color: #2e2e30;
  background-color: transparent;
  line-height: 51px !important;
  padding: 0 40px !important; }
  form.et_pb_contact_form button.et_pb_contact_submit.et_pb_button:hover {
    background-color: #f7d157;
    line-height: 51px !important;
    padding: 0 40px !important; }

#main-header #mobile_menu {
  background: #21212b;
  border-top: none;
  text-align: center;
  margin-left: -30px;
  padding: 5%;
  width: calc( 100% + 60px); }
  #main-header #mobile_menu .menu-item-has-children > a {
    background-color: transparent;
    position: relative; }
    #main-header #mobile_menu .menu-item-has-children > a:after {
      font-family: 'ETmodules';
      text-align: center;
      speak: none;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      -webkit-font-smoothing: antialiased;
      position: absolute;
      font-size: 16px;
      content: '\4c';
      top: 13px;
      right: 10px; }
  #main-header #mobile_menu .menu-item-has-children.visible > a:after {
    content: '\4d'; }
  #main-header #mobile_menu .menu-item a {
    color: #fff;
    text-transform: uppercase; }
  #main-header #mobile_menu .sub-menu {
    display: none !important;
    transition: display 1.5s ease-in-out; }
  #main-header #mobile_menu .menu-item.visible > .sub-menu {
    display: block !important;
    border-top: 2px solid #f7d157;
    border-bottom: 2px solid #f7d157;
    padding: 20px 0;
    margin-bottom: 30px; }
    #main-header #mobile_menu .menu-item.visible > .sub-menu li {
      padding-left: 0; }

@media (max-width: 980px) {
  .container.et_menu_container {
    width: calc( 100% - 60px); } }

.mobile_nav.opened .mobile_menu_bar:before {
  content: '\4d'; }

.mobile_menu_bar:before {
  color: #fff !important;
  background: #21212b;
  padding: 24px; }

/* BASE - Base Variable file along with starting point Mixins and Placeholders.
========================================================================== */
#main-header #top-menu li,
#main-header.et-fixed-header #top-menu li {
  padding-right: 40px; }

#main-header .menu-item a,
#main-header.et-fixed-header .menu-item a {
  font-family: "Brandon Grotesque", "Brandon Text", "Montserrat", Arial, sans-serif;
  color: #2e2e30;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 1px; }

#main-header #top-menu .sub-menu,
#main-header.et-fixed-header #top-menu .sub-menu {
  background-color: #21212b;
  border-top: none; }
  #main-header #top-menu .sub-menu li a,
  #main-header.et-fixed-header #top-menu .sub-menu li a {
    color: #fff !important;
    line-height: 1.2;
    padding-bottom: 20px; }
    #main-header #top-menu .sub-menu li a:hover,
    #main-header.et-fixed-header #top-menu .sub-menu li a:hover {
      color: #f7d157 !important;
      opacity: 1; }
  #main-header #top-menu .sub-menu li.current-menu-item a,
  #main-header.et-fixed-header #top-menu .sub-menu li.current-menu-item a {
    color: #f7d157 !important; }

#footer {
  background-color: #21212b;
  border-top: 10px solid #f7d157; }
  #footer p {
    color: #fff;
    font-weight: 400;
    line-height: 1.5; }
  #footer .footer-block-title {
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 20px; }
  #footer ul.footer-menu {
    list-style-type: none;
    padding: 0; }
    #footer ul.footer-menu li a {
      color: #fff;
      font-weight: 400; }
      #footer ul.footer-menu li a:hover {
        color: #f7d157; }
    #footer ul.footer-menu li a.contact-phone {
      font-weight: 700;
      color: #f7d157; }
      #footer ul.footer-menu li a.contact-phone:before {
        content: '\e090'; }
    #footer ul.footer-menu li a.contact-email:before {
      content: '\e076'; }
    #footer ul.footer-menu li a.contact-phone:before, #footer ul.footer-menu li a.contact-email:before {
      position: relative;
      font-family: 'ETmodules';
      font-size: 1.2rem;
      margin-right: 10px;
      top: 2px; }
  #footer .hianz_img {
    display: block;
    max-width: 120px;
    margin-top: 15px; }
  #footer .ctc_footer_logo {
    margin-bottom: 15px; }

footer#main-footer {
  display: none; }

/* PAGES - Page specific styling.
========================================================================== */
.hero-slider h2.et_pb_slide_title {
  font-family: "Brandon Grotesque", "Brandon Text", "Montserrat", Arial, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-shadow: none; }

#section-view-more a.all-courses {
  font-size: 1.6rem;
  color: #666;
  border-bottom: 2px solid #f7d157;
  padding-bottom: 3px; }
  #section-view-more a.all-courses:hover {
    color: #2e2e30;
    border-bottom-color: #2e2e30; }

.white-on-black {
  background-color: #21212b !important; }
  .white-on-black .section-title {
    color: #fff; }
  .white-on-black a.btn.btn-view-courses {
    border-color: #fff;
    color: #fff; }
    .white-on-black a.btn.btn-view-courses:hover {
      background-color: #f7d157;
      border-color: #f7d157;
      color: #2e2e30; }

.course-heading {
  background-color: #f7d157; }
  .course-heading h1 {
    font-size: 5.4rem;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    border-bottom: 3px solid #f7d157; }
    @media (max-width: 767px) {
      .course-heading h1 {
        font-size: 3.5rem; } }

.course-section-title {
  border-top: 3px solid #f7d157;
  padding-top: 20px;
  text-align: right; }
  @media (max-width: 980px) {
    .course-section-title {
      padding-top: 30px; } }
  .course-section-title h3 {
    font-size: 2.0rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px; }
    @media (max-width: 980px) {
      .course-section-title h3 {
        text-align: center; } }

.course-body {
  background-color: #f7f7f7;
  margin-bottom: -150px; }
  .course-body .course-body-section {
    background-color: #fff;
    width: 95%;
    max-width: 1280px;
    top: -150px;
    padding: 40px 7.5%;
    z-index: 3; }
    @media (min-width: 981px) {
      .course-body .course-body-section {
        top: -200px;
        padding: 40px 100px; }
        .course-body .course-body-section .et_pb_column_2_3 {
          margin-top: 16px; } }
    .course-body .course-body-section:first-of-type {
      padding-top: 50px; }
    .course-body .course-body-section:last-of-type {
      padding-bottom: 50px; }

.unit-std-list {
  padding: 0 !important; }
  .unit-std-list li {
    list-style-type: none;
    padding: 5px 10px; }
  .unit-std-list li:nth-child(odd) {
    background-color: #fff; }
  .unit-std-list li:nth-child(even) {
    background-color: #f1f1f1; }
