/* jwbs (color) class, and default styling */
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap');
@import url("../includes/assets/default.css?ver=1.0.0");
@import url("jwbs.css");

body { font-family: 'Lato', sans-serif; font-weight: 400; color: #4d4d4d; } /* weight was 300 */
.ui-widget { font-family: 'Lato', sans-serif !important; }
strong, b, .font-weight-bold, .btn { font-weight: 700; }
.font-weight-normal { font-weight: 400 !important; } /* weight was 300 */
.font-weight-reg { font-weight: 400; }
.font-weight-black { font-weight: 900; }
h1, .h1 { font-size: 1.75rem; }
h2, .h2 { font-size: 1.5rem; }
h3, .h3 { font-size: 1.25rem; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 { font-weight: 700; color: #00245d; margin-bottom: 1.5rem; }
a, a:visited { color: #007280; font-weight: 700; }
a:hover, a:focus, a:active { color: #007280; }
.accent-line { background: transparent linear-gradient(90deg, #ffffff 1%, #007280 100%) 0% 0% no-repeat; width: 75px; height: 3px; display: block; background-color: #007280; margin: auto; }
.filtered-out { display: none; }

/* full width */
.full-width { position: relative; }
.full-width:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: -75rem; z-index: -1; }

/* colors */
.text-gray    { color: #ebebeb !important; } .bg-gray    { color: #4d4d4d; background-color: #ebebeb; } .border-gray    { border-color: #ebebeb !important; } .full-width.bg-gray:before    { border-left: 99rem solid #ebebeb; box-shadow: 99rem 0 0 #ebebeb; }
.text-dk-gray { color: #d7d7d7 !important; } .bg-dk-gray { color: #4d4d4d; background-color: #d7d7d7; } .border-dk-gray { border-color: #d7d7d7 !important; } .full-width.bg-dk-gray:before { border-left: 99rem solid #d7d7d7; box-shadow: 99rem 0 0 #d7d7d7; }
.text-lt-gray { color: #eaeaea !important; } .bg-lt-gray { color: #4d4d4d; background-color: #eaeaea; } .border-lt-gray { border-color: #eaeaea !important; } .full-width.bg-lt-gray:before { border-left: 99rem solid #eaeaea; box-shadow: 99rem 0 0 #eaeaea; }
.text-teal    { color: #007280 !important; } .bg-teal    { color: #ffffff; background-color: #007280; } .border-teal    { border-color: #007280 !important; } .full-width.bg-teal:before    { border-left: 99rem solid #007280; box-shadow: 99rem 0 0 #007280; }
.text-yellow  { color: #efc131 !important; } .bg-yellow  { color: #4d4d4d; background-color: #efc131; } .border-yellow  { border-color: #efc131 !important; } .full-width.bg-yellow:before  { border-left: 99rem solid #efc131; box-shadow: 99rem 0 0 #efc131; }
.text-white   { color: #ffffff !important; } .bg-white   { color: #4d4d4d; background-color: #ffffff; } .border-white   { border-color: #ffffff !important; } .full-width.bg-white:before   { border-left: 99rem solid #ffffff; box-shadow: 99rem 0 0 #ffffff; }
.text-neon    { color: #a8d42e !important; } .bg-neon    { color: #4d4d4d; background-color: #a8d42e; } .border-neon    { border-color: #a8d42e !important; } .full-width.bg-neon:before    { border-left: 99rem solid #a8d42e; box-shadow: 99rem 0 0 #a8d42e; }

.btn-gray    { color: #4d4d4d !important; background-color: #ebebeb; border-color: #ebebeb; } .btn-outline-gray    { color: #ebebeb; background-color: transparent; background-image: none; border-color: #ebebeb; } .btn-outline-gray:hover    { color: #4d4d4d; background-color: #ebebeb; background-image: none; border-color: #ebebeb; }
.btn-dk-gray { color: #4d4d4d !important; background-color: #d7d7d7; border-color: #d7d7d7; } .btn-outline-dk-gray { color: #d7d7d7; background-color: transparent; background-image: none; border-color: #d7d7d7; } .btn-outline-dk-gray:hover { color: #4d4d4d; background-color: #d7d7d7; background-image: none; border-color: #d7d7d7; }
.btn-lt-gray { color: #4d4d4d !important; background-color: #eaeaea; border-color: #eaeaea; } .btn-outline-lt-gray { color: #eaeaea; background-color: transparent; background-image: none; border-color: #eaeaea; } .btn-outline-lt-gray:hover { color: #4d4d4d; background-color: #eaeaea; background-image: none; border-color: #eaeaea; }
.btn-teal    { color: #ffffff !important; background-color: #007280; border-color: #007280; } .btn-outline-teal    { color: #007280; background-color: transparent; background-image: none; border-color: #007280; } .btn-outline-teal:hover    { color: #ffffff; background-color: #007280; background-image: none; border-color: #007280; }
.btn-yellow  { color: #4d4d4d !important; background-color: #efc131; border-color: #efc131; } .btn-outline-yellow  { color: #efc131; background-color: transparent; background-image: none; border-color: #efc131; } .btn-outline-yellow:hover  { color: #eaeaea; background-color: #efc131; background-image: none; border-color: #efc131; }
.btn-white   { color: #4d4d4d !important; background-color: #ffffff; border-color: #ffffff; } .btn-outline-white   { color: #ffffff; background-color: transparent; background-image: none; border-color: #ffffff; } .btn-outline-white:hover   { color: #4d4d4d; background-color: #ffffff; background-image: none; border-color: #ffffff; }
.btn-neon    { color: #4d4d4d !important; background-color: #a8d42e; border-color: #a8d42e; } .btn-outline-neon    { color: #a8d42e; background-color: transparent; background-image: none; border-color: #a8d42e; } .btn-outline-neon:hover    { color: #4d4d4d; background-color: #a8d42e; background-image: none; border-color: #a8d42e; }

/* header */
body > header { z-index: 1050; }
.search-form .btn-white { border-color: #ced4da; border-left-width: 0; }

/* nav */
.navbar-brand { margin: auto; }
.navbar-brand img { min-width: 220px; }

/* carousel */
#banner .carousel-caption { color: #4d4d4d; text-align: left; }
#banner .carousel-caption>div { background-color: rgba(255, 255, 255, 0.75); padding: 1rem 2rem; }
#banner .carousel-caption .h1 { font-size: 1.5rem; }

/* cta_grid */
.cta_grid_item { position: relative; }
.cta_grid_item .cta_grid_overlay { background-color: rgba(0, 36, 93, .85); position: absolute; top: calc(100% - 3.5rem); right: 0; bottom: 0; left: 0; display: grid; transition: top 100ms ease 0s; }
.cta_grid_item .cta_grid_overlay .cta_grid_overlay_content { margin: auto; }
.cta_grid_item .cta_grid_overlay .cta_grid_overlay_content .cta_grid_content { line-height: 1.6; }
.cta_grid_item .cta_grid_overlay .cta_grid_overlay_content .cta_grid_content, .cta_grid_item .cta_grid_overlay .cta_grid_overlay_content .cta_grid_link { display: none; }
.cta_grid_item:hover .cta_grid_overlay { top: 0; transition: top 500ms ease 0s; }
.cta_grid_item:hover .cta_grid_overlay .cta_grid_title { display: none; }
.cta_grid_item:hover .cta_grid_overlay .cta_grid_overlay_content .cta_grid_content, .cta_grid_item:hover .cta_grid_overlay .cta_grid_overlay_content .cta_grid_link { display: block; }

/* blog feed */
.blog-img { border-bottom-right-radius: 50%; margin-bottom: 1rem; }
.blog-tag a { color: #4d4d4d; }

/* testimonial slider */
#carouselTestimonial .carousel-caption { padding: 0 15%; }

/* wavy bars */
.alignfull {margin-left: calc(50% - 50vw);margin-right: calc(50% - 50vw);max-width: 100vw;width: 100vw;}
.alignfull img { width: 100vw; }
#self-funded { background: #00255c url('/wp-content/themes/jw-bootstrap/images/wavecut.png') repeat; }
#find-expert { background: #9fa738 url('/wp-content/themes/jw-bootstrap/images/wavecut.png') repeat; }
#self-funded h2, #find-expert h2 { margin: 0; color: #fff; }
#self-funded .btn.btn-lg, #find-expert .btn.btn-lg { margin-left: 3em; padding: 12px 36px; font-size: 1.3125rem; color: #fff !important; border: 2px solid #fff; }
#self-funded .btn.btn-lg:hover, #find-expert .btn.btn-lg:hover { color: #444 !important; background-color: #fff; }
#find-expert .btn, #self-funded .btn { position: inherit; display: block; width: fit-content; margin-left: auto !important; margin-right: auto !important; margin-top: 15px; }
#find-expert, #self-funded { padding-right: 0; position: inherit; }

/* find agent */
#search.form-control { margin-left: 1rem; width: 14rem; max-width: 40rem; }
.office-list-contact { margin-left: 0; padding-left: 1.2rem; list-style: circle; font-size: 1rem; }
.office-list-contact li { float: left; margin-bottom: 1rem; width: 100%; }

/* group captives */
.wp-block-quote.testimonial { margin: 0 auto 1.5rem; padding: 1.5rem 5rem; max-width: 50rem; border-top: 1px solid #808080; border-bottom: 1px solid #808080; }
.wp-block-quote.testimonial p { margin-bottom: 0.5rem; font-size: 1.5rem; font-weight: 700; font-style: oblique; text-indent: -0.375em; }
.wp-block-quote.testimonial cite { display: block; text-align: right; }

/* news feed */
#news-feed .blog-post { aspect-ratio: 1 / 1; overflow: hidden; border-bottom-right-radius: 50%; }

/* research center */
#research-center .card-img-top { position: relative; top: 50%; transform: translateY(-50%); }
#research-center .card > a { aspect-ratio: 2 / 1; overflow: hidden; }

/* footer */
#inner-footer a { color: #656565; font-weight: 400; } /* weight was 300 */
#inner-footer .widget_nav_menu h4 { color: #00245d; font-weight: 700; }
#inner-footer .widget_nav_menu ul { list-style: none; padding-inline-start: 0; line-height: 1.75; }
#menu-footer-nav { list-style: none; padding-inline-start: 0; margin: 0; }
#menu-footer-nav li { padding: 0 10px; }
#menu-footer-nav li:last-of-type { border-right-width: 0; }
#parent-company { background-color: #898989; }

/* media queries */
/* Extra Small Devices, Phones */
@media only screen and (min-width : 576px) {
  h1, .h1 { font-size: 2rem; }
  h2, .h2 { font-size: 1.75rem; }
  h3, .h3 { font-size: 1.5rem; }
  #banner .carousel-caption .h1 { font-size: 1.75rem; }
  .office-list-contact li { width: 50%; }
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
  h1, .h1 { font-size: 2.5rem; }
  h2, .h2 { font-size: 2rem; }
  h3, .h3 { font-size: 1.75rem; }
  #banner .carousel-caption { right: 30%; }
  #banner .carousel-caption .h1 { font-size: 2rem; }

  #find-expert, #self-funded { padding-right: 300px; position: relative; }
  #find-expert .btn, #self-funded .btn { position: absolute; right: 50px; top: 50%; transform: translateY(-50%); margin: 0; }
  .office-list-contact li { width: 33.333333%; }

  #menu-footer-nav li { display: inline-block; border-right: 1px solid #656565; }
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
  #banner .carousel-caption { right: 45%; font-size: 1.5rem; }
  #banner .carousel-caption .h1 { font-size: 2.5rem; }
  .office-list-contact li { width: 25%; }
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
}