/*
Theme Name: Ideal Search Gutenberg Theme
Theme URI: https://github.com/WordPress/gutenberg-theme/
Author: wordpressdotorg
Author URI: https://wordpress.org
Description: Showcasing themeing with Gutenberg.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: gutenbergtheme
Tags: translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

gutenbergtheme is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 62.5%;
  /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2.44em;
  margin: 0.67em 0;
  line-height: 1.4;
}

h2 {
  font-size: 1.95em;
  line-height: 1.4;
}

h3 {
  font-size: 1.56em;
  line-height: 1.4;
}

h4 {
  font-size: 1.25em;
  line-height: 1.5;
}

h5 {
  font-size: 1em;
}

h6 {
  font-size: 0.8em;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
  border-radius: 0px;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #444;
  font-family: "Open Sans", serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
  font-weight: 300;
}
.entry-header{
  text-align: center;
}
.entry-header .entry-title {
  font-size: 2.44em;
  line-height: 1.4;
  margin: 1em 0;
  font-weight: 900;
}
.entry-header.has-md-blue-background-color a{
color:#fff;
}
.entry-header.has-md-blue-background-color a:hover{
color:#00a7d7;
}
dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

.archive .site-header {
	margin-bottom: 3.5em;
}

.site-title {
	font-size: 18px;
	line-height: 1.2;
	color: #333332;
  margin: 0 auto;
}

.site-title a {
	text-decoration: none;
	color: inherit;
}

.site-description {
	margin: .4375em 0 0;
	font-size: 17px;
	font-weight: inherit;
	line-height: 1.4;
	word-wrap: break-word;
	color: #929292;
}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */ }

blockquote, q {
  quotes: "" "";
}
blockquote p{
padding-left: 1em;}
  blockquote:before, blockquote:after, q:before, q:after {
    content: ""; }

hr {
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul, ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
a.button, a.button:visited, button, button:visited,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
   /* Improves usability and consistency of cursor style between image-type 'input' and others */
   font-size: 14px;
   font-size: 1.4rem;
   line-height: 1.25;
   padding: 1em 1.5em;
     background: #f75414;
     border: 2px solid #f75414;
     color: #fff;
     display: inline-block;
     margin: 20px auto;
     text-transform: uppercase;
     text-align: center;
     -webkit-transition: all 0.25s ease-in-out;
     -moz-transition: all 0.25s ease-in-out;
     -o-transition: all 0.25s ease-in-out;
     -ms-transition: all 0.25s ease-in-out;
     transition: all 0.25s ease-in-out;
     text-decoration: none;
     font-weight: 900;
     letter-spacing: 1px;
}

a.button:hover, button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  background: #b33200;
    border-color: #b33200;
    color: #fff;
}

.wp-block-button__link:active, .wp-block-button__link:focus, .wp-block-button__link:hover, .wp-block-button__link:visited {
    color: #fff;
}

.wp-block-button__link:active, .wp-block-button__link:focus, .wp-block-button__link:hover{
  background-color: #121212;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 0px;
  padding: 11px;
  line-height: 1.5;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #2c48b6;
  text-decoration: none;
}

