/* 
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
*/

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

/* Color Variables */
:root {
    /* Brand Colors */
    --color-dark-blue: #0569A5;      /* Very Dark Blue - deep accents */
    --color-medium-blue: #0EA2DA;    /* Bright Blue - main brand color */
    --color-light-blue: #9BCCEC;     /* Navy Blue - hover states and accents */
    --color-accent: #F06236;         /* Hot Orange - CTAs and highlights */
    --color-slate: #2F4B59; 
    --color-white: #ffffff;         /* Dark Blue-Gray Slate - headers and tier accents */

    --color-links: #0569A5 ;
    --color-links-hover: #D53E10;
}

.span-dark-blue {color:var(--color-dark-blue);}
.span-medium-blue {color:var(--color-medium-blue);}

html {font-size:16px;}

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

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

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

.copyright-credit p {
  font-size:.875rem;
}

strong {
  font-weight:700;
}

p {
  font-family: 'Barlow', Helvetica, Arial, sans-serif;
  font-size:1rem;
  line-height:1.35rem;
}

#members-portal {
  background:var(--color-dark-blue);
  border-radius:5px;
}

.standard-menu .members-portal-button a {
  background:var(--color-dark-blue);
  border-radius:5px;
  color:var(--color-white) !important;
}

.standard-menu .members-portal-button a:hover {
  background:var(--color-slate);
  border-radius:5px;
  color:var(--color-white);
}

#members-portal:hover {
  background:var(--color-slate);
  border-radius:5px;
}

#members-portal .e-n-menu-title-text {
  color:var(--color-white);
}

.tcie-mobile-menu .top-links a {
  font-weight:600;
  font-size:.875rem;
  margin:0 0 0 15px;
  color:var(--color-slate);
}
.tcie-mobile-menu .elementor-sub-item li a {
  font-size:1rem;
}

.tcie-mobile-menu .elementor-sub-item li .sub-arrow:hover {
  fill:#fff;
}

/* Headings */
h1 {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style:normal;
  font-size:3rem;
  line-height:3.75rem;
  font-weight:400;
  margin:0 0 15px 0;
  color:var(--color-slate);
  letter-spacing:-.08rem;
}
h2 {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style:normal;
  font-size:1.5rem;
  line-height:2.5rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.125rem;
}

h3 {
  font-family: 'Erode', serif;
  font-style:normal;
  font-size:2.25rem;
  line-height:2rem;
  font-weight:400;
}

.we-are-hiring h2 {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style:normal;
  font-size:3.5rem;
  line-height:3.5rem;
  font-weight:800;
  text-transform:none;
  letter-spacing:-.125rem;
}
.we-are-hiring p {
  font-size:1.25rem;
  line-height:1.5rem;
  font-weight:500;
}

/* Subheads */
.subhead1, .subhead1 p {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style:normal;
  font-size:1.5rem;
  line-height:2rem;
  font-weight:400;
  margin:10px 0;
}

.subhead2, .subhead2 p {
  font-family: 'Erode', serif;
  font-style:normal;
  font-size:2.25rem;
  line-height:2rem;
  font-weight:400;
}

.subhead3, .subhead3 p {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style:normal;
  font-size:1.5rem;
  line-height:1.5rem;
  font-weight:700;
}

.stat-value, .stat-value p {
  font-size:5.5rem;
  letter-spacing:-.125rem;
  font-weight:700;
  margin:0;
  line-height:1;
}
.stat-details, .stat-details p {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size:.875rem;
  line-height:1.25rem;
  margin:10px 0;
}
.board-member-name, .board-member-name p {
  font-size:1.25rem;
  font-weight:700;
}
.board-member-title, .board-member-title p {
  font-weight: 600;
  font-style:italic;
  margin:0 0 20px 0;
}
.board-member-org, .board-member-org p {
  font-weight: 500;
}
.board-member-org-title, .board-member-org-title p {
  font-weight: 500;
}
.board-member-bio, .board-member-bio p {
  font-weight:400;
}
.school-videos p {
  font-weight:600;
}

.school-videos .elementor-custom-embed-image-overlay {
    border-radius: 7px;
    overflow: hidden;
}

.quote, .quote p {
  font-family: 'Erode', serif;
  font-style:normal;
  font-size:1.5rem;
  line-height:1.75rem;
  font-weight:400;
}

/* Spark History */
.spark-history a {
  color:var(--color-accent);
  font-weight:500;
}

.spark-history a:hover {
  color:var(--color-medium-blue);
}
.spark-date, .spark-date p {
  font-size:3rem;
}

/* Buttons */
.elementor-button {
  font-family: "Barlow", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight:600;
}
.header-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:11px 15px;
  background: var(--color-white);
  color: var(--color-slate);
  box-shadow: 0 4px 8px 2px rgba(0, 0, 0, 0.1);
}
.header-button .elementor-button:hover {
  background: var(--color-slate);
  color: var(--color-white);
}

