/* 
Theme Name: Hello Elementor Child [LDM]
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team - Customixzed by [LDM] https://lentinidesign.com
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0.5.0224
Text Domain: hello-elementor-child
License: GNU 
License URI: 
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/**
 * [LDM] below
 */

/* Fonts and Colors Notes * /
Fonts:
Open Sans for all
h1: 3.08 em
h2: 1.83 em
body: 1.42em 
(note: body is typically 1 em, and set to a pixel value - like 16px , which defines 1 em - or the user's browser defines 1em - but we don't want that)
stats top stat: 3.83em

colors:
light orange: fef3e5
blue buttons and links: 3774d6 updated to: #346ECB
yellow footer: f7ec16
light gray: f7f7f7
all rest is black
*/


/* Site tweaks */


/* typography */

/* site wide font - override _reboot.css loaded in footer */
body * {
  font-family: "Open Sans"
}

a:hover,
a:hover *,
.elementor-icon-list-items *:hover {
  /* color: inherit !important; */
  opacity: 0.7;
  transition: all .5s;
  text-decoration: none;
}

.elementor-icon-list-item:hover .elementor-icon-list-text {
  color: black !important;
  transition: all .5s;
}

/** Add back list styling - BSB Plugin css unstyles all lists, site wide!
	Also see "Info text, Add list styling " below
*/
.ldm_bsb_info_popup ol li {
  list-style: decimal outside none;
  display: list-item;
  margin-left: 1em;
  margin: 1em;
}

.ldm_bsb_info_popup ul li {
  list-style: disc outside none;
  display: list-item;
  margin-left: 1em;
}



/** header */
.site-header .site-navigation ul.menu li a:hover {
  color: #FFFFFF !important;
}

.site-header .header-inner {
  display: block
}

.site-header .site-branding {
  align-items: baseline;
  justify-content: left;
}

.site-navigation {
  justify-content: right;
}

.site-navigation {
  margin-top: -60px;
  padding-top: 60px;
}

/* sub-menus */
.site-navigation ul.menu li ul {
background: #000000 !important;
}

/** [LDM] set current page menu colors * /
#mobile_menu .current-menu-parent >a,
#mobile_menu li.current-menu-item >a 
{color:#fffffff;font-weight:bold;}
*/

.current-menu-parent.menu-item-has-children>a  
{
 opacity:0.7;
}
/* mobile menu */
.site-navigation-dropdown .current-menu-parent.menu-item-has-children>a  
{border:1px solid silver;font-weight:bold}

li.current_page_item:not(.current-menu-ancestor){background:rbga(0,0,0,0,.5)}
.site-navigation-dropdown li.current_page_item:not(.current-menu-ancestor) >a
{
  opacity:0.7;
  border:1px solid silver;
}
li.current_page_item:not(.current-menu-ancestor) >a {opacity:0.7;}
.site-navigation ul.menu li ul li {
    border-bottom: 1px solid #777;
}
/** [LDM] mobile menu - style sub-menus */
.site-navigation-dropdown ul.menu>li li {
    transition: unset;
    transform-origin: unset;
    transform: unset;
    max-height: none;
    margin-left: 1em;
 }
.site-navigation-dropdown,
.site-navigation-dropdown li
{padding:0 10px;width: x90vw !important;}
.site-navigation-dropdown ul.menu li.current-menu-item .sub-menu a {
    color: #55595c;
    background: #fff;
}

@media (max-width:550px) {

  /* small screns */
  .site-header .site-branding {
    display: block;
  }

  .site-description {
    padding-left: 55px
  }
}


/* GTranslate Widget (in top menu) */
.gtranslate_wrapper {
  display: none;
}

#menu-main {
  position: relative
}

@media (min-width:992px) {
  ul:not(#menu-home-landing-page) .menu-item-gtranslate {
    xposition: relative !important;
    bottom: 45px;
    position: absolute !important;
    right: 0;
  }
}

@media (max-width: 991px) {
  .menu-item-gtranslate.elementor-active .dropdown-menu {
    display: block !important;
  }
}

/** try 2 */
@media (min-width: 992px) {
  .menu-item-gtranslate {
    top: -40px;
    right: 127px;
  }
}

@media (max-width: 991px) {
  .gt-current-wrapper.glink>img[src*="translate_icon"] {
    filter: invert(100%)
  }
}

