/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/

/* Add your custom styles here... */ 

/* Set site container width */
body {
max-width: 1920px;
margin-right: auto;
margin-left: auto;
background: #ddd;
}

/* Sets the header to 1920px on scroll */
.fl-builder-content[data-type="header"].fl-theme-builder-header-sticky {
  max-width: 1920px;
}

p {
    margin-bottom: 20px;
}

p.vwd-remove-p-margin {
	margin-bottom: 0px;
}

span.vwd-colored-text {
	color:#125866;
	display: block;
}

span.vwd-colored-text-no-break {
	color:#125866;
	font-weight: 700;
}

span.vwd-map-icon:before {
    content: url("https://medina.venturiwebdesign.com/wp-content/uploads/2023/07/map-icon-2.png");
    margin-right: 6px;
    display: inline-block;

}

span.vwd-five-stars:after {
	content: url("https://medina.venturiwebdesign.com/wp-content/uploads/2025/05/five-stars.png");
	margin-left: 6px;
	display: inline-block;
	position: relative;
	top: 1px;
}


.vwd-hm-header-subtext p {
    max-width: 600px;
}

.fl-accordion-button:hover {
    background: #90c5d1;
}
.fl-accordion-button a:hover {
	  text-decoration: none;
	  color: #333;
}

span.vwd-down-arrow:after {
    content: url("https://medina.venturiwebdesign.com/wp-content/uploads/2023/07/icon-down-arrow-1.png");
    margin-left: 9px;
    display: inline-block;
    position: absolute;
    margin-top: 14px;
}

.vwd-facebook-icon path{fill:white}

