/*
Theme Name: Welch
Theme URI: https://mockups.consumerfocusweb.com/welch/
Author: Consumer Focus Marketing
Author URI: https//consumerfocusmarketing.com/
Description: Starter theme for Consumer Focus Marketing 
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: Portfolio, Oil, Blog
Text Domain: #
*/


:root {
  --white: #FFFFFF;
  --black: #000;
  --body: #160A02;

  --gray:#EFEFEF;
  --lt-gray: #EFEFEF;
  --md-gray: #cccccc;
  --dk-gray: #818181;


  --red: #C2363F;
  --dk-red:#9f0901;
  --red-alt: #D51F26;
  --well-red:#CB454E;
  --hover-red: #83050A;
  --blue: #008ADF;
  --blue-alt: #2099D3;
  --blue-accent: #819EBE;
  --blue-other: #0F0E9F;
  --blue-md: #001646;

 --headline-color: #FFFFFF;

  --page-title-bkg: ;
  --page-title-bkg: ;



  /* TYPOGRAPHY */

  --body-font: 'Roboto', sans-serif;
  --headline-font: 'Roboto', sans-serif;


  --base-font-size: 1rem;
  --base-line-height: 1.813rem;
}

/*** DEFAULTS ***/

/* font size will +/- by 1px for every 100px of the viewport width */

html {
  font-size: calc(10px + 0.5vw); 
}

body { 
  font-size: 1rem;
  font-family: var(--body-font);
  overflow-x: hidden;
  color: var(--body);
  margin: 0;
  line-height: 1.688;
}

p {


}

@media (max-width: 767px) {
    body {
        font-size: 1.25rem;
    }
}

* {
    transition-property: all;
    transition-duration: 0.2s;
    transition-timing-function: linear;
}

*, ::after, ::before {
    box-sizing: border-box;
}


img {
  max-width: 100%;
  height: auto;
}

.clearfix::after {
    content: "";
    clear: both;
    display: table;
}

h1, h2, h3, h4 {
    margin: 0 0 .5rem;
    font-family: var(--headline-font);
    font-weight: 700;
	color:(--black);
}

/**

Font size formula: Target Size / Base Size = Value
Example: 50px / 16px = 3.125rem

**/

.home h1 {
    color: var(--headline-color);
    font-size: 2.5rem;
}

.home .home-headline {
	color: var(--red-alt)!important;
    font-size: 2.5rem;
	padding: 2rem 0rem 2rem 0rem;
}

h1 {
  font-size: 3.125rem;
}

h2:not(.home h2):not(.well h2) {
  font-size: 1.875rem;
  color: var(--black);

}

h3 {
  font-size: 1.375rem;
}

h4 {
  font-size: 1.25rem;
}

p {
  padding: 0;
}

a {
  text-decoration: none;
  color: var(--red);
}

a:hover {
 color:var(--red);
}


a[href^="tel:"]:not(.btn), a[href^="mailto:"]:not(.btn) {
    color: inherit;
    text-decoration: none;
}


/*** "GLOBAL" STYLES ***/

.container {
  min-width: 90vw;
}
@media(max-width: 600px) {
.container {
  max-width: 85vw;
}
}


hr {
    border-top: 1px solid var(--blue-accent);
    margin: 1.875rem auto 3.125rem;
}


/*** BUTTONS ***/

button:hover {
    cursor: pointer;
}

.btn, .gform_button, btn {
    padding: .59rem 5.4rem;
    margin: 1rem .25rem;
    text-decoration: none;
    display: inline-block;
    white-space: pre-wrap;
    font-size: 0.938rem;
    font-weight: 700;
    border-radius: 1.75rem;
    text-transform: uppercase;

}


.btn:hover, .gform_button:hover, btn:hover{
    transition: all 0.2s ease 0s;
    text-decoration: none;
    border-radius: 0;
}

.btn-menu {
    border-radius: 1.219rem;
}

.btn-ghost {
    background: transparent;
    border-color: var(--blue);
}

.btn-ghost:hover {
    background: var(--blue);
}


.btn-primary, .btn-default, .gform_button, button.btn, btn {
    background: var(--red)!important;
    border-color: var(--red);
    box-shadow: 0 2px 3px #1B2A0845;
	padding: 0.75rem 2rem;
	font-size:1.2rem;
    color: var(--white);


}

.gform_button {
    color: var(--white);
    border: none;
	border-radius:10px!important;
}

.btn-primary:hover, .gform_button:hover {
    background: var(--hover-red)!important;
    border-color: var(--hover-red);
}


