/*Start - Request a Quote*/

.requestaquote_form .wpcf7 {
    margin: 16px 0px;
}

.requestaquote_form textarea {
    resize: none;
    height: 311px;
}

.requestaquote_form .sbHolder,
.requestaquote_form .sbSelector {
    height: 32px;
    line-height: 32px;
}

.requestaquote_form .submitbtn input {
    border: 3px solid #00aeef;
    background: none;
    border-radius: 10px;
    border-color: #fff;
    color: #fff;
    float: right;
    width: 100px;
    height: 42px;
}

.requestaquote_form .submitbtn input:hover {
    background: #fff;
    color: #24b0ed;
}

.requestaquote_form .wpcf7-spam-blocked,
.requestaquote_form div.wpcf7-validation-errors,
.requestaquote_form div.wpcf7-acceptance-missing,
.requestaquote_form div.wpcf7-mail-sent-ok {
    display: inline-block !important;
}

/* GD - #IN104825 - To fix error message div border wrapper around all form. */


.requestaquote_confirmation_message {
    font-size: 20px;
    color: #2ec5a1;
}
/* End - Request a Quote*/

/*Navbar Header*/

.navbar-container {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
}

.navigationTools {
    display: grid;
    grid-template-rows: 1fr 1fr;
}

#menu-primary-navigation > li a.dropdown-toggle {
    font-size: 18px;
    font-weight: 700;
    color: var(--primary) !important;
    border: none;
    padding: 15px;
    background: none;
}

#menu-primary-navigation > li a.dropdown-toggle:hover,
#menu-primary-navigation > li a.dropdown-toggle:focus {
    color: var(--secondary) !important;
	i {
		    color: var(--secondary) !important;
	  }
}

#menu-primary-navigation > li a.dropdown-toggle i {
    font-size: 18px;
    font-weight: 700;
    color: var(--primary);
    border: none;
}

.subHeader a.headerphone {
  color: #000;
}

.subHeader {
    display: grid;
    grid-template-columns: 1fr auto;
    justify-items: end;
    align-items: center;
}

.navigationTabs {
    display: grid;
    grid-template-columns: 1fr auto;
    justify-items: end;
}



.contactFormWrap {
	background: var(--primary);
	border-radius: 40px;
  padding: 30px 40px;
  margin-bottom: 30px;
  display: grid;
  grid-template-rows: auto 1fr;
}

.requestaquote_form input,
.requestaquote_form textarea,
.contactFormWrap input,
.contactFormWrap textarea,
.wpcf7 select {
    margin-top: 0;
    border: none;
    color: var(--grey);
    border-radius: 25px;
    padding: 0 20px 0 20px !important;
    height: 50px;
    width: 100%;
    background-color: var(--white);
}

.wpcf7 select:has( option[value=""]:checked ) {
    color: #b3b3b3;
    option {
        color: var(--grey);
    }
}

.requestaquote_form textarea,
.contactFormWrap textarea {
  height: 150px;
  min-height: 150px;
  margin-bottom: -5px;
}


.contactFormWrap textarea {
    resize:none;
    padding: 10px 20px !important;
}

.wpcf7 .pad-bot {
    padding-bottom: 15px;
}
.wpcf7-not-valid-tip {
	color: var(--red); /* Red */
	font-size: 12px;
	font-weight: normal;
	display: block;
	position: absolute !important;
	top: 15px;
	right: 50px;
}

textarea ~ span.wpcf7-not-valid-tip,
.dvCaptcha .wpcf7-not-valid-tip {
    top: 0px;
}
.dvCaptcha .wpcf7-not-valid-tip  {
  right: auto;
  left: 20px;
}

.FooterMailingList .wpcf7-not-valid-tip {
  margin-right: 105px;
}

.zipcodeRow #divMessage {
    position: absolute;
    color: var(--red);
    margin-top: 15px;
    width: 400px;
    max-width: 95vw;
}

.wpcf7 form .wpcf7-response-output {
	color: white;
	margin: 0;
	padding: 0.2em 1em;
	border: none;
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	background: var(--green) /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	background: var(--red) /* Red */
}

.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	background: var(--orange); /* orange */
}

.submitbtn {
    height: 40px;
}


.contactFormWrap .submitbtn {
    margin: auto;
    text-align: center;
}

.contactFormWrap .submitbtn input {
    background: transparent;
    color: var(--white);
    border: none;
    font-weight: normal;
    margin-right: 0px;
    width: 100%;
    height: 50px;
}

.contactFormWrap .submitbtn input:hover {
    background: transparent;
    color: var(--white);
}

.submitbtn .wpcf7-spinner {
  margin: 0;
}

/*MK - 22/07/2019 - Start - CSS for SB select box*/
.sbHolder a:focus {
  outline: 0 !important;
}

.sbHolder a:link {
  outline: 0 !important;
  text-decoration: none !important;
}

.sbHolder {
    border: none;
    color: #464646;
    border-radius: 20px;
    padding-left: 10px !important;
    height: 40px;
    width: 100%;
    background-color: white;
    position: relative;
    margin: auto;
    outline: 0px solid red !important;
}

.sbSelector {
    display: block;
    height: 40px;
    left: 0px;
    line-height: 40px;
    outline: none;
    overflow: hidden;
    position: absolute;
    text-indent: 10px;
    width: 100%;
    text-align: left;
    margin-left: 0px;
}

.sbSelector:link, .sbSelector:visited, .sbSelector:hover {
    color: #808080;
    outline: none;
    text-decoration: none;
}

.sbToggle {
    display: block;
    height: 30px;
    outline: none;
    position: absolute;
    right: 6px;
    top: 17px;
    width: 0;
    height: 22px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #666;
}

.sbToggleOpen {
    width: 0;
    height: 0px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #666;
    border-top: 0;
}

.sbHolderDisabled {
    background-color: #3C3C3C;
    border: solid 1px #515151;
}

.sbOptions {
    background-color: white;
    border: solid 1px white;
    list-style: none;
    left: 0px;
    margin: 0;
    padding: 0;
    position: absolute;
    width: 100%;
    z-index: 1;
    overflow-y: auto;
    max-height: 200px !important;
    border-radius: 0 0 20px 20px;
	-webkit-border-radius: 0 0 20px 20px;
	-moz-border-radius: 0 0 20px 20px;
}

.sbOptions li {
    padding: 0 1px;
}

.sbOptions a {
    text-align: left;
    display: block;
    outline: none;
    padding: 2px 0 2px 8px;
}

    .sbOptions a:link, .sbOptions a:visited {
        color: #808080;
        text-decoration: none;
    }

    .sbOptions a:hover, .sbOptions a:focus, .sbOptions a.sbFocus {
        background-color: #51AEDB;
        color:white;
    }

.sbOptions li.last a {
    border-bottom: none;
}

.sbOptions .sbDisabled {
    color: #808080;
    display: block;
    padding: 7px 0 7px 3px;
}

.sbOptions .sbGroup {
    color: #EBB52D;
    display: block;
    font-weight: bold;
    padding: 7px 0 7px 3px;
}

.sbOptions .sbSub {
    padding-left: 17px;
}
/*MK - 22/07/2019 - End - CSS for SB select box*/

/* faq page*/
.pageBanner.faqBanner {
  background: url(../img/faqsheader.jpg) center top repeat-x;
}

.no-padding {
    padding: 0 !important;
}

.standardRow .faq img {
    margin: 0px;
}

.question {
    font-weight: bold;
    word-break: break-word;
    color: #1caeec !important;
    font-size: 24px;
}

.answer {
    word-break: break-word;
}

.faqaccordion {
    display: flex;
    align-items: center;
}

.faqaccordion:hover {
    cursor: pointer;
}

.faq .active p, .faq .faqaccordion:hover p {
    color: #1caeec !important;
}

.faqpanel {
    padding: 0 18px;
    display: none;
    overflow: hidden;
    padding-bottom: 30px !important;
}

.ivContainer {
    /*display: table;*/
    padding-bottom: 15px !important;
}

.ivSubContainer {
    display: table-cell;
    vertical-align: top;
    float: none !important;
    min-width: 6.4vw;
    text-align: left;
}

.ivSubContain {
    display: table-cell;
    vertical-align: bottom;
    float: none !important;
    text-align: left;
}

.faqwhiteRow {
    padding-bottom: 10px;
}

.faqstandardRow {
    padding-top: 10px;
}

.faqstandardRow ol, .faqstandardRow ul {
    font-size: 20px;
    color: #464646;
    margin-top: 10px;
    line-height: 23px;
}
/* faq page*/

/*news-and-events*/
.pressreleaseList h3,
.pressreleaseList h3 a {
  color: #2BBBB4 !important;
  font-weight: 500;
}

.mtpressrelease a {
  border: 3px solid #2BBBB4 !important;
  background: url(../img/pressreleasehovericon.png) 15px 13px no-repeat;
  color: #2BBBB4 !important;
  font-weight: 700;
}

  .mtpressrelease a:hover,
  .mtpressrelease a:focus,
  .mtpressrelease a:active {
    border: 3px solid #2BBBB4 !important;
    background: url(../img/pressreleasehovericon.png) 15px -70px #2BBBB4 no-repeat !important;
    background-color: #2BBBB4 !important;
    color: #fff !important;
  }

.mtpressrelease.active a {
  border: 3px solid #2BBBB4 !important;
  background: url(../img/pressreleasehovericon.png) 15px -70px #2BBBB4 no-repeat !important;
  background-color: #2BBBB4 !important;
  color: #fff !important;
}

.contactFormWrap .gform_wrapper .gform_footer input.button {
  margin-right: 16px;
}