@media (max-width: 991px) {
  x.menu-item-gtranslate {
    position: absolute;
    top: -42vw;
    right: -80vw;
  }

  x.menu-item-gtranslate a {
    color: white
  }
}

.site-navigation ul.menu li.menu-item-gtranslate.menu-item-has-children:after {
  /* hide down arrow */
  content: '' !important;
} 

.ldm_search a {
  font-size: 0
}

.ldm_search a:before {
  content: url('data:image/svg+xml;utf8,<svg aria-hidden="true" class="e-font-icon-svg e-fas-search" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"></path></svg>');
  filter: invert(100%);
  opacity: 0.9;
  display: inline-block;
  height: 18px;
  width: 18px;
  margin-top: 3px;
}

@media (max-width: 991px) {
  .ldm_search a {
    font-size: 1em
  }

  .ldm_search a:before {
    filter: invert(0%);
    margin-right: 10px;
  }
}

#elementor-popup-modal-905 {
  z-index: 100000000
}

/* Search Popup */

/** Try to overlay "Translate" * /
.menu-item-gtranslate > a:first-child:after {content:' Translate';position:absolute;left:40px;background-color:#000000}
x.menu-item-gtranslate  > a:first-child {background-color:#000}
x.menu-item-gtranslate  > a:first-child:before {
  content:url(https://bsh-ldm-build.com/visualizer/wp-content/uploads/2024/07/translate-icon.png);
  xdisplay: inline-block;
  xmax-width:20px;
  xmax-height:20px;
  position:absolute;
  left: -55px;
  xleft: -194px;
  top: 0;
  bottom: 13px;
  xdisplay:block;
  background-color:#000;
  transform:scaleX(5%) scaleY(5%);
  z-index:100000;
  xopacity: 1;
  width:100%;
  
}
.menu-item-gtranslate  > a:first-child:before {
  content:url(https://bsh-ldm-build.com/visualizer/wp-content/uploads/2024/07/translate_icon_24px.jpg);
  position:absolute;
  z-indexL100000;
  xbackground-blend-mode:normal;
}
.menu-item-gtranslate  > a:first-child img {display:none }
x.menu-item-gtranslate  > a:first-child:before
{
        content: url(https://bsh-ldm-build.com/visualizer/wp-content/uploads/2024/07/translate-icon.png);
        display: block;
        background-image: ,black;
        background-repeat: no-repeat;
        position: absolute;
  top:0;
  left:0;
        max-height: 20px;
        max-width: 24px;
}*/
/*
.gt-current-wrapper {
	width: 24px !important; 
	height: 24px !important;
  background: url("https://bsh-ldm-build.com/visualizer/wp-content/uploads/2024/08/translate.png") center no-repeat;
	padding-top: 2px !important;
}
*/
.menu-item-gtranslate .dropdown-menu.sub-menu  {
  /* color: black; */
margin-top:0 !important;
}
.menu-item-gtranslate .dropdown-menu.sub-menu  a{
	font-weight:500 !important;
}

.menu-item-gtranslate .dropdown-menu.sub-menu {
  z-index: 1000
}




/**
 * footer
 */
x.footer .ldm_contact_list .elementor-icon-list-items li:nth-child(1) .st0 {
  fill: #956c34 !important;
}

x.footer .ldm_contact_list .elementor-icon-list-items li:nth-child(2) .st0 {
  fill: #9dc856 !important;
}

x.footer .ldm_contact_list .elementor-icon-list-items li:nth-child(3) .st0 {
  fill: #2b368a !important;
}

footer .ldm_contact_list .elementor-icon-list-items li:nth-child(1) .st0 {
  fill: #644d2e !important;
}

footer .ldm_contact_list .elementor-icon-list-items li:nth-child(2) .st0 {
  fill: #73972b !important;
}

footer .ldm_contact_list .elementor-icon-list-items li:nth-child(3) .st0 {
  fill: #28456e !important;
}

footer .elementor-social-icon.X .st0 {
  fill: #FFFFFF;
}

/*changed to text widget with PNG phone icon
footer .ldm_contact_phone g {fill:#e51f8f;} 
footer .ldm_contact_phone svg {
  background: rgb(255,255,255);
  background: radial-gradient(circle,  rgba(255,255,255,1) 60%,rgba(255,255,255,0) 40%);						   
}*/
footer .ldm_phone_header p {
  margin-bottom: 0px
}

