/*
Theme Name: TowingWebsites.com Custom
Description: Powered by TowingWebsites.com
Author: TowingWebsites.com
Author URI: https://towingwebsites.com
Template: Avada
Version: 2.0.0
Text Domain:  Avada
*/


.push-call-now-left div:has(> .call-now) {
  text-align: left !important;
  align-self: flex-start !important;
}



/* ===== SERVICE AREA CITY LIST WITH HOOK ICON ===== */

.BJT-hook-list.BJT-hook-list-cities {
  gap: 26px 28px;
}

.BJT-hook-list-cities li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 14px;
  row-gap: 2px;
  align-items: center;
}

.BJT-hook-list-cities li::before {
  content: "";
  grid-row: 1;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: url("/wp-content/uploads/golden-hook-30px.jpg") center / cover no-repeat;
}

.BJT-hook-list-cities .BJT-hook-city {
  grid-column: 2;
  grid-row: 1;
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  font-size: 26px;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #ffffff;
}

.BJT-hook-list-cities .BJT-hook-parish {
  grid-column: 2;
  grid-row: 2;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  line-height: 1.4;
  color: #fff;
}

.BJT-foil-bg {
  background-image:
    linear-gradient(
      to bottom,
      var(--awb-color6) 0%,
      transparent 20%,
      transparent 80%,
      var(--awb-color6) 100%
    ),
    url("/wp-content/uploads/gold-foil-bg.jpg") !important;
  background-size: 100% 100%, cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* ===== HOOK LIST MODIFIERS: SINGLE COLUMN + WHITE BACKGROUND ===== */

.BJT-hook-list.BJT-hook-list-stack {
  grid-template-columns: 1fr;
  gap: 10px;
}

.BJT-hook-list-on-white a,
.BJT-hook-list-on-white a:hover,
.BJT-hook-list-on-white a:focus-visible {
  color: #1d1b17;
}

/* ===== ROADSIDE LIST WITH HOOK ICON ===== */

.BJT-hook-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.BJT-hook-list li {
  min-width: 0;
  margin: 0;
}

.BJT-hook-list a {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #000;
  text-decoration: none;
  text-underline-offset: 5px;
  text-decoration-thickness: 2px;
}

.BJT-hook-list a::before {
  content: "";
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: url("/wp-content/uploads/black-bg-gold-hook-30px.png") center / cover no-repeat;
}

.BJT-hook-list a:hover,
.BJT-hook-list a:focus-visible {
  font-weight: 700;
  text-decoration: underline;
  color: #000;
}

@media (max-width: 799px) {
  .BJT-hook-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 549px) {
  .BJT-hook-list {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

/* ===== DIESEL SPEC LIST ===== */

.BJT-spec {
  display: flex;
  flex-direction: column;
  border-top: 1px solid #4a3a12;
}

.BJT-spec-row {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  column-gap: 22px;
  align-items: baseline;
  padding-top: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid #4a3a12;
}

.BJT-spec-label {
  min-width: 0;
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d4a63a;
}

.BJT-spec-items {
  min-width: 0;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  font-size: 19px;
  line-height: 1.5;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #f2f2f2;
}

.BJT-spec-item {
  white-space: nowrap;
}

.BJT-spec-item:not(:last-child)::after {
  content: "/";
  margin-left: 12px;
  margin-right: 12px;
  color: #d4a63a;
  font-weight: 400;
}

@media (max-width: 640px) {
  .BJT-spec-row {
    grid-template-columns: 1fr;
    row-gap: 4px;
  }
}


/* ===== DIESEL SPEC LIST: LINKS ===== */

.BJT-spec-items a.BJT-spec-item {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.BJT-spec-items a.BJT-spec-item:hover,
.BJT-spec-items a.BJT-spec-item:focus-visible {
  color: var(--awb-color6);
}

.BJT-spec-items a.BJT-spec-item:not(:last-child)::after {
  color: #d4a63a;
}

/* ===== RAGGED EDGE PHOTO COLUMN ===== */

.BJT-ragged > .fusion-column-wrapper {
  -webkit-mask-box-image: url("/wp-content/uploads/BJT-ragged-mask-1.png") 64 fill / 64px round;
  mask-border: url("/wp-content/uploads/BJT-ragged-mask-1.png") 64 fill / 64px round;
}

/* ===== SITEWIDE GOLD FOIL BUTTONS WITH CHROME HOVER ===== */
/* Add BJT-btn-plain to any button that should keep Avada's default look */

a.fusion-button:not(.BJT-btn-plain),
button.fusion-button:not(.BJT-btn-plain) {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #c9952e !important;
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 236, 170, 0.4) 0%,
      rgba(255, 236, 170, 0.12) 40%,
      rgba(70, 38, 0, 0.1) 60%,
      rgba(70, 38, 0, 0.3) 100%
    ),
    url("/wp-content/uploads/gold-foil.jpg") !important;
  background-size: 100% 100%, cover !important;
  background-position: center !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 240, 190, 0.9),
    inset 0 -1px 0 rgba(60, 35, 0, 0.6);
}

a.fusion-button:not(.BJT-btn-plain)::before,
button.fusion-button:not(.BJT-btn-plain)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background-image: linear-gradient(
    180deg,
    #fbfbfb 0%,
    #e6e6e6 30%,
    #c6c6c6 55%,
    #a4a4a4 80%,
    #8c8c8c 100%
  );
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

a.fusion-button:not(.BJT-btn-plain):hover::before,
a.fusion-button:not(.BJT-btn-plain):focus-visible::before,
button.fusion-button:not(.BJT-btn-plain):hover::before,
button.fusion-button:not(.BJT-btn-plain):focus-visible::before {
  opacity: 1;
}

a.fusion-button:not(.BJT-btn-plain):hover,
a.fusion-button:not(.BJT-btn-plain):focus-visible,
button.fusion-button:not(.BJT-btn-plain):hover,
button.fusion-button:not(.BJT-btn-plain):focus-visible {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 236, 170, 0.4) 0%,
      rgba(255, 236, 170, 0.12) 40%,
      rgba(70, 38, 0, 0.1) 60%,
      rgba(70, 38, 0, 0.3) 100%
    ),
    url("/wp-content/uploads/gold-foil.jpg") !important;
}