/*Accessibility*/
input:focus,
input:focus-visible,
input.btn:focus,
input.btn:active:focus,
input.btn:focus-visible,
textarea:focus,
textarea:focus-visible,
:not(.navbar-hamburger) button:focus,
:not(.navbar-hamburger) button:focus-visible,
:not(.navbar-hamburger) button:active,
:not(.navbar-hamburger) button:active:focus,
:not(.navbar-hamburger) button:active:focus-visible {
    outline: 1px solid var(--blue, #00A1E3);
    outline: 1px solid -webkit-focus-ring-color;
    outline-offset: 0;
}
@supports selector(:focus-visible) {
  :focus {
    outline: none !important;
  }
}
input:active {
  outline: none;
}
:focus-visible {
  outline: 1px solid var(--blue, #00A1E3) !important;
  outline: 1px solid -webkit-focus-ring-color !important;
  outline-offset: 0 !important;
}
button.btn:not(.btnWhite):focus {
    color: white;
}
div.chevronIcon:has(a:focus),
div.chevronIcon:has(a:focus-visible) {
    outline: none;
}
/*End Accessibility*/

#mega-menu-wrap-primary_navigation {
  width: 80%;
  float: right;
  margin-top: -25px;
}

/* GD - #IN104825 - To fix error message div border wrapper around all form. */
.wpcf7-response-output {
    display: inline-block;
}

@media (min-width:768px) and (max-width:991px) {
  .mtTabs li a {
    padding: 30px 0px 30px 82px;
  }

  .mtpressrelease a {
    background: url(../img/pressreleasehovericon.png) 10px 13px no-repeat;
  }

    .mtpressrelease a:hover,
    .mtpressrelease a:focus,
    .mtpressrelease a:active {
      background: url(../img/pressreleasehovericon.png) 10px -70px #2BBBB4 no-repeat !important;
    }

  .mtpressrelease.active a {
    background: url(../img/pressreleasehovericon.png) 10px -70px #2BBBB4 no-repeat !important;
  }

  .mtTabs li.mtNews a {
    padding: 30px 0px 30px 90px;
  }

  /*KB 19-11-2019 IN30461 IPAD-Android portrait mode. address overalap issue */
  .contactAddress {
    height: auto;
  }

  .columnRow [class*="homeCol"] h3 {
    min-height: 76px;
  }
}
/*news-and-events*/

/*KB 13-11-2019 IN30521 in iphone yes mark sybmol was overlapping */
@media handheld,only screen and (max-width:667px) {
  .checkList {
    padding-top: 2px;
  }
}

@media handheld,only screen and (max-width:767px) {
  .col5 {
    width: inherit;
  }

  .contactFormWrap .gform_wrapper .gform_footer input.button {
    margin-right: 0px;
  }
}

.pageBanner.hospitalBanner {
  background: url(../img/redihospitalbannerbg.jpg) center top repeat-x;
}

.padd0 {
  padding: 0px;
}
/*incident #IN30444*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .pum-container .pum-close {
    padding-right: 20px !important;
  }

  .searchForm .form-inline .input-group > .form-control {
    line-height: 3px !Important;
  }
}
/*incident #IN30452*/
.modal-header .close {
  margin-top: -11px;
}

@media handheld,only screen and (max-width:768px) {
  .postWrap .postImage img {
    margin: 30px 0px 0px 0px;
    width: unset;
  }
}

@media (max-width:768px) {
  .subLinks {
    padding-bottom: 10px;
    text-align: center;
  }

  .banner .searchForm {
    padding-bottom: 10px;
  }

  .sublinksbtn {
    text-align: left;
  }

  .sublinksnum {
    text-align: right;
  }

  #mega-menu-wrap-primary_navigation {
    width: 100%;
    float: none;
    margin-top: 0px;
  }
}

@media (max-width:414px) {
  .wpcf7-form input,
  .wpcf7-form textarea,
  .wpcf7 select, .sbHolder {
    font-size: 16px;
  }
}

.homeBtns .greenBtn a {
  padding: 15px 13px; /*incident #IN30502*/
}

.mega-menu-item-has-children .mega-sub-menu .mega-current-menu-item > a {
  background: #24b0ee !important;
  color: #fff !important;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    transition: transform .2s ease-in-out;
    transition-duration: 1s;
  }
}


::-webkit-input-placeholder {
  color: #b3b3b3;
  opacity: 1 !important; /* for older chrome versions. may no longer apply. */
}

:-moz-placeholder { /* Firefox 18- */
  color: #b3b3b3;
  opacity: 1 !important;
}

::-moz-placeholder { /* Firefox 19+ */
  color: #b3b3b3;
  opacity: 1 !important;
}

:-ms-input-placeholder {
  color: #b3b3b3 !important;
}

p.subheading {
    color: var(--white);
    font-size: medium;
}

.contactRow .pseudoRow {
    display: grid;
    grid-template-columns: calc((100% - 50px) * 0.55) calc((100% - 50px) * 0.45);
    gap: 50px;
    justify-content: space-between;
}
.gatedContentRow h5.homeTitle {
      color: var(--primary);
  }

.contactCardContent {
    display: grid;
    gap: 20px;
}

.defaultFooter .pseudoRow {
    display: flex;
    justify-content: space-around;
}

.contactFooterContent {
    display: grid;
    gap: 30px;
}

.navigationGrid {
  display: grid;
  gap: 30px;
  font-size: 18px;
  line-height: 22px;
}

.iconTextGrid {
    display: grid;
    grid-template-columns: 30px 1fr;
    align-items: center;
    gap: 20px;
    font-size: 18px;
    line-height: 1.1;
}

.contactCardContent .iconTextGrid {
    font-size: 15px;
}

.iconTextGrid a {
    text-decoration: none;
}

.iconTextGrid a:hover,
.iconTextGrid a:focus {
    text-decoration: underline !important;
}

.iconTextGrid .icon {
    font-size: 1.33333em;
    text-align: center;
    display: grid;
    justify-content: center;
}

.iconTextGrid .icon:has(.fa-map-marker) {
    font-size: 1.66667em;
}

.bkgWhite .iconTextGrid .noclip,
.bkgWhite .iconTextGrid .noclip a {
    color: var(--primary);
    background-color: var(--white);
}

.bkgWhite .iconTextGrid .noclip a:hover,
.bkgWhite .iconTextGrid .noclip a:focus {
  color: var(--primary);
  text-decoration: underline;
}