a:hover, a:focus, a:active {
  color: #00a7d7;
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
/* Header
-------------------------------------------------------------- */
.site-title a{
  text-transform: uppercase;
  font-size: 4em;
  text-align: center;
    background: url(/wp-content/uploads/2019/11/ideal_search_logo.png) no-repeat;
    display: inline-block;
    text-indent: -9999px;
    width: 200px;
    height: 92px;
    background-size: contain;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.site-description{display: none;}
.site-header {
  width: 100%;
  display: inline-block;
  z-index: 901;
  top: 0px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding-top: 15px;
  background-color: #ffffff;
  border-bottom: 1px solid #00a7d7;
  float: left
}
header nav {
  float: right;
}
.menu-main-nav-container, .menu-main-container {
  float: right;
}
header nav ul {
  list-style: none;
  margin: 0;
}
header nav ul li {
  position: relative;
  display: inline-block;
}
header nav ul li a{
  color: #5d5f5e;
  font-size: 16px;
  border-bottom: 2px solid transparent;
  margin: 2px 1vw 0 1vw;
}
header nav > ul li:last-child a{
  padding-right: 0;
}

li.current-menu-item > a, header ul > li a:hover, header nav ul li.menu-item-has-children:hover > a, header nav ul li.menu-item-has-children.current-menu-parent > a, .current-menu-ancestor > a, header nav a:hover, li.menu-item-has-children:hover, .sub-menu li.current-menu-item > a{
    color: #00a7d7;
}
.sub-menu li.current-menu-item > a{
  border-color: transparent;
}
ul.sub-menu {
    display: none;
    background: rgba(255, 255, 255, 0.8);
}
.sub-menu li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}
ul.sub-menu a{
    color: #333;
    display: inline-block;
    width: 100%;
    margin: 0;
    padding: 10px;
}
.sub-menu ul.sub-menu {
    left: 225px;
    top: 0;
}
ul > li.menu-item-has-children > ul li a:hover {
    background-color: #ecedee;
}
.main-navigation {
    float: right;
    display: inline-block;
    margin: 0 auto;
    text-align: left;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul li.focus > ul {
  display: block;
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

.menu-toggle {
  padding: 1em;
}
.social-group{
  padding: 0 0 10px 0;
}
.social-group a {
    padding: 5px;
    color: #fff;
    background-color: #2c48b6;
    display: inline-block;
    text-align: center;
    line-height: 30px;
    background-image: url(/wp-content/themes/130176-IdealSearch.com/svg/iconmnstr-icons.svg);
    height: 48px;
    width: 48px;
    margin: 0 2px;
    background-position-x: 0;
    -webkit-background-size: 336px 48px;
    background-size: 336px 48px;
    -webkit-transition: background-color 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out;
    -ms-transition: background-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out;
    border: 1px solid transparent;
  }
.social-group a:hover {
    background-color: #222;
}
a #phone {
    background-position-x: -48px;
}
a#linkedin {
    background-position-x: -96px;
}
a#twitter {
    background-position-x: -144px;
}
a#facebook {
    background-position-x: -192px;
}
a#instagram {
    background-position-x: -240px;
}
a#youtube{
    background-position-x: -289px;
}
@media screen and (max-width: 768px) {
  .site-title {
    margin: 0;
    font-size: 20px;
  }
  .site-title a {
    margin-bottom: 0px;
}
	/* Small menu.
	.menu-toggle,
	.main-navigation.toggled ul {
		display: block;
    margin: 0 auto;
	}*/
}

@media screen and (min-width: 769px) {

  .main-navigation ul ul {
  	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  	float: left;
  	position: absolute;
  	top: 100%;
  	left: -999em;
  	z-index: 99999;
    text-align: left;
  }
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 auto 60px;
  max-width: 636px;
	overflow: hidden;
  padding-bottom: 60px;
}

.nav-links {
	display: flex;
}


.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	width: 50%;
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text, .home .entry-header.has-md-blue-background-color {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}
/*--------------------------------------------------------------
# Utility Classes
--------------------------------------------------------------*/
.container {
  position: relative;
  width: 92%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0;
}
.container:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* clear floats*/
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.clearfix {
  display: inline-block;
}
html[xmlns] .clearfix {
  display: block;
}
* html .clearfix {
  height: 1%;
}
.clear {
  clear: both;
}
.pos-rel{ position: relative;}

.w-20 { width: 20%; }
.w-25 { width: 25%; }
.w-33 { width: 33.33%; }
.w-66 { width: 66.66%; }
.w-50 { width: 50%; }
.w-75 { width: 75%; }
.w-100 { width: 100%; }

.left{float: left;}
.right { float: right; }

.tc { text-align: center; }
.tl { text-align: left; }
.tr { text-align: right; }

.lh1 { line-height: 1em; }
.lh2 { line-height: 1.25em; }

.ma0 { margin: 0 0 0 0; }
.m0a { margin: 0 auto; }
.mb0 { margin-bottom: 0; }
.ml0 { margin-left: 0; }
.mr0 { margin-right: 0; }
.mla { margin-left: auto; }