.btn-default {
    background: var(--hover-red);
    color: var(--white);
}

.btn-default:hover {
	background: var(--red);
    color: var(--white);
}

button.order_btn {
    background: var(--red);
    color: var(--white);
}

/*** COLORS ***/


/*** HEADER ***/
.header-logo{

}

.header-left{
	padding: 1rem 3rem;
}
.header-right{
    display: flex;
    align-items: center;
    text-transform: uppercase;
}
.header-right a{
/*	padding:1rem;*/
	font-weight:bold;
	font-size:1.2rem;
	color:var(--red-alt);
}

.header-right ul {
	list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    width: 100%;
}

.header-right ul li{
	padding: .5rem;
    margin: 0;
    text-align: center;
    line-height: 1.1;
}

/* add a border around right header items */
.header-right ul li a.border-link {
    border: 2px solid #C23232;
	display: inline-block;
	padding: .5rem;
    border-radius: 5px;
    font-size: 1rem;
}
@media(max-width:1200px){
   .header-right ul li a.border-link {
    font-size: 1rem;
    } 
}
@media(max-width:991px){
    .header-right ul{
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .header-right ul li a.border-link{
        font-size: 1rem;
    }
}

@media(max-width:800px){
    .header-right ul{
        justify-content: center;
    }
    .header-right ul li{
        padding: .5rem;
    }
    
}

@media(max-width:550px){
    .header-right ul li a.border-link {
        font-size: 1.25rem;
    }
    .header-right ul li {
        padding: .5rem;
        width: 100%;
        font-size: 1.75rem;
    }
}
header a[href^="tel:"]{
	color:var(--red-alt) !important;
	font-size:1.7rem;
	font-weight:bold;
	white-space: nowrap;
}

.tablet-phone{
	display:none;
	text-align:right;
}

@media(max-width: 1510px) {
	.computer-phone{
		display:none;
	}
	.tablet-phone{
		display:inline-block;
		margin-bottom:-1.5rem;
	}	
	

}

@media(max-width: 850px) {
	header{
		text-align:center;
		
	}
	.tablet-phone{
		text-align:center;
	}
		header a[href^="tel:"]{
	font-size:3rem;
	}
	
	.header-left{
		padding: 0rem;
	}
	header .customer{
		display:none;
	}
	.header-right a{
		font-size:1.75rem;
	}

}
@media(max-width: 1000px) {
.header-left{
	padding:2rem;
}
}

/*** NAV BAR ***/
nav{
    background-color: var(--red-alt);	
	color: var(--white);
}
nav button{
	text-align:right!important;
	color:var(--white);
}
  .main-menu {
    font-weight: 700;
  }

  
.main-menu .nav-link {
    color: var(--white);
    text-transform: uppercase;
}

.navbar {
      z-index: 10000;
}

.dropdown-toggle::after {

}

.dropdown-item {
    font-weight: 700;
}

.dropdown-item:hover {
    background: var(--red);
    color: var(--white);
    border-radius: 0;
}
.menu-collapse {
	float:right;
}


.navbar-light .navbar-toggler-icon {
	background-image: url('img/menu_hamburger_icon.svg');
}

/*** MENU - BASE STYLES ***/

  /* show dropdown menus on hover */
  .dropdown:hover > .dropdown-menu {
    display: block;
  }

  .dropdown-item {
    text-align: left;
    padding: .5rem 1.5rem;
  }


  /* removes the deadzone click area */
  .dropdown-menu {
    margin: 0;
    border: 0;
    border-radius: 0;
  }

  .nav-item.active > a,
  .nav-link:hover,
  .nav-item:hover {
}

nav span{
	color:var(--white)!important;
}

@media(min-width: 768px) {
  .dropdown-menu {
        background: ;
  }
  
  .dropdown-menu {
      left: auto;
      right: 0;
      margin: 0 auto;
  }

    /* hides carets */
 /* .dropdown-toggle::after {
    display: none;
  }*/
}


/*** MENU - TOP LEVEL ***/

.top-level {
  position: relative;

}

.dropdown.top-level:hover:after {
  border-left: solid transparent 10px;
  border-right: solid transparent 10px;
  border-top: solid var(--md-blue) 10px;
  bottom: -10px;
  content: " ";
  height: 0;
  margin-left: -13px;
  position: absolute;
  width: 0;
  z-index: 10000;
}


/*** MENU - SECOND LEVEL MENU DROPDOWNS ***/

.second-level {
    position: relative;
    padding-bottom: 1rem;
}

.second-level > .dropdown-menu {
    top: 0;
    left: 100%;
}

.dropdown-menu {
    box-shadow: rgba(0, 0, 0, 0.19) 0 0 8px 0;
}


@media (min-width: 768px) {
  .second-level > .dropdown-menu {
    margin-top: -.5rem;
    margin-bottom: -.5rem;
    padding-bottom: .5rem;
  }

  .second-level.menu-item-has-children > a:after {
    display: block;
    content: "▸";
    float: right;
    margin-right: -20px;
  }

  .second-level:hover > a:after {
    border-left-color: inherit;
  }

  .menu-item-has-children > .dropdown-item {
    padding: .5rem 2.25rem .5rem 1.5rem;
  }
}


/*** MENU - THIRD LEVEL MENU DROPDOWNS ***/

@media (max-width: 768px) {
  .third-level .dropdown-item {
    padding-left: 40px;
    font-size: 1.2rem;
  }

  .second-level.menu-item-has-children .dropdown-item::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

  .third-level a.dropdown-item::after {
    display: none !important;
  }
}


/*** HOME ***/

#home-carousel {
    color: var(--white);
    text-align: center;
}

