/* 
Theme Name: LegalConnect
Theme URI: https://github.com/elementor/hello-theme-child/
Description: LegalConnect is a child theme of Hello Elementor, created by Rodriguez Valle Creative, LLC
Author: Rodriguez Valle Creative
Author URI: https://rodriguezvalle.com/
Template: hello-elementor
Version: 2.0.5
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* IBM Plex Sans (Google)
  Use a value from 100 to 700 for IBM Plex Mono
  font-family: "IBM Plex Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
*/

/* Mislab (Adobe)
  font-family: mislab-std, serif;
  font-family: mislab-narrow-std, serif;
*/

/* REM is based on the root element's font size. We'll use REM. In this case that's 16px. */

/* Color Variables */
:root {
    --navy: #0A0541;
    --white: #ffffff;
    --Black: #000000;
    --green: #00A596;
    --dkGreen: #007382;
    --dkBlue: #2D73D2;
    --blue: #5FA0FF;
    --lGrey: #EBEBEB;
}
html {font-size:16px;}

/* Use IBM Plex Sans site-wide for body text and form controls. */
body, button, input, select, textarea {
  font-family: 'IBM Plex Sans', sans-serif;
  font-optical-sizing: auto;
}

body:not([class*=elementor-page-]) .site-main {max-width:1400px;padding:0;}
a {color: var(--green);}

.accent-color {color:var(--green);}

/* Headings */
h1 {
  font-family: "mislab-std", Helvetica, Arial, sans-serif;
  font-size:3.5rem;
  line-height:3.75rem;
  font-weight:400;
  margin:0 0 15px 0;
}
h2 {
  font-family: "mislab-std", Helvetica, Arial, sans-serif;
  font-size:2.5rem;
  line-height:2.75rem;
  font-weight:500;
  margin:10px 0;
}

h3 {
  /*font-family: "mislab-std", Helvetica, Arial, sans-serif;*/
  font-family: 'IBM Plex Sans', sans-serif;
  font-size:1.25rem;
  line-height:2rem;
  font-weight:500;
}

/* Subheads - using p tags */

.subhead1, .subhead1 p {
  font-family: "mislab-std", Helvetica, Arial, sans-serif;
  font-size:1.75rem;
  font-weight:500;
  line-height:2rem;
  margin:5px 0 15px 0;
}

.subhead2, .subhead2 p {
  font-family: "mislab-std", Helvetica, Arial, sans-serif;
  font-size:1.5rem;
  font-weight:500;
  line-height:1.75rem;
  margin:5px 0;
}

.subhead3, .subhead3 p {
  font-family: "mislab-std", Helvetica, Arial, sans-serif;
  font-size:1.25rem;
  font-weight:500;
  line-height:1.5rem;
  margin:5px 0;
}

.subhead5, .subhead5 p {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size:.85rem;
  font-weight:400;
  margin:5px 0;
}

.subhead6, .subhead6 p {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size:.7rem;
  font-weight:400;
  margin:0;
  text-transform:uppercase;
  letter-spacing:.075rem;
}

p {font-weight:400;}

.footer-cta, .footer-cta p {
  font-size:3rem;
  line-height:3.25rem;
  font-weight:300;
}

.small-text, .small-text p {
  font-size:.75rem;
  line-height:1.25rem;
  font-weight:400;
}

.page-title h1 {
  font-size:1.25rem;
  letter-spacing:.25rem;
  color:var(--green);
  text-transform:uppercase;
  font-family: 'IBM Plex Sans', sans-serif;
}
.page-hero h1 {
  color:var(--navy);
  font-size:4.25rem;
  letter-spacing:-.12rem;
  font-weight:400;
}
.page-hero h2 {
  color:var(--navy);
  font-size:4.25rem;
  letter-spacing:-.12rem;
  font-weight:400;
}

.small-page-hero h2 {
  color:var(--navy);
  font-size:2.5rem;
  letter-spacing:-.075rem;
  font-weight:500;
}

.feature-set h2 {
  font-size:1.75rem;
  line-height:2rem;
}
.feature-loop-item sup {
  font-size:.5rem;
  display: inline-block;
  /* Negative percentages move the element up, positive percentages move it down */
  transform: translateY(-0.3em);  
}