.socialFlex {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Glows Setup Defaults*/

.advancedShadow:after {
    content:'\00a0';
    position: absolute;
    background-size: 100%;
	z-index: -2;
	border-radius: inherit;
    top:-4px;
    left:-4px;
    width:calc(100% + 8px);
    height:calc(100% + 8px);    
    filter:blur(10px);
    opacity: 0.7;
}
.advancedShadow {
    position: relative;
    border-radius: 20px;
}

.advancedShadowAlt:before {
    content:'\00a0';
    position: absolute;
    background-size: 100%;
    z-index: -2;
    border-radius: inherit;
    top:-4px;
    left:-4px;
    width:calc(100% + 8px);
    height:calc(100% + 8px);
    filter:blur(10px);
    opacity: 0.7;
    z-index: 0;
}
.advancedShadowAlt {
    position: relative;
    border-radius: inherit;    
}

/* Glow Colour Defaults */

.advancedShadow:before, 
.advancedShadow:after {
		background: var(--secondary);
}

.advancedShadowAlt:before, 
.advancedShadowAlt:after {
		background: var(--secondary);
}


/* Advanced Gradients  - Replacement Glow Colours */

.bkgGradRainbowTL:before, .bkgGradRainbowTL:after{
		background: linear-gradient(135deg, var(--secondary) 0%, var(--tertiary2) 33%, var(--tertiary3) 66%, var(--tertiary1) 100%);
}

.bkgGradRainbowBR:before, .bkgGradRainbowBR:after{
		background: linear-gradient(315deg, var(--secondary) 0%, var(--tertiary2) 33%, var(--tertiary3) 66%, var(--tertiary1) 100%);
}


.bkgGradRainbowPOG:before, .bkgGradRainbowPOG:after{
		background: linear-gradient(90deg, var(--tertiary3) 0%, var(--pink) 25%, var(--tertiary1) 50%, var(--yellow) 75%, var(--tertiary2) 100%);
}

.bkgGradRainbowGOP:before, .bkgGradRainbowGOP:after{
		background: linear-gradient(90deg, var(--tertiary2) 0%, var(--yellow) 25%, var(--tertiary1) 50%, var(--pink) 75%, var(--tertiary3) 100%);
}

.bkgWhiteClean:before {
		content:'\00a0';
		background: white !important;
		position: absolute;
	    background-size: 100%;
	    z-index: -1;
	    border-radius: inherit;
	    top:0px;
	    left:0px;
	    width:100%;
		height:100%;
	}
  .bkgWhiteClean {
  z-index: 0;
}

.bkgWhite:before {
		content:'\00a0';
		background: white !important;
		position: absolute;
	    background-size: 100%;
	    z-index: -1;
	    border-radius: inherit;
	    top:0px;
	    left:0px;
	    width:100%;
		height:100%;
	}
  .bkgWhite {
	background: var(--secondary);
	color: transparent;
	background-clip: text;
}

.bkgWhite.bkgGradRainbowTL:before {
		content:'\00a0';
		background: white !important;
		position: absolute;
	    background-size: 100%;
	    z-index: -1;
	    border-radius: inherit;
	    top:0px;
	    left:0px;
	    width:100%;
		height:100%;
	}
  .bkgWhite.bkgGradRainbowTL {
	background: linear-gradient(135deg, var(--secondary) 0%, var(--tertiary2) 33%, var(--tertiary3) 66%, var(--tertiary1) 100%);
	color: transparent;
	background-clip: text;
}
.bkgWhite.bkgGradRainbowBR:before {
		content:'\00a0';
		background: white !important;
		position: absolute;
	    background-size: 100%;
	    z-index: -1;
	    border-radius: inherit;
	    top:0px;
	    left:0px;
	    width:100%;
		height:100%;
	}
  .bkgWhite.bkgGradRainbowBR {
	background: linear-gradient(315deg, var(--secondary) 0%, var(--tertiary2) 33%, var(--tertiary3) 66%, var(--tertiary1) 100%);
	color: transparent;
	background-clip: text;
}

/* Simple Gradients - Replacement Glow Colours */

.bkgGradBlue:before, .bkgGradBlue:after{
		background: var(--secondary);
}

.bkgGradBlueGreen:before, .bkgGradBlueGreen:after{
		background: linear-gradient(180deg, var(--secondary) 0%, var(--tertiary2) 100%);
}

.bkgGradGreen:before, .bkgGradGreen:after{
		background: var(--tertiary2);
}

.bkgGradGreenPurple:before, .bkgGradGreenPurple:after{
		background: linear-gradient(180deg, var(--tertiary2) 0%, var(--tertiary3) 100%);
}

.bkgGradPurple:before, .bkgGradPurple:after{
		background: var(--tertiary3);
}

.bkgGradPurpleOrange:before, .bkgGradPurpleOrange:after{
		background: linear-gradient(180deg, var(--tertiary3) 0%, var(--tertiary1) 100%);
}

.bkgGradOrange:before, .bkgGradOrange:after{
		background: var(--tertiary1);
}

.bkgGradOrangeBlue:before, .bkgGradOrangeBlue:after{
		background: linear-gradient(180deg, var(--tertiary1) 0%, var(--secondary) 100%);
}

.bkgGradBluePurpleH:before, .bkgGradBluePurpleH:after{
		background: linear-gradient(90deg, var(--secondary) 0%, var(--tertiary3) 100%);
}

.glowNavy {
    /* filter: drop-shadow(0px 0px 5px var(--halfnavy)); */
    /*iOS Bug*/
    box-shadow: 0 0 10px var(--halfnavy);
}
.glowNavy.zipcodePanel, 
.glowNavy.flipCardContainer {
    filter: drop-shadow(0px 0px 5px var(--halfnavy));
    box-shadow: none;
}

.glowBlue {
    /* filter: drop-shadow(0px 0px 10px var(--secondary)); */
    /*iOS Bug*/
    box-shadow: 0 0 20px var(--secondary);
}
.glowBlue.zipcodePanel,
.glowBlue.flipCardContainer {
    filter: drop-shadow(0px 0px 10px var(--secondary));
    box-shadow: none;
}

.glowGreen {
    /* filter: drop-shadow(0px 0px 10px var(--tertiary2)); */
    /*iOS Bug*/
    box-shadow: 0 0 20px var(--tertiary2);
}
.glowGreen.zipcodePanel,
.glowGreen.flipCardContainer {
    filter: drop-shadow(0px 0px 10px var(--tertiary2));
    box-shadow: none;
} 

.glowPurple {
    /* filter: drop-shadow(0px 0px 10px var(--tertiary3)); */
    /*iOS Bug*/
    box-shadow: 0 0 20px var(--tertiary3);
}
.glowPurple.zipcodePanel,
.glowPurple.flipCardContainer {
    filter: drop-shadow(0px 0px 10px var(--tertiary3));
    box-shadow: none;
}

.glowOrange {
    /* filter: drop-shadow(0px 0px 10px var(--tertiary1)); */
    /*iOS Bug*/
    box-shadow: 0 0 20px var(--tertiary1);
}
.glowOrange.zipcodePanel,
.glowOrange.flipCardContainer {
    filter: drop-shadow(0px 0px 10px var(--tertiary1));
    box-shadow: none;
}

.glowBlue > .bkgIcon {
    color: var(--secondary);
}

.glowGreen > .bkgIcon {
    color: var(--tertiary2);
}

.glowPurple > .bkgIcon {
    color: var(--tertiary3);
}

.glowOrange > .bkgIcon {
    color: var(--tertiary1);
}

/* Background Colours */

.bkgFillGradNavyBlue {
	background: linear-gradient(180deg, var(--primary) 50%,var(--secondary) 100%);
}

.bkgFillGradGreenNavyRtL {
	background: linear-gradient(90deg, var(--tertiary2) 0%,var(--primary) 100%);
}

.bkgFillNavy {
	background: var(--secondary);
}

.bkgFillBlue {
	background: var(--secondary);
}

.bkgFillGreen {
	background: var(--tertiary2);
}

.bkgFillPurple {
	background: var(--tertiary3);
}

.bkgFillOrange {
	background: var(--tertiary1);
}

/*Contact Form 7 Styles*/
.wpcf7-form {
	display: grid;
	gap: 25px;
}

.wpcf7-form > div,
.wpcf7-form > div > div {
  border-radius: 25px;
}

form.wpcf7-form textarea {
    padding-top: 20px !important;
    min-height: 100px;
    border-radius: 25px;
}

.requestaquote_form .wpcf7-form {
  grid-template-columns: 1fr 1fr;
}

.requestaquote_form .wpcf7-form .Message {
  grid-column: 1 / span 2;
}

.gridGroup {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 50px;
  align-items: stretch;
  /*iOS bug*/
  position: relative;
}

a:has(.featureBlock) {
  text-decoration: none;
  color: initial;
  display: block;
  width: 100%;
  height: 100%;
}

.featureBlock {
	border-radius: 50px;
	padding: 50px 30px;
  text-align: center;
  font-size: 18px;
  color: var(--primary);
  background: var(--white);
  width: 100%;
  height: 100%;
  /*iOS bug*/
  position: relative;
}

.featureBlock h5 {
	font-weight: 700;
  font-size: 24px;
  margin: 0;
}

.textBlock {
	border-radius: 20px;
	padding: 20px;
	margin-bottom: 30px;
}

.textBlock:has(.contactCardContent) {
  border-radius: 30px;
  padding: 30px 40px;
}

h5.contactCardTitle {
	font-size: 20px;
	font-weight: 800;
  margin: 0;
}

h5.contactFooterTitle {
	font-size: 24px;
	font-weight: 800;
	margin-top: 0px;
}

.bkgWhite h5.contactCardTitle {
	color: var(--primary);
  background-color: var(--white);
}

h5.contactUsTitle {
	font-size: 40px;
  color: var(--white);
  text-align: center;
  font-weight: 700;
  margin: 0;
}

.contactUsSubtitle {
	font-size: 20px;
  color: var(--white);
  text-align: center;
  margin-bottom: 20px;
  font-weight: 300;
}

h5.requestTitle {
	font-size: 40px;
  color: var(--primary);
  text-align: center;
  font-weight: 700;
}

.requestSubtitle {
	font-size: 18px;
  color: var(--primary);
  text-align: center;
  margin-bottom: 20px;
  font-weight: 300;
}

.sbHolder:has(.sbToggleOpen) {
	border-radius: 20px 20px 0px 0px;
}

.sbHolder:not(:has(.sbToggleOpen)) {
	border-radius: 20px 20px 20px 20px;
	transition-delay: 200ms;
}

/*Buttons and Inputs*/
a.noUnderline {
    color: transparent;
    text-decoration: none;
}

.inputContainer,
.FooterMailingList .wpcf7-response-output {
    position: relative;
    width: 400px;
    max-width: calc(100vw - 10px);
    border-radius: 50px;
}

.insideBtn{    
    position: absolute;
    right: 0px;
    font-size: 18px;
    height: 50px;
    border-radius: 50px;
    border: none;
    padding: 0 20px;
    z-index: 1;
}

.insideInput {
    margin-top: 0;
    border: none;
    color: #808080;
    border-radius: 25px;
    padding: 0 20px 0 20px !important;
    height: 50px;
    width: 100%;
    font-size: 18px;
}

/*Banner*/
body {
  padding-top: 0;
}

header.displayMobile {
    position: sticky;
    top: 0px;
    background: var(--white);
    z-index: 3;
}

header.banner.navbar.navbar-default {
  position: sticky;
  height: 160px;
  margin: 0;
  padding-top: 0px;
  display: flex;
  align-items: center;
  border-bottom: solid 2px var(--lightestgrey);
}

.search-form-container{
  border-radius: 50px;
}

header .search-form-container input[type="search"] {
    border-style: none !important;
    background: var(--white) !important;
    box-shadow: none !important;
    border-radius: 25px !important;
    height: 25px !important;
}
header .search-form-container span.input-group-btn {
  display: none !important;
}

/*Footer*/
Footer .footer {
    background: var(--primary);
    color: var(--white);
    padding: 50px 0px 30px 0px;
}

Footer .footer.requestaquote{
    background: var(--white);
    color: var(--primary);
    padding: 50px 0px 30px 0px;
}

.endFooter, .texasLaw {
    background: var(--primary);
    color: var(--white);
    font-size: 12px;
}
.texasLaw {
    padding-top: 10px;
}
.texasLaw p {
    color: var(--white);
}

.footerBreak {
    background: var(--primary);
    height: 1px;
    width: 100%;
    margin: 0 auto;
}

.breakLine {
    background: var(--white);
    height: 1px;
}

.FooterMailingList {
    text-align: center;
}

.footer input[type="email"]{
    margin-top: 0;
    border: none;
    color: #808080;
    border-radius: 25px;
    padding: 0 20px 0 20px !important;
    height: 50px;
    width: 100%;
}

.footer.defaultFooter input[type="submit"] {
    position: absolute;
    right: 0px;
    font-size: 18px;
    height: 50px;
    border-radius: 25px;
    background-color: var(--secondary);
    border: none;
    padding: 0 20px;
    z-index: 1;
}

.footer.requestaquote input[type="submit"] {
    right: 0px;
    font-size: 18px;
    height: 50px;
    border-radius: 25px;
    background-color: var(--secondary);
    border: none;
    padding: 0 20px;
    z-index: 1;
}

.footer input[type="submit"]:hover {
  color: var(--white);
	background-color: var(--tertiary1);
}

.footer.defaultFooter h5 {
	font-size: 24px;
	font-weight: 600;
	margin-top: 0;
  margin-bottom: 30px; 
}

.footerLogo {
	width: 200px;
	height: auto;
  margin-bottom: 50px;
}

/*cf7*/
.noSpinner span.wpcf7-spinner{
  display: none !important;
  visibility: hidden !important;
}

/*Replace Caret for input fields*/
span:has(select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required):after {
   content: "\f107";
   font-family: FontAwesome;
   font-size: 20px;
   color: var(--grey);
   position: absolute;
   right: 20px;
   top: 0;
   z-index: 1;
   text-align: right;
   width: fit-content;
   height: 100%;
   pointer-events: none;
   box-sizing: border-box;
}
select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required {
	appearance: none;
}
.textWhite.acceptanceCheckbox,
.textWhite.acceptanceCheckbox a {
    color: var(--white);
    font-weight: 300;
}

.textWhite.acceptanceCheckbox a,
.textNavy.acceptanceCheckbox a {
  text-decoration: underline;
}
.textWhite.acceptanceCheckbox .wpcf7-list-item,
.textNavy.acceptanceCheckbox .wpcf7-list-item {
    margin: 0;
}

.textNavy.acceptanceCheckbox,
.textNavy.acceptanceCheckbox a {
    color: var(--primary);
    font-weight: 300;
    grid-column: 1 / span 2;
}

.acceptanceCheckbox label{
    font-weight: 300;
    display: grid;
    grid-template-columns: 30px 1fr;
}
.acceptanceCheckbox input[type="checkbox"]{
    height: 20px;
    width: 20px;
}

.zipcodeResults .zipcodePanel {
  padding: 0px;
  background-color: var(--primary);
  border-radius: 30px;
  width: 270px;
  height: 205px;
}

#txtHint, #txtHint2 {
    display: flex;
    align-content: center;
    gap: 25px;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

#txtHint div.inside, #txtHint2 div.inside {
    aspect-ratio: 4/3;
    text-align: center;
    display: grid;
    align-content: center;
}

#txtHint div.inside .bigValue, #txtHint2 div.inside .bigValue{
    font-size: 48px;
    font-weight: 500;
    color: var(--white);
    line-height: normal;
    margin: 0;
}
#txtHint div.inside .bigMarket, #txtHint2 div.inside .bigMarket {
    font-size: 20px;
    font-weight: 700;
    color: var(--white);
    line-height: normal;
    margin: 0;
}

.pseudoRow {
  margin-right: -15px;
  margin-left: -15px;
  padding: 50px 0;
}
.container {
  max-width: 100%;
}

.RTL {
  direction: rtl;
}

.split-50 {
  grid-template-columns: 1fr 1fr !important;
}

.featureRow,
.titleRow {
  background: var(--white);
  color: var(--primary);
}

.featureRow .pseudoRow {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 100px;
}

.titleRow .pseudoRow {
  display: grid;
  gap: 20px;
  justify-items: center;
}

