/*
Theme Name: X
Theme URI: http://www.wpbeaverbuilder.com
Version: 13
Description: X BB Child Theme.
Author: NetShapers, Inc.
Author URI: http://www.netshapers.com
template: bb-theme
*/


/* VARIABLE DEFINITIONS - Example Usage: var(--transition-time) */
/* Define Transition Duration for All Link Fades */
:root {
  --transition-time: 0.3s;
}

.col-count-2{
	
}

/* Prevent Hiding Floating Tab  */
[data-wpr-lazyrender].fl-builder-content-155 {
    content-visibility: visible;
}
.menu-cta a {
    background: #009267; /* Green */
    border-radius: 100px;
    padding: 15px 20px !important;
}
.menu-cta a span{
	    font-family: "Montserrat", sans-serif;
    font-weight: 700;
	font-size: 16px;
	color: #fff !important;
}
.menu-cta a:hover {
    background: #428bca; /* Blue */
}
.menu-cta a:hover span{
    color: #fff !important;
}

.menu-open a:hover span {
    color: #428bca !important;
}
.menu-open span {
    color: #000 !important;
}


footer .menu-cta{
	display: none;
}

.header-location br, .footer-location br{
	display: none;
}

.header-location ul.uabb-info-list-wrapper.uabb-info-list-top {
    display: flex;
    justify-content: flex-end;
}

.info-list-inline .uabb-info-list-top .uabb-info-list-icon, .info-list-inline .uabb-info-list-content.uabb-info-list-top {
    display: inline-block;
    margin: 7px !important;
}
.info-list-inline ul.uabb-info-list-wrapper.uabb-info-list-top li {
    width: fit-content !important;
}

.two-col-list ul{
	column-count: 2;
}

/* z index module */
.cstm-z-index{
	z-index: 9;
	position: relative;
}

/* Blog Archive image equal height */
.blog-archive .uabb-post-thumbnail img {
    height: 250px;
    object-fit: cover;
    object-position: center;
}

/* Post Navigation */
.nav-next {
    text-align: left !important;
}
.nav-previous{
	text-align: right !important;
}


/* This css makes the module position Absolute */
.module-absolute{
	position: absolute;
}
.module-absolute.right{
	right: 0; /* right align the module */
}
.fl-col-content:has(>.module-absolute) {
    position: relative; /* this will make all the module absolute child inside the column */
}


/* This will make all interactive box title position equal */
.uabb-new-ib-title.uabb-simplify {
    position: absolute;
    bottom: 70px;
      transition: all 0.3s ease-in-out;
}
.uabb-ib2-hover h3.uabb-new-ib-title.uabb-simplify {
    position: relative;
    bottom: auto;
	transition: all 0.3s ease-in-out;
}


/* Tablet */
@media only screen and (max-width: 768px) {
	.area-of-practice br{
		display: none;
	}
	.two-col-list ul{
		column-count: 1;
	}
	.center-list ul li, .two-col-list ul li {
		margin: auto;
	}
	
}

/* Mobile  */
@media only screen and (max-width: 480px) {
	.header-location br, .footer-location br{
	display: flex !important;
}
	
}

.header-info-border .uabb-icon-wrap i {
    border: 1px solid #fff;
}

.header-info .uabb-info-list-icon {
    border: 1px solid;
    border-radius: 100px;
    padding: 10px;
}

/* Slanted Edge Style - Header Layout 4 */
.header-button-slanted-edge a{
	position: relative;
}
.header-button-slanted-edge a:after {
    content: "";
    background-color: #000; /* Change if needed */
    display: block;
    height: 104%;
    position: absolute;
    top: -1px;
    left: -18px;
    width: 30px;
    transform: skewX(335deg);
}
.slanted-edge .fl-col-group:before {
    content: "";
    background-color: #000; /* Change if needed */
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: -13px;
    width: 30px;
    transform: skewX(335deg);
}
.slanted-edge .fl-col-group:after {
        content: "";
    background-color: #dc2126; /* Change if needed */
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    right: -13px;
    width: 30px;
    transform: skewX(335deg);
}

/* MENU HOVER COLOR */
/* .fl-menu a:hover {
	color: #6eb035 !important;
}
*/

