/*
Theme Name: Old West Forge
Theme URI: https://jfdesigns.com
Description: Divi Child Theme
Author: JF Designs
Author URI: https://jfdesigns.com
Template: Divi
Version: 1.1.2
*/

/* Parent stylesheet should be loaded from functions.php not using @import */

/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/
/* Larger than mobile */
 @media (min-width: 400px) {
}
/* Larger than phablet (also point when grid becomes active) */
 @media (min-width: 550px) {
}
/* Larger than tablet */
 @media (min-width: 750px) {
}
/* Larger than desktop */
 @media (min-width: 1000px) {
}
/* Larger than Desktop HD */
 @media (min-width: 1200px) {
}
/* Base Styles –––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE html is set to 62.5% so that all the REM measurements throughout Skeleton are based on 10px sizing. So basically 1.5rem = 15px :) */
 html {
     font-size: 62.5%;
}
 body {
     font-size: clamp(14px, 1vw + 11px, 18px);
    /* currently ems cause chrome bug misinterpreting rems on body element */
     line-height: 1.6;
     font-weight: 400;
     font-family: Roboto, Helvetica, Arial, sans-serif;
     color: #222;
     -webkit-transition: all .5s ease;
     -moz-transition: all .5s ease;
     -o-transition: all .5s ease;
     transition: all .5s ease;
}
/* Typography –––––––––––––––––––––––––––––––––––––––––––––––––– */
/* FLUID KEY: 1140PX - 467PX */
 .jfd-base-text h1, .jfd-base-text h2, .jfd-base-text h3, .jfd-base-text h4, .jfd-base-text h5, .jfd-base-text h6 {
     margin-top: 0;
     margin-bottom: 0 !important;
     font-weight: 400;
}
 .jfd-base-text h1 {
     font-size: clamp(36px, 1vw + 29px, 45px);
     line-height: 1.2;
}
 .jfd-base-text h2 {
     font-size: clamp(32px, 1vw + 26px, 40px);
     line-height: 1.25;

}
 .jfd-base-text h3 {
     font-size: clamp(25px, 1vw + 20px, 32px);
     line-height: 1.5;
}
 .jfd-base-text h4 {
     font-size: clamp(22px, 1vw + 20px, 25px);
     line-height: 1.5;
}
 .jfd-base-text h5 {
     font-size:clamp(20px, 1vw + 18px, 22px);
     line-height: 1.5;
}
 .jfd-base-text h6 {
     font-size: clamp(14px, 1vw + 11px, 18px);
     line-height: 1.6;
     letter-spacing: .05em;
     text-transform:uppercase;
}
 .jfd-base-text, .jfd-base-text p {
     font-size: clamp(14px, 1vw + 11px, 18px);
     line-height: 1.7;
}
 p {
     margin-top: 0;
}
/* headings */
 h1 {
     margin-bottom: .125em;
    /* h1 line-height differs * from other headings */
     line-height: 1.25 !important;
}
/* add space above headings * when in text flow */
 p + h1, p + h2, p + h3, p + h4, p + h5, p + h6 {
     margin-top: .75em;
}
/* padding-bottom on last * p not in blockquote */
 p:not(.has-background):last-of-type {
     padding-bottom: 1em;
}
 blockquote > p:not(.has-background):last-of-type {
     padding-bottom: 0 !important;
}
 sup{
     bottom: 0.5em;
     font-size:.7em 
}
/* utility class to remove */
 .padding-0, .no-padding {
     padding: 0 !important;
}
 .padding-bottom-0 {
     padding-bottom: 0 !important;
}
/* add space above header * if following list */
 ul + h1, ul + h2, ul + h3, ul + h4, ul + h5, ul + h6, ol + h1, ol + h2, ol + h3, ol + h4, ol + h5, ol + h6 {
     padding-top: .375em !important;
}
/* add space below list items */
 .et_pb_text ul, .et_pb_text ol {
     margin-left: 1.5em 
}
 .et_pb_text li {
     margin-bottom: .75em 
}
 .et_pb_row.col-bot-margin-none .et_pb_column {
     margin-bottom: 0px !important 
}
/* create inline display */
.display-inline-block{
	display:inline-block !important
}
/* Links –––––––––––––––––––––––––––––––––––––––––––––––––– */
 /* a {
     color: #3B6B80;
     -webkit-transition: all .5s ease;
     -moz-transition: all .5s ease;
     -o-transition: all .5s ease;
     transition: all .5s ease;
}
 a:hover {
     color: #89a6b2;
} */ 
/* Read More Link Button Appearance */
 a.more-link, article a.more-link, .et_pb_post .post-content a.more-link {
     clear: both;
     display: inline-block;
     text-align: center;
     font-size: clamp(16px, 1vw + 13px, 20px);
     line-height: 1.7em !important;
     padding: 0.3em 1em;
     color: #FFFFFF !important;
     border-color: RGBA(0,0,0,0);
     text-transform: uppercase !important;
     background-color: #692807 !important;
	 -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}
 a.more-link:hover, article .more-link:hover, .et_pb_post .post-content a.more-link:hover {
     border-color: RGBA(0,0,0,0);
     padding: 0.3em 2em 0.3em 0.7em;
     background-color: #f39149 !important;
}
 a.more-link:after, article a.more-link:after, .et_pb_post .post-content a.more-link:after {
     font-family: 'ETmodules' !important;
     font-size: 1.6em;
     line-height: 1em;
     content: "\35";
     opacity: 0;
     position: absolute;
     margin-left: -1em;
     -webkit-transition: all 0.2s;
     transition: all 0.2s;
     text-transform: none;
     -webkit-font-feature-settings: "kern" off;
     font-feature-settings: "kern" off;
     font-variant: none;
     font-style: normal;
     font-weight: 400;
     text-shadow: none;
     transition: all 300ms ease 0ms;
}
 a.more-link:hover:after, article a.more-link:hover:after, .et_pb_post .post-content a.more-link:hover:after{
     opacity: 1;
     margin-left: 0;
}

