/*
Theme Name:  The Keller Creative
Author: The Keller Creative
Author URI: https://thekellercreative.com/
Version:     2.0.1
Description: Custom child theme.
Template:    Divi
*/

/*

Brand Colours

Blue: #174D7D 23, 77, 125
Green: #61C6C6 97, 198, 198
Orange: #F15C4F 241, 92, 79
Black: #000
Dark Grey: #2C2C2C
Grey: #666666
Light Grey: #F4F4F4

Project Fonts:

font-family: brandon-grotesque,sans-serif; (See fonts.adobe.com for weights and styles)
font-family: "Brandon Text Regular";
font-family: "Brandon Text Light"; 
font-family: "Brandon Text Thin"; 



*/


/*---Load Fonts---*/

@font-face { 
    font-family: "Brandon Text Regular"; 
    src: url("fonts/Brandon-Text-Web-Regular.eot") format("eot"), url("fonts/Brandon-Text-Web-Regular.woff") format("woff"), url("fonts/Brandon-Text-Web-Regular.woff2") format("woff2"); 
    font-weight: normal; 
    font-style: normal; 
} 

 @font-face { 
     font-family: "Brandon Text Light"; 
     src: url("fonts/Brandon-Text-Web-Light.eot") format("eot"), url("fonts/Brandon-Text-Web-Light.woff") format("woff"), url("fonts/Brandon-Text-Web-Light.woff2") format("woff2"); 
     font-weight: normal; 
     font-style: normal; 
} 

 @font-face { 
     font-family: "Brandon Text Thin"; 
     src: url("fonts/Brandon-Text-Web-Thin.eot") format("eot"), url("fonts/Brandon-Text-Web-Thin.woff") format("woff"), url("fonts/Brandon-Text-Web-Thin.woff2") format("woff2"); 
     font-weight: normal; 
     font-style: normal; } 

/*---Typography---*/

body {
    font-family: "Brandon Text Regular";
}

h1, h2, h3, h4, h5, h6 {
    font-family: brandon-grotesque, sans-serif;
    font-weight: 500;
    font-style: normal;
}

p {
  padding-bottom: .75em;
}

body h1 {
    font-size: 55px;
}

.et_pb_button {
    font-weight: 600;
    font-family: brandon-grotesque,sans-serif;
    text-transform: uppercase;
    font-size: 19px;
    letter-spacing: 1.5px;  
}

.sub-page-title h1 {
    padding-bottom: 0;
}

.et_pb_text ul li {
    padding-bottom: 4px;
}

a {
    color: #F15C4F;
    transition: color .2s ease-in-out;
}

a:hover {
    color: #174D7D;
}



/*---Main Menu---*/

body.home #tkc-main-menu {
    transition: background-color .3s ease-in-out;
    background-color: rgba(255,255,255,0) !important;
}

body.home #tkc-main-menu.tkc-home-bg {
    background-color: rgba(255,255,255,0.95) !important;
}

body.home #tkc-main-menu #tkc-main-menu-logo span.et_pb_image_wrap {
    background-image: url(/wp-content/uploads/2023/07/the-keller-creative-logo-horizontal-white-pixel.svg);
    background-repeat: no-repeat;
}

body.home #tkc-main-menu #tkc-main-menu-logo-mobile span.et_pb_image_wrap {
    background-image: url(/wp-content/uploads/2023/07/the-keller-creative-logo-mobile-white.svg);
    background-repeat: no-repeat;
}

body.home #tkc-main-menu #tkc-main-menu-logo img, body.home #tkc-main-menu #tkc-main-menu-logo-mobile img {
    transition: opacity .3s ease-in-out;
    opacity: 0;
}

body.home #tkc-main-menu.tkc-home-bg #tkc-main-menu-logo img, body.home #tkc-main-menu.tkc-home-bg #tkc-main-menu-logo-mobile img {
    opacity: 1;
}