/* ===== BUTTON DROP SHADOW (OVERRIDES AVADA 3D BUTTON SHADOWS) ===== */

body .fusion-button,
body .fusion-button:hover,
body .fusion-button:focus,
body .fusion-button:active {
  box-shadow:
    0 3px 4px rgba(0, 0, 0, 0.8),
    0 8px 18px rgba(0, 0, 0, 0.65) !important;
}

/* Gold buttons keep their bevel lines in the same shadow stack */
body a.fusion-button:not(.BJT-btn-plain),
body a.fusion-button:not(.BJT-btn-plain):hover,
body a.fusion-button:not(.BJT-btn-plain):focus,
body a.fusion-button:not(.BJT-btn-plain):active,
body button.fusion-button:not(.BJT-btn-plain),
body button.fusion-button:not(.BJT-btn-plain):hover,
body button.fusion-button:not(.BJT-btn-plain):focus,
body button.fusion-button:not(.BJT-btn-plain):active {
  box-shadow:
    inset 0 1px 0 rgba(255, 240, 190, 0.9),
    inset 0 -1px 0 rgba(60, 35, 0, 0.6),
    0 3px 4px rgba(0, 0, 0, 0.8),
    0 8px 18px rgba(0, 0, 0, 0.65) !important;
}


/* ===== METALLIC TEXT: SHARED STRUCTURE (ANY ELEMENT) ===== */

body .BJT-chrome,
body .BJT-gold {
  position: relative;
  display: inline-block;
  isolation: isolate;
  letter-spacing: 0.035em;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: 0.026em var(--bjt-rim);
}

body .BJT-chrome::before,
body .BJT-gold::before,
body .BJT-chrome::after,
body .BJT-gold::after {
  content: attr(data-text);
  content: attr(data-text) / "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body .BJT-chrome::before,
body .BJT-gold::before {
  z-index: -1;
  -webkit-text-fill-color: var(--bjt-edge);
  -webkit-text-stroke: 0.068em var(--bjt-edge);
  text-shadow: 0 0.05em 0.05em rgba(0, 0, 0, 0.8);
}

body .BJT-chrome::after,
body .BJT-gold::after {
  z-index: 1;
  -webkit-text-stroke: 0;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ===== CHROME ===== */

body .BJT-chrome {
  --bjt-rim: #ececec;
  --bjt-edge: #050505;
}

body .BJT-chrome::after {
  background-image: linear-gradient(
    180deg,
    #f4f4f4 0%,
    #e2e2e2 14%,
    #bdbdbd 34%,
    #929292 56%,
    #6a6a6a 76%,
    #4a4a4a 92%,
    #404040 100%
  );
  background-size: 100% 1lh;
  background-repeat: repeat-y;
}

/* ===== GOLD FOIL ===== */

body .BJT-gold {
  --bjt-rim: #ffe7a0;
  --bjt-edge: #120a02;
}

body .BJT-gold::after {
  background-color: #c9952e;
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 236, 170, 0.35) 0%,
      rgba(255, 236, 170, 0.15) 20%,
      rgba(0, 0, 0, 0) 45%,
      rgba(70, 38, 0, 0.3) 70%,
      rgba(70, 38, 0, 0.5) 100%
    ),
    url("/wp-content/uploads/gold-foil.jpg");
  background-size: 100% 1lh, cover;
  background-repeat: repeat-y, no-repeat;
  background-position: top left, center;
}