/* MULTI COLUMNS */
.mutli-col{
	display:flex;
	flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
	flex-wrap:no-wrap;
	column-gap:60px;
	row-gap:0px;
	align-content:flex-start;
	justify-content:space-around;
}
.mutli-col ul {
	margin-bottom:0px;
	padding-bottom:0px
}

@media only screen and (max-width: 640px) {
	.mutli-col, .mutli-col-no-wrap  {
	display:flex;
	flex-direction:column;
	gap:0px;
	align-content:flex-start;
	justify-content:center;
	}
	.mutli-col-no-wrap {
	display:flex;
	flex-direction:row;
	gap:30px;
	align-content:flex-start;
	justify-content:center;
	}
}

/* HOME PAGE TESTIMONIAL SLIDER */
.owf-slider .et_pb_slide_title {
	font-size: clamp(25px, 1vw + 20px, 32px);
    line-height: 1.5;
	font-weight:500;
	margin-bottom:.85em;
}

.owf-slider .et_pb_slide_content p {
	font-size:clamp(20px, 1vw + 18px, 22px);
    line-height: 1.5;
}
.owf-slider .et_pb_slide_content p > span {
	display:block;
	margin-top:1em;
	font-size:.85em;
	text-transform:uppercase;
	font-weight:700;
	letter-spacing:.1em;
}

/* STUDENT REVIEW BLOG POST BASE TEXT */
 .jfd-base-text.student-review p {
     font-size: clamp(22px, 1vw + 20px, 25px);
     line-height: 1.5;
}