/* REMOVE HOVER COLOR FROM CURRENT MENU ITEMS - MUST SET OVERRIDE COLOR HERE */
/*
.greymenu .menu > li > .fl-has-submenu-container.focus > a, 
.greymenu .menu > li.current-menu-item > a:not(:hover), 
.greymenu .menu > li.current-menu-item > .fl-has-submenu-container > a:not(:hover),
.greymenu .menu .sub-menu > li > .fl-has-submenu-container.focus > a, 
.greymenu .menu .sub-menu > li.current-menu-item > a:not(:hover), 
.greymenu .menu .sub-menu > li.current-menu-item > .fl-has-submenu-container > a:not(:hover) {
	color: #333333 !important;
}

.whitemenu .menu > li > .fl-has-submenu-container.focus > a, 
.whitemenu .menu > li.current-menu-item > a:not(:hover), 
.whitemenu .menu > li.current-menu-item > .fl-has-submenu-container > a:not(:hover),
.whitemenu .menu .sub-menu > li > .fl-has-submenu-container.focus > a, 
.whitemenu .menu .sub-menu > li.current-menu-item > a:not(:hover), 
.whitemenu .menu .sub-menu > li.current-menu-item > .fl-has-submenu-container > a:not(:hover) {
	color: #FFFFFF !important;
}
*/

/* REPLACE HEADER SHRINK LOGO */
/* In BB, create two images, with IDs logo-big and logo-shrink */
/*
#logo-big img {display: inherit !important;}
#logo-shrink .fl-photo {display: none !important;}
.fl-theme-builder-header-shrink #logo-big img {display: none !important;}
.fl-theme-builder-header-shrink #logo-shrink .fl-photo {
	display: inherit !important;
	padding-top: 0px;  
}
*/


/* Fix for header shadow not showing until scroll */
.fl-row.fl-row-full-width.fl-row-bg-color.shadow-fix {
	z-index: 1;
	position: sticky;
}

/* SHADOW UNDER SOLID HEADER */
.header-shadow {
	-webkit-box-shadow: 0 0 5px 3px rgba(51, 51, 51, 0.33) !important;
	-moz-box-shadow: 0 0 5px 3px rgba(51, 51, 51, 0.33) !important;
	box-shadow: 0 0 5px 3px rgba(51, 51, 51, 0.33) !important;
}

