/* therapists loading animation */	

.modal2 {
	position:fixed;
	width:100%;
	left:0;right:0;top:0;bottom:0;
	background-color: rgba(255,255,255,0.7);
	z-index:9999;
	display:none;
}			

.modal2::after {
	content:'';
	display:block;
	position:   fixed;
	left: 50%;
	top: 50%;
	z-index: 1;
	width: 100%;
	height: 100%;
	margin-top: -60px;
	margin-left: -60px;
	border: 16px solid #f3f3f3;
	border-radius: 50%;
	border-top: 16px solid #3498db;
	width: 120px;
	height: 120px;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}

@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* end of therapists loading animation */	

/* When the body has the loading class, we turn the scrollbar off with overflow:hidden */
body.loading_therapists {
	overflow: hidden;
}
/* Anytime the body has the loading class, our modal element will be visible */
body.loading_therapists .modal2 {
	display: block;
}		

#fancy_header {
	height: 140px;
	background: #FAEC70;
	background-image: url("https://www.glyde.co/img/homepage/header_illustration.png");
  background-repeat: no-repeat;
  background-position: bottom right 30%;				
}	

#fancy_header2 {
	height: 140px;
	background: #FAEC70;
	background-image: url("https://www.glyde.co/img/homepage/header_illustration2.png");
  background-repeat: no-repeat;
  background-position: top right 30%;				
}	

.row{
	max-width:1140px;
	padding: 0 10px;
}

p {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: normal;
	font-size: 1.375em; /* equivalent to 22px */
	line-height: 32px; /* equivalent to 32px */
}

a {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: 600;
	text-decoration-line: underline;
	color: #303030;
}

a:hover {
	color: #303030;
}

a:visited {
	color: #303030;
}

table { border: none; }

table thead tr th {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: bold;
	font-size: 20px;		
	border: 0;	
}		

table tr th, table tr td, table tbody tr td {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: normal;
	font-size: 20px;		
	border: 0;	
}	

.reveal-modal .close-reveal-modal {
	text-decoration: none; 
}


.alert-box .close {
	text-decoration: none;
}

.top-bar a {
	text-decoration: none;
}

.top-bar {
	margin: auto;
	width: 100%;
	max-width:1140px;
	margin-top: 30px;
}

.top-bar .toggle-topbar.menu-icon a span::after{
	right: 0;
}

.top-bar .toggle-topbar.menu-icon a{
	padding: 0 2rem 0 0.9375rem;
}

.top-bar,
.top-bar-section li:not(.has-form) a:not(.button),
.top-bar-section li:not(.has-form) a:not(.button):hover,
.top-bar-section ul li,
.top-bar.expanded .title-area,
.no-js .top-bar-section ul li:hover > a{
	background: transparent;
	height: auto;
	line-height:normal;
	padding: 0;
}

.top-bar .logo {
	line-height: normal;
	height: auto;
	font-size: 1.375rem;
	margin-top: -10px;	
	margin-bottom: 0px;	
	margin-left: 20px;
	margin-right: 0px;	
}

header{
	width: 100%;
	height: 130px;
	background: transparent;
}

.btn_holder{
	margin: 20px 0 0 0;	
	text-align: center;
}

#cookies-notice { display: none; }

.underlineText { text-decoration: underline; }

.redText {color: red; }

.alert-box { 	
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: normal;
	font-size: 1.375em; /* equivalent to 22px */
	line-height: 2em; /* equivalent to 32px */
}

/* sort out alignment of table drop-downs and buttons */
input:not([type]), input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
  margin: 0 0 0 0;
 }
table .button { margin: 0 0 0rem;}		

button.tiny, .button.tiny {
	padding: 0.625rem 1.25rem 0.625rem 1.25rem;
	font-size: 1rem; 
	background: #303030;		
	color: #FFFFFF;		
	font-family: Nunito;
	font-style: normal;
	font-weight: 600;	
	text-transform: uppercase;	
	border: 2px solid #303030;			
}