.jfd-base-text.student-review-post-it .column.size-1of3:nth-child(even) .et_pb_post.category-testimonials:nth-child(even),
.jfd-base-text.student-review-post-it .column.size-1of2:nth-child(even) .et_pb_post.category-testimonials:nth-child(even){
	transform: rotateX(0deg) rotateY(0deg) rotateZ(359deg);	
}
.jfd-base-text.student-review-post-it .column.size-1of3:nth-child(even) .et_pb_post.category-testimonials:nth-child(odd),
.jfd-base-text.student-review-post-it .column.size-1of2:nth-child(even) .et_pb_post.category-testimonials:nth-child(odd){
	transform: rotateX(0deg) rotateY(0deg) rotateZ(1deg);	
}
.jfd-base-text.student-review-post-it .column.size-1of3:nth-child(odd) .et_pb_post.category-testimonials:nth-child(even),
.jfd-base-text.student-review-post-it .column.size-1of2:nth-child(odd) .et_pb_post.category-testimonials:nth-child(even){
	transform: rotateX(0deg) rotateY(0deg) rotateZ(1deg);	
}
.jfd-base-text.student-review-post-it .column.size-1of3:nth-child(odd) .et_pb_post.category-testimonials:nth-child(odd),
.jfd-base-text.student-review-post-it .column.size-1of2:nth-child(odd) .et_pb_post.category-testimonials:nth-child(odd){
	transform: rotateX(0deg) rotateY(0deg) rotateZ(359deg);	
}