#tkc-main-menu li a {
    font-family: brandon-grotesque,sans-serif;
    font-weight: 500;
    padding-bottom: 44px;
}

#tkc-main-menu li.menu-item-67 a {
    padding-left: 50px!important;
}



.et_pb_menu .et-menu > li {
  padding-left: 13px;
  padding-right: 13px;
}


body.home #tkc-main-menu .et_pb_menu ul li a {
    color: rgba(255,255,255,1)!important;
}

body.home #tkc-main-menu .et_pb_menu ul li a:hover {
    color: rgba(255,255,255,.7)!important;
}


body.home #tkc-main-menu .et_pb_menu ul li.tkc-service a, body.home #tkc-main-menu .et_pb_menu ul li.mobile-last-item a {
    color: #174D7D!important;
}

body.home #tkc-main-menu .et_pb_menu ul li.tkc-service a:hover, body.home #tkc-main-menu .et_pb_menu ul li.mobile-last-item a:hover {
    color: #F15C4F!important;
}

body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li a {
    color: #174D7D!important;
}

body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li a:hover {
    color: #F15C4F!important;
}

body.home #tkc-main-menu .mobile_nav .mobile_menu_bar::before {
    transition: color .2s ease-in-out;
    color: #FFF;
}

body.home #tkc-main-menu.tkc-home-bg .mobile_nav .mobile_menu_bar::before {
    color: #F15C4F;
}

#tkc-main-menu .et_pb_menu ul li.tkc-main-menu-button a, body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li.tkc-main-menu-button a {
    transition: background-color .2s ease-in-out;
    background-color: #F15C4F;
    padding: 15px 18px !important;
    border-radius: 9999px;
    color: #FFF!important;
    margin-top: -17px;
    border: solid 2px #FFF;
    font-weight: 600;
    height: 48px;
}



#tkc-main-menu ul li.tkc-main-menu-button a:hover, body.home #tkc-main-menu .et_pb_menu ul li.tkc-main-menu-button a:hover {
    background-color: #61C6C6;
    color: #FFF!important;
}


body.home #tkc-main-menu .et_pb_menu ul li.tkc-main-menu-button a, body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li.tkc-main-menu-button a {
    transition: all .2s ease-in-out;
    background-color: transparent;
    border: solid 2px rgba(255,255,255,.3);
}

body.home #tkc-main-menu .et_pb_menu ul li.tkc-main-menu-button a:hover, body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li.tkc-main-menu-button a:hover {
    border: solid 2px #FFF;
}

body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li.tkc-main-menu-button a {
    background-color: #F15C4F;
    border: solid 2px #FFF;
}

body.home #tkc-main-menu.tkc-home-bg .et_pb_menu ul li.tkc-main-menu-button a:hover {
    background-color: #61C6C6;
}




.et-menu-nav li.mega-menu > ul > li > a:first-child {
    border-bottom: solid 2px #F15C4F;
    padding-bottom: 5px!important;
}

body .et_pb_menu .nav li ul.sub-menu a:first-child {
    color: #174D7D!important; 
}

body .et_pb_menu .nav li ul.sub-menu a:first-child:hover {
    color: #F15C4F!important; 
}

.et-menu-nav li.mega-menu.mega-menu-parent-3 > ul > li {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

#tkc-main-menu li.menu-item-67 li a {
    padding: 10px 10px!important;
}



body .et_pb_menu li.tkc-service ul.sub-menu {
    background-color:rgba(255,255,255,0)!important;
}

body .et_pb_menu li.tkc-service ul.sub-menu li a {
    text-transform: inherit;
    font-family: "Brandon Text Regular" !important;
    letter-spacing: 0;
    color: #F15C4F!important;
}

et_mobile_menu li a:hover, .nav ul li a:hover {
  background-color: rgba(0,0,0,0);
  opacity: 1;
}

#tkc-mobile-menu .mobile_menu_bar {
    padding-bottom: 33px;
}

#tkc-main-menu #tkc-mobile-menu li a {
    padding: 10px 10px;
}