#home-carousel .item-content {
    padding-top: 4%;
    padding-bottom: 4%;

}


.carousel-indicators li {
  width: 0.938rem;
  height: 0.938rem;
  border-radius: 100%;
  cursor: pointer;
  background-color: var(--headline-color);
  border: 1px solid;
  margin: 0 0.5rem 1rem;
}

.carousel-indicators .active {
  background-color: var(--blue-accent);
}

.carousel-control-next-icon, .carousel-control-prev-icon {
    width: 20px;
    height: 20px;
}

@media(max-width: 768px) {
    .carousel-control-prev, .carousel-control-next {
        display: none;
    }

}

.slider-container{
	background-color: rgba(0, 0, 0, 0.55);
	margin:0% 15%;
	padding:2.5rem 3.5rem 2.5rem 3.5rem;
	text-align:left;
}

.slider-container h1{
	font-size:2.75rem;
}

.slide-headline {
    font-size: 4.125rem;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.25;
	
}
.slider-container h2 {
    font-weight: 400;
}
@media(max-width:992px){
    .slider-container h1{
        font-size: 3rem;
    }
    .slider-container{
        margin: 0 5%;
    }
}

.text-box p {
    font-size: 1.5rem;
}

#home-carousel .btn {
    background: transparent;
    border-color: inherit;
    margin: 2.5rem auto 0;
}

.carousel-control-prev, .carousel-control-next {
    background: transparent;
    border: none;
}

.visually-hidden {
    display: none;
}

.carousel-control-next-icon, .carousel-control-prev-icon {
    height: 30px;
    width: 30px;
}


.carousel-control-prev-icon {
    background-image: url(/img/prev-icon.svg);
}

.carousel-control-next-icon {
    background-image: url(/img/next-icon.svg);
}


.main-content {
    margin-bottom: 2.75rem;
    margin-top: 2.188rem;
}

@media(min-width:768px) {
    .main-content p {
        max-width: 937px;
        margin: 15px auto;
    }
}



.service-box{
    margin-top: 1.5rem;	
}

.service-box img {
    height: 80px;
    margin-left: 1rem;
}
.service-box h3{
    font-size: 1.75rem;
}

.fuel-price-box{
	border: 3px solid var(--hover-red);	
	text-align:center;
	margin-bottom:3rem;
    line-height: 1.3;
	

}

.fuel-price-box h3{
	background-color: var(--hover-red);	
	color:#ffffff;
	font-size:2rem;
	padding:1rem;
}

.fuel-price-box p{
  font-size: 1.5rem;
}

.fuel-price-box a[href^="tel:"]{
  font-weight:bold;
}


.testimonial-box{
	background-color:var(--gray);
	padding:2rem;
	margin-bottom:2rem;
	
}
@media(min-width:992px){
    .col.service-box p {
    height: 210px;
}
}

@media(max-width:991px) and (min-width:851px){
    .col.service-box p {
    height: 250px;
}
}

@media(max-width:850px) and (min-width:768px){
    .col.service-box p {
    height: 150px;
}
}




.service-box .btn{
  position:relative;
  bottom: 0;

}
@media (max-width:992px){
    .service-box img{
        width: 50px;
    }
}


@media(max-width:850px) {
	.service-box{min-width:300px;}
	.service-box .btn-primary{
		margin-bottom:3rem;
	}
	.fuel-price-box{min-width:350px;}
}
	.service-box .btn-primary{
		width:100%;
	}

.service-area{
	width:100%;
}