.mv1 { margin: .5rem 0; }
.mv2 { margin: 1rem 0; }
.mv3 { margin: 1.5rem 0; }
.mv4 { margin: 2rem 0; }

.mt0 { margin-top: 0;}
.mt4 { margin-top: 4rem;}
.mt6 { margin-top: 6rem;}
.mb0 { margin-bottom: 0;}
.mb4 { margin-bottom: 8vh;}

.pa1 { padding: .5rem; }
.pa2 { padding: 1rem; }
.pa3 { padding: 1.5rem; }
.pa4 { padding: 2rem; }
.pa5 { padding: 2.5rem; }

.pl1 { padding-left: .5rem; }
.pl2 { padding-left: 1rem; }
.pl3 { padding-left: 1.5rem; }
.pl4 { padding-left: 2rem; }

.pr1 { padding-right: .5rem; }
.pr2 { padding-right: 1rem; }
.pr3 { padding-right: 1.5rem; }
.pr4 { padding-right: 2rem; }

.pv1 { padding: .5rem 0; }
.pv2 { padding: 1rem 0; }
.pv3 { padding: 1.5rem 0; }
.pv4 { padding: 4rem 0; }

.pt1 { padding-top: .5rem; }
.pt2 { padding-top: 1rem; }
.pt3 { padding-top: 1.5rem; }
.pt4 { padding-top: 2rem; }

.font { font-family:  'Montserrat', Helvetica, sans-serif; }
.d-font { font-family: 'EB Garamond', Georgia, serif; }
.italic{font-style: italic;}

.col-contain{
  display: inline-block;
  width: 100%;
}
.col-contain > div.w-50:nth-child(odd){
  padding-right: 40px;
  padding-left: 0px;
}
.col-contain > div.w-50:nth-child(even){
  padding-left: 40px;
  padding-right: 0px;
}
.md-grey-bg{
  background-color: #ccd4dc;
}
.grey-bg{
	background-color: #f7f7f7;
}

.fz2{
	font-size: 20px;
	line-height: 1.5;
}
/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft,
.alignright {
	max-width: 636px !important;	/* Let's work to make this !important unnecessary */
}

.alignleft img,
.alignright img,
.alignleft figcaption,
.alignright figcaption {
	max-width: 50%;
	width: 50%;
}

.alignleft figcaption {
	clear: left;
}

.alignright figcaption {
	clear: right;
}

.alignleft img,
.alignleft figcaption {
  float: left;
  margin-right: 1.5em;
}

.alignright img,
.alignright figcaption {
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}


/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget-area {
	width: 25%;
}

.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
#page {
  margin: 0 auto;
  max-width: 100%;
  float: left;
  width: 100%;
}

.site-branding {
  text-align: center;
  float: left;
}

.footer1, .footer2, .footer3 {
	float:left;
}

.footer2 {
	text-align:center;
}

.footer3{
	text-align:right;
	padding-top:25px;
}

.site-footer {
  margin: 5px 0 0 0;
  background-color: #ecedee;
  font-size: 1.5rem;
}
.site-footer img{
  padding: 8px 10px;
}
.site-copy{
  margin-top: 4vh;
}
.site-footer .social-group {
display: inline-block;
}
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.page-header,
.search .entry-header,
.entry-footer,
.site-info,
.post-navigation,
.page-navigation,
.comments-area,
.not-found .page-content,
.search .entry-summary {
  margin: 1.5em auto;
  padding-left: 14px;
  padding-right: 14px;
  max-width: 1024px;
}

.site-info, .site-footer{
  margin-bottom:0px;
}
.entry-header .wp-post-image {
  margin-bottom: 1.5em;
}

.entry-footer span{
  margin-right: 1em;
}