.alignCenter {
  align-items: center;
}

.homeContent {
  direction: ltr;
  display: flex;
  flex-direction: column;
  align-items: left;
  gap: 40px;
  width: 100%;
}

.homeTitle {
  font-size: 36px;
  font-weight: 700;
}

.homeAccentSubtitle {
  font-size: 20px;
  font-weight: 700;
  color: var(--secondary);
}

.homeSubtitle {
  font-size: 16px;
  font-weight: 400;
}

.titleRow .homeSubtitle {
  max-width: 650px;
}

.homeFeature {
  max-height: 465px;
  width: 465px;
  max-width: 100vw;
}

.homeFeature:not(:has(img)) {
  height: 465px;
  background-color: var(--grey);
}

.homeFeature:has(p) {
    background: var(--primary);
    color: var(--tertiary2);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    padding: 20px;
    gap: 5px;
    overflow: hidden;
}

.replaceText p {
    color: var(--tertiary2);
    font-size: 32px;
    font-weight: 700;
}

.homeFeature img {
  height: inherit;
  width: inherit;
  max-width: inherit;
  object-fit: contain;
}

.partnerRow {
  background: var(--white);
  color: var(--primary);
}

.partnerRow .pseudoRow {
  display: grid;
  grid-template-rows: auto 1fr;
  align-items: center;
  justify-content: center;
  justify-items: center;
  gap: 50px;
}

.homeCardContent {
    display: grid;
    grid-template-rows: auto auto 1fr;
    justify-items: center;
    align-items: start;
    justify-content: center;
    gap: 20px;
}

.brandRow {
  background-color: var(--white);
  color: var(--primary);
}

.brandRow .container {
  text-align: center;
}

.brandRow .homeTitle {
  text-align: center;
}

.brandRow .pseudoRow {
  color: var(--primary);
}

.brandRow .image-carousel {
  margin: 0;
}

.iconRow {
  background: var(--primary);
  color: transparent;
}

.iconRow .pseudoRow {
  display: grid;
  justify-content: center;
  align-items: center;
  text-align: center;
  grid-template-rows: auto 1fr;
  gap: 50px;
  background: linear-gradient(90deg, var(--tertiary2) 0%, var(--secondary) 33%, var(--tertiary3) 66%, var(--tertiary1) 100%);
  background-clip: text;
}

.iconTitle {
  font-size: 36px;
  font-weight: 700;
  margin: 0;
}

.iconGridRow {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 15px;
}

.iconFlexRow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px;
}

.iconGrid {
  width: 180px;
  height: 230px;
}

.segmentsAndDigital .iconGrid {
  width: 250px;
}

.iconGrid .iconContainer i {
  font-size: 65px;
}

.iconGrid .numberStat h5 {
  font-size: 36px;
  font-weight: 700;
}

.iconGrid .iconText h6 {
  font-size: 16px;
  font-weight: 700;
}

.iconGrid .iconSubtext h6 {
  font-size: 10px;
}

.flairRow {
  background: linear-gradient(90deg, var(--tertiary2), var(--primary));
  color: var(--white);
}

.flairRow .pseudoRow{
  display: grid;
  justify-content: space-between;
  align-items: center;
  grid-template-columns: auto auto;
}

.whyTitle,
.programmaticTitle {
  font-size: 36px;
  font-weight: 700;
  text-align: center;
}

.latestPostsRow .whyTitle,
.flairRow .whyTitle {
  text-align: unset;
}

.whySubtitle {
  font-size: 24px;
  font-weight: 300;
}

.programmaticSubtitle {
	font-size: 16px;
  color: var(--primary);
  text-align: center;
  margin-bottom: 20px;
  font-weight: 300;
}

.zipcodeRow {
  background: var(--white);
  color: var(--primary);
}

.zipcodeRow .pseudoRow {
  display: grid;
  justify-content: space-between;
  align-items: center;
  grid-template-columns: auto auto;
  gap: 50px;
}

.zipcodeTitle {
  font-size: 36px;
  font-weight: 700;
}

.submitting input.wpcf7-submit,
.FooterMailingList:has(input:placeholder-shown) input.wpcf7-submit {
  pointer-events:none;
}

a:has(>button.btn) {
  width: min-content;
}

.btnBlue {
  background-color: var(--secondary);
  color: var(--white);
  border-radius: 50px;
  height: 50px;
  font-size: 18px;
  width:fit-content;
  padding: 0 20px;
}

.btnBlue.submitbtn {
  padding: 0;
}


.btnBlue:hover {
  background-color: var(--tertiary1);
  color: var(--white);
}

header div.navbar-container .navbar-brand {
    float: left;
    padding: 0;
    font-size: 18px;
    line-height: 20px;
}

header div.navbar-container .navbar-brand img.img-responsive {
    height: inherit;
    max-height: 100%;
    object-fit: contain;
    max-width: 100%;
}

header.displayDesktop div.navbar-container .navbar-brand img.img-responsive {
  padding: 25px 0 5px 0;
}

header.displayMobile div.navbar-container .navbar-brand img.img-responsive {
  padding: 15px 5px;
}

 header.displayMobile div.navbar-container .navbar-brandimg.logo-primary {
  display: block;
}
header.displayMobile div.navbar-container .navbar-brand img.logo-tertiary {
  display: none;
}

@media (max-width: 400px) {
  header.displayMobile div.navbar-container .navbar-brand img.logo-primary {
    display: none;
  }
  header.displayMobile div.navbar-container .navbar-brand img.logo-tertiary {
    display: block;
  }
}



header.displayDesktop .navbar-brand {
  height: 90px;
}

header.displayMobile .navbar-brand {
  height: 80px;
}


.navbar-hamburger button.btnNone {
  border-radius: 50px;
  height: 50px;
  width:fit-content;
  padding: 0 20px;
  border: none;
  font-size: 24px;
  padding: 10px;
  text-align: center;
  display: flex;
  align-items: center;
  color: var(--navy);
  background: none;
}

.btnNavy {
  background-color: var(--primary);
  color: var(--white);
  border-radius: 50px;
  height: 50px;
  font-size: 18px;
  width:fit-content;
  padding: 0 20px;
}

.btnNavy:hover {
  background-color: var(--tertiary2);
  color: var(--white);
}

.btnNavy:focus {
  color: var(--white);
}

.btnWhite {
  background-color: var(--white);
  color: var(--primary);
  border-radius: 50px;
  height: 50px;
  font-size: 18px;
  font-weight: 700;
  min-width: 200px;
  width:fit-content;
  padding: 0 20px;
  position: relative;
}

.bkgIcon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: -1;
  font-size: 140px;
  opacity: 0.3;
}

.testimonialRow {
  background: var(--white);
  color: var(--primary);
}

.testimonialRowAdvanced {
  text-align: center;
  color: var(--primary);
  overflow: hidden;
}

.testimonialRowAdvanced h5{
  margin-bottom: 50px;
}

.testimonialRowAdvanced .splide__track {
  overflow: visible;
}

.testimonialRowAdvanced .splide__slide.item {
  display: flex;
  justify-content: center;
  background: none;
}

.testimonialRowAdvanced .splide__pagination__page.is-active {
  background: var(--primary);
  transform: scale(1);
  z-index: 1;
}

.testimonialRowAdvanced .splide__pagination {
  transform: translateY(30px);
}

button.splide__arrow {
    background-color: white;
    height: 50px;
    width: 50px;
    opacity: 1;
}

button.splide__arrow--prev {
    left: -25px;
    box-shadow: 0px 0px 20px var(--secondary);
}
button.splide__arrow--prev svg {
    fill: var(--secondary);
}

button.splide__arrow--next {
    right: -25px;
    box-shadow: 0px 0px 20px var(--secondary);
}
button.splide__arrow--next svg {
    fill: var(--secondary);
}

/* Alternate Arrow Glows Based on Testimonial Background*/
/*.splide:has(.item.is-active .bkgGradRainbowPOG) button.splide__arrow--prev {
    box-shadow: 0px 0px 20px var(--tertiary3);
    svg {
        fill: var(--tertiary3);
    }
}

.splide:has(.item.is-active .bkgGradRainbowPOG) button.splide__arrow--next {
    box-shadow: 0px 0px 20px var(--tertiary2);
    svg {
        fill: var(--tertiary2);
    }
}*/


.testimonialTitle {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 0;
}

.videoTitle {
  font-size: 36px;
  font-weight: 700;
  text-align: center;
  width: 100%;
}

.videoFrame {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
  border-radius: 50px;
  background-color: var(--darkgrey);
  overflow: hidden;
}

@media (max-width: 768px) {
  .videoFrame {
    border-radius: 30px;
  }
}

.postContent iframe {
  border-radius: 30px;
}
.videoFrame iframe {
  aspect-ratio: 16/9;
  width: 100%;
}

.testimonialRow .pseudoRow,
.videoRow .pseudoRow {
  display: grid;
  grid-template-rows: auto 1fr;
  grid-template-columns: 1fr;
  align-items: center;
  justify-content: center;
  justify-items: center;
  gap: 50px;
}

.item:has(.testimonialContainer) {
  padding: 20px;
  background-color: var(--white);
}

.testimonialOuter {
  background-color: var(--white);
  border-radius: 50px;
}

.testimonialContainer {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: auto 1fr;
  align-content: center;
  gap: 30px;
  background: var(--secondary);
  background-clip: text;
  padding: 100px 50px;
  padding-left: 100px;
  border-radius: 50px;
}

.testimonialContainer.bkgGradRainbowGOP {
  background-image: linear-gradient(90deg, var(--tertiary2) 0%, var(--yellow) 25%, var(--tertiary1) 50%, var(--pink) 75%, var(--tertiary3) 100%);
}

.testimonialContainer.bkgGradRainbowPOG {
  background-image: linear-gradient(90deg, var(--tertiary3) 0%, var(--pink) 25%, var(--tertiary1) 50%, var(--yellow) 75%, var(--tertiary2) 100%);
}

.quotedText {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-content: center;
  color: var(--primary);
}

.quotedText i {
  color: transparent;
}

.testimonialContent {
  display: grid;
  grid-template-rows: 1fr auto;
  gap: 30px;
  background-color: var(--white);
  text-align: center;
}

.testimonialLogo {
    max-width: 250px;
    height: 250px;
    display: grid;
    align-items: center;
}

.testimonialLogo img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

.testimonialContent .statement,
.testimonialContent .endorserRole {
  font-size: 18px;
}

.testimonialContent .endorser {
  font-size: 24px;
  font-weight: 700;
  color: var(--secondary);
}

.quoteLeft {
  display: flex;
  flex-direction: column;
  font-size: 40px;
  margin-top: -40px;
  direction: ltr;
}

.quoteRight {
  display: flex;
  flex-direction: column-reverse;
  font-size: 40px;
  margin-bottom: -40px;
  direction: rtl;
}