.et_mobile_menu .menu-item-has-children > a {
    background-color: rgba(255,255,255,0);
}

.et_mobile_menu li a:hover, .nav ul li a:hover {
  background-color: rgba(255,255,255,0);
  opacity: 1;
}

.et_mobile_menu li a {
  border-bottom: 2px solid #F15C4F;
}

.et_mobile_menu li.mobile-last-item a {
  border-bottom: none;
    margin-bottom: 10px;
}

body .et_pb_menu .et_mobile_menu li.mobile-menu-button a, body.home #tkc-main-menu .et_pb_menu ul li.mobile-menu-button a {
    transition: background-color .2s ease-in-out;
    background-color: #F15C4F;
    padding: 12px 18px !important;
    border-radius: 9999px;
    color: #FFF!important;
    border: solid 2px #FFF;
    font-weight: 600!important;
    width: 100%;
    text-align: center;
}

body .et_pb_menu .et_mobile_menu li.mobile-menu-button a:hover, body.home #tkc-main-menu .et_pb_menu ul li.mobile-menu-button a:hover {
    background-color: #61C6C6;
    color: #FFF!important;
}

body .et_mobile_menu li.tkc-service ul.sub-menu li a {
  border-bottom: none;
    color: #174D7D!important;
    padding: 6px 10px!important;
}

body .et_mobile_menu li.tkc-service ul.sub-menu li:first-child  {
    margin-top: 5px;
}

body .et_mobile_menu li.tkc-service ul.sub-menu li:last-child  {
    margin-bottom: 7px;
}


.et_mobile_menu .first-level > a {
background-color: transparent;
position: relative;
}
.et_mobile_menu .first-level > a:after {
font-family: 'ETmodules';
content: '\4c';
font-weight: normal;
position: absolute;
font-size: 16px;
top: 10px;
right: 10px;
}
.et_mobile_menu .first-level > .icon-switch:after{
content: '\4d';
}
.second-level {
display: none;   
}

.reveal-items {
display: block;
}

.reveal-items {
display: block;
-webkit-animation: fadeIn 1s;
    animation: fadeIn 1s;    
}

@-webkit-keyframes fadeIn {
    from { opacity: 0; max-height: 0; }
      to { opacity: 1; max-height: 500px; }
}
@keyframes fadeIn {
    from { opacity: 0; max-height: 0; }
      to { opacity: 1; max-height: 500px; }
}

.et_mobile_menu li li {
    padding-left: 5px;
}


/*---Home Hero Banner---*/

#tkc-hero-banner h1 {
    font-family: "Brandon Text Thin";  
    font-weight: normal;
    padding-bottom: 0;
}

@media all and (max-width: 1200px) {
	
	#tkc-hero-banner h1 {
	font-size: 65px;
	line-height: 70px;
}
}



#tkc-hero-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
    pointer-events: none;
    -o-animation: colorcycle 20s infinite;
    -moz-animation: colorcycle 20s infinite;
    -webkit-animation: colorcycle 20s infinite;
    animation: colorcycle 20s infinite;
    opacity: 1;
}


@-o-keyframes colorcycle {
  0%   { background: rgba(97, 198, 198, 0.85); }
  33%  { background: rgba(23,  77,  125, 0.85); }
  66%  { background: rgba(241, 92,  79,  0.85); }
  100% { background: rgba(97, 198, 198, 0.85); }
}

@-moz-keyframes colorcycle {
  0%   { background: rgba(97, 198, 198, 0.85); }
  33%  { background: rgba(23,  77,  125, 0.85); }
  66%  { background: rgba(241, 92,  79,  0.85); }
  100% { background: rgba(97, 198, 198, 0.85); }
}

@-webkit-keyframes colorcycle {
  0%   { background: rgba(97, 198, 198, 0.85); }
  33%  { background: rgba(23,  77,  125, 0.85); }
  66%  { background: rgba(241, 92,  79,  0.85); }
  100% { background: rgba(97, 198, 198, 0.85); }
}