.orange-button .elementor-button {
  font-size:.875rem;
  line-height:1;
  padding:11px 15px;
  background: var(--color-accent);
  color: var(--color-white);
}
.orange-button .elementor-button:hover {
  background: var(--color-slate);
  color: var(--color-white);
}

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

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

/* Mobile Buttons */
.large-dark-blue-button .elementor-button {
  font-size:1.125rem;
  line-height:1;
  padding:11px 15px;
  background: var(--color-dark-blue);
  color: var(--color-white);
}
.large-dark-blue-button .elementor-button:hover {
  background: var(--color-slate);
  color: var(--color-white);
}

.full-width-cta-button .elementor-button {
  font-family: "Barlow Condensed", Helvetica, Arial, sans-serif;
  font-style:normal;
  text-transform:uppercase;
  font-size:2rem;
  font-weight:600;
  /*margin:5px 0;
  padding:10px;*/
  margin:5px;
  padding:5px;
  background:transparent;
}

/* Large Buttons, CTAs */
.large-orange-cta-button {
  /*background:var(--color-accent);*/
}
.large-orange-cta-button:hover {
  /*background:var(--color-links-hover);*/
}
.large-orange-cta-button, .large-orange-cta-button p {
  font-family: "Barlow Condensed", Helvetica, Arial, sans-serif;
  font-style:normal;
  text-transform:uppercase;
  font-size:4rem;
  line-height:3.25rem;
  font-weight:600;
  margin:10px 0;
  color:var(--color-white);
}

.img-cta-button, .img-cta-button p {
  font-family: "Barlow Condensed", Helvetica, Arial, sans-serif;
  font-style:normal;
  text-transform:uppercase;
  font-size:3.5rem;
  line-height:3rem;
  font-weight:600;
  margin:10px 0;
  color:var(--color-white);
}

.full-width-img-cta .cta-overline, .cta-overline p {
  font-family: "Permanent Marker";
  line-height:1;
  font-size:2rem;
  font-weight: 400;
  font-style: normal;
  margin:0;
}

.full-width-img-cta .cta-accent-text, .cta-accent-text p {
  font-family: "Permanent Marker";
  line-height:1;
  font-size:2rem;
  font-weight: 400;
  font-style: normal;
  margin:5px 0;
}

.full-width-img-cta .cta-message, .cta-message p {
  font-family: "Barlow Condensed", Helvetica, Arial, sans-serif;
  font-style:normal;
  text-transform:uppercase;
  font-size:4.5rem;
  line-height:4rem;
  font-weight:600;
  margin:5px 0;
  /*letter-spacing:-.15rem;*/
}

.full-width-img-cta .links, .links p {
  font-family: "Barlow Condensed", Helvetica, Arial, sans-serif;
  font-style:normal;
  text-transform:uppercase;
  font-size:3rem;
  line-height:2.5rem;
  font-weight:600;
  margin:5px 0;
}

/* The Events Calendar */
.featured-event-loop-item h3 {
  font-size:2rem;
  line-height:2rem;
  font-weight:400;
}
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
  padding-bottom:0 !important;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-l-container {
  padding:0 !important;
}



/********************************************** 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){   
	.large-orange-cta-button, .large-orange-cta-button p {
    font-size:3rem;
    line-height:2.25rem;
  }
  .img-cta-button, .img-cta-button p {
  font-size:2.5rem;
  line-height:2rem;
  }
}


@media only screen and (max-width: 767px){
  .header-button .elementor-button {
    font-size:.875rem;
    line-height:1;
    padding:10px 10px 10px 0;
    background: var(--color-white);
    color: var(--color-slate);
    box-shadow: none;
  }
  .header-button .elementor-button:hover {
    background: var(--color-white);
    color: var(--color-slate);
  }
  h1 {
    font-size:2rem;
    line-height:2.75rem;
    margin:0 0 15px 0;
    letter-spacing:-.05rem;
  }
  /* Subheads */
  .subhead1, .subhead1 p {
    font-size:1.25rem;
    line-height:1.5rem;
    margin:5px 0;
  }
	
  .large-orange-cta-button, .large-orange-cta-button p {
    font-size:2rem;
    line-height:1.25rem;
  }

  .full-width-img-cta .cta-overline, .cta-overline p {
    font-size:1.5rem;
  }

  .full-width-img-cta .cta-message, .cta-message p {
    font-size:3rem;
    line-height:2.5rem;
    letter-spacing:0;
  }

  .full-width-img-cta .cta-accent-text, .cta-accent-text p {
    line-height:1;
    font-size:1.25rem;
  }

  .full-width-img-cta .links, .links p {
    font-size:2rem;
    line-height:1.5rem;
  }

  .full-width-cta-button .elementor-button {
    font-size:1.5rem;
  }

  .members-portal-button {display:none !important;}

}

@media only screen and (max-width: 500px){
    .we-are-hiring h2 {
      font-size:2.5rem;
      line-height:3.5rem;
      letter-spacing:0;
    }
    .we-are-hiring p {
      font-size:1rem;
      line-height:1.5rem;
    }
}