.carousel-control {
  display: grid;
  align-items: center;
}

.leftArrow,
.rightArrow {
  margin: 0;
}

.datacardRow {
  background: var(--white);
  color: var(--primary);
}

.datacardRow div:has(>.homeFeature), 
.datacardRow .homeFeature {
    max-width: 100%;
}

.datacardTitle {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 0;
}

.datacardRow .datacardGrid {
    width: 100%;
    display: grid;
    justify-content: center;
    align-items: center;
    justify-items: center;
    align-content: center;
    gap: 50px;
    padding: 50px;
    border-radius: 50px;
}

.datacardRow .datacardContent {
    display: flex;
    flex-direction: row;
    gap: 50px;
    flex-wrap: wrap;
    justify-content: center;
}

.loginDropdowns {
  height: 50px;
  display: flex;
  justify-content: center;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 50px;
}

.loginDropdowns p,
.loginDropdowns a {
  margin: 0;
  color: var(--primary);
  text-decoration: none;
}

.dropdownOption {
    width: 100%;
    height: 100%;
}

.glowBlue .dropdownOption:hover a,
.glowBlue .dropdownOption:hover p {
    color: var(--blue);
}
.glowGreen .dropdownOption:hover a,
.glowGreen .dropdownOption:hover p {
    color: var(--green);
}
.glowPurple .dropdownOption:hover a,
.glowPurple .dropdownOption:hover p {
    color: var(--purple);
}
.glowOrange .dropdownOption:hover a,
.glowOrange .dropdownOption:hover p {
    color: var(--orange);
}

.loginDropdowns a {
  font-size: 16px;
  display: block;
  width: 100%;
  height: 100%;
  align-content: center;
  margin-left: 10px;
}

.loginDropdown {
  width: 240px;
  height: 50px;
  overflow: hidden;
  background-color: var(--white);
  border-radius: 25px;
  transition: height 300ms ease-in-out;
}
.loginDropdown i {
  transition: transform 300ms ease-in-out;
}
.loginDropdown:hover {
  height: 150px;
}
.loginDropdown:hover i {
  transform: rotateZ(180deg);
}

.dropdownTitle {
    display: grid;
    grid-template-columns: 1fr auto;
    height: 50px;
    align-items: center;
    background-color: var(--white);
    color: var(--primary);
}
.dropdownTitle p {
  margin: 0;
  margin-left: 10px;
  font-size: 18px;
  font-weight: 700;
  color: var(--primary);
}
.dropdownTitle i {
  font-size: 18px;
  color: var(--primary);
  margin-right: 10px;
}
.glowBlue .dropdownTitle {
    box-shadow: 0px 4px 10px -10px var(--blue);
}

.glowGreen .dropdownTitle {
    box-shadow: 0px 4px 10px -10px var(--green);
}

.loginDropdown .options {
    height: 100px;
    display: grid;
    align-items: center;
}

@media (max-width: 1279px) {
    .datacardRow .datacardContent:has(.loginDropdowns) {
        height: 100%;
    }
}
.datacardGrid:has(.loginDropdowns) {
    container-type: inline-size;
    container-name: datacardlogins;
}
@container datacardlogins (max-width: 529px) {
.datacardRow .datacardContent:has(.loginDropdowns) {
    height: 250px;
    }
}
.loginDropdown input {
  display: none;
}
@media (pointer: coarse) {
  .loginDropdown,
  .loginDropdown:hover {
    height: 50px;
  }
  .loginDropdown i,
  .loginDropdown:hover i {
    transform: rotateZ(0deg);
  }

  .loginDropdown.active,
  .loginDropdown.active:hover {
    height: 150px;
  }
  .loginDropdown.active i,
  .loginDropdown.active:hover i {
    transform: rotateZ(180deg);
  }
}

.featuredPost {
  border-radius: 50px;
}

.featuredPost .featureRow {
  border-radius: inherit;
}
.featuredPost .featureRow .pseudoRow {
  padding: 50px;
}

.rightLink {
  text-align: right;
  font-size: 18px;
  font-weight: 700;
  color: var(--tertiary1);
}
a.rightLink {
  text-decoration: none;
  color: var(--tertiary1);
}

a.rightLink:hover {
  text-decoration: none;
  color: var(--green);
}

.listSection {
  border-radius: 50px;
  padding: 30px 40px;
  display: flex;
  flex-direction: column;
  color: var(--white);
  font-size: 36px;
  font-weight: 700;
  gap: 30px;
  align-items: center;
}

.listItem {
  border-radius: 50px;
  background-color: var(--white);
  width: 100%;
}

.listItemContent {
  position: relative;
  min-height: 85px;
  width: 100%;
  background-color: var(--white);
  padding: 5px 30px;
  color: var(--primary);
  border-radius: 50px;
  font-size: 16px;
  display: flex;
  align-content: center;
  align-items: center;
}

/*Flip Card*/
.flipCardContainer {
  width: 380px;
  height: 110px;
  perspective: 800px;
}

.flipCardContainer:hover > .flipCard {
  cursor: pointer;
  transform: rotateY(180deg);
}

.flipCard {
  height: 100%;
  width: 100%;
  position: relative;
  transition: transform 1000ms;
  transform-style: preserve-3d;
}

.cardFront,
.cardBack {
  height: 100%;
  width: 100%;
  border-radius: 30px;
  background-color: var(--white);
  position: absolute;
  backface-visibility: hidden;
}

.cardFront {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  padding: 0px 50px;
  align-items: center;
  justify-items: center;
}

.cardFront h5 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary);
  margin: 0;
  text-align: center;
}

.cardBack {
  transform: rotateY(180deg);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5rem;
  font-size: 12px;
  text-align: center;
  padding: 10px;
}

/*Resources Page*/
.contentsRow .pseudoRow {
  background: var(--white);
  color: var(--primary);
  display: grid; 
  grid-template-columns: auto 1fr;
  gap: 60px
}

.contentsNav {
  height: max-content;
  width: 235px;
  border: 2px solid var(--mediumgrey);
  border-radius: 30px;
  padding: 20px 10px;
  position: sticky;
  top: 210px;
  color: var(--primary);
}

.contentsNav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 15px;
}

.contentsNav div,
.contentsNav li {
    display: grid;
    justify-content: space-between;
    grid-template-columns: 1fr auto;
    padding: 10px 20px;
    border-radius: 10px;
    background-color: white;
	gap: 10px;
	align-items: center;
}

.contentsNav div:hover,
.contentsNav li:hover {
	cursor: pointer;
}


#blogs-category.active,
#blogs-category-2.active {
  box-shadow: 0px 0px 10px var(--blue);
}
#brochures-category.active,
#brochures-category-2.active {
  box-shadow: 0px 0px 10px var(--orange);
}
#case-studies-category.active,
#case-studies-category-2.active {
  box-shadow: 0px 0px 10px var(--purple);
}
#datacards-category.active,
#datacards-category-2.active {
  box-shadow: 0px 0px 10px var(--blue);
}
#executive-briefs-category.active,
#executive-briefs-category-2.active {
  box-shadow: 0px 0px 10px var(--orange);
}
#videos-category.active,
#videos-category-2.active {
  box-shadow: 0px 0px 10px var(--green);
}
#webinars-category.active,
#webinars-category-2.active {
  box-shadow: 0px 0px 10px var(--green);
}
#whitepapers-category.active,
#whitepapers-category-2.active {
  box-shadow: 0px 0px 10px var(--purple);
}
#events-category.active,
#events-category-2.active {
  box-shadow: 0px 0px 10px var(--green);
}
#news-category.active,
#news-category-2.active {
  box-shadow: 0px 0px 10px var(--blue);
}
#press-release-category.active,
#press-release-category-2.active {
  box-shadow: 0px 0px 10px var(--orange);
}

.postCardContainer.specialCat {
  display: grid;
  display: none;
}

.contentsNav h5,
.contentOverview h5 {
  font-size: 20px;
  font-weight: 700;
  color: var(--primary);
}

.contentsNav p {
  font-size: 18px;
  font-weight: 500;
  color: var(--primary);
  margin: 0;
}

.contentsNav i
{
  font-size: 24px;
  color: var(--primary);
  margin: 0;
  transform: rotateZ(0deg);
  transition: transform 0.2s ease-in-out;
}

.contentsNav .active i {
  transform: rotateZ(180deg);
}

.postsGrid {
  display: flex;
  flex-wrap: wrap;
  --postsgridgap: 25px;
  gap: var(--postsgridgap, 25px);
  justify-content: flex-start;
  align-items: flex-start;
}

.postCardContainer {
  width: 270px;
  border: 2px solid var(--lightgrey);
  border-radius: 20px;
  background-color: var(--white);
  padding: 15px;
  display: grid;
  gap: 10px;
  grid-template-rows: 60px 140px 40px;
  font-size: 14px;
  color: var(--grey);
}

.postCardContainer .categoryIcon {
  font-size: 40px;
  border-radius: 10px;
  background-color: var(--primary);
  height: 100%;
  width: 100%;
  display: grid;
  align-items: center;
  justify-items: center;
  align-content: center;
  justify-content: center;
}

.postCardContainer .categoryIcon img {
  height: inherit;
  width: inherit;
}

.postCardContainer .chevronIcon {
  border-radius: 40px;
  background-color: var(--primary);
  color: var(--white);
  height: 100%;
  width: 100%;
  text-align: center;
  display: grid;
  align-items: center;
  justify-items: center;
  font-size: 28px;
}

.chevronIcon a {
  color: var(--white);
  text-decoration: none;
}

.postCardContainer .postTitle {
  color: var(--primary);
  font-size: 16px;
  font-weight: 700;
}

.postCardFirst {
  display: grid;
  grid-template-columns: 60px auto;
  color: var(--grey);
  text-align: right;
  align-items: center;
}

.postCardMiddle {
  display: grid;
  grid-template-rows: auto auto;
  max-height: 130px;
  overflow: hidden;
}

.postCardLast {
  display: grid;
  grid-template-columns: auto 40px;
  color: var(--secondary);
  text-align: left;
  align-items: center;
}



.postCardContainer.loading {
	opacity: 0.7;
	color: transparent !important;
}

@keyframes loadingBackAnimation {
  0% {background-position: 0;}
  100% {background-position: 200%;}
}

.postCardContainer.loading .postCardFirst .categoryIcon,
.postCardContainer.loading .postCardMiddle .postTitle span,
.postCardContainer.loading .postCardLast .categoryType span,
.postCardContainer.loading .postCardLast .chevronIcon
{
	background: linear-gradient(to right, var(--grey) 10%, var(--lightgrey) 25%, var(--grey) 40%, var(--grey) 60%, var(--lightgrey) 75%, var(--grey) 90%);
	background-size: 400%;
	animation: 3s linear loadingBackAnimation infinite;
	color: transparent !important;
}