button.tiny:hover, button.tiny:focus, .button.tiny:hover, .button.tiny:focus {
	background: #FFFFFF;				
	color: #303030;
	border: 2px solid #303030;		
}

button.small, .button.small {
	padding: 0.7rem 1.5rem 0.7rem 1.5rem;
	font-size: 1.0rem; 
}

fieldset {
   border: 0px;
   padding: 0.25rem;
   margin: 1.125rem 0;	
}		

label {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;					
}

input[type=text], input[type=password], input[type=email], select {
	font-size: 20px;
	padding: 13px 16px;
	padding: 20px 10px;
	line-height: 12px;
}

.centreBorders tr th,
  .centreBorders tr td { border: 1px solid #DDDDDD; }	
	
/* change default accordion colours */		
.accordion .accordion-navigation.active>a,.accordion dd.active>a{background: rgba(186, 186, 186, 0.2); text-decoration: none;}
.accordion .accordion-navigation>a,.accordion dd>a{background: rgba(186, 186, 186, 0.2); text-decoration: none;}
.accordion .accordion-navigation>a:hover,.accordion dd>a:hover{background: rgba(186, 186, 186, 0.3); text-decoration: none;}

/* disable scrolling when mobile menu open */
.fixedPosition
{
	overflow: hidden;
	height:100%;
	position:   fixed;
	z-index:    1000;
	top:        0;
	left:       0;
	height:     100%;
	width:      100%;
	background: #FAEC70;/* make page background same colour as mobile menu background in case menu spills over onto page background as it does on iPhone X */
}

button.primaryButton, .button.primaryButton {
	padding: 0.5rem 0rem 0.4rem 0rem;
	background: #303030;			
	font-family: Nunito;
	font-style: normal;
	font-weight: 600;
	font-size: 16px;
	line-height: 55px;
	text-align: center;
	letter-spacing: 3px;
	color: #FFFFFF;
	text-transform: uppercase;	
	width: 400px;		
	border: 2px solid #303030;		
}
button.primaryButton:hover, button.primaryButton:focus, .button.primaryButton:hover, .button.primaryButton:focus {
	background: #FFFFFF;				
	color: #303030;
	border: 2px solid #303030;		
}	

button.secondaryButton, .button.secondaryButton {
	padding: 0.5rem 0rem 0.4rem 0rem;
	background: #FFFFFF;			
	font-family: Nunito;
	font-style: normal;
	font-weight: 600;
	font-size: 16px;
	line-height: 55px;
	text-align: center;
	letter-spacing: 3px;
	color: #303030;
	text-transform: uppercase;	
	width: 400px;		
	border: 2px solid #303030;	
}
button.secondaryButton:hover, button.secondaryButton:focus, .button.secondaryButton:hover, .button.secondaryButton:focus {
	background: #303030;				
	color: #FFFFFF;
	border: 2px solid #303030;		
}	

button.textButton, .button.textButton {
	padding: 0;
	background: inherit;
	font-family: Nunito;
	font-style: normal;
	font-weight: 600;
	font-size: 16px;
	line-height: 30px;
	text-align: center;
	letter-spacing: 3px;
	color: #303030;	
	border-bottom: 2px solid #303030;	
	text-transform: uppercase;				
}
button.textButton:hover, button.textButton:focus, .button.textButton:hover, .button.textButton:focus {
	/*border-bottom: 2px solid #ffffff;*/
}	

button.plainButton, .button.plainButton {
	background: inherit;
	font-family: Nunito;
	font-style: normal;
	font-weight: 600;
	font-size: 16px;
	line-height: 30px;
	text-align: center;
	letter-spacing: 3px;
	color: #303030;	
	text-transform: uppercase;				
}
button.plainButton:hover, button.plainButton:focus, .button.plainButton:hover, .button.plainButton:focus {
	background: #303030;
	color: #FFFFFF;	
}	

/* top navigation hover */
header .top-bar-section li:not(.has-form) a:not(.button):hover{
	color: #303030;
	text-decoration: underline;
}		
		
.top-bar-section.Montserrat ul li a  {
	font-family: Montserrat Alternates;
	font-style: normal;
	font-weight: 600;
	font-size: 18px;
	line-height: 22px;
	color: #303030;
	text-decoration: none;
}		

h1, h2, h3, h4, h5 {
	font-family: Montserrat Alternates;
	font-style: normal;
	font-weight: 600;		
	color: #303030;
}

.logo .glydeLogo {
	margin-left: 5px;
	font-family: 'Comfortaa', cursive;
	font-weight: 700;
	font-size: 44px;
	color: #303030;	
}

.downArrow::before {
	font-family: "Font Awesome 5 Pro"; font-weight: 400; content: "\f078";
	cursor: pointer;
	float: right;
}
.upArrow::before {
	font-family: "Font Awesome 5 Pro"; font-weight: 400; content: "\f077";
	cursor: pointer;
	float: right;
}

.question {
	cursor: pointer;
	font-family: Montserrat Alternates;
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 34px;
	letter-spacing: -1px;
	color: #393939;
}

li {
	font-family: Nunito Sans;
	font-style: normal;
	font-weight: normal;
	font-size: 22px;
}	

/*                      */
/*    Responsive CSS    */
/*                      */


@media only screen and (max-width: 769px){

	#fancy_header {
		background-image: url("https://www.glyde.co/img/homepage/header_illustration_small.png");
	  background-repeat: no-repeat;
	  background-position: bottom right 30%;				
	}		

	#fancy_header2 {
		background-image: url("https://www.glyde.co/img/homepage/header_illustration2_small.png");
	  background-repeat: no-repeat;
	  background-position: top right 30%;				
	}		
	
	table tr th, table tr td, table thead tr th, table tbody tr td {
		font-size: 16px;		
	}		

	.alert-box { 	
		font-family: Nunito Sans;
		font-style: normal;
		font-weight: normal;
		font-size: 1em; /* equivalent to 16px */
		line-height: 1.5em; /* equivalent to 24px */
	}

	.row {
		padding: 0 5px;
	}

	p {
		font-family: Nunito Sans;
		font-style: normal;
		font-weight: normal;
		font-size: 1em; /* equivalent to 16px */
		line-height: 24px; /* equivalent to 24px */
	}	
	
	.top-bar {
		padding: 0 0px;
	}

	.top-bar .top-bar-section{
		display: none;
 		z-index: 1;/* stops bottom of mobile menu being transparent on some pages */		
	}

	.top-bar.expanded .top-bar-section{
		display: block;
	}
	
	.top-bar .logo {
		margin-top: 0px;	
		margin-bottom: 0px;	
		margin-left: 15px;	
		margin-right: 0px;	
	}

	.logo .glydeLogo {
		line-height: 50px;
		font-size: 32px;
		}	

	/* text links on mobile menu */
	.top-bar-section.Montserrat ul li a  {
		font-family: Montserrat;
		font-style: normal;			
		font-weight: 500;
		font-size: 20px;
		line-height: 24px;
	}

	header .top-bar-section li:not(.has-form):last-child a:not(.button){
		border: 0;
	}
			
	.top-bar-section ul{
		margin-top: 0px;/* position of mobile menu */
		padding-top: 100px;/* some padding above the menu options */
	  border: 1px solid #FAEC70;
		background: #FAEC70;/* background colour of mobile menu */
		height: 95vh;
	}	