/* Menu Search Styling */
 .et_pb_menu .et_pb_menu__search-input, .et_pb_fullwidth_menu .et_pb_menu__search-input {
     border: 0;
     -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
     border-radius: 3px;
     width: 100%;
     color: #FFF;
     padding: 10px;
     background: #565555;
}
 ::placeholder {
     color: #fff;
}
/* Enable full menu on tablet */
 @media all and (min-width: 980px) {
     #fluid-header {
        background:#ffffff;
    }
     #fluid-header .et_pb_menu__menu {
         display: block;
         margin-top: auto;
         margin-bottom: auto;
         padding-bottom: 0px;
    }
     #fluid-header .et_mobile_nav_menu {
         display: none;
    }
     #fluid-header .et_pb_menu__search-button {
         font-size: clamp(14px, 1vw + 11px, 18px);
         line-height: clamp(14px, 1vw + 11px, 18px);
         display: flex;
         flex-direction: row;
         margin-top: 0;
         margin-bottom: 0px;
         margin-left: 30px;
    }
}
 #fluid-header a {
    /* FLUID KEY: 1140PX - 1080PX */
     font-size: clamp(16px, 7vw + -56px, 20px);
}
/* Use 'clamp function to size dropdown link */
 #fluid-header li li a {
    /* FLUID KEY: 1140PX - 1080PX */
    font-size: clamp(14px, 7vw + -58px, 18px);
    line-height: 1.7em;
}
/* Use 'clamp function to size menu LH padding */
 #fluid-header .et_pb_menu .et-menu li {
     padding-left: clamp(2px, 6vw + -42px, 20px);
}
 #fluid-header .et_pb_menu .et-menu li li {
     padding-left: 0;
}
 .et_pb_text a {
     transition: all 300ms linear 0ms;
}
/* Add styling to drop menu */
 .et_pb_menu .et_pb_menu__menu .sub-menu {
    /* width:200px;
     */
     top: calc(100% - 20px);
     border: none;
     -webkit-box-shadow: 0px 15px 30px -15px rgba(0, 0, 0, 0.8);
     box-shadow: 0px 15px 30px -15px rgba(0, 0, 0, 0.8);
}
 .et_pb_menu .et_pb_menu__menu .sub-menu ul.sub-menu {
}
 .et-menu li li.menu-item-has-children > a:first-child:after {
     top: 0px;
}
 .et_pb_menu .et_pb_menu__menu .sub-menu a {
     width: 240px;
     text-transform: none !important;
}
/* Style the Blog Page */
 @media only screen and (max-width: 767px) {
     .et_pb_blog_grid .et_pb_post {
         margin: 36px 0px 36px 0px !important;
         -webkit-box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
         -moz-box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
         box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
    }
}
 .et_pb_blog_grid .et_pb_post {
     margin:36px 18px;
     -webkit-box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
     -moz-box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
     box-shadow: 0px 9px 28px -15px rgba(0,0,0,0.5);
}
/* CONTACT FORM 7 STYLE OVERRIDES */
/* Removes a stubborn left border on containers set by Divi Theme */
 #main-content .container:before {
     content: none;
}
/* Containers set to 100% Override */
 .cf7sg-container .cf7-smart-grid.has-grid .container {
     max-width: 100% !important;
     padding: 0 0 !important;
     margin: 0 auto !important;
     width: 100% !important;
     flex-wrap: wrap;
     display: block;
}
 @media (max-width: 980px) {
    /* Sets Tablet Column Width Breakpoints */
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns {
         float: none !important;
         margin: 0 !important;
         width: 100% !important;
    }
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-half {
         float: left !important;
         margin: 0 0 0 2.12766% !important;
         width: 48.93617% !important;
    }
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-half:first-child {
         float: left !important;
         margin: 0 0 0 0 !important;
         width: 48.93617% !important;
    }
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-third {
         float: left !important;
         margin: 0 0 0 2.12766% !important;
         width: 31.91489% !important;
    }
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-third:first-child {
         float: left !important;
         margin: 0 0 0 0 !important;
         width: 31.91489% !important;
    }
}
 @media (max-width: 768px) {
    /* Sets Mobile Column Width Breakpoints */
     .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns, .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-half, .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-half:first-child, .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-third, .cf7sg-container .cf7-smart-grid.has-grid form .container .row .columns.one-third:first-child {
         float: none !important;
         margin: 0 0 0 0 !important;
         width: 100% !important;
    }
    /* Adds Margin-top to School Listing Rows on Mobile */
     .cf7sg-container .cf7-smart-grid.has-grid .container.spacer-margin-top {
         margin-top: 15px !important;
    }
}
/* Sets line-height to the form paragraphs */
 .cf7sg-container {
     line-height: 1.7!important;
}
/* Adds Margin-top to a Module */
 .spacer-margin-top {
     margin-top: 30px !important;
}
/* Adds Margin-top to a Field Labels */
 .cf7-smart-grid.has-grid .field > label {
     display: block;
     margin-top: 15px;
     margin-bottom: 5px;
}
 span.wpcf7-list-item {
     display: block !important;
}
 span.desc-caption {
     font-size: .75em 
}
/* Sets Font Size for File Upload Field */
 .codedropz-upload-inner h3 {
     font-size: 1em !important 
}
 .numbered-list ol {
     list-style-type: decimal;
     margin-left: 1.5em;
     list-style-position: outside!important;
     padding-left: 15px!important;
     padding-bottom: 1em;
}
 .numbered-list li{
     margin-bottom: .75em;
}
 .cf7-smart-grid.has-grid .info-tip {
     font-size: 80%;
     font-style: italic;
     color: grey;
     margin: 5px 0 5px 0;
}
/* Styling the Signature Box*/
 .wpcf7-form-control-signature-body canvas{
     width:100%;
     height:150px;
     border: 1px solid #e0e0e0;
     border-radius: 5px;
     color:#333333;
     background:#eee;
}
 .wpcf7-form-control-signature-wrap {
     width:70% !important;
     height:165px !important;
}
 @media screen and (max-width: 768px) {
     .wpcf7-form-control-signature-wrap {
         width:100% !important;
    }
}
 input[type="button" i] {
     color: #800000!important;
     border-color: #800000;
     font-size: 14px;
     font-weight: 500;
     padding: .3em 1em;
     line-height: 1.7em!important;
     background-color: transparent;
     background-size: cover;
     background-position: 50%;
     background-repeat: no-repeat;
     border: 2px solid;
     border-radius: 3px;
}
 input[type="button" i]:hover {
     background-color: rgba(0,0,0,.05);
}
 .wpcf7-response-output {
    /*display: none !important;
     */
     display: block 
}
 .wpcf7 form.sent .cf7sg-response-output {
     display: none !important;
}
 .wpcf7-not-valid-tip {
    /* display: none !important;
     */
     font-size:10px !important;
     letter-spacing:.5px !important;
     font-weight: 700 !important;
     display: block !important;
     position: relative !important;
     left: 0 !important;
     top: 100% !important;
     padding:3px 0px 0px 0px !important;
     min-width: auto !important;
     line-height: 1.2em !important;
     z-index: 7777 !important;
    ;
     background:none !important;
}
 .wpcf7-not-valid {
     border: 1px solid red !important;
}
 .wpcf7-form.sent div.container {
     display:none !important;
     -webkit-transition: all 0.5s 0s ease;
     -moz-transition: all 0.5s 0s ease;
     -o-transition: all 0.5s 0s ease;
     transition: all 0.5s 0s ease;
}
 .wpcf7 div.wpcf7-response-output {
     font-size:22px;
     text-align:center;
}
/* TEXT BOX DECORATION */
.welcome-text-1{
	font-size:31px;
	line-height: 1.3em;
	font-weight:300;
	margin-top: 8px;
	
}
.welcome-text-2{
	font-size:42px;
	line-height: 1.3em;
	font-weight:500;
	margin-top: 0px;
	
}
@media all and (min-width: 980px){
.decor:before, .decor:after {
    position: absolute;
    display: inline-block;
    content: '';
    width: 73px;
    height: 22px;
    left: -72px;
    top: 20px;
    background: url(/wp-content/uploads/2022/07/decor1.png) no-repeat 0 0;
}
.decor:after {
    left: auto;
    right: -74px;
    background: url(/wp-content/uploads/2022/07/decor2.png) no-repeat 0 0;
}
}