.single-blog-entry ul {
  padding: 10px 0 20px 17px;
}

.single-blog-entry h1 {
  font-size:2.75rem;
  line-height:2.75rem;
  font-weight:500;
  margin:0 0 15px 0;
}

.single-blog-entry h2 {
  font-size:1.5rem;
  line-height:2rem;
  font-weight:600;
  margin:15px 0;
}

.privacy-policy-page ul {padding:10px 0 20px 17px;}
.privacy-policy-page ol {padding:10px 0 20px 17px;}
.privacy-policy-page ul li {font-weight:500;}
.privacy-policy-page ol li {font-weight:500;}

/* Page Buttons */
.elementor-button {
  border-radius:50px;
  font-family: "IBM Plex Sans", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.green-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:10px 15px;
  background: var(--green);
  color: var(--white);
}
.green-button .elementor-button:hover {
  background: var(--navy);
}
.blue-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:10px 15px;
  background: var(--navy);
  color: var(--white);
}
.blue-button .elementor-button:hover {
  background: var(--green);
}

.dkBlue-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:10px 15px;
  background: var(--dkBlue);
  color: var(--white);
}
.dkBlue-button .elementor-button:hover {
  background: var(--blue);
}

.sm-blue-button .elementor-button {
  font-size:.75rem;
  line-height:1;
  padding:8px 12px;
  background: var(--navy);
  color: var(--white);
}
.sm-blue-button .elementor-button:hover {
  background: var(--green);
}

.two-column ul {
  margin:10px 0;
  padding:0 0 0 17px;
}
.two-column ul li {
  margin:5px 0;
}

/* Stored Classes

.flex-no-padding
.flex-fifty-tb
.flex-twenty-tb
.dkgreen-navy-gradient
background-image: linear-gradient(to right, #007382 20%, #0A0541 100%);

.navy-dkgreen-gradient
background-image: linear-gradient(to bottom, #0A0541 20%, #007382 100%);

.lc-menu-button
*/


/* Header */
.lc-contact-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:10px 15px;
  background: var(--lightGreen);
  color: var(--navy);
  border:1px solid var(--lightGreen);
}
.lc-contact-button .elementor-button:hover {
  background: var(--blue);
  border:1px solid var(--blue);
}
.lc-header .logo-nav {
  
}
.lc-header .logo-nav .lc-menu {
  font-family:"IBM Plex Sans", sans-serif;
  font-weight:500;
  font-style:normal;
  font-size:1rem;
  line-height:1;
}
.lc-header .logo-nav .lc-menu li li {
  font-size:.875rem;
}

.lc-header .logo-nav .lc-menu ul li ul li {
  margin-right:30px;
  width:100%;
}

.lc-menu-button {
  line-height:1;
  padding:0;
  font-size:1rem;
}

.efsp-directory-loop-item img {
  width:100%;
  max-width:300px;
}

/* Footer */
.lc-footer p {margin:0 0 5px 0;}
.lc-footer strong {font-weight:500;}
.lc-footer a {color:var(--white);}
.lc-footer a:hover {color:var(--green);}




/********************************************** Global */
.hide-this {display:none;}
.sitecredit {margin:0 0 0 30px;}

/********************************************** Media Queries */
@media only screen and (max-width: 1400px){   
    body:not([class*=elementor-page-]) .site-main {max-width:1400px;padding:10px;}
    
}

@media only screen and (max-width: 1200px){   
	
}

@media only screen and (max-width: 900px){   
	.footer-cta, .footer-cta p {
    font-size:2rem;
    line-height:2.5rem;
    font-weight:300;
  }
  .feature-set h2 {
    font-size:1.25rem;
    line-height:1.5rem;
  }
  .page-title h1 {
    font-size:1rem;
  }
  .page-hero h2 {
    font-size:3.25rem;
    letter-spacing:-.12rem;
  }
  .subhead1, .subhead1 p {
    font-size:1.5rem;
    line-height:1.75rem;
  }
}


@media only screen and (max-width: 767px){
	.page-hero h2 {
    font-size:2.25rem;
    letter-spacing:-.12rem;
  }
  .subhead1, .subhead1 p {
    font-size:1.25rem;
    line-height:1.5rem;
  }
}

@media only screen and (max-width: 500px){
    
}