/*
 Theme Name:   Divi Child
 Theme URI:    http://www.elegantthemes.com/gallery/divi/
 Description:  Divi Child Theme
 Author:       BlueSteam
 Author URI:   https://www.riggtonriverfarm.co.za
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  Divi-child
*/

.et_mobile_menu {
    border-color: #4f6d35 !important;
}

/* hide bottom bar on lightbox */
.mfp-bottom-bar {
    display: none;
}

.ds-vertical-align {
    display: flex; 
    flex-direction: column; 
    justify-content: center;
}

.hideElement {
    display: none !important;
}

#top-header {
	z-index: 10000 !important;
}

#top-header .container {
    font-weight: 300;
    padding-bottom: 0.75em;
}

#et-info {
    padding-top: 0.75em;
}

#et-secondary-nav, #et-secondary-nav li {
    top: 1px;
}

#et-info-phone {
	font-weight: bold;
}

#et-info-phone:before {
    	font-family: "Font Awesome 5 Free" !important;
    	content: "\f3cd";
    	top: 0px;
    	font-weight: 900;
}

#et-info svg.fa-phone {
    margin-right: 4px !important;
}

#db-info-text:hover {
    opacity: .7;
    -moz-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}

#et-info-email {
	font-weight: bold;
}

#et-info-email:before {
    position: relative;
    top: 1px;
}

#et-secondary-nav li.menu-item {
    text-align:center;
}
 
#et-secondary-nav li.menu-item a {
    transition: all 0.5s;
    color: #ffffff !important;
    background-color: transparent;
    text-align: center;
    padding: 12px 12px 12px 12px!important;
    margin-bottom: 3px;
    cursor: pointer;
    border: 1px solid #fff;
    font-weight: 600;
    border-radius: 2px;
}

#et-secondary-nav li.menu-item.menu-item-507 a:hover {
    background: #2c5900;
    color: #fff !important;
    letter-spacing: 2px;
    border: 1px solid transparent;    
}

#et-secondary-nav li.lang-item.menu-item a {
    transition: all 0.5s;
    color: #ffffff !important;
    background-color: transparent;
    text-align: center;
    padding: 12px 12px 12px 12px!important;
    margin-bottom: 3px;
    cursor: pointer;
    border: 0;
    font-weight: 600;
}


/* START - Growing Menu item Line */

#top-menu li a:before {
  content: "";
  position: absolute;
  width: 0%;
  height: 0px;
  bottom: 55%;
  left: 50%;
  background: #517a2d;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}

#top-menu li a:hover:before {
  visibility: visible;
  width: 100%;
  height: 2px;
  left: 0;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

#top-menu li a:after {
    content: '';
    position: absolute;
    bottom: 48%;
    left: calc(50% - 3px);
    height: 2px;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    border-style: solid;
    visibility: hidden;
    border-width: 4px 4px 0 4px;
    border-color: #517a2d transparent transparent transparent;
    -webkit-transform: scaleX(0);
    transform: scale(0,0);
    -webkit-transition: all 0.2s ease-in-out 0s;
    transition: all 0.2s ease-in-out 0s;
}

#top-menu li a:hover:after {
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scale(1,1);
    height: 0;
}

/* END - Growing Menu item Line */

/* START - Adding Green Line under Heading Titles */
#et-main-area .et_pb_section .et_pb_module h1:after,
#et-main-area .et_pb_section .et_pb_module h2:after,
#et-main-area .et_pb_section .et_pb_module h3:after,
#et-main-area .et_pb_section .et_pb_module h4:after {
    content: "";
    width: 135px;
    border-bottom-width: 135px;
    border-bottom: solid 2px;
    border-color: #73b143;
    margin-top: 36px;
    margin-bottom: 40px;
    display: block;
}

hr.line-green-left {
    border: 0;
    height: 2px;
    background-color: #73b143;
    width: 135px;
    margin-left: 0px;
    margin-top: 36px;
}

/* dont add green line under headings not needed */
.no-green-line h1:after,
.no-green-line h2:after,
.no-green-line h3:after,
.no-green-line h4:after {
    display:none !important;
}

.rates-heading h3:after {
    margin-bottom: 20px !important;
}

/* END - Adding Green Line under Heading Titles */

table.officehours tr, table.officehours th, table.officehours td {
    border: 0 !important;
    font-size: 14px;
    padding: 5px;
    line-height: 16px;
}