footer .ldm_phone_icon {
  margin-right: 10px
}

footer .elementor-icon-list-text {
  padding-top: 4px
}

footer .elementor-nav-menu__container {
  justify-content: end;
}



/** Complianze generated Cookie Opt Out page */
body.cmplz-document .page-content {
  padding: 5% 0
}

body.cmplz-document .page-content:before {
  content: 'Cookie Policy - Opt Out Preferences';
  font-size: 2em;
  margin-bottom: 1em;
  display: block;
}

/** 
 * ALL pages
 */
@media (max-width:1225px) {

  /* need side margins on small screens */
  .e-con>.e-con-inner {
    width: 90%;
  }
}

/** 
 * home page 
 */



/* cookie opt out page */


/* [END] single linding page hide stuff */
.ldm_page_hero_section {
  min-height: 400px;
  xbackground-size: contain !important;
  --overlay-opacity: 1 !important;
}

.ldm_2quad_grid_inner {
  border: solid 2px #dddddd !important;
}

@media (min-width:767px) {
  .ldm_2quad_grid.e-con>.e-con-inner {
    max-width: 75vw !important;
  }
}

.ldm_cta {
  margin: 5% !important
}

.ldm_cta_fullwidth {
  margin: 0 !important
}

.ldm_cta .elementor-cta__bg-wrapper {
  min-height: 14vw !important;
}

@media (min-width:767px) {
  .ldm_cta .elementor-cta__bg-wrapper {
    min-height: 9vw !important;
  }
}

.ldm_cta .elementor-cta__bg {
  background-repeat: no-repeat;
  background-position-x: 30% !important;
  background-size: 33% !important;
  background-position-y: bottom !important;
}

.ldm_cta_fullwidth .elementor-cta__content {
  padding: 0 !important
}

.ldm_cta_fullwidth .elementor-cta__bg {
  background-position-x: 0 !important;
  background-size: 100px !important;
}

@media (min-width:767px) {
  .ldm_2quad_grid_t_right .ldm_2quad_grid_inner>.ldm_cta {
    grid-column: 2;
    grid-row: 1;
  }

  .ldm_cta {
    min-height: 350px !important;
  }
}

.ldm_cta ul {
  padding-left: 1.1em
}

.ldm_cta ul li {
  list-style: disc;
}

.ldm_cta .elementor-cta__title {
  margin-top: 1em
}

.ldm_accordian .elementor-accordion-item ul {
  padding-left: 1.1em;
  margin: 2% 0;
}

.ldm_accordian .elementor-accordion-item ul li {
  list-style: disc;
}

.ldm_accordian .elementor-accordion-item {
  margin-top: 20px;
  border: solid 1px #77777722 !important
}

.ldm_2quad_flex_left {}

/* Image height on small screens */
.ldm_2quad_flex_img,
.ldm_2quad_grid_inner .elementor-element:nth-child(2) {
  min-height: 300px;
}

/* [END] home page */



/** 
 *   Bus Stop Builder Tool 
 */

/* Make builder tool pages wider than theme default */
.page-id-43 #root,
.page-id-43 .e-con-inner {
  max-width: 90vw !important
}


/* these remove horz scroll bar - both tool pages */
#root {
  margin: auto;
  max-width: 90vw !important
}

.w-screen {
  width: 100% !important;
}

/** hide phantom buttons */
.gm-compass {
  display: none;
}

.gm-iv-close {}

.gm-iv-close {
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: flex !important;
  height: 27px !important;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  justify-content: center !important;
  margin: 0 !important;
  outline-offset: -2px !important;
  padding: 0 !important;
  width: 27px !important;
  /* width: 61px !important; */
  position: relative;
  /* right: -12px; */
}