.entry-footer{
  color: #aaa;
  font-size: 90%;
  padding-bottom: 40px;
}
.type-post .entry-footer, .type-page .entry-footer{
  border-bottom: 1px solid #ccc;
}
.type-post:last-child .entry-footer, .type-page:last-child .entry-footer{
  border-bottom: none;
}
ul.post-categories{
  list-style-type: none;
}
.post-categories li{
  display: inline-block;
  padding: 5px 10px;
}
.type-post .entry-header .entry-title{
  margin:40px auto 10px;
}
.post-categories, .post-meta{
  font-size: 14px;
}
@media screen and (min-width: 664px) {
  .entry-header,
  .page-header,
  .entry-footer,
  .site-info,
  .post-navigation,
  .page-navigation,
  .comments-area,
  .not-found .page-content,
  .search .entry-summary {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.3333333333%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.6666666667%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.2857142857%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.1111111111%;
}

.gallery-caption {
  display: block;
}
/*--------------------------------------------------------------
## SVG Styles
--------------------------------------------------------------*/
/* back to top arrow */
#lnkBackToTop {
    display: block;
    font-size: 38px;
    opacity: 0;
    position: fixed;
    z-index: 900;
    bottom: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    color: #000000;
    background: #ffffff;
    border-radius: 50%;
    text-align: center;
    transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    line-height: .9em;
    border:1px solid #000000;
}
.uparrow{
    fill:#000000;
}
#lnkBackToTop.visible {
    opacity: 1;
}
#lnkBackToTop:hover{
  cursor: pointer;
  border-color: #00a7d7;
  background-color: #00a7d7;
}
#lnkBackToTop:hover .uparrow{
    fill:#ffffff;
    transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
}
/*--------------------------------------------------------------
# Custom Ideal Search Styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Color Palette
--------------------------------------------------------------*/
/* background colors */
.has-md-blue-background-color{
  background-color: #2c48b6;
  color: #ffffff;
}
.home .entry-content{
  margin: 0 auto;
}
/* box row */
.entry-content > .box-row-block {
    display: inline-block;
    max-width: 100%;
    width:100%;
    margin: 10vh auto 0px auto;
float: left;
}
.home .entry-content > .box-row-block {
  margin-top: 0;
}
.box-row-block > .w-33{
border: 5px solid #fff;
position: relative;
  min-height:33vw;
  text-align: center;
  display: flex;
}
.wording-box{
  padding: 10px;
}
.job-box{
  width: 100%;
}
.job-box h3{
  margin:10px auto;
}
.job-box a{
  display: inline-block;
}
/* possible Job Box Styles 
.job-box h3 {
    margin: 10px auto;
    font-weight: 900;
    color: #061030;
}
.lt-blue-bg{
      background-color: #d1edf5;
}
END possible Job Box Styles */
.job-title{
  font-size: 20px;
  line-height: 1.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  width: 100%;
}
.job-local{
  display: block;
  margin-bottom: 20px;
  float: left;
  line-height: 1;
}
.job-card {
    margin: 10px 5px;
}
/* job board jb */
.jb--wrapper input {
    height: inherit !important;
}
.jb--wrapper .jb--button {
    background-color: #333 !important;
    border: none !important;
    color: #fff !important;
    border-radius: 50px;
    margin-top:0;
}
.jb--wrapper .jb--button:hover {
    background-color: #121212 !important;
}
.jb--wrapper input[type=text],
.jb--wrapper input[type=email],
.jb--wrapper input[type=tel],
.jb--wrapper .jb--button {
    height: 44px !important;
}
.jb--wrapper .jb--pagination .jb--button {
    background: none !important;
    border: none !important;
    color: #2c48b6 !important;
    padding: 6px 8px !important;
    font-size: 18px !important;
}
.jb--wrapper .jb--pagination .jb--button:hover {
    background: initial !important;
    color:#333 !important;
}
.jb--wrapper .jb--pagination .jb--button-active {
    color: #222 !important;
    border: none !important;
}
.jb--wrapper .jb--pagination .jb--button.disabled {
    color: #cfcfcf !important;
}
.box-row-block h2{
  color:#2c48b6;
  font-weight: 300;
  font-size: 60px;
  display: flex;
align-items: center;
}
.image-box>div{background-size:cover;position:absolute;top:0;bottom:0;width:100%}
.flip{opacity:0}
.image-box:hover .flip{opacity:1}
.image-box div,.flip,.static{-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;-ms-transition:all .5s ease;transition:all .5s ease}
.image-box div:last-of-type{transform:rotatey(180deg)}
.image-box:hover div:first-of-type{transform:rotatey(180deg)}
.image-box:hover div:last-of-type{transform:rotatey(0deg)}