table.officehours th {
    background-color: #eeeeee;
}

.et_pb_section_0.section_has_divider.et_pb_top_divider .et_pb_top_inside_divider {
    z-index: 1 !important;
}

#footer-info {
    text-align: center;
    width: 100%;
}

.button-lift:hover {
    margin-bottom: 10px;
    margin-top: -10px;
    transition: all 0.3s;
    position: absolute !important;
}

.facilities-icons svg, .facilities-icons .riggton-icons {
    font-size: 26px;
}

.centered-header-content, .centered-header-content .et_pb_fullwidth_header_container {
    height: 100%;
}

/* Custom Icons */
.riggton-icons {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'riggton-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-backpacker:before {
  content: "\e900";
}
.icon-bathroom-faucet-tool:before {
  content: "\e901";
}
.icon-cooking-on-the-barbecue:before {
  content: "\e902";
}
.icon-danger-sing:before {
  content: "\e903";
}
.icon-hinduist-yoga-position:before {
  content: "\e904";
}
.icon-id-card:before {
  content: "\e905";
}
.icon-man-in-canoe:before {
  content: "\e906";
}
.icon-no-pets:before {
  content: "\e907";
}
.icon-pair-of-binoculars-silhouette:before {
  content: "\e908";
}
.icon-people:before {
  content: "\e909";
}
.icon-policeman:before {
  content: "\e90a";
}
.icon-sports:before {
  content: "\e90b";
}
.icon-swimming-silhouette:before {
  content: "\e90c";
}
.icon-tent:before {
  content: "\e90d";
}
.icon-trail-running-shoe:before {
  content: "\e90e";
}
.icon-transport:before {
  content: "\e90f";
}
.icon-wooden-fence:before {
  content: "\e910";
}

#facilities-blurbs .et_pb_blurb_container {
    background-color: rgba(44,89,0,0.75);
    border: 3px solid #73b143;
    padding: 30px;
    margin-top: -7px;
}

.et_pb_equal_columns > .et_pb_column {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.et_pb_equal_columns > .et_pb_column.column-align-top {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#checkBookingForm {
    width: 100%;
    max-width: 400px;
    margin: auto;
}

#checkBookingForm input {
    padding: 5px;
    margin: 10px;
}

#checkBookingForm input[type="text"] {
    width: 100%;
    max-width: 350px;
    padding: 16px;
    border-width: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background-color: #eee;
    font-size: 14px;
    -webkit-appearance: none;
}

#checkBookingForm input[type="submit"] {
    min-width: 175px;
	max-width: 220px;
    color: #ffffff!important;
    border-width: 0px!important;
    border-radius: 2px;
    font-size: 17px;
    font-family: 'Raleway',Helvetica,Arial,Lucida,sans-serif!important;
    text-transform: uppercase!important;
    padding-left: 0.7em;
    padding-right: 2em;
    background-color: #2c5900;
    padding-top: 10px!important;
    padding-bottom: 10px!important;
    box-shadow: 0px 16px 20px 0px rgba(255, 255, 255, 0.08);
    transition: background-color 300ms ease 0ms;
}

#checkBookingForm input[type="submit"]:hover {
    background-color: #73b143!important;
}

/* hide secondary menu bar on mobile devices */
@media only screen and (max-width: 980px) {
    #logo {
        height: 80% !important;
        max-height: 80% !important;
        width: auto;
        max-width: 80% !important;
    }
        
    .cta {
        -moz-osx-font-smoothing: grayscale;
        background: #517a2d none repeat scroll 0 0;
        /* border: 2px solid; */
        border-radius: 2px;
        color: #ffffff !important;
        cursor: pointer;
        line-height: 1.7em;
        margin: 4px auto;
        padding: 6px 30px !important;
        transition: all 0.2s ease 0s;
        display: block;
        text-align: center;
    }
    
    #top-header {
        display: none;
    }
    
    .facilities-icons svg, .facilities-icons .riggton-icons {
        font-size: 20px;
        width:30px !important;
        margin-right:5px !important;
    }
    
}

@media only screen and ( max-width: 479px ) {

}

@media only screen and (max-width: 767px) {
    .campsite-facilities-icons svg {
        font-size: 1.3em;
        vertical-align: middle;
    }

    table.officehours tr, table.officehours th, table.officehours td {
        font-size: 10px;
        padding: 3px;
        line-height: 11px;
    }
}