@media(max-width: 767px) {
    .service-box * {
        font-size: initial;
    }

    .service-box h3 {
       font-size: 1.875rem;
    }
    .fuel-price-box .btn{
        margin-top: 1rem;
    }
}

@media(max-width:400px) {
	.service-box{min-width:100px;}
	.fuel-price-box{min-width:200px;}
}


.service-area{
	width:100%;
}



/*** FOOTER ***/
footer{
	padding: 3rem 0rem 2rem 0rem;
	background-color:var(--black);
    color: var(--white);
/*	margin-top:2rem;*/
}
.footer-right{
	text-align:right;
}

@media(max-width: 767px) {
.footer-right{
	text-align:left;
}
}

footer a {
    color: inherit;
}

footer a[href^="tel:"]{
	font-size:2rem;
	line-height:1rem;
}

footer a:hover {
    color: inherit;
    text-decoration: underline;
}

footer strong {
    display: block;
    font-size: 0.875rem;
    color: var(--headline-color);
    text-transform: uppercase;
}

.footer-hr {
    max-width: 75%;
    color: var(--blue-accent);
    opacity: 1;
    margin-top: 1rem;
    margin-bottom: 1rem;
    margin-left: unset;
}

.top-footer {
    background: var(--lt-gray);
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
}


.bottom-footer {
    background: var(--blue-md);
    color: var(--white);
}

@media(max-width: 767px) {
    .footer-logo {
        margin: auto auto 2rem;
        display: block;
    }
    footer strong {
        margin-top: 2rem;
    }
}




/*** PAGES ***/

.entry-title {
    margin: 0;
}

.page-background.no-img {
    padding: 2rem 0;
	text-align:left!important;
	
}

.page-background.bkg-img h1 {
    color: var(--white);
}

.fill-space {
    width: 100%;
    max-height: 335px;
    object-fit: cover;
    padding-right: 2rem;
}

@media(min-width:768px) {
    .page-content p:first-child {
        margin: 15px auto;
    }
}

/*** POSTS ***/

.blog-wrapper h2 > a {
    color: initial;
}

.blog-wrapper h2 > a:hover {
    text-decoration: unset;
}

li.categories {
    list-style: none;
}

@media ( max-width:768px ) {
    li.categories > ul {
        list-style-position: inside;
    }
}
/*** 404 ***/

.not-found {
    min-height: 15rem;
    flex-direction: column;
}

.not-found h1 {
    font-size: 10rem;
}

.not-found h2 {
    margin-bottom: 1.66rem;
}

/*** SIDEBARS ***/


.well {
    font-size: 0.875rem;
    padding: 1rem;
    margin: 1rem auto 1.563rem;
    background: var(--black);
    color: var(--white);
    text-align: center;
}

.well h2, .well h3 {
  font-size: 1.375rem;
  color: var(--white);
  margin-bottom: 1.25rem;
}

.well .btn {
    min-width: 75%;
    margin: .75rem auto;
}

.well a:not(.btn), .well a:hover:not(.btn) {
    color: var(--well-red);
}

.well-alt {
  background: var(--well-red)!important;
 
}

.well-alt a, .well-alt a:hover {
    color: var(--black);
}



/*** PAGE CALLOUTS ***/

.edge_callout {
    
   width: 100vw;
   position: relative;
   left: 50%;  
   margin-left: -50vw;
}

 .edge_callout .col-md-12 {
     max-width: 90vw;
     margin-left: calc((100% - 90vw) / 2);
 }


 .callout {
    margin-bottom: 1.563rem;
    margin-right: 0;
    margin-left: 0;
    background: var(--lt-gray);
}

.callout-text {
    padding: 3.75rem 4.313rem 3.688rem 3rem;
}

.callout-image {
  max-width: 15rem;
}

.callout a:not(.btn), .full-callout a:not(.btn) {
    color: inherit;
    text-decoration: underline;
}

.callout a:hover, .full-callout a:hover {
    text-decoration: unset;
}

.full-callout {
    margin-bottom: 1.563rem;
}

.full-callout-text {
  color: var(--white);

}

.full-callout-text:before {
    background: var(--accent-gray);
    margin-bottom: 1.563rem;
    margin-right: 0;
    margin-left: 0;
}