.postCardContainer.loading .postCardFirst .postDate span,
.postCardContainer.loading .postCardMiddle .postBody span
{
	background: linear-gradient(to right, var(--lightgrey) 10%, var(--white) 25%, var(--lightgrey) 40%, var(--lightgrey) 60%, var(--white) 75%, var(--lightgrey) 90%);
	background-size: 400%;
	animation: 3s linear loadingBackAnimation infinite;
	color: transparent !important;
}


.blue:not(.navy) .categoryIcon,
.blue .chevronIcon {
  background-color: var(--blue);
}
.blue .postCardLast {
  color: var(--blue);
}

.green:not(.navy) .categoryIcon,
.green .chevronIcon {
  background-color: var(--green);
}
.green .postCardLast {
  color: var(--green);
}

.purple:not(.navy) .categoryIcon,
.purple .chevronIcon {
  background-color: var(--purple);
}
.purple .postCardLast {
  color: var(--purple);
}

.orange:not(.navy) .categoryIcon,
.orange .chevronIcon {
  background-color: var(--orange);
}
.orange .postCardLast {
  color: var(--orange);
}

/*Posts Single Page*/
.singlePageRow .pseudoRow {
  background: var(--white);
  color: var(--text-dark);
  display: grid; 
  grid-template-columns: 1fr min-content;
  gap: 60px
}

.contentOverview {
  height: max-content;
  width: min-content;
  border: 2px solid var(--mediumgrey);
  border-radius: 30px;
  padding: 20px  10px 10px 10px;
  position: sticky;
  top: 210px;
  color: var(--primary);
}

.flexGroup {
  display: flex; 
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.latestPostsRow {
  background: var(--lightestgrey);
}

.latestPostsRow .pseudoRow {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 50px;
}

.latestPostsRow h5 {
  color: var(--primary);
}

.contentOverview .postCardContainer {
  grid-template-rows: 60px 70px 40px;
}

.contentOverview .flexColumn {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.contentOverview .categories {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  font-size: 14px;
  font-weight: 700;
}

.contentOverview .category {
  display: flex;
  flex-grow: 1;
  border-radius: 8px;
  background: var(--primary);
  color: var(--white);
  padding: 7px;
  justify-content: center;
}

.contentOverview .noRelatedPosts {
  width: 270px;
}

.latestPostsRow .postCardContainer {
  width: 370px;
}

.thePost .postMeta {
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: center;
    font-weight: 700;
}

#thePost img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.postMeta .primaryCategory {
    font-size: 20px;
    background: var(--secondary);
    color: var(--white);
    padding: 5px 20px;
    border-radius: 7px;
}

.postMeta .postDate {
    font-size: 14px;
}

.thePost div {
  font-family: Inter;
  font-size: 16px;
}
.thePost div p {
  font-size: 16px;
}
.thePost div a {
  font-size: 16px;
}
.thePost div h6 {
  font-size: 12px;
}
.thePost div h5 {
  font-size: 14px;
}
.thePost div h4 {
  font-size: 18px;
}
.thePost div h3 {
  font-size: 24px;
}
.thePost div h2 {
  font-size: 30px;
}
.thePost div h1 {
  font-size: 36px;
}

.thePost .postContent {
  white-space: pre-wrap;
}
.thePost .postContent ul {
  white-space: normal;
}

/*Segments and Digital*/

.datacardUnique {
    text-align: center;
}
.datacardUnique h5.whyTitle {
    font-size: 36px;
}
.datacardUnique h5.whySubtitle {
    font-size: 18px;
    font-weight: normal;
}
.datacardUnique h5.whyCounter {
font-size: 32px;
font-weight: 900;
color: var(--tertiary1);
}

/*Flip Card*/
.gridGroup:has(.flipCardContainer) {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: stretch;
}

/*Bio Card*/
.gridGroup:has(.bioCardContainer) {
    row-gap: 50px;
    column-gap: 25px;
}

.bioCardContainer:first-child {
  grid-column: 1 / span 3;
}

.gridGroup .bioCardContainer:last-child:nth-child(3n+2) {
    grid-column: 2;
}

.bioCardContainer {
  border: 3px solid var(--lightgrey);
  border-radius: 20px;
  overflow: hidden;
}
.bioCardContainer .introSection {
  display: grid;
  gap: 10px;
  padding: 30px;
  justify-items: center;
  text-align: center;
  background: var(--secondary);
}
.bioCardContainer .name {
  font-size: 20px;
  font-weight: 700;
  color: var(--white);
  margin: 0;
}
.bioCardContainer .role {
  font-size: 14px;
  font-weight: 400;
  color: var(--white);
  margin: 0;
}

.bioCardContainer .portrait {
  width: 200px;
  height: 200px;
  background: var(--mediumgrey);
  margin-bottom: -100px;
  border: 3px solid var(--lightgrey);
  border-radius: 100px;
  background-size: cover;
  background-position: center;
  box-sizing: content-box;
}

.bioCardContainer .bioSection {
  padding: 100px 30px 20px 30px;
  font-size: 12px;
  color: var(--black);
}
.bioCardContainer:first-child .bioSection {
  padding: 100px 30px 20px 30px;
  font-size: 16px;
}




/*Calc'd Styles*/
.socialFlex div:nth-child(4n + 0) img,
.footer .contactFooterContent div.iconTextGrid:nth-child(4n + 0) i {
    filter: drop-shadow(0px 0px 10px var(--tertiary1));
}
.socialFlex div:nth-child(4n + 1) img,
.footer .contactFooterContent div.iconTextGrid:nth-child(4n + 1) i {
    filter: drop-shadow(0px 0px 10px var(--secondary));
}
.socialFlex div:nth-child(4n + 2) img,
.footer .contactFooterContent div.iconTextGrid:nth-child(4n + 2) i {
    filter: drop-shadow(0px 0px 10px var(--tertiary2));
}
.socialFlex div:nth-child(4n + 3) img,
.footer .contactFooterContent div.iconTextGrid:nth-child(4n + 3) i {
    filter: drop-shadow(0px 0px 10px var(--tertiary3));
}

.datacardContent :nth-child(4n + 0) button.btn:not(.overrideGlow) {
  filter: drop-shadow(0px 0px 10px var(--secondary));
}
.datacardContent :nth-child(4n + 0) button.btn:not(.overrideGlow):hover {
  color: var(--secondary);
}
.datacardContent :nth-child(4n + 1) button.btn:not(.overrideGlow) {
  filter: drop-shadow(0px 0px 10px var(--tertiary3));
}
.datacardContent :nth-child(4n + 1) button.btn:not(.overrideGlow):hover {
  color: var(--tertiary3);
}
.datacardContent :nth-child(4n + 2) button.btn:not(.overrideGlow) {
  filter: drop-shadow(0px 0px 10px var(--tertiary1));
}
.datacardContent :nth-child(4n + 2) button.btn:not(.overrideGlow):hover {
  color: var(--tertiary1);
}
.datacardContent :nth-child(4n + 3) button.btn:not(.overrideGlow) {
  filter: drop-shadow(0px 0px 10px var(--tertiary2));
}
.datacardContent :nth-child(4n + 3) button.btn:not(.overrideGlow):hover {
  color: var(--tertiary2);
}

.datacardContent button.btn.glowBlue.overrideGlow:hover {
  color: var(--secondary);
}
.datacardContent button.btn.glowOrange.overrideGlow:hover {
  color: var(--tertiary1);
}
.datacardContent button.btn.glowGreen.overrideGlow:hover {
  color: var(--tertiary2);
}
.datacardContent button.btn.glowPurple.overrideGlow:hover {
  color: var(--tertiary3);
}
.datacardContent button.btn.glowNavy.overrideGlow:hover {
  color: var(--primary);
}

.bioCardContainer:nth-child(4n + 0) .introSection {
  background: linear-gradient(to bottom, var(--navy), var(--tertiary3));
}
.bioCardContainer:nth-child(4n + 1) .introSection {
  background: linear-gradient(to bottom, var(--navy), var(--secondary));
}
.bioCardContainer:nth-child(4n + 2) .introSection {
  background: linear-gradient(to bottom, var(--navy), var(--tertiary2));
}
.bioCardContainer:nth-child(4n + 3) .introSection  {
  background: linear-gradient(to bottom, var(--navy), var(--tertiary1));
}

/*Bootstrap Overrides*/
.flexAlignRight {
    display: flex;
    flex-direction: row-reverse;
}

.separatron {
  height: 30px;
  width: 100%;
}

.navyScheme {
  background-color: var(--primary);
  color: var(--white);
}

.whiteScheme {
  background-color: var(--white);
  color: var(--primary);
}

/*Carousel Anim*/

@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

.logos {
  overflow: hidden;
  padding: 60px 0;
  background: white;
  white-space: nowrap;
  position: relative;
  flex-direction: row !important;
}

.logos:not(:has(.static)):before,
.logos:not(:has(.static)):after {
  position: absolute;
  top: 0;
  width: 250px;
  height: 100%;
  content: "";
  z-index: 2;
}

@media (max-width: 768px) {
  .logos:not(:has(.static)):before,
  .logos:not(:has(.static)):after {
    width: 50px;
  }
}

.logos:before {
  left: 0;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
}

.logos:after {
  right: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), white);
}

.logos:hover .logos-slide {
  animation-play-state: paused;
}

.logos-slide {
  display: inline-block;
  animation: 35s slide infinite linear;
}



.static {
  animation: none !important;
}

.static.image-carousel {
  max-width: 95vw;
  height: auto;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-evenly;
  row-gap: 30px;
}


.logos-slide img {
  height: 30px;
  margin: 0 40px;
}

.disabled {
	opacity: 0.3;
	pointer-events: none;
}

.pseudoDisabled {
  pointer-events: none;
}

.dynamic-pagination {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
	padding-top: 20px;
}

.paginatorSelector {
    color: var(--mediumgrey);
    border-radius: 100%;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    font-weight: 700;
    font-size: 16px;
}

.paginatorSelector:not(.disabled):hover {
    cursor: pointer;
}

.disabled {
	opacity: 0.3;
  pointer-events: none;
  cursor: not-allowed;
}

.paginatorSelector.selected {
  background: var(--navy);
	color: var(--white);
}

/*NAVBAR*/

.navigationMenu.mobileMenu {
    height: 0;
    overflow-y: scroll;
    transition: height 300ms ease-in-out;
}

.navigationMenu.mobileMenu.expandedMenu {
    height: calc(100vh - 100px);
}

.navigationMenu.mobileMenu .nav.navbar-nav {
    display: grid;
    width: 100%;
    float: none;
}

.navigationMenu.mobileMenu ul,
.navigationMenu.mobileMenu li {
  list-style-type: none;
}