.image-box .static, .image-box .flip{
  width:100%;
  background-size: cover;
  background-position: center;
}

/* END box row */
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
  padding-left: 0px
}
.wp-block-media-text.has-media-on-the-left .wp-block-media-text__content{
  padding-right: 0px
}
@media only screen and (max-width: 1515px) {
    .menu-item-has-children:last-child:hover ul.sub-menu {
        right: 0;
    }
  }
  /* Those wide screens above 1280px */
  @media only screen and (min-width: 1281px) {

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

  }
  @media only screen and (max-width: 1180px) {
.box-row-block h2{
    font-size: 4vw;
}
.box-row-block > .w-33 {
min-height: 40vw;
}
  }
  @media only screen and (max-width: 1024px) {
    .site-header{
      padding-top:5px;
    }
.site-title a{
  width: 150px;
height: 69px;
margin-top: 5px;
}
.social-group{
  padding-bottom: 0px;
}

  }
  /* Smaller than standard 960 (devices and browsers) */
  @media only screen and (max-width: 959px) {
    header nav ul li a{
      margin: 2px .5vw 0 .5vw;
    }
    .job-title{
      font-size: 18px;
    }
    .job-local{
      font-size: 14px;
    }
    .box-row-block > .w-33 {
    min-height: 48vw;
  }
  }
  @media only screen and (max-height: 700px) {

  }
  /* Tablet Portrait size to standard 960 (devices and browsers) */
  @media only screen and (min-width: 768px) and (max-width: 959px) {

  }
  @media only screen and (min-width: 768px){
    #site-navigation{
      display: block !important
    }
    header nav ul li a {
      padding-bottom: 19px;
      display: inline-block;
    }
    header nav ul li {
      float: left;
      position: relative;
    }
    .main-navigation ul li:hover > ul {
    display: block;
    left: auto;
}
    .menu-item-has-children:hover > ul.sub-menu {
        display: block;
    }
    ul li:hover > ul,
    ul li:focus-within > ul, /* this is the line we add */
    ul li ul:hover {
      visibility: visible;
      opacity: 1;
      display: block;
    }

    .slide-menu{
      height:0;
          position: fixed;
          z-index: 5;
          left: 0;
          top: 109px;
          right: 0;
          bottom: 0;
          background-color: rgb(0,0,0);
          background-color: rgba(0,0,0, 0.9);
          overflow-x: hidden;
          transition: 2.5s;
    }
    .slide-menu.open{
      height: 100%;
    }
    ul.sub-menu{
      width: 225px;
      position: absolute;
      z-index: 999;
      text-align: left;
    }
    #mobile-menu {
        display: none;
    }
    ul.listcol2 {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
    .box-row-block > .w-33:first-child{
      border-left: none;
    }
    .box-row-block > .w-33:last-child{
      border-right: none;
    }
    #sidebar, #blog-sidebar{
      padding-left: 40px;
    }
    .social-group{
  display: flex;
  justify-content:flex-end;
}
.gform_wrapper, .entry-content > .alignwide.normal-width {
    max-width: 800px !important;
    margin: 0 auto !important;
    clear: both;
}