.full-callout-bkg:before {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.full-callout-bkg * {
    color: var(--white);
}

.full-text {
  background: none;
  position: relative;
  display: grid;
  padding-top: 3.75rem;
  padding-bottom: 4.313rem;
}

.full-text:before {
  content:"";
  position: absolute;
  height: 100%;
  width: 200vw;
  left: -100vw;
  z-index: -1;
}
.full-callout-bkg h2 {
    color: white !important;
}

@media(max-width:767px) {
.callout .callout-text {
    flex: 0 0 100%;

    }
}



/**************
 *            *
 *   TABLES   * 
 *            *
 **************/


/*** BASE ***/

table {
    width: 100%;
    margin: 1rem 0;
}


th {
    font-weight: 500;
    font-size: 1.15rem;
	background-color: var(--red);
}


td, th {
    padding: .25rem 1rem;
}


/*** REGULAR TABLE ***/


thead {
    background: var(--accent-gray);
    color: var(--white);
    border: 1px solid var(--accent-gray);
}

tbody {
    border: 1px solid var(--md-gray);
}

tr:nth-child(even) {
    background: var(--lt-gray);
}

td, th {
    border-right: 1px solid var(--md-gray);
}


/*** ALT TABLE ***/

table.alt thead {
    background: var(--lt-gray);
    color: unset;
    border: 1px solid var(--md-gray);
}

table.alt tbody {
    border: 1px solid var(--md-gray);
}

table.alt tr:nth-child(even) {
    background: var(--lt-gray);
}

table.alt td, table.alt th {
    border: 1px solid var(--md-gray);
}


/*** LISTS ***/



ul.alt li:before {
  content: "\2713";
  margin-right: 0.5em;
  background: var(--black);
  width: 1rem;
  height: 1rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  border-radius: 50%;
  font-size: 0.75rem;
  text-align: center;
  margin-left: -1rem;
}

ul.alt {
    padding-left: 1rem;
}

ol.alt {
  counter-reset: orderedList;
}

ol.alt li {
  list-style-type: none;
  position: relative;
}

ol.alt li:before {
  counter-increment: orderedList;
  content: counter(orderedList);
  margin-right: 0.5em;
  background: var(--black);
  width: 1rem;
  height: 1rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  border-radius: 50%;
  font-size: 0.75rem;
  text-align: center;
  margin-left: -1rem;
}

ul.serviceArea{
    columns: 2;
}



/**** BLOCKQUOTES ****/

blockquote {
    background: var(--lt-gray);
    padding: 1rem 0.75rem;
}

blockquote:before {
    /* color: var(--md-gray); */
    /* content: open-quote; */
    font-size: 4rem;
    line-height: 0.1em;
    margin-right: 0.25em;
    vertical-align: -0.4em;
}

blockquote.alt {
    background: var(--md-gray);
    border-color: var(--accent-gray);
}

.coupon {
  border: 3px dashed var(--dk-gray);	
  padding: 1rem;
  margin: 1rem;
  text-align:center;
}
/*** SOCIAL ICONS ***/

i.bi {
    padding-right: .5rem;
    font-size: 1.5rem;
}

/*** ACCORDION ***/
.FAQ{
	padding: 4rem 0rem;
}
.panel-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
  font-size: 1.563rem;
  text-align: left;
  width: 100%;
  border: none;
  font-weight: 900;
  box-shadow: none;
  color: var(--body);
  border-bottom: 3px dashed var(--md-gray);
  cursor: pointer;
}

.panel-title h3{
	padding-top:1rem;
}

.panel-title[aria-expanded="false"]:after {
  content: url(img/plus-circle-fill.svg);
}

.panel-title[aria-expanded="true"]:after {
  content: url(img/dash-circle-fill.svg);
}

.panel-title .img{
	text-align:right;
}


/**** FORMS ****/

.gform_wrapper {
    background: var(--lt-gray);
    padding: 2rem;
}


.pay-bill .amount {
    font-size: 1.25rem;
    font-weight: 700;
}

.pay-bill input {
    border-color: transparent;
}

.g-recaptcha.brochure__form__captcha > div {
    margin: auto auto 0;
    display: block;
}
.dropdown-item, .main-menu .nav-link {
		text-align:left!important;
}

@media(max-width:767px){
    .dropdown-item, .main-menu .nav-link{
        font-size: 1.3rem;
        padding: 1rem;
    }
}

/* Customization by SO - Start */

@media only screen and (max-width: 767px) {
    .btn-primary,
    .btn-default {
        display: block;
        width: 85%;
        margin: 1rem auto;
        padding: 1.25rem;
        font-size: 1.4rem;
        border-radius: 3rem;

    }
}

.well p {
    font-size: 16px; /* Fixed minimum font size */
}

input[type="submit"].gform_button.button {
    width: 100% !important; /* Set button width to full width */
    max-width: 400px; /* Restrict maximum button width to 400px */
}

/* Customization by SO - End */
.d-none {
	display: none;
}