/*HOMEPAGE SLIDER */
.homepageslider .et_pb_slide_content {
	text-shadow: 0em 0em 0.3em #000000;
    background-image: radial-gradient(circle at center,rgba(0,0,0,0.7) 36%,rgba(0,0,0,0) 100%);
}
.homepageslider .et_pb_slide_content p {
	font-size:clamp(18px, 1vw + 13px, 25px)!important;
    line-height: 1.5 !important;
	padding:0
}

/* CLASSES TABS STYLING */
/*removes Divi bottom line on tab control row */
.jfd-base-text ul.et_pb_tabs_controls:after {
    border: none;
}
.class-tabs .et_pb_tabs_controls li a {
	font-size: clamp(15px, 3.13vw + -15.63px, 20px) !important;
	padding-top:10px;
	padding-bottom:10px
}

/* DIVI CONTACT FORM */
/* submit and captcha container */
.jfd-base-text .et_pb_contact_right {
    display: inline-block;
    min-width: 150px;
    margin: 0;
    text-align: right;
}
.jfd-base-text .et_pb_contact_right p input {
    max-width: 60px !important;
}


/* success message */
.jfd-base-text .et-pb-contact-message p {
	margin-top:30px;
	font-size: clamp(25px, 1vw + 20px, 32px);
    line-height: 1.5;
	color:#F39149;
}

/* error message */
.jfd-base-text .et-pb-contact-message ul {
	
}

.jfd-base-text .et-pb-contact-message li {
	 font-size:clamp(20px, 1vw + 18px, 22px);
     line-height: 1.6;
     letter-spacing: .05em;
     text-transform:uppercase;
	 width: 100%;
	 max-width:500px;
	 color:rgb(255 255 0 / 70%);
     background:rgb(255 0 0 / 50%);
}

.et_pb_contact p .et_contact_error {
    border: 2px solid red!important;
	box-shadow: 0px 0px 30px 0px rgb(255 0 0 / 78%) !important;
}