.gform_wrapper ul.gform_fields li.gfield.half {
    clear: none;
    float: left;
    width: 50%;
    margin-bottom: 16px;
}
ul.gform_fields {
    max-width: 100% !important;
}

  }

  /* All Mobile Sizes (devices and browser) */
  @media only screen and (max-width: 768px) {
    h1 {
      line-height: 1.5em;
      font-size: 38px;
      font-size: 3.8rem;
    }
    h2 {
      line-height: 1.5em;
      font-size: 28px;
      font-size: 2.8rem;
    }
    h3 {
      line-height: 1.5em;
      font-size: 24px;
      font-size: 2.4rem;
    }
    h4 {
        line-height: 1.5em;
        font-size: 20px;
        font-size: 2.0rem;
    }
    h3.side-title, .callout {
    font-size: 20px;
}
#mobile-menu, .menu-toggle {
      display: inline-block;
      padding-right: 40px;
      height: 40px;
      margin-top: 20px;
      position: relative;
      float: right;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      -o-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
      cursor: pointer;
      text-transform: uppercase;
      font-weight: bold;
      letter-spacing: .5px;
      font-size: 14px;
      line-height: 1;
      color: #5d5f5e;
      background-color: transparent;
      border:none;
      margin: 0 auto 10px;
  }
  #mobile-menu span {
      display: block;
      position: absolute;
      height: 2px;
      width: 30px;
      background: #5d5f5e;
      opacity: 1;
      right: 0;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: .25s ease-in-out;
      -moz-transition: .25s ease-in-out;
      -o-transition: .25s ease-in-out;
      transition: .25s ease-in-out;
  }
  #mobile-menu span:nth-child(1) {
    top: 10px;
  }
  #mobile-menu span:nth-child(2),#mobile-menu span:nth-child(3) {
    top: 18px;
  }
  #mobile-menu span:nth-child(4) {
    top: 26px;
  }
  #mobile-menu.open span:nth-child(1) {
    top: 10px;
    width: 0%;
    right: 15px;
  }
  #mobile-menu.open span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #mobile-menu.open span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  #mobile-menu.open span:nth-child(4) {
    top: 10px;
    width: 0%;
    right: 15px;
  }
    header nav ul li {
      width: 100%;
      text-align: center;
      margin: 0;
      padding: 0;
    }
    header nav ul li a {
      padding: 10px 0;
      margin: 0 auto;
      display: inline-block;
      width: 100%;
    }
    .menu-arrow{
      display: initial;
      width: 40px;
    }
    .menu-arrow{
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  padding: 22px;
  color: #49494b;
}
.menu-item-has-children .menu-arrow:after {
  content:'';
  background-image: url(/wp-content/themes/130176-IdealSearch.com/svg/down-arrow.svg);
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: center;
  float: right;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  padding: 20px;
}
.menu-item-has-children.close a{
  background: #24bdca;
  color: #fff;
}
.menu-item-has-children .menu-arrow.close:after{
  transform: rotate(180deg);
}
    ul.sub-menu {
      top: 0;
      margin: 0 auto;
      width: 100%;
    }
    li.menu-item-has-children:hover {
      border-bottom: none;
    }
    li.current-menu-item > a, header ul > li a:hover, header nav ul li.menu-item-has-children:hover > a, header nav ul li.menu-item-has-children.current-menu-parent > a {
        border-color: transparent;
        background-color: #eee;
    }
a.clearfix.call, header .social-group.clearfix {
  display: none;
}
.social-group{
  text-align: right;
}
    .social-group a{
      height: 38px;
      width: 38px;
          background-position-x: -30px;
      -webkit-background-size: 336px 48px;
      background-size: 326px 38px;
    }
    a#linkedin {
    background-position-x: -107px;
}
a#facebook {
    background-position-x: -183px;
}
a#youtube {
    background-position-x: -259px;
}
a#instagram {
    background-position-x: -222px;
}
a#phone{
      background-position-x: -69px;
}
    #site-navigation .menu-main-menu-container{
      background-color: #ccc;
      display: block;
      position: fixed;
      z-index: 100000;
      width: 100%;
    right: -100%;
      top: 102px;
      bottom: 0px;
      margin: 0;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: all 0.5s ease-in-out;
      -moz-transition: all 0.5s ease-in-out;
      -o-transition: all 0.5s ease-in-out;
      -ms-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out;
      overflow-y: scroll;
    }
    .fixed #site-navigation .menu-main-menu-container{
      top: 67px;
    }
    .fixed.site-header{
      padding-top: 8px;
    }
    .site-title a {
        width: 175px;
        height: 66px;
        margin-bottom: 15px;
    }
    .fixed .site-title a {
        width: 135px;
        height: 51px;
        margin-bottom: 8px;
    }
    #site-navigation.toggled .menu-main-menu-container{
    right: 0;
    }
    .next-page a, .past-page a {
        padding: 10px;
        font-size: 14px;
    }
    #content, #sidebar, .w-50, #blog-sidebar, .w-66, .w-33, .w-25, .site_by{
          width: 100%;
    }
    .featured-img {
        padding: 25vh 0 0vh 0;
    }
    .w-20{
      width: 50%;
    }
    .w-20, .w-25{
      margin-bottom: 40px;
    }
    .site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation{
      margin-bottom: 40px;
      padding-bottom: 30px;
    }
    .site_by{
      display: inline-block;
    }
    .col-contain > div.w-50:nth-child(odd), .col-contain > div.w-50:nth-child(even) {
        padding-left: 5px;
        padding-right: 5px;
    }
    .box-row-block h2 {
        font-size: 48px;
        text-align: center;
        display: inline-block;
        width: 100%;
    }
    .box-row-block > .w-33.image-box{
      width: 50%;
    }
    .separator{
      display: none;
    }
    .membership-logo{
      max-width: 200px;
    }
    .footer1, .footer2, .footer3{
      text-align: center;
    }
    .site-footer{
      padding-bottom: 60px;
    }
  }