/* MOBILE MENU COLOURS */

	.top-bar-section li:not(.has-form) a:not(.button){
	  margin: 0;
	  display: block;
	  text-align: center;
	  padding: 20px 0;
		color: #303030;		
	  background: #FAEC70;/* background colour of mobile menu item (useful tool: https://www.rapidtables.com/web/color/html-color-codes.html) */
	  border-bottom: 0px;
	  -webkit-transition: all .2s linear;
	       -o-transition: all .2s linear;
	          transition: all .2s linear;
	}		

	/* how far logo and burger menu button are from top of page */
	header .top-bar {
		margin-top: 20px;
	}		
	
	header .top-bar-section li:not(.has-form) a:not(.button):hover{
		color: #303030;
		text-decoration: none;
		background: inherit;/* background colour of mobile menu ON CLICK */
		padding: 20px 0;
	}	

/* END MOBILE MENU COLOURS */	

/* CUSTOM MENU BURGER ICON from https://codepen.io/designcouch/pen/Atyop */

	#nav-icon {
	  width: 30px;
	  height: 45px;
	  position: relative;
	  margin: 0px auto;
		margin-right: 20px;
	  -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;
		-webkit-tap-highlight-color: rgba(0,0,0,0); /*remove highlight when tapping links on mobile */
	}
	
	#nav-icon span {
	  display: block;
	  position: absolute;
	  height: 4px;
	  width: 100%;
	  background: #303030;
	  border-radius: 9px;
	  opacity: 1;
	  left: 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;
	}
	
	#nav-icon span:nth-child(1) {
	  top: 0px;
	}
	
	#nav-icon span:nth-child(2),#nav-icon span:nth-child(3) {
	  top: 9px;
	}
	
	#nav-icon span:nth-child(4) {
	  top: 18px;
	}
	
	#nav-icon.open span:nth-child(1) {
	  top: 9px;
	  width: 0%;
	  left: 50%;
	}
	
	#nav-icon.open span:nth-child(2) {
	  -webkit-transform: rotate(45deg);
	  -moz-transform: rotate(45deg);
	  -o-transform: rotate(45deg);
	  transform: rotate(45deg);
	}
	
	#nav-icon.open span:nth-child(3) {
	  -webkit-transform: rotate(-45deg);
	  -moz-transform: rotate(-45deg);
	  -o-transform: rotate(-45deg);
	  transform: rotate(-45deg);
	}
	
	#nav-icon.open span:nth-child(4) {
	  top: 9px;
	  width: 0%;
	  left: 50%;
	}