@keyframes colorcycle {
  0%   { background: rgba(97, 198, 198, 0.85); }
  33%  { background: rgba(23,  77,  125, 0.85); }
  66%  { background: rgba(241, 92,  79,  0.85); }
  100% { background: rgba(97, 198, 198, 0.85); }
}

/* Keyframes for the fade-in */
@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }


/*----Home Service Callouts----*/


.home-service-callout:before {
    content:"";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,1);
    transition: background-color .2s ease-in-out;
}




.home-service-callout, .home-service-callout h2, .home-service-callout .service-icon, .home-service-callout .service-cat-img {
    transition: all .2s ease-in-out;
}



.home-service-callout svg {
    height: 62px;
}

.home-service-callout .service-icon {
    fill:#F15C4F;
}




/*---Forms---*/



.tkc-form .tkc-form-field {
	margin-bottom: 20px;
}

div.wpcf7-mail-sent-ok {
	border: none!important;
	padding: 0!important;
	margin: 0!important;
	color: #174d7d;
}
.tkc-form  .et_pb_column {
	padding: 0!important;
    margin: 0!important;
}

.tkc-form  .et_pb_column.et_pb_column_1_2 {
    width: 50%;
}

.tkc-form .form-col-left {
	padding-right: 10px;
}

.tkc-form .form-col-right {
	padding-left: 10px;
}

	.tkc-form .form-align-right {
		text-align: right;
	}

.tkc-form-field input[type="text"], .tkc-form-field textarea, .tkc-form-field input[type="email"], .tkc-form-field input[type="password"], .tkc-form-field input[type="tel"], .tkc-form-field input[type="url"], .tkc-form-field input[type="search"], .tkc-form-field input[type="date"], .tkc-form-field select {
	width: 100%;
	padding: 16px;
	transition: all 0.2s linear 0s;
	font-size: 20px;
	background-color: #ffffff;
	border: solid 2px #61C6C6;
	color: #202020 !important;
	font-family: "Brandon Text Regular";
}

.tkc-form-field textarea {
	height: 175px;
}

.tkc-form input.wpcf7-submit {
    color: #FFFFFF !important;
    border-color: #F15C4F;
    border-radius: 999px;
    font-size: 16px;
    background-color: #F15C4F;
    transition: all 300ms ease 0ms;
    font-weight: 600;
    font-family: brandon-grotesque,sans-serif;
    text-transform: uppercase;    
	border: none;
	cursor: pointer;
	margin: 0;
	padding: 8px 18px;
    font-style: normal;
    letter-spacing: 1.5px;
}

.tkc-form input.wpcf7-submit:hover {
	background-color: #61C6C6;
}

.wpcf7-spinner {
  background-color: #61C6C6;
  margin: -7px -34px -7px 10px;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0;
  padding: 0;
  border: 0px solid transparent;
}


/*---Footer---*/

.footer-contact-link a, .legal-footer-link a, .footer-contact-link-mobile a {
    color: #FFF;
    white-space: nowrap;
    transition: color 300ms ease 0ms;
}

.footer-contact-link a:hover, .legal-footer-link a:hover, .footer-contact-link-mobile a:hover {
    color: #61C6C6;
}


.footer-location-blurb {
    font-size: 18px;
    margin-top: 1px;
}


/*---Subpage Banner---*/

.sub-banner:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(23,77,125,0.9);
}


@media all and (max-width: 1160px) {

    .footer-contact-link a, .footer-location-blurb {
        font-size: 17px;
}
    
    .footer-location-blurb {
    line-height: 1.6em;
        margin-top: 3px;
}
    
    
}


@media all and (max-width: 1060px) {

    .footer-contact-link a, .footer-location-blurb {
        font-size: 15px;
}
    
    .footer-location-blurb {
        margin-top: 6px;
} 
    
    #footer-socials li a.icon, #footer-socials li a.icon::before {
        font-size: 20px;
        line-height: 40px;
    height: 40px;
width: 40px;    
        
    }    
    
}