.vwd-lightbulb-icon path{stroke:#001B2E}

.vwd-puzzle-icon path{fill:#001B2E}

.vwd-time-icon path{fill:#001B2E}

.vwd-message-icon path{fill:white}
.vwd-message-icon .fl-photo-content {
    padding: 35px;
    background: #0F4551;
    border-radius: 50%;
    aspect-ratio:1;
    width: fit-content;
}

.vwd-message-icon .fl-photo-content {
    box-shadow: 25px 20px 3px -8px #0000004f;
}

.vwd-arrow-right-icon path{fill:white}

.vwd-arrow-right-icon .fl-photo-content {
    padding: 25px;
    background: #0F4553;
    border-radius: 50%;
    aspect-ratio:1;
    width: fit-content;
}

.fl-builder-content .pp-gf-content .gform_wrapper .gfield_required {
    display: none;
}

.vwd-list-numbers .pp-list-item-icon {
 Color: #0F4553;
 border-bottom: 2px solid #0F4553;
}

.vwd-list-numbers .pp-list-item-icon:after {
 content:"."
}

/* Remove current page highlight for home page */
.fl-node-ekbdj7qv32rs .menu > li.current-menu-item > a {
    background-color: transparent;
    color: #fff;
}

/* Align hamburger icon right */
.fl-node-ekbdj7qv32rs .fl-menu-mobile-toggle {
        float: right;
        margin-right: 0;
        padding-right: 0;
    }

/* Background color for pretext */
span.vwd-highlight {		background: rgba(144,197,209,0.24);
	  padding: 2px 6px;
	border-radius: 4px
}

span.vwd-highlight-drk-bg {
	background: #f8f8f8;
	padding: 2px 6px;
	border-radius: 4px
}

.vwd-testimonial-icon 
path{fill:#001B2D}

.vwd-testimonial-icon .fl-photo-content {
    padding: 45px;
    background: #ffff;
    border-radius: 50%;
    aspect-ratio:1;
    width: fit-content;
}


.vwd-testimonial-icon.vwd-gray-circle .fl-photo-content {
    padding: 45px;
    background: #f8f8f8;
    border-radius: 50%;
    aspect-ratio:1;
    width: fit-content;
}

.vwd-sw-popular-posts .swp_popular_post a.swp_popularity {
    font-size: 14px !important;
}

/* Remove padding on Gravity Form on mobile contact page */
.fl-node-4rjbtzck9nmo .pp-gf-content {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

/* Remove padding on Gravity Form on mobile contact page */
.fl-builder-content-3634.fl-builder-module-template {
    padding: 0px;
}

.vwd-nav-bullets ul {
      padding-left: 15px;
}

.vwd-bullet-spacing li {
    padding-bottom: 12px;
}

/********
#mega-legal-services {
    margin-right: 24%;
}
********/

blockquote {
	border-left: 5px solid #0e4554;
	background: rgba(144,197,209,0.24);
}

/* Divorce solutions page */
.vwd-info-list-styles .pp-list-item-content {
    padding: 30px !important;
    min-height: 540px;
}

@media (max-width: 819px) {
	.vwd-info-list-styles .pp-list-item-content {
    height: auto;
	}
}

/*****
.fl-module.vwd-tab-module-image img {
	border-bottom: 5px solid #999;
	border-right: 5px solid #999;
}*****/

/* Optimization setting in Imagify changing the img tags to picture tags. The code for the photo module only targets image tags.This code corrects this for BB image module and Powerpack modules*/
picture.fl-photo-img,
picture.pp-photo-img {
    display: block;
    overflow: hidden;
}


@media (max-width:1540px) {
	.vwd-heading-bg {
	background: rgba(248,248,248,0.81);
	max-width: 620px;
		padding-top:20px;
		margin-top: 180px;
	margin-left: 20px;
	margin-right: 20px;
	}
}



/* Current page marker arrow connecting mega menu to trigger item 
ul.menu .has-mega-menu.menu-item.menu-item-type-post_type.menu-item-object-page {position:relative;}
ul.menu .has-mega-menu.menu-item.menu-item-type-post_type.menu-item-object-page:hover:after {content:"";
  width: 0; 
  height: 0; 
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-bottom: 12px solid white;
  position:absolute; left:10%; bottom:-2px;
}*/



/* Remove mega menu top space when user is logged in to Wordpress 
.vwd-mega-container-margin { 
	margin-top: 0px; 
}
body.logged-in .vwd-mega-container-margin {
	margin-top: -30px;
 }
*/

/********
@media (max-width: 1920px) and (min-width: 1179px) {
	.vwd-mega-container-margin {
		margin-left: 32%;
	}
}

@media (min-width: 1920px) {
	.vwd-mega-container-margin {
		margin-left: 39%;
	}
}
********/

/* style links with underline in text modules */
.fl-module-rich-text a:link {
	text-decoration: underline;
}

@media (max-width: 768px) {
  .vwd-rotate-90 svg {
    transform: rotate(90deg);
	}
}


span.h1-subtext { /* Smaller text under main topic */
	margin-top: 5px;
	font-size: 80%;
	display: block;
	line-height: 1.2;
}

span.h1-geo-text { 
    margin-top: 5px;
	font-size: 60%;
    font-weight: 400;
    line-height: 1.4; /* Apply the smaller line height */
    display: inline-block; /* Allows the span to control its own spacing */
    vertical-align: baseline; /* Adjust alignment if necessary */
}


/* Current page marker arrow connecting wordpress menu to trigger item 
ul.menu .menu-item-has-children {position:relative;}
ul.menu .menu-item-has-children:hover:after {content:"";
  width: 0; 
  height: 0; 
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-bottom: 12px solid white;
  position:absolute; left:40%; bottom:-2px;
}
*/




/* Reset positioning */
ul.menu .menu-item-has-children {position: relative !important;}

/* Standard arrow for all dropdown menus (base style) */
ul.menu .menu-item-has-children:hover:after {
  content: "" !important;
  width: 0 !important; 
  height: 0 !important; 
  border-left: 12px solid transparent !important;
  border-right: 12px solid transparent !important;
  border-bottom: 12px solid white !important;
  position: absolute !important; 
  left: 40% !important; 
  bottom: -2px !important;
  z-index: 999 !important;
}

/* Fix the mega menu position - keep your existing mega menu CSS, but modify slightly */
.mega-menu > .sub-menu {
  /* Remove your right margin and let it center naturally */
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  left: 0 !important;
  right: 0 !important;
  /* Add a transform to fine-tune position if needed */
  transform: translateX(-78%) !important; /* Adjust this value as needed */
}

/* Adjust the arrow to match */
#menu-main-nav > li#menu-item-4100.mega-menu:hover:after {
  /* Match the transform of the mega menu */
  left: 50% !important;
  transform: translateX(-20%) !important; /* Same value as the mega menu */
}


.mega-menu > .sub-menu { /* shift mega menu right, under practice areas tab */
  max-width: 800px !important;
  margin-right: 150px;
  margin-left: auto;
}

@media (max-width: 1024px) { /* center mega menu on smaller devices */
  .mega-menu > .sub-menu {
    margin-right: auto;
    margin-left: auto;
  }
}

li#menu-item-5405.vwd-mega-menu-category .fl-has-submenu-container a:hover,
li#menu-item-5412.vwd-mega-menu-category .fl-has-submenu-container a:hover { /* mega menu link hover colors */
    color: #0f4551;
    background: #90c5d1;
}

#menu-item-5405 .sub-menu,
#menu-item-5412 .sub-menu { /* mega menu category border */
	border: 0px;
}

#menu-main-nav ul.sub-menu li a { /* mega menu link padding */
	padding: 8px;
}

#menu-item-5405,
#menu-item-5412 {
	padding-top: 20px;
	padding-bottom: 20px;
}