.navigationMenu.mobileMenu .navbar-nav > li > a {
  font-size: 18px;
  color: var(--primary) !important;
  border-bottom: solid 1px var(
  --lightestgrey);
	i {
		color: var(--primary)
	}
}

.navigationMenu.mobileMenu .navElementChild {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
}

.displayMobile .container:has(+.navigationMenu.mobileMenu) {
  height: 80px;
}





/* Mobile-friendly*/
.navigationMenu.mobileMenu:not(.expandedMenu) {
	display: none;
}

.navigationMenu.mobileMenu.expandedMenu {
	overflow: visible;
}


.navigationMenu.mobileMenu.expandedMenu {
	height: auto;
}

header.mobileFixedHeader {
	position: sticky;
	top: 0;
	background: var(--white);
}

.mobileFixedHeader .navbar-container {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    justify-content: space-between;
    justify-items: center;
}

@media (max-width: 767px) {
  .container.mobileSearch {
    width: 100%;
  }
}
.mobileSearch .input-group {
    width: 100%;
}

.navigationMenu.mobileMenu .nav.navbar-nav {
	display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    width: 100%;
    float: none;
    background: var(--white);
    align-items: center;
    justify-content: center;
    margin: 0;
}
.navigationMenu.mobileMenu {
    display: grid;
    justify-content: stretch;
    gap: 20px;
    margin-top: 10px;
}

button.btn.btnBlue.mobileContact {
  padding: 0;
  width: 50px;
  height: 50px;
}

.navigationMenu.mobileMenu .mobileSearch{
    float: none;
    display: block;
    margin: 0;
    justify-self: center;
}


@media screen and (max-width: 540px) {
  .navigationMenu.mobileMenu .nav.navbar-nav {
    grid-template-columns: 1fr 1fr;
  }
  .contentsNav li.category {
    width: 100%;
  }
}

.mobileMenu .menu-solutions,
.mobileMenu .menu-services,
.mobileMenu .menu-resources,
.mobileMenu .menu-company {
	position: unset;
}

#menu-primary-navigation-1 > li > ul.dropdownTESTmenu {
	position: absolute;
    width: 100%;
    max-height: 50vh;
    overflow: auto;
    background: var(--white);
    border-bottom: 3px solid silver;
	left: 0;
	top: 100%;
	padding: 10px 20px;
}

.mobileMenu .nav:before,
.mobileMenu .nav:after, 
.mobileMenu .navbar:before,
.mobileMenu .navbar:after {
	content: none;
}

.mobileMenu .dropdown-toggle {
	text-align: center;
}

/*Hover controls*/
  #menu-primary-navigation-1 > li > ul {
  transition: transform 0ms linear;
  transform-origin: center top;
  }
  #menu-primary-navigation-1 > li:hover > ul {
  transform: scaleY(1);
  transition-delay: 0ms;
  }
  #menu-primary-navigation-1 > li:not(:hover) > ul {
  transform: scaleY(0);
  transition-delay: 300ms;
  }

  #menu-primary-navigation-1:has(li:hover) > li:not(:hover) > ul {
      transition-delay: 0ms;
  }


.navigationMenu.mobileMenu ul, .navigationMenu.mobileMenu li {
	padding: 0;
}

.navigationMenu.mobileMenu .dropdownTestMenu {
	height: 100%;
	overflow: auto;
}

.navigationMenu.mobileMenu .menu-healthcare-lists,
.navigationMenu.mobileMenu .menu-business-consumer-lists,
.navigationMenu.mobileMenu .menu-redi-data-digital {
	height: 100%;
    overflow: auto;
    display: grid;
    grid-template-rows: max-content 1fr;
    gap: 10px;
}

.navigationMenu.mobileMenu #menu-primary-navigation-1 .CSSSolution.menu-solutions > .dropdownTESTmenu {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 20px;
}

.navigationMenu.mobileMenu .dropdownTESTmenu .dropdownTESTmenu {
	height: 100%;
	overflow: auto;
}

.navSubSelect a {
  font-size: 18px;
  font-weight: 700;
  color: var(--primary) !important;
}

.navSubSelect i {
  font-size: 24px;
}

.navElementChild a {
	font-size: 14px;
	font-weight: 700;
	color: var(--primary) !important;
}

 #menu-primary-navigation-1 > li > ul > li:has(.Tier3) > div > i {
    transform: rotate(-90deg);
}

@media screen and (max-width: 800px) {
	.navigationMenu.mobileMenu #menu-primary-navigation-1 .CSSSolution.menu-solutions > .dropdownTESTmenu {
		grid-template-columns: 1fr;
		height: auto;
	}
}

/* End of Mobile Friendly*/




ul.dropdownTESTmenu > li {
    /*font awesome style clearing*/
    text-align: initial;
    width: 100%;
    line-height: initial;
  }

li:before {
  /*font awesome style clearing*/
  content: none !important;
}

@media screen and (min-width: 1280px) and (pointer: fine) {

  ul.dropdownTESTmenu > li {
    /*font awesome style clearing*/
    text-align: initial;
    width: initial;
  }

  ul.dropdownTESTmenu {
      position: fixed;
  }

  ul.dropdownTESTmenu ul.dropdownTESTmenu {
      position: absolute;
      top: 0;
      left: 0px;
      list-style: none;
      display: grid;
      grid-template-columns: 1fr 1fr;
      padding-inline-start: max(30%, 500px);
      /*padding-bottom: 100%;*/
      background: var(--white);
      z-index: -1;
      gap: 10px;
      padding-right: 20px;
      scrollbar-width: thin;
      scrollbar-color: var(--lightgrey) #00000000;
  }

  ul.dropdownTESTmenu:has(.navElementChild.Tier2):not(:has(.Tier3)) {
      list-style: none;
      display: grid;
      grid-template-columns: 1fr 1fr;
      background: var(--white);
      gap: 10px;
      overflow-y: auto;
      max-height: calc(100vh - 160px);
  }

  /*Hover controls*/
  #menu-primary-navigation > li > ul {
  transition: transform 0ms linear;
  transform-origin: center top;
  }
  #menu-primary-navigation > li:hover > ul {
  transform: scaleY(1);
  transition-delay: 0ms;
  }
  #menu-primary-navigation > li:not(:hover) > ul {
  transform: scaleY(0);
  transition-delay: 300ms;
  }

  #menu-primary-navigation:has(li:hover) > li:not(:hover) > ul {
      transition-delay: 0ms;
  }

  #menu-primary-navigation li> ul > li:not(:hover) > ul {
      display: none;
  }

  /*T2 Container*/
  #menu-primary-navigation > li > ul {
        background: var(--white);
        left: 30%;
        border-bottom: solid 2px var(--lightestgrey);
        border-bottom-left-radius: 50px;
        border-bottom-right-radius: 50px;
        scrollbar-width: thin;
        scrollbar-color: var(--lightgrey) #00000000;
    }
  #menu-primary-navigation > li > ul:has(.Tier3) {
        left: 0px;
        overflow: hidden;

  }
  /*T2 Item*/
  #menu-primary-navigation > li > ul > li:has(.Tier3) {
      width: 370px;
      height: 80px;
      background: var(--white);
      border-radius: 20px;
      list-style: none;
      margin: 20px;
  }



  /*T3 Container*/

  /*T3 Item*/
  #menu-primary-navigation > li > ul > li > ul > li,
  #menu-primary-navigation > li > ul > li:has(.Tier2) {
      width: 370px;
      height: 70px;
      background: white;
  }

  .navSubSelect {
      display: flex;
      width: 100%;
      height: 100%;
      grid-template-columns: 1fr 1fr;
      justify-content: space-between;
      align-content: center;
      align-items: center;
      padding: 30px;
  }

  .navSubSelect a {
      font-size: 18px;
      font-weight: 700;
      color: var(--primary) !important;
  }

  .navSubSelect i {
      font-size: 24px;
  }

  .navElementChild {
      display: grid;
      grid-template-columns: auto 1fr;
      justify-items: start;
      align-items: center;
      height: 100%;
      width: 100%;
      gap: 30px;
  }

  .navElementChild a {
      font-size: 14px;
      font-weight: 700;
      color: var(--primary) !important;
  }

  .navElementChild i {
      font-size: 36px;
  }

  .CSSSolution > .dropdownTESTmenu {
    width: 100%;
    min-height: 360px;
    transition: min-height 200ms linear;
  }

  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(3)),
    .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(4)) {
    --child-count-height: calc(40 * 4px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(5)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(6)) {
    --child-count-height: calc(40 * 6px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(7)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(8)) {
    --child-count-height: calc(40 * 8px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(9)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(10)) {
    --child-count-height: calc(40 * 10px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(11)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(12)) {
    --child-count-height: calc(40 * 12px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(13)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(14)) {
    --child-count-height: calc(40 * 14px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(15)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(16)) {
    --child-count-height: calc(40 * 16px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(17)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(18)) {
    --child-count-height: calc(40 * 18px + 20px);
  }
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(19)),
  .CSSSolution > .dropdownTESTmenu:has(li:hover .dropdownTESTmenu li:last-child:nth-child(20)) {
    --child-count-height: calc(40 * 20px + 20px); 
  }
  .CSSSolution > .dropdownTESTmenu {
    --height-actual: max(min(var(--child-count-height, 360px), calc(100vh - 160px)), 360px);
    min-height: var(--height-actual);
    width: 100%;
    transition: min-height 200ms linear;
  }
  .CSSSolution > .dropdownTESTmenu .dropdownTESTmenu {
    height: var(--height-actual);
    overflow-y: auto;
    overflow-x: hidden;
    padding-bottom: calc(var(--height-actual) - var(--child-count-height, 360px));
  }
}

  #menu-primary-navigation > li > ul > li > div > i {
    color: var(--primary);
    transition: transform 200ms ease-in-out;
  }
  #menu-primary-navigation > li > ul > li:has(.Tier3):hover > div > i {
    transform: rotate(180deg);
  }

   #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(1) {
    box-shadow: 0 0 20px var(--secondary);
   }
	  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(1) a[href]:not([href^="#"]):hover {
		  color: var(--secondary) !important;
      text-decoration: underline;
  }
  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(1) i,
  .navigationMenu.mobileMenu #menu-primary-navigation-1 > li > ul > li:has(.Tier3):nth-child(1) i {
    color: var(--secondary);
  }

  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(2) {
    box-shadow: 0 0 20px var(--tertiary3);
  }
	#menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(2) a[href]:not([href^="#"]):hover {
		  color: var(--tertiary3) !important;
      text-decoration: underline;
  }

  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(2) i,
  .navigationMenu.mobileMenu #menu-primary-navigation-1 > li > ul > li:has(.Tier3):nth-child(2) i {
    color: var(--tertiary3);
  }

  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(3) {
    box-shadow: 0 0 20px var(--tertiary2);
  }
	  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(3) a[href]:not([href^="#"]):hover {
		  color: var(--tertiary2) !important;
      text-decoration: underline;
  }

  #menu-primary-navigation > li > ul > li:has(.Tier3):hover:nth-child(3) i,
  .navigationMenu.mobileMenu #menu-primary-navigation-1 > li > ul > li:has(.Tier3):nth-child(3) i {
    color: var(--tertiary2);
  }