/*Nested Row*/

.et_pb_row.custom-nested-row {
    width: 100%;
    padding: 0;
}

.et_pb_row.custom-nested-row .et_pb_column {
    margin-bottom: 0!important;
}
    
@media all and (min-width: 768px) and (max-width: 980px) {
    
    .et_pb_row .custom-2-col-tablet .et_pb_column_1_2 {
        width: 47.25%!important;
        margin-right: 5.5%;
    }
    
        .et_pb_row .custom-2-col-tablet .et_pb_column_1_2.et-last-child {
        margin-right: 0;
    }
    
}


/*Subpage Service*/

.sub-services ul {
    padding-bottom: 0;
}

.sub-services h3 {
    border-bottom: solid 2px #F15C4F;
    padding-bottom: 7px;
    margin-bottom: 13px;
}

.sub-industries ul {
    padding-bottom: 0;
}

.sub-industries ul li {
    padding-bottom: 0;
}

/*Blog*/

.et_pb_post_content h1, .et_pb_post_content h2, .et_pb_post_content h3, .et_pb_post_content h4, .et_pb_post_content h5, .et_pb_post_content h6 {
    padding-top: .25em;
}

.et_pb_post_content p {
    padding-bottom: 1em;
}

.et_pb_post_content .et_pb_row:first-of-type {
    padding-top: 0;
}

.recent-posts-blog a.entry-featured-image-url {
    margin-bottom: 8px;
}

.recent-posts-blog h2 {
    padding-bottom: 0;
}

.recent-posts-blog .et_pb_post {
    margin-bottom: 0;
}


/*Design Tweaks*/

.et_pb_testimonial_author {
  margin-top: 15px;
}



/*** Desktop Only ***/
@media all and (min-width: 981px) {
    .home-service-callout:hover:before {
    background-color: rgba(97,198,198,1);   
}
    
.home-service-callout:hover, .home-service-callout:hover h2 {
    color: #FFF!important;
}

.home-service-callout:hover .service-icon {
    fill:#FFFFFF;
}  
    
.home-service-callout:hover .service-cat-img {
    opacity: .8;
}     
  
}


/*** Responsive Styles Large Desktop And Above ***/
@media all and (min-width: 1405px) {
  
}
 
/*** Responsive Styles Standard Desktop Only ***/
@media all and (min-width: 1100px) and (max-width: 1405px) {
 
}
 
/*** Responsive Styles Tablet And Below ***/
@media all and (max-width: 980px) {
    
    #tkc-hero-banner h1 {
    font-family: "Brandon Text Light"; 
    font-weight: normal;
    font-size: 45px;
    line-height: 50px;      
    }
    
   
 
}
 
/*** Responsive Styles Tablet Only ***/
@media all and (min-width: 768px) and (max-width: 980px) {
 
}
 
/*** Responsive Styles Smartphone Only ***/
@media all and (max-width: 767px) {
    
.client-row.et_pb_gutters1.et_pb_row_6col > .et_pb_column.et_pb_column_1_6 {
  width: 33.333%!important;
  margin-right: 0!important;
}    

body h1 {
    font-size: 45px;
}    
    
    body h2 {
        font-size: 30px;
    }  
    
        body h3 {
        font-size: 26px;
    } 
    
    #tkc-mobile-menu .mobile_menu_bar {
    padding-bottom: 29px;
}
    
    #tkc-hero-banner h1 {
    font-family: "Brandon Text Light"; 
    font-weight: normal;
    font-size: 35px;
    line-height: 40px;     
    }    
 
}
 
/*** Responsive Styles Smartphone Portrait ***/
@media all and (max-width: 479px) {
    
.tkc-form .tkc-form-field.center-mobile {
    text-align: center;
    
}    
    
    .tkc-form .form-col-left {
	padding-right: 0px;
}

.tkc-form .form-col-right {
	padding-left: 0px;
}
 
}