#menu-item-5405  {
	margin-left: 15px;
}

#menu-item-5412  {
	margin-left: 10px;
}

#menu-item-5405 li  {
    list-style-type: square;
	color: #0F4553;
	margin-left: 30px;	
	font-weight: 400;
}

#menu-item-5412 li  {
    list-style-type: square;
	color: #0F4553;
	margin-left: 30px;	
	font-weight: 400;
}

#menu-item-5405 li {
	border-right: 1px #0F4553 dotted;
}

/* Media query with the same specificity and important declarations */
@media (max-width: 1024px) {
  /* Center the mega menu */
    .mega-menu > .sub-menu {
    margin-right: auto !important;
    margin-left: auto !important;
    transform: translateX(-58%) !important;
  }
}

/* Hightlight Gravity Form on hover */
.vwd-form-highlight .pp-gf-content:hover {
    background-color: #ffff0024;
}

/* Contact page content area in tabs */
#vwd-contact-tabs .fl-tabs-panel-content {
        padding: 0 !important;
    }

/* Post author container */
@media screen and (max-width: 767px) {
  /* Stack the image and text vertically */
  .fl-module-fl-author-bio .fl-module-content {
    display: flex;
    flex-direction: column;
    text-align: left; /* Keep text aligned left */
  }

 /* Left-align and scale the author image */
  .fl-module-fl-author-bio .fl-author-bio-thumb img {
    display: block;
    width: 100% !important;     /* Force full width */
    height: auto !important;    /* Maintain aspect ratio */
    max-width: none;            /* Remove any Beaver image size cap */
    margin: 0 0 15px 0;         /* 15px space below image only */
  }

/* Ensure text spans full width */
  .fl-module-fl-author-bio .fl-author-bio-content {
    padding: 0 1rem;
    width: 100%;
  }
}

/* 
  Adjust top padding for the archive header row in landscape view 
  between 678px and 768px screen widths to prevent overlap 
  between the background lamp image and the text content.
*/
@media screen and (min-width: 678px) and (max-width: 768px) and (orientation: landscape) {

/* Target the content wrapper inside the row with the lamp background */
  .fl-row.vwd-archive-header-row-image .fl-row-content-wrap {
    padding-top: 140px; /* Push text down to clear the lamp fixture */
  }
}

/* Set archives to take up full width of container */
@media (max-width: 768px) {
    .fl-post-feed-post.fl-post-feed-image-beside {
		max-width: 100%;
	}

/* Remove current page marker on mobile menu */
@media (max-width: 768px) {
	ul.menu .menu-item-has-children:hover:after {
		display:none;
	}
}
	
/* Adjust font size inside the Usercentrics popup */
#usercentrics-root, 
#usercentrics-root * {
  font-size: 14px !important;  /* change 14px to the size you want */
  line-height: 1.4em !important;
}