/* ================================================ GLOBAL REVIEW BADGE SETTINGS  === */

/* makes RATING larger */
.hero-header .wpsr-reviews-badge-title {
    font-size:20px !important;
    text-transform:uppercase;
    padding-bottom:5px;
    
}


/* makes the NUMERICAL AVERAGE larger */
.hero-header .wpsr-total-rating {
    font-size:24px !important;
}

/* makes the BASED ON X REVIEWS larger */
.hero-header .wpsr-total-reviews {
    font-size: 18px !important;
}

.hero-header .wpsr-star-container {
    width:28px !important;
    height:28px !important;
    margin-bottom:5px;
}


/* ================================================ FOR HERO SECTION DARK BACKGROUND 2523 === */

/* removes white background from reviews badge */
.wpsr-reviews-badge-2523 .wpsr-default {
    background-color:rgba(0,0,0,1) !important;
    box-shadow: none;
}

/* sets text to white */
.wpsr-reviews-badge-2523 .wpsr-reviews-badge-title,
.wpsr-reviews-badge-2523 .wpsr-total-rating,
.wpsr-reviews-badge-2523 .wpsr-total-reviews {
    color:white !important;
}


/* removes extra padding and margin around badge */
.wpsr-reviews-badge-2523 .wpsr-default {
    padding:22px 20px 24px 20px !important;
}

/* ===== REVIEWS BADGE: GOLD GRADIENT BORDER ===== */

.wpsr-reviews-badge-2523 .wpsr-reviews-badge-btn,
.wpsr-reviews-badge-btn.wpsr-reviews-badge-2523 {
  border-width: 3px !important;
  border-style: solid !important;
  border-radius: 0 !important;
  border-image-source: linear-gradient(
    135deg,
    #7a4e10 0%,
    #f6d97c 16%,
    #c9922e 32%,
    #fff2b8 48%,
    #b07a24 62%,
    #f2cf6a 80%,
    #8a5a14 100%
  ) !important;
  border-image-slice: 1 !important;
}


@keyframes TW-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.6; transform: scale(0.85); }
}

/* this will push a global button that is aligned center to the left if the container has the right class */
.push-global-button-left .call-now {
  float:left;
}

/* makes text wrap nicely at breaks instead of widows */
.balance-text {
text-wrap: balance;
}


/* ADJUST Z-INDEX FOR REVIEW BUBBLES */
.wpsr-reviews-notification-card-wrapper {z-index: 999 !important;}

/* Removes 3D button border. First data is upper border, second is lower border, last is drop shadow */
.fusion-button {
    box-shadow:inset 0 0px 0 rgba(0,0,0,0), 0 .15em 0 var(--button_bevel_color), .1em .2em .3em .15em rgba(0, 0, 0, .4) !important;
}

/* Set Text Selection Color */
::selection {
  background: var(--awb-custom_color_22);
}

/* Button push code for nested columns. Useful for centering phone # and request service buttons in header */
@media screen and (min-width:1025px){
.push-right  div {
    text-align:right !important;
}
.push-left div {
  text-align:left !important;
}
}

/* Useful for cloud section separator whose only position is up */
.flipper {
  transform:rotate(180deg);
}

/* Remove 2 column unordered list first column top margin */
.fusion-text-columns-2 ul {margin-top: 0px;}