/* HEADER SHRINK SIZE */
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink .fl-row-content-wrap {
	padding-top: 0px;
	padding-bottom: 0px;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink img {
	max-height: 70px !important;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink .header-phone-number {
	display:none;
}

/* REMOVE TOP BAR ON SCROLL */
/* Give the top bar a class of "topbar" */
.topbar {
	-webkit-transition: all 0.4s ease-in-out, background-position 1ms;
	-moz-transition: all 0.4s ease-in-out, background-position 1ms;
	transition: all 0.4s ease-in-out, background-position 1ms;
	max-height:200px;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink .topbar {
	max-height:0px;
}


/* CTA FLOATING TAB */
body:not(.fl-builder-edit) .ctatabuabb .uabb-modal-action-wrap {
	position: fixed;
	width: 250px;
	z-index: 100;
	bottom: 150px;
	right: -105px;
	transform: rotate(90deg);
}
.uabb-module-content.uabb-creative-button-wrap a {
	border-style: none !important;
}


/* CTA BUTTON IN ROW */
.button-cta a { background-color: rgba(0, 0, 0, 0.15) !important; }
.button-cta a:hover { background-color: rgba(0, 0, 0, 0.35) !important; }


/* --- GRAVITY FORMS  --- */

/*  Remove gform required label */
.gform_required_legend {
    display: none;
}

/* Validation message styling */
.gfield_description.instruction.validation_message, .gfield_description.validation_message.gfield_validation_message {
    border: 0px !important;
    background: transparent !important;
    padding: 0 !important;
    margin-bottom: 5px !important;
    margin-top: 0px !important;
    font-size: 13px !important;
}
.gform_validation_errors {
    border: 0px !important;
    padding-top: 0px !important;
    padding-bottom: 10px !important;
    text-align: center;
    box-shadow: none !important;
}
.gform_wrapper.gravity-theme .gform_validation_errors{
	background: transparent !important;
}
.pp-gf-content .gform_wrapper .gfield.gfield_error {
    background-color: transparent !important;
}
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning, .gform_wrapper div.gfield.gfield_error, .gform_wrapper div.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    background-color: transparent;
    border-top: none;
    border-bottom: none;
}
.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message {
    background: transparent;
    border: none;
}
/* --- End Gravity Forms --- */




/* ----------------------------------------------------------------------- */
/* TRANSPARENT IMAGE BACKGROUND OVERLAYS */
/* For the contents to be over the overlay, In BB set the row background photo and an overlay color, even if just 1% black, and give the row this class */
.bg-overlay-cta {
    position: relative;
}
.bg-overlay-cta::after {
	position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
	background-image: url('/wp-content/uploads/bg-overlay-diagonal-gradient-stripes-8px.png');
	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
	background-size: auto;
	opacity: 15%;
}
.bg-overlay-footer {
    position: relative;
}
.bg-overlay-footer::after {
	position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
	background-image: url('/wp-content/uploads/bg-overlay-pattern-20.png');
	background-repeat: repeat;
	background-position: center center;
	background-attachment: scroll;
	background-size: auto;
	opacity: 15%;
}
.bg-overlay-1 {
    position: relative;
}
.bg-overlay-1::after {
	position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
	background-image: url('/wp-content/uploads/bg-overlay-diagonal-noise.png');
	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
	background-size: auto;
	opacity: 40%;
}
.bg-overlay-2 {
    position: relative;
}
.bg-overlay-2 .fl-row-content-wrap::after {
	z-index: 1; /* Make the gradient on top of the overlay image */
}
.bg-overlay-2::after {
	position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
	background-image: url('/wp-content/uploads/bg-overlay-3px-tile.png');
	background-repeat: repeat;
	background-position: center center;
	background-attachment: scroll;
	background-size: auto;
	opacity: 40%;
}


/* GLOBAL STYLING CLASSES ------------------------------------------------ */

.shadow, .shadow span { text-shadow: 0 0 20px rgba(0, 0, 0, 0.45); }
.shadow-and-dropshadow {
        text-shadow: 0 0 20px rgba(0, 0, 0, 0.45),2px 2px 0px rgba(0, 0, 0, 0.35);
}
.shadow-and-dropshadow .fl-separator {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.45),2px 2px 0px rgba(0, 0, 0, 0.35);
}
.dropshadow {
        text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.85);
}
.outline-and-dropshadow {
	    text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.85),
			1px 1px 0px rgba(0, 0, 0, 0.85),
			1px -1px 0px rgba(0, 0, 0, 0.85),
			-1px 1px 0px rgba(0, 0, 0, 0.85),
			-1px -1px 0px rgba(0, 0, 0, 0.85);
}
.glow, .glow span { text-shadow: 0 0 20px rgba(255, 255, 255, 0.65); }
.glow-and-dropshadow, .glow-and-dropshadow span { 
	text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.75), 0 0 30px rgba(255, 255, 255, 0.95); 
}
.imgshadow img {        
  -webkit-filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.45));
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.45));
}
.inner-shadow, .inner-shadow .fl-row-content-wrap { box-shadow: 0 0 40px rgba(0, 0, 0, 0.5) 
inset, 0 0 20px rgba(0, 0, 0, 0.5) inset;}
.no-hyphens { word-wrap:normal; -moz-hyphens:none; }
.uppercase, .uppercase span { text-transform: uppercase; }
.gradient-blue-purple {
        background-image: -webkit-linear-gradient(135deg, #461073 0%, #007BB1 100%);
        background-image: linear-gradient(-45deg, #461073 0%, #007BB1 100%);
}
.row-fade, row-fade .fl-row-content-wrap { box-shadow: inset 0 200px 300px -200px rgba(0, 0, 
0, 0.4); }
.gradient-text {
	background: linear-gradient(to top, #001c49 40%, #068cd1 70%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.background-text {
  background: url(https://images.unsplash.com/photo-1515266591878-f93e32bc5937) 25% 30% no-repeat;
  background-size: cover;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.tilt {
	transform: rotate(-3deg);
}
.justify {
	text-align:justify;
}
.ec {
	opacity: 90%;
}


/* SMOOTH HOVERS */

/* Make All Standard Anchor Tags Smooth */
a, a span {
        transition-property: all;
        transition-duration: var(--transition-time);
        transition-timing-function: ease-in-out;
        transition-delay: 0s;
}

/* Make link hovers in icon groups smooth */
.fl-icon-group a, .fl-icon-group i, .fl-icon-group i::before  {
	transition-property: all !important;
	transition-duration: var(--transition-time) !important;
	transition-timing-function: ease-in-out !important;
	transition-delay: 0s !important;
}

/* Make link hovers in UABB Advanced Icons smooth */
a.adv-icon-link .uabb-icon i::before {
	transition-property: all !important;
	transition-duration: var(--transition-time) !important;
	transition-timing-function: ease-in-out !important;
	transition-delay: 0s !important;
}

/* Make link hovers on BB Icons with links smooth */
.fl-icon-wrap a i::before {
	transition-property: all !important;
	transition-duration: var(--transition-time) !important;
	transition-timing-function: ease-in-out !important;
	transition-delay: 0s !important;
}


/* Add an inset outline on a row */
.inset-outline .fl-row-content {
	outline: solid 2px rgba(34,34,34,0.2);
	outline-offset: -35px;
}

/* Make an image module be overlapped by something else */
.img-overlap .fl-module-content {
  position: relative;
  z-index: -1; /* Can be changed to a higher value depending on the next row's content */
}


/* Zoom Column Background on hover - .zoomcolumn */
.zoomcolumn .fl-col-content {
   display: inline-block;
   -webkit-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
   background-size: auto 100%;
   background-position: center;
   background-repeat: no-repeat;
   background-color: gray;
   position: relative;
}
.zoomcolumn .fl-col-content:hover {
   background-size: auto 110%;
}
@media only screen and (max-width: 740px) {
  .zoomcolumn .fl-col-content, .zoomcolumn .fl-col-content:hover {
   background-size: cover;
  }
}


/* VIGNETTE FOR BB IMAGE MODULE - Adjust box-shadow and border-radius */
.vignette .fl-photo-content::after {
	box-shadow: inset 0 0 50px 15px rgba(0, 0, 0, 0.25);
	border-radius: 3px;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* UABB Gallery - Crop thumbnails to consistent height */
/* Give the module a class of .gallery-crop  and set the height here */
.gallery-crop img.uabb-gallery-img {
	height: 200px !important;
	object-fit: cover;
}

/* Zoom Column Background on hover - .zoomcolumn */
.zoomcolumn .fl-col-content {
   display: inline-block;
   -webkit-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
   background-size: auto 100%;
   background-position: center;
   background-repeat: no-repeat;
   background-color: gray;
   position: relative;
}
.zoomcolumn .fl-col-content:hover {
   background-size: auto 110%;
}
@media only screen and (max-width: 740px) {
  .zoomcolumn .fl-col-content, .zoomcolumn .fl-col-content:hover {
   background-size: cover;
  }
}


/* LET BACKGROUND SHOW THROUGH */
.fl-page-content { background-color: transparent; }

/* REMOVE LINES FROM CLICKED LINKS */
a:focus { outline: none; }


/* MOBILE -------------------------------------------------------------- */
@media screen and (max-width: 768px) {

/* CALL NOW */
.call-now-row {
	position: fixed;
	bottom: 0;
	z-index: 999;
	width:100%;
}

}

/* GENERIC STYLES ----------------------------------------------------- */

/* ROUNDED CORNERS FOR CELL BACKGROUNDS AND IMAGES */
.ss-rounded-corners img, .ss-rounded-corners > .fl-col-content {
    border-radius: 10px;
}

/* BEAVER BUILDER PHOTO MODULE EFFECTS */
/* Zoom in on hover - .hover-zoom-in */
.hover-zoom-in .fl-photo-content {
  overflow: hidden;
}
.hover-zoom-in .fl-photo-content .fl-photo-img {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  will-change: transform;
}
.hover-zoom-in .fl-photo-content .fl-photo-img:hover {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-filter: brightness(0.7);
}

/*  Zoom out on hover - .hover-zoom-out  */
.hover-zoom-out .fl-photo-content {
  overflow: hidden;
}
.hover-zoom-out .fl-photo-content .fl-photo-img {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  will-change: transform;
}
.hover-zoom-out .fl-photo-content .fl-photo-img:hover {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  -webkit-transform: scale(1);
          transform: scale(1);
}

/* Unblur on hover - .hover-unblur */
.hover-unblur .fl-photo-content {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
}
.hover-unblur .fl-photo-content .fl-photo-img {
  -webkit-filter: blur(3px);
          filter: blur(3px);
  -webkit-transition: .3s ease-in-out;
          transition: .3s ease-in-out;
  will-change: filter;
}
.hover-unblur .fl-photo-content .fl-photo-img:hover {
  -webkit-filter: blur(0);
          filter: blur(0);
}

/* Grayscale To Color .gray-scale-img */
.gray-scale-img .fl-photo-content {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
}
.gray-scale-img .fl-photo-content .fl-photo-img {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  -webkit-transition: .3s ease-in-out;
          transition: .3s ease-in-out;
  will-change: filter;
}
.gray-scale-img .fl-photo-content .fl-photo-img:hover {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
}


/* Hover Opacity - Change image opacity on hover */
.simple-opacity .fl-photo-content A:hover { opacity: 0.88; }

/* Hover Effect Darken - Darken image and display an icon */
.hover-darken A         { color: #FFFFFF; }
.hover-darken A:hover   { text-decoration: none; }
.hover-darken .fl-photo-content A:hover::before
{
 background-color: #000;
 background-color: rgba(0, 0, 0, 0.5);
 -webkit-transition: 0.4s ease-in-out;
 -moz-transition: 0.4s ease-in-out;
 -o-transition: 0.4s ease-in-out;
 transition: 0.4s ease-in-out;
}

/* this adds the icon you could remove.
Use a unicode if your theme does have the FontAwesome library loaded */
.hover-darken .fl-photo-content A:hover::before
{
 font-family: FontAwesome;
 content: "\f00e";
 color: #FFFFFF;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 30px;
}
.hover-darken .fl-photo-content A::before
{
 content: "";
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 -webkit-transition: 0.4s ease-in-out;
 -moz-transition: 0.4s ease-in-out;
 -o-transition: 0.4s ease-in-out;
 transition: 0.4s ease-in-out;
 pointer-events: all;
}


/* Hover Effect Center Caption - Changes the background and centers the caption */
.hover-center-caption .fl-photo-caption-hover
{
 background-color: #FFC619;
 height: 100%;
 font-weight: bold;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 16px;
 pointer-events: none;
 white-space: normal; /*if only one line remove this*/
}
.hover-center-caption .fl-photo-caption A
{
 color: #000000;
 text-decoration: underline;
}


/* REPLACE BULLETS WITH FONTICONS */
.fl-content .icon-bullets-one UL
{
list-style: none;
padding:0;
margin:0 0 0 28px;
text-indent:-28px;
line-height: 2.4;
}
.fl-content .icon-bullets-one LI::before
{
font-family:FontAwesome;
content: "\f00c ";
margin-right: 8px;
color:lightgreen;
font-size: 20px;
}


/************* RESPONSIVE STYLING ********************/

/* Make a row's overlay whiter for small screens - .row-mobile-bg-overlay-white */
@media screen and (max-width: 768px) {
  .row-mobile-bg-overlay-whiter .fl-row-content-wrap::after {
	background-color: rgba(255,255,255,0.8) !important;
  }
}


/************* FIXES ********************/

/* Remove the bottom border from the header
// if you do not add this there will be a faint line under your header */
header .fl-page-header-wrap { border-bottom: 0; }
/* body {  background-color: transparent; } */
/* FOR GREATER THAN THE MEDIUM DEVICE BREAKPOINT */
@media screen and (min-width: 993px) {
        /* ROW STYLING */
        .top-banner .fl-row-content-wrap{
            margin-top: -115px; 
            padding-top: 200px; 
            padding-bottom: 80px;
        }
}


/* Fix to display header shadow if the next row has a background image */
body:not(.fl-builder-edit) header .fl-row-content-wrap{ 
    z-index: 4;
}