.gm-iv-back {
  x.background: transparent url(https://maps.gstatic.com/mapfiles/api-3/images/sv9.png) no-repeat -2px -73px;
  x.-webkit-background-size: 164px 175px;
  x.background-size: 164px 175px;
  height: 16px;
  width: 13px;
  filter: contrast(4.5);
  border: solid 2px white;
  border-radius: 2px;
}

.gm-iv-container {
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  background-color: #222;
  /* border-right: 1px solid #666; */
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  font-family: Roboto, Arial, sans-serif;
  margin-top: 10px;
  opacity: .8;
  width: 27px;
  /* left: 10px; */
  margin-left: 15px;
}

/* blue info buttons - both pages */
.bsb_info_map,
.bsb_info_builder {
  height: 24px;
  min-width: 24px;
  line-height: 1;
  background:#346ECB;
}

/* Info text, top and bottom, all pages */
div[class*='bsb_additional_text'] {
  padding: 2% 0%;
  
}
/* Info text, Add list styling - also apply site wide */
#content :not(#root) ul,#content :not(#root) ol,
div[class*='bsb_additional_text'] ul,
div[class*='bsb_additional_text'] ol {
  padding-left: 2em;
  xmargin: 1.1em 0;
}
#content :not(#root) ul li,
div[class*='bsb_additional_text'] ul li {
  list-style: disc;
}
#content :not(#root) ul ul li,
xdiv[class*='bsb_additional_text'] ul li {
  list-style: circle;
}
#content :not(#root) ol li,
div[class*='bsb_additional_text'] ol li {
  list-style: decimal;
}
/* hide wpautop BRs */
div[class*='bsb_additional_text'] ul br {display:none}
div[class*='bsb_additional_text'] ol br {display:none}
.bsb_sidebar_header br {display:none}
.bsb_sidebar_header * {margin:0}

/* page 1 Map page */
.bsb_search_btn,
.bsb_design_btn {
  /* background-color:#fff !important; */
  /* color:black !important; */
  /* border-color:#999!important; */
}

.bsb_search_btn,
.bsb_design_btn {
  height: auto;
}

.bsb_design_btn.cursor-not-allowed.text-white {
  cursor: not-allowed !important;
  color: white !important;
  background-color: #ccc !important;
}

/*.bsb_design_btn:not('.cursor-not-allowed'),*/
.bsb_design_btn.cursor-pointer {
  color: white;
  background-color: #3774D6 !important;
}

/** stop map from growing too wide on large screens */
x@media (min-width:1024px) {
  div[data-testid="map"] {
    max-width: 640px;
    max-height: 640px
  }

  div[data-testid="map"] {
    height: 45vw;
  }

  .map-container {
    /* height:45vw; */
  }
}

/* Pg 1 Nav bar */
/** reorder buttons */
.bsb_nav_bar .bsb_design_btn:nth-child(2) {order: 3;}
.bsb_nav_bar .bsb_info_map {order:10}


@media (min-width:640px) and (max-width:800px) {
  .bsb_nav_bar div:first-child {
    flex-direction: column;
  }

  .bsb_search_input {
    width: 100%
  }

  x.bsb_search_input input {
    width: 90%;
  }
}

@media (min-width:801px) and (max-width:1023px) {
  .bsb_search_input {
    width: 25vw
  }
}

.bsb_search_input svg {
  order: 1
}

.bsb_search_input svg {
  display: none
}


/* second page */

/* top tool menu bar - make responsive */
.bsb_builder_nav_container {}

/* reorder tool button order */
.bsb_builder_nav_container #save {order:5}
.bsb_builder_nav_container #amenity-lib {font-weight:bold}
.bsb_builder_nav_container #change-bg {display:none}


.bsb_builder_nav_container>div>div {
  justify-content: space-between;
}

@media (min-width:1280px) {
  .bsb_builder_nav_container>div>div {
    justify-content: center;
  }
}

@media (max-width:900px) {
  .bsb_builder_nav_container>div>div p {
    padding-right: 1em
  }
}

x@media (max-width:600px) {
  .bsb_builder_nav_container>div>div img {
    display: none
  }
}

@media (max-width:600px) {
  .bsb_builder_nav_container {
    display: block;
    height: auto;
  }

  .bsb_builder_nav_container div.flex:not(.bsb_info_builder) {
    display: block;
  }

  .bsb_builder_nav_container div.flex.bsb_info_builder {
    position: relative;
    top: -160px;
    right: 0px !important;
  }

  .bsb_builder_nav_container div.flex p {
    display: inline;
    padding-left: 10px
  }

  .bsb_builder_nav_container div.flex img {
    display: inline;
  }

  .bsb_builder_nav_container .bsb_nav_item {
    padding: 5px 0
  }

  .bsb_info_builder {
    position: absolute;
    right: 20px;
    top: 3em
  }
}

/* amenities list */
.bsb_sidebar_container {
  xbox-shadow: 0px 4px 10px 5px #ababab55;
  border: solid 2px #ddd
}

.bsb_sidebar_header p {
  margin-bottom: 0;
  line-height: 1em;
}

.bsb_acc_title {
  font-weight: bold
}

.bsb_accordion_btn {
  padding: 0.7em 1em !important
}

.bsb_accordion_btn>div>div {
  white-space: normal;
}

/* info popup */
.bsb_accordion_btn>div>div p {
  margin-bottom: 0
}

/* info button */
.bsb_accordion_btn>div>div p {
  border: solid 1px black;
  border-radius: 50%;
  padding: 2px 8px;
  line-height: 1
}

/* info button */
.bsb_add_btn {
  /* add amenity button - copy sitewide style */
  color: #FFFFFF;
  background-color: #3774D6;
  border-style: none;
  border-radius: 10px 10px 10px 10px;
  padding: 0.7em 2em 0.7em 2em;
  font-size: 14px;
  cursor:pointer;
}
.bsb_acc_child img {cursor:pointer;}

/* size amenities container */
/*@media (min-width:1280px) {*/
  .bsb_sidebar_container {
    height: max-content !important;
    min-height: 85vh !important;
  }
/*}*/

/* hide models placed outside of canvas */
.viewer-canvas {
  width: auto !important
}

/* remove padding on Builder page container - make image larger on the screen */
.viewer>div {
  padding: 0 !important
}

/* small screens */
/*@media (max-width:1023px) {*/
X.viewer {
  height: 95vw;
}

X.viewer>div {
  height: 95vw !important;
  padding: 0 !important
}

X.bsb_sidebar_container {
  /* width:80vw; */
  /* top:450px; */
  position: absolute;
  right: -20%;
  top: 9%;
}

/*}*/
@media (max-width:500px) {
  .bsb_acc_text {
    display: none
  }

  .bsb_acc_child img {
    min-width: 50px !important;
  }
}

/* larger screens */
XX@media (min-width:1024px) {
  .bsb_sidebar_container {
    position: relative;
    width: 45vw
  }

  .viewer {
    height: 45vw
  }

  .viewer>div {
    height: 95vw !important;
    padding: 0
  }

  .viewer>div>div {
    width: 45vw;
    height: 45vw
  }
}

/*- stop bottom clipping tool area NOT NEEDED*/
x#root>div:first-child {
  overflow: visible !important;
  height: auto
}