/* SECONDARY BUTTON */
.secondary-button {background: var(--awb-custom_color_12) !important;}
.secondary-button .fusion-button-text {color: var(--awb-custom_color_14) !important;}
.secondary-button:hover {background: var(--awb-custom_color_13) !important;}
.secondary-button:hover .fusion-button-text {color: var(--awb-custom_color_15) !important;}
/* LOAD MORE BUTTONS */
.fusion-load-more-button {max-width: 250px; margin: auto; color: #ffffff !important; line-height: .3em;}
.wpsr-ig-load-more, .wpsr-fb-load-more {background-color: #939393 !important; border-radius: 0px !important; padding: 10px 25px !important; font-size: 20px !important; text-transform: uppercase;}

/* ADJUST RELATED POSTS CAROUSEL TITLES */
.fusion-carousel-title-below-image .fusion-carousel-title {font-size: 18px !important; line-height: 1.3em !important;}

/* DROPDOWN MENU - CHANGE COLORS IN THEME OPTIONS  */
.fusion-main-menu .fusion-dropdown-menu .sub-menu li a:hover span {color: var(--awb-custom_color_16);}
.fusion-main-menu .sub-menu .current-menu-item.current_page_item a {color: var(--awb-custom_color_21);}
.fusion-main-menu .fusion-dropdown-menu .sub-menu li a {font-family: "Oswald" !important; font-weight: 500 !important; text-transform: uppercase;}
.fusion-main-menu .sub-menu .current-menu-item.current_page_item a, .fusion-main-menu .fusion-dropdown-menu .sub-menu li.current-menu-item a {color: var(--awb-custom_color_21);}

/* ===== STICKY HEADER: GOLD GRADIENT BOTTOM BORDER ===== */

.fusion-is-sticky .fusion-header::after,
.fusion-header.fusion-sticky-shadow::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 2px;
  z-index: 2;
  pointer-events: none;
  background-image: linear-gradient(
    90deg,
    #7a4e10 0%,
    #f6d97c 16%,
    #c9922e 32%,
    #fff2b8 48%,
    #b07a24 62%,
    #f2cf6a 80%,
    #8a5a14 100%
  );
}

/* ===== STICKY HEADER: EXTRA TOP AND BOTTOM PADDING ===== */

.fusion-is-sticky .fusion-header,
.fusion-header.fusion-sticky-shadow {
  height: auto !important;
}

.fusion-is-sticky .fusion-header .fusion-row,
.fusion-header.fusion-sticky-shadow .fusion-row {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* MENU TEXT & BUTTONS */
.fusion-header .menu-text {text-transform: uppercase;}
.fusion-header .button-large {font-size: 18px;}
.fusion-sticky-shadow .button-large {font-size: 15px;}

/* MOBILE MENU TEXT */
.fusion-mobile-nav-item {margin-bottom: 10px;}

/* BLOG */
.fusion-footer-widget-area .lwptoc {display: none !important;}
.fusion-carousel-meta {display: none !important;}
.fusion-related-posts-title-link {font-size: 20px !important; line-height: 21px !important;}
h4.fusion-carousel-title {font-size: 20px !important; line-height: 1.3em !important;}

/* TEXT */
.white-text h1, .white-text h2, .white-text h3, .white-text h4, .white-text h5, .white-text h6 {color: #ffffff !important; text-shadow: 2px 2px 3px #000000;}
.white-text, .white-text .fusion-post-content-container {color: #ffffff !important;}
.shadow {text-shadow: 2px 2px 3px #000000;}

/* REVIEWS  */
.wpsr-reviews-notification-card .wpsr-notification-content-wrapper .wpsr-review-header .reviewer-name {text-transform: capitalize;}
.wpsr-review-template .wpsr-review-date, .wpsr-review-template .wpsr-review-content p {color: var(--awb-text-color) !important;}
.wpsr_add_read_more .wpsr_read_less, .wpsr_add_read_more .wpsr_read_more {text-decoration-color: var(--link_color) !important; color: var(--link_color) !important;}

/* ADJUST RESPONSIVE TOP HEADER BAR */
@media only screen and (max-width: 1024px) {.fusion-contact-info {padding: 10px 30px 10px 30px !important;} .fusion-social-links-header {display: none;}}
@media only screen and (max-width: 800px) {.fusion-contact-info {padding-left: 3px !important; padding-right: 3px !important;} .fusion-header-separator, .header-email {display:none;}}
@media only screen and (max-width: 375px) {.fusion-contact-info {display:none;}}

/* TITLE BAR */
.fusion-page-title-bar {background-size: cover !important;}

/* FIND YOUR LOCATION FORM */
@media only screen and (min-width: 1024px) {
.findme-left {grid-column: span 6 !important;  -ms-grid-column-span: 6 !important;}
.findme-right-column {grid-column: span 6 !important;  -ms-grid-column-span: 6 !important;} 
.find-me-form-container .gform_footer {float: right; width: 50%;}
.find-me-form-container .gform_footer input[type=submit] {width: 90%;}
}
.findme-right-column {padding-top: 35px;}
.findme-right-column .find-me-field label {font-size: 17px !important; margin-bottom: 3px !important;}
.findme-right-column #form-secure-message {margin-top: 10px; font-size: 13px !important;}
#find-me-button-desc {font-size: 16px; line-height: 1.5em; text-align: center; display: block; margin-bottom: 20px;}
.find-me-field {margin-bottom: 16px;}

/* FIND YOUR LOCATION FORM LOCATOR BUTTON */
.gform_wrapper .gfgeo-locator-button, .find-me-button .gfgeo-locator-button {font-weight: 600; font-family: inherit; font-size: inherit; text-transform: uppercase; min-width: 300px; cursor: pointer; margin: auto; padding: 7px 20px !important; background: #000000; color: #FFFFFF; border: 1px #ffffff solid; display: block;}
.gform_wrapper .gfgeo-locator-button:hover, .find-me-button .gfgeo-locator-button:hover {background: #777777;}



/* FOOTER PAYMENT ICONS */
#footer-cc-icons {display: flex; justify-content: center; align-items: center; flex-wrap: wrap; margin: 0 auto;}
#footer-cc-icons .cc-icon-img {max-width: 60px; height: auto; margin: 2px; border-radius: 3px;}
@media only screen and (max-width: 600px) {#footer-cc-icons .cc-icon-img {max-width: 40px;}}

/* FIX FOOTER SOCIAL ICON LINE HEIGHT */
.fusion-social-network-icon {line-height:30px !important;}

/* GFORMS */
.gsection_title {margin-bottom: 7px;}
.gsection_description {padding-bottom: 5px !important; padding-top: 5px !important; line-height: 1.5em !important;}
#form-secure-message {font-size: 14px !important; line-height: 1.2em; max-width: 700px; margin: auto; text-align: center;} #form-secure-message a {color: inherit !important; text-decoration: underline;}
.gform_wrapper .gfield_required {font-size: inherit;}
h2.gsection_title, h3.gsection_title {font-size: 1.4em !important;}
.gform_wrapper .gfield select {font-size: inherit !important;}
.gform_wrapper .gform_button, .gform_wrapper .gform_page_footer input[type=button] {padding: 10px 60px !important; line-height: inherit !important; font-size: inherit !important;}
.gform_next_button, .gform_prev_button {-moz-appearance: none; -webkit-appearance: none;}
.partial_entry_warning, .gform_required_legend {display: none;}
.gfield_label {font-family: inherit; font-weight: 500 !important;}
body .gform_wrapper .gform_heading .gform_description {font-weight: 500; text-align: center;}
body .gform_wrapper .gform_footer input[type=submit] {min-width: 60%; margin: auto; display: block;}

/* GFORM ERRORS */
.gform_wrapper.gravity-theme .gform_validation_errors>ol a {font-size: 16px !important; color: #df002d !important;}
.gform_wrapper.gravity-theme .gform_validation_errors>ol li {line-height: 1.3em !important;}
.gform_wrapper .gfield_error .gfield_validation_message, .gform_wrapper .gform_validation_errors {text-align: left !important;}
.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message {padding-top: 6px !important; padding-bottom: 6px !important; font-size: 17px !important; color: #df002d !important; background: #fff9f9 !important;}
.gform_wrapper.gravity-theme .gform_validation_errors {padding-inline-start: 16px !important; color: #df002d !important; background: #fff9f9 !important;}
.gform_wrapper.gravity-theme .gform_validation_errors>h2 .gform-icon {font-size: 20px; line-height: 28px; margin-right: 5px !important;}


/* STYLE POWERED BY TW */
#footer-copyright {line-height: 50px !important;}
@media only screen and (max-width: 500px){#footer {min-height: 130px}}
@media only screen and (min-width: 1024px){#footer-copyright {float: left;} #tw {float: right;}}
@media only screen and (min-width: 1024px){.fusion-copyright-content {width: 80%; margin: auto;}}
.tw-copyright-left {text-align: left;}
.tw-copyright-right {text-align: right;}
@media screen and (max-width: 1024px) {.tw-copyright-left, .tw-copyright-right {text-align: center !important;}}

/* ===== FOOTER MENU: LEFT ALIGN WRAPPED ITEMS (DESKTOP ONLY) ===== */

@media (min-width: 1024px) {
  .fusion-footer .menu-item a span,
  .fusion-footer .menu-item span {
    text-align: left !important;
  }
}