.gform_wrapper_1 {
  width: 400px;
  margin:0 auto;
  border:1px solid navy;
}


.homepage_bottom_content {
	clear:both;
	background-color:#222;
	color: white;
	padding: 50px 0 50px 0;
}

  /* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
  @media only screen and (min-width: 480px) and (max-width: 767px) {

  }
  @media only screen and (max-width: 600px) {
  .wp-block-media-text>figure>img, .wp-block-media-text>figure>video{
    max-width: 400px
  }
}
  /* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
  @media only screen and (max-width: 500px) {
    body, article .post-meta{
      font-size: 14px;
      line-height: 1.5em;
    }
    .site-title a{
      width: 125px;
      height: 58px;
      margin-top: 12px;
    }
    #site-navigation .menu-main-menu-container{
      top: 99px;
    }
    a.arrow:before, .arrow:before {
    bottom: 1px;
  }
    h1 {
      line-height: 1.5em;
      font-size: 32px;
      font-size: 3.2rem;
    }
    h2 {
      line-height: 1.5em;
      font-size: 24px;
      font-size: 2.4rem;
    }
    h3 {
      line-height: 1.5em;
      font-size: 20px;
      font-size: 2.0rem;
    }
    h4{
        line-height: 1.5em;
        font-size: 18px;
        font-size: 1.8rem;
    }
    h3.side-title, .callout {
    letter-spacing: 2px;
    font-size: 14px;
    margin-bottom: 20px;
    }
    article .pg-title{
      font-size: 2em;
      line-height: 1.5em;
    }
    .site-title{
      font-size: 6px !important;
      line-height: 30px;
    }
    .menu-main-nav-container a, .menu-main-container a{
      font-size: 1em;
      line-height: 1.5em;
    }
    h1.post-title {
      font-size: 26px;
      font-size: 2.6rem;
	  color:#3a8298;
    }
    .social-group a{
      display: block;
    }
    a.button, button, html input[type="button"], input[type="reset"], input[type="submit"]{
    	font-size: 16px;
    }
    a.arrow.button:before {
    bottom: 14px;
    }
    .w-20{
        width: 100%;
    }
    #home-logo, h3.side-title, .callout, .pg-title {
        padding-bottom: 10px;
        margin-bottom: 20px;
      }
      .hentry {
        margin: 0 0 20px 0;
    }
    p.has-drop-cap:not(:focus)::first-letter {
        float: left;
        font-size: 4.4em;
    }
        .social-group a {
        display: inline-block;
        text-align: left;
        margin-bottom: 0px;
        float: none
    }
    .home .box-row-block > .w-33.image-box:nth-child(2){
      display: none;
    }
    .box-row-block > .w-33.image-box{
      width: 100%;
      min-height: 250px;
    }
  }

.jb--search-form-country-section .jb--search-keyword,.jb--wrapper .jb--search-form-country-section .jb--button, #angularcomplete-formatted_value, .jb--wrapper .jb--submit-resume p {display:none !important;}