xdiv.viewer>div:first-child {
  height: auto !important
}

/* Maps Pegman */
button[title^="Drag Pegman"] img {
  max-width: none !important
}

/* Gen styling - remove/fix elementor defaults*/
/*X.w-full p-3 bg-[#E3E1E1] rounded-lg,*/
.bsb_acc_child img {
  height: 100% !important;
  border-radius: .5rem !important;
}

.bsb_builder_nav_container h2 {
  display: none;
  white-space: nowrap;
  font-size: 2em !important
}

.bsb_nav_item {
  gap: .2rem;
}

.bsb_nav_item p {
  white-space: nowrap;
  margin-block-end: 0;
}

@media (max-width:1250px) {
  .bsb_nav_item p {
    white-space: normal;
    font-size: .8em
  }
}

/* Need to wrap or hamburger tool nav under 900px */

.bsb_accordion_item button.bsb_accordion_btn {
  font-weight: 500;
  color: #000000;
  border: none;
  background-color: transparent
}

.bsb_accordion_item button.bsb_accordion_btn:hover,
.bsb_accordion_item button.bsb_accordion_btn:focus {
  background-color: transparent !important
}

/* save design form */
/* h5.modal-title {display:none} */

.gform-theme--framework .gfield--type-choice #input_1_16.gfield_radio {
  flex-direction: row;
}
#formModal.modal {z-index:1000000000 !important;}

/** 
 * [END]  Bus Stop Builder Tool 
 */
 

/* [LDM] Blog Posts Grids - Read More buttons */
.ldm_post_grid_blue_buttons .elementor-post.elementor-grid-item a.elementor-post__read-more {
  background-color: var( --e-global-color-accent );
  font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
  font-weight: var( --e-global-typography-accent-font-weight );
  border-style: none;
  border-radius: 10px 10px 10px 10px;
  padding: 0.7em 3em 0.7em 3em;
  display:inline-block !important;
  color:white;
  font-weight:bold;
}