/* end custom menu icon */

	button.primaryButton, .button.primaryButton {
		font-size: 14px;
		line-height: 40px;
		padding: 0.5rem 1.25rem 0.4rem 1.25rem;
		width: 328px;
	}

	button.secondaryButton, .button.secondaryButton {
		font-size: 14px;
		line-height: 40px;
		padding: 0.5rem 1.25rem 0.4rem 1.25rem;
		width: 328px;
	}
	
	button.textButton, .button.textButton {
		font-size: 14px;
		line-height: 30px;
	}
	
	/* show scrollbar when needed so wide tables can be viewed on mobile */
	/* code from: https://codepen.io/stevenlewis/pen/hubpL */
	.showScrollbar {
	    overflow-x: auto;
			margin-bottom: 20px;
	}
	
	.showScrollbar::-webkit-scrollbar {
	    -webkit-appearance: none;
	}
	
	.showScrollbar::-webkit-scrollbar:vertical {
	    width: 11px;
	}
	
	.showScrollbar::-webkit-scrollbar:horizontal {
	    height: 11px;
	}
	
	.showScrollbar::-webkit-scrollbar-thumb {
	    border-radius: 8px;
	    border: 2px solid white; /* should match background, can't be transparent */
	    background-color: #41B0D1;
	}	
	
	.question {
		font-size: 20px;
		line-height: 30px;
		letter-spacing: -1px;
	}	
	
	li {
		font-size: 16px;
	}		
	
}

/* smaller phones e.g. iPhone 5S */

@media only screen and (max-width: 640px){

	button.primaryButton, .button.primaryButton {
	width: 280px;
	}
}	