/*Anims Transitions*/
@media (pointer: fine) {
  .hoverBounce {
    transition: transform 200ms cubic-bezier(0, 0, 0.3, 3),
                margin 200ms cubic-bezier(0, 0, 0.3, 3);
  }
  .hoverBounce:not(.margin):hover {
    transform: translateY(-10px);
  }
  .hoverBounce.margin:hover {
    margin-top: -10px;
    margin-bottom: 10px;
  }
}

.replaceText p {
  transform: translateX(-500px);
  transition: transform 500ms ease-in-out;
}

.replaceText.in-view p {
  transform: translateX(0px);
}

/*Media Queries*/
/*Desktop default*/
@media  (min-width: 1280px) and (pointer: fine) {
  .displayMobile {
    display: none !important;
  }
  /*Firefox Safari Sticky>Fixed nesting Fix*/
  header.banner.navbar.navbar-default {
    position: fixed;
  }
  main.main {
    padding-top: 160px !important; 
  }
  /*End Firefox Safari Fix*/
}
/*Mobile default*/
@media  (pointer: coarse) {
  .displayDesktop {
    display: none !important;
  }

  .navbar-container {
    grid-template-columns: auto 1fr 1fr;
    gap: 10px;
  }

  .contentOverview {
    top: 130px;
  }
  .contentsNav {
    top: 130px;
  }
}

/*Small Desktop and Mobile*/
@media  (max-width: 1279px) and (min-width: 769px) {
  .displayDesktop {
    display: none !important;
  }

  .quotedText {
    grid-template-columns: 0 1fr 0;
  }
  
  .pseudoRow:not(.singlePageRow .pseudoRow):not(.featureRow .pseudoRow):not(.footer .pseudoRow):not(.contentsRow .pseudoRow):not(.gatedContentRow .pseudoRow) {
    margin: 10px;
    display: flex;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr;
    justify-items: center !important;
    gap: calc(50px + 1px - 1px);
    flex-direction: column;
  }
  
  .featureRow .pseudoRow {
      gap: 50px;
  }
  .singlePageRow .pseudoRow {
    background: var(--white);
    color: var(--text-dark);
    display: grid;
    grid-template-columns: 1fr min-content;
    gap: 20px;
  }
  .latestPostsRow .postCardContainer {
     width: 30%;
  }
  .contentOverview {
    top: 130px;
  }
  .contentsNav {
    top: 130px;
  }
  @media (max-width: 991px) {
    .datacardRow .pseudoRow .featureRow .pseudoRow {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .contentsNav {
        width: 100%;
        position: initial;
    }
    .contentsRow .pseudoRow {
        margin: 10px;
        display: flex;
        justify-items: center !important;
        gap: 50px;
        flex-direction: column;
    }
    .singlePageRow .pseudoRow {
      grid-template-columns: 1fr;
      gap: 20px;
    }
    .contentOverview {
      width: 100%;
      overflow: auto;
    }
    .contentOverview .flexColumn {
      display: flex;
      flex-direction: row;
      gap: 10px;
      flex-wrap: nowrap;
      justify-content: center;
    }
    .flexGroup {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      gap: 10px;
      justify-content: space-around;
    }
    .latestPostsRow .postCardContainer {
      width: 100%;
    }
    .postsGrid .postCardContainer {
      width: calc(50% - (var(--postsgridgap) / 2));
    }
  }

  .homeFeature {
    max-height: 400px;
    width: 400px;
    max-width: 100vw;
  }
  .replaceText p {
      color: var(--tertiary2);
      font-size: 28px;
      font-weight: 700;
  }

  .contactRow .pseudoRow {
      display: flex;
      justify-items: center;
      gap: 50px;
      flex-direction: column;
  }
  .contactRow .pseudoRow.RTL {
      flex-direction: column-reverse;
  }

  
  .gridGroup {
      display: flex;
      flex-direction: column;
  }
  
  .gridGroup:has(.flipCardContainer) {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
  }
 
  /* .postsGrid {
    justify-content: center;
  } */
  
  .contentsNav ul {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
  }
  
  .contentsNav li {
      width: 200px;
  }

  .testimonialContainer {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns:  1fr;
  grid-template-rows: auto 1fr;
  align-content: center;
  gap: 30px;
  background: var(--secondary);
  background-clip: text;
  padding: 20px 50px 20px 100px;
  padding: 20px 20px 50px 20px;
  border-radius: 50px;
  justify-items: center;
  }

  button.splide__arrow {
    background-color: white;
    height: 50px;
    width: 50px;
    opacity: 1;
  }

  button.splide__arrow--prev {
      left: -5px;
      box-shadow: 0px 0px 20px var(--tertiary2);
      svg {
          fill: var(--tertiary2);
      }
  }

  button.splide__arrow--next {
      right: -5px;
      box-shadow: 0px 0px 20px var(--tertiary3);
      svg {
          fill: var(--tertiary3);
      }
  }

  .requestaquote_form .wpcf7-form {
    grid-template-columns: 1fr;
  }

  .requestaquote_form .wpcf7-form .Message {
    grid-column: initial;
  }

  .requestaquote_form .textNavy.acceptanceCheckbox,
  .requestaquote_form .textNavy.acceptanceCheckbox a {
    grid-column: initial;
  }
}


/*Mobile*/
@media  (max-width: 768px) {
  .displayDesktop {
    display: none !important;
  }

  .quotedText {
    grid-template-columns: 0 1fr 0;
  }

  .latestPostsRow .postCardContainer,
  .postCardContainer {
     width: 100%;
  }

  .pseudoRow {
    margin: 10px;
    display: flex !important;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr;
    justify-items: center !important;
    gap: 50px;
    flex-direction: column;
  }
  
  .featureRow .pseudoRow {
      display: flex;
      grid-template-rows: 1fr 1fr;
      grid-template-columns: 1fr;
      justify-items: center;
      gap: 50px;
      flex-direction: column;
  }
  .contactRow .pseudoRow {
      display: flex;
      justify-items: center;
      gap: 50px;
      flex-direction: column;
  }
  .contactRow .pseudoRow.RTL {
      flex-direction: column-reverse;
  }

  
  .gridGroup {
      display: flex;
      flex-direction: column;
  }
  
  .gridGroup:has(.flipCardContainer) {
      display: flex;
      flex-direction: column;
  }
  
  .defaultFooter .pseudoRow {
      display: flex;
      flex-direction: column;
      align-items: center;
  }
 
  /* .postsGrid {
    justify-content: center;
  } */
  
  
  .contentsNav ul {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
  }
  
  .contentsNav {
      width: 100%;
      position: initial;
  }
  
  .contentsNav li {
      width: 200px;
  }
  .contentOverview {
    width: 100%;
    overflow: auto;
  }
  .contentOverview .flexColumn {
    display: flex;
    flex-direction: row;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
  }

  .contentOverview {
    top: 130px;
  }
  .contentsNav {
    top: 130px;
  }

  .testimonialContainer {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns:  1fr;
  grid-template-rows: auto 1fr;
  align-content: center;
  gap: 30px;
  background: var(--secondary);
  background-clip: text;
  padding: 20px 50px 20px 100px;
  padding: 20px 20px 50px 20px;
  border-radius: 50px;
  justify-items: center;
  }

  button.splide__arrow {
    background-color: white;
    height: 50px;
    width: 50px;
    opacity: 1;
  }

  button.splide__arrow--prev {
      left: -5px;
      box-shadow: 0px 0px 20px var(--tertiary2);
      svg {
          fill: var(--tertiary2);
      }
  }

  button.splide__arrow--next {
      right: -5px;
      box-shadow: 0px 0px 20px var(--tertiary3);
      svg {
          fill: var(--tertiary3);
      }
  }

  .requestaquote_form .wpcf7-form {
    grid-template-columns: 1fr;
  }

  .requestaquote_form .wpcf7-form .Message {
    grid-column: initial;
  }

  .requestaquote_form .textNavy.acceptanceCheckbox,
  .requestaquote_form .textNavy.acceptanceCheckbox a {
    grid-column: initial;
  }
}

.grecaptcha-badge {
    z-index: 10;
}



/*Browser Specific*/
  /*Firefox rendering issue with flip cards*/
  body.browserFirefox .flipCardContainer {
    perspective: none;
  }
/*End Browser Specific*/

/*Overflow fix*/
html {
    max-width: 100%;
    overflow-x: hidden;
}

/*Extra*/
#menu-primary-navigation-1 > li > ul > li:has(.Tier3) > div > i:before {
    content: '\00a0';
}

.image-carousel.logos-slide:has(img:last-child:nth-child(4)) {
    --carouselTime: calc(4 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(5)) {
    --carouselTime: calc(5 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(6)) {
    --carouselTime: calc(6 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(7)) {
    --carouselTime: calc(7 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(8)) {
    --carouselTime: calc(8 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(9)) {
    --carouselTime: calc(9 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(10)) {
    --carouselTime: calc(10 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(11)) {
    --carouselTime: calc(11 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(12)) {
    --carouselTime: calc(12 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(13)) {
    --carouselTime: calc(13 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(14)) {
    --carouselTime: calc(14 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(15)) {
    --carouselTime: calc(15 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(16)) {
    --carouselTime: calc(16 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(17)) {
    --carouselTime: calc(17 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(18)) {
    --carouselTime: calc(18 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(19)) {
    --carouselTime: calc(19 * 3s)
}
.image-carousel.logos-slide:has(img:last-child:nth-child(20)) {
    --carouselTime: calc(20 * 3s)
}
.image-carousel.logos-slide {
    animation: var(--carouselTime, 35s) slide infinite linear;
}

/*Variables*/
:root {
    --navy: #00245C;
    --primary: #00245C;

    --halfnavy: #00245C80;

    --blue: #00A1E3;
    --secondary: #00A1E3;
    --orange: #FF8040;
    --tertiary1: #FF8040;
    --green: #03C299;
    --tertiary2: #03C299;
    --purple: #8F73DE;
    --tertiary3: #8F73DE;

    --yellow: #FFCC5F;
    --pink: #F96C9B;
    --red: #FF4C4C;

    --text-dark: #353535;

    --white: #FFF;
    --lightestgrey: #DADADA40;
    --lightergrey: #DADADA80;
    --lightgrey: #DADADA;
    --mediumgrey: #B4B4B4;
    --grey: #808080;
    --darkgrey: #464646;
    --black: #000;
}