/*General Start*/

@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

/*input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=number]{
    -moz-appearance: textfield;
}*/


* {
    box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
	margin: 0;
    padding: 0;
}

body {
	background-color: white;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	position: relative;
}

:root {
	/*--shine_colour:#ffea00;*/
	--shine_colour:#fbcc0c;
	--shine_colour_highlight: #f0dc00;
	--shine_grey: rgb(225, 225, 225);
	--section_grey: rgb(246, 246, 246);
}

p {
	line-height: 1.5rem;
}

li {
	line-height: 1.5rem;
}

a {
	text-decoration: none;
	color: #3369ff;
}

/*General End*/




/*HOME START*/

/*Topbar Start*/

/*.header {
}*/

.loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #f7f9fb;
	transition: opacity 0.75s, visibility 0.75s;
	z-index: 2;
}

.loader::after {
	content: "";
	width: 75px;
	height: 75px;
	border: 15px solid #dddddd;
	border-top-color: var(--shine_colour);
	border-radius: 50%;
	animation: loading 0.75s ease infinite;
}

.ajax_loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: opacity 0.75s, visibility 0.75s;
}

.ajax_loader::after {
	content: "";
	width: 75px;
	height: 75px;
	border: 15px solid #dddddd;
	border-top-color: var(--shine_colour);
	border-radius: 50%;
	animation: loading 0.75s ease infinite;
}



.price_slider_text_container {
	display: flex;
	margin-bottom: 9px;
}

.price_slider_text {
	display: inline;
    width: auto; /* Width is determined by content (default) */
	font-size: 16px;
}

.price_slider_numbers {
	width: 85px;
	border: 0; 
	color:#000000; 
	font-size: 16px;
}

.distance_slider_numbers {
	width: 115px;
	border: 0; 
	color:#000000; 
	font-size: 16px;
}
/*#slider-range .ui-slider-handle:nth-of-type(1) {
	border-radius: 20px;
	background-color: var(--shine_colour);
}  

#slider-range .ui-slider-handle:nth-of-type(2) {
	border-radius: 20px;
	background-color: var(--shine_colour);
}*/

/*#slider-range {
	margin-left: 8px;
}*/

.ui-slider-handle {
	top: -.45em !important;
	/*position: absolute;
	z-index: 10 !important;*/
}

.price_slider_range .ui-slider-handle:nth-of-type(1) {
	border-radius: 20px;
	background-color: var(--shine_colour);
}

.price_slider_range .ui-slider-handle:nth-of-type(2) {
	border-radius: 20px;
	background-color: var(--shine_colour);
}

.price_filter {
	height: 51px;
	/*display: flex;
	flex-direction: column;
	justify-content: center;*/
}

.price_cap {
    width: 9.6px;
	background-color: white;
	height: 7px;
	border: 1px solid #c5c5c5;
	/*position: absolute;
	z-index: 1;*/
}

.ui-slider, .price_cap.price_cap_left, .price_cap.price_cap_right, .price_cap.distance_cap_left {
    float: left;
}
.ui-slider {
    width: 238.4px;
	height: 7px !important;
	/*z-index: 0;
	position: relative;*/
}

.price_cap_left {
	/*position: relative;*/
	border-right: 0px solid #c5c5c5 !important;
	margin-left: 0px;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
}

.distance_cap_left {
	/*position: relative;*/
	border-right: 0px solid #c5c5c5 !important;
	margin-left: 0px;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
	background-color: #e9e9e9;
}

.price_cap_right {
	/*position: relative;*/
	border-left: 0px solid #c5c5c5 !important;
	margin-right: 0px;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
}

.ui-widget {
	border-left: 0px solid #c5c5c5 !important;
	border-right: 0px solid #c5c5c5 !important;
}

.ui-corner-all {
	border-bottom-left-radius: 3px;
  }

.ui-corner-all {
	border-bottom-left-radius: 0px !important;
	border-top-left-radius: 0px !important;
	border-bottom-right-radius: 0px !important;
	border-top-right-radius: 0px !important;
}

.ui-slider-handle {
    margin-left: -9.6px;
	border-radius: 30px !important;
}



@keyframes loading {
	from {
		transform: rotate(0turn);
	}
	to {
		transform: rotate(1turn);
	}
}

.loader_hidden {
	opacity: 0;
	visibility: hidden;
}


.uploadSquare {
	margin-top: 30px;
	width: 100%;
	aspect-ratio: 1/1;
	max-width: 392px;
	max-height: 392px;
	border-radius: 25px;

	/*width: 300px;
	height: 300px;*/
	border: 2px dashed var(--shine_grey);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	color: black;
	text-align: center;
	cursor: pointer;
}

.uploadSquareForm {
	margin-top: 10px;
	width: 100%;
	aspect-ratio: 1/1;
	max-width: 392px;
	max-height: 392px;
	border-radius: 25px;

	/*width: 300px;
	height: 300px;*/
	border: 2px dashed var(--shine_grey);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	color: black;
	text-align: center;
	cursor: pointer;
}

.current_profile_picture {
	margin-top: 30px;
	width: 100%;
	aspect-ratio: 1/1;
	max-width: 392px;
	max-height: 392px;
	border-radius: 25px;
	border-width: 2px;
	border-style: solid;
	border-color: var(--shine_colour);
}

.profile_picture_main {
	width: 100%;
	aspect-ratio: 1/1;
	max-width: 392px;
	max-height: 392px;
	border-radius: 25px;
	border-width: 2px;
	border-style: solid;
	border-color: var(--shine_colour);
}

.imagePreview {
	width: 100%;
	height: 100%;
	display: none;
	border-radius: 25px;
}

.upload_square_container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.upload_square_guide {
	margin-top: 10px;
}

.upload_file_image {
	width: 66px;
	height: 66px;
}

.dl_pp_radio {
	display: flex;
	flex-direction: column;
}

.desktop_bottombar_container {
	display: none;
}

.desktop_topbar_container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.625rem 0.625rem;
  margin: auto;
  max-width: 1220px;
  border-bottom: 2px solid var(--shine_colour);
}

.logo_container {
	display: inline;
	width: 60%;
	height: auto;
	/*max-width: 290px;
	max-height: 75px;*/
	max-width: 355px;
	max-height: 75px;
	margin-right: auto;
	object-fit: contain;	
}

#logo {
	width: 100%;
	height: 100%
}

/*#logo {
	width: 60%;
	height: auto;
	max-width: 18.125rem;
	max-height: 4.688rem;
	margin-right: auto;
	object-fit: contain;
}*/

.toggle_button {
  display: flex;
  margin-left: auto;
  flex-direction: column;
  justify-content: space-between;
  width: 1.813rem;
  height: 1.25rem;
  cursor: pointer;
}

.hamburger_container {
	display: inline;
	position: relative;
}

.hamburger_notification {
	position: absolute;
	display: flex;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	background: red;
	color: white;
	align-items: center;
	justify-content: center;
	top: -11px;
	right: -8px;
	pointer-events: none;
}

.steps_complete_menu_red {
	color: #f90000;
}

.toggle_button .bar {
  height: 0.125rem;
  background-color: black;
}

.toggle_button_off {
	display: flex;
	text-decoration: none;
	color: black;
	background-color: var(--shine_colour);
	cursor: pointer;
}

.toggle_button_off_image{
	padding: 0.375rem 0.375rem;
	width: 2.188rem;
	height: 2.188rem;
}

.desktop_topbar {
	display: none;
}



.mobile_menu_links {
	display: flex;
	flex-direction: column;
	background: #ffffff;
	height: 100%;
	width: 100%;
	list-style: none;
	position: absolute;
	z-index: 1000;
	overflow: scroll;
}

.mobile_link_list {
	border-bottom: 1px solid var(--shine_grey);
}

.mobile_link {
	display: block;
	color: black;
	text-decoration: none;
	padding: 0 0;
	font-size: 1rem;
	padding: 1.25rem 2.188rem;
}

/* Topbar End */



/*Search Section Start*/

.main_image_box {
  background-color: #f90000;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(/assets/images/main-image.jpeg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  color: white;
  display: flex;
  justify-content: center;
  isolation: isolate;
  padding-bottom: 4.1rem;
  padding-top: 4.1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.search_container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.search_text {
	font-size: 2.5rem;
	text-align: center;
	margin-bottom: 1.25rem;
}

.search_background {
	background: white;
	border-radius: 25px;
	width: 100%;
	max-width: 47.5rem;
}

/*.tutor_search_form {
	display: flex;
	flex-direction: column;
	padding: 1.25rem 1.25rem;
	justify-content: center;
}*/

.tutor_search_form {
	display: flex;
	flex-direction: column;
	padding: 1.25rem 1.25rem;
}

.search_tabs {
	display: flex;
	flex-direction: row;
	list-style: none;
	border-bottom: 2px solid var(--shine_grey);
}

.search_tab_online, .search_tab_offline {
	color: black;
	width: 50%;
	padding-top: 1.25rem;
	padding-bottom: 0.625rem;
	cursor: pointer;
	font-size: 1.125rem;
	text-align: center;
}

.search_tab_online {
	border-bottom: 2px solid var(--shine_colour);
	margin-bottom: -0.125rem;
	color: var(--shine_colour);
}

.search_input {
	margin-bottom: 1.25rem;
	border-radius: 6px;
	border: 1px solid var(--shine_grey);
	padding: 7px 9px;
	font-size: 1rem;
	width: 100%;
}

.search_input_postcode {
	margin-bottom: 1.25rem;
	border-radius: 6px;
	border: 1px solid var(--shine_grey);
	padding: 7px 9px;
	font-size: 1rem;
	width: 100%;
}

.search_input::placeholder {
	font-size: 1rem;
}

.search_input:focus {
	outline: 2px solid var(--shine_colour);
}

.search_input_postcode:focus {
	outline: 2px solid var(--shine_colour);
}

.search_input_search {
	margin-bottom: 1.25rem;
	border-radius: 6px;
	border: 1px solid var(--shine_grey);
	font-size: 1rem;
	padding: 7px 9px;
	width: 100%;
	background-color: white;
}

.search_input_search:focus {
	outline: 2px solid var(--shine_colour);
}

.search_button {
	border-radius: 25px;
	background: var(--shine_colour);
	padding: 0.625rem 0.625rem;	
	border: none;
	cursor: pointer;
	font-size: 1.125rem;
}

.search_button:hover {
	background: var(--shine_colour_highlight);
}

.clear_all_button {
	border-radius: 25px;
	background: #e9e9e9;
	padding: 0.625rem 0.625rem;	
	border: none;
	cursor: pointer;
	font-size: 1.125rem;
	margin-top: 22.5px;
}

.clear_all_button:hover {
	background: #c5c5c5;
}

.ui-menu {
	list-style: none !important;
	background-color: #ffffff !important;
	position: absolute !important;
	margin-top: -18px !important;
	width: 100% !important;
	z-index: 1000;
}

.ui-menu-item {
	color: black;
}

/*.ui-menu-item {
	color: black !important;
	border-radius: 6px !important;
	padding: 7px 9px !important;
	font-size: 1rem !important;
	cursor: pointer;
	width: 100% !important;

}*/

/*.ui-menu-item:hover {
	background-color: var(--shine_colour) !important;
}*/

.autocomplete_dropdown_search {
	position: relative;
	width: 100%;
}

#autocomplete_subject {
	z-index: 1;
}

/*#autocomplete_subject_level {
	z-index: 2;
}

#autocomplete_postcode {
	z-index: 1;
}*/

.ui-menu-item-wrapper {
	border-radius: 6px !important;
	padding: 7px 9px !important;
	font-size: 1rem !important;
	cursor: pointer;
	width: 100% !important;
}

.ui-menu-item-wrapper.ui-state-active {
	background-color: var(--shine_colour) !important;
}

.ui-helper-hidden-accessible{
    display: none !important;
}



/* The switch - the box around the slider */
.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 34px;
}

/* Hide default HTML checkbox */
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

/* The slider */
.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
}

.slider:before {
	position: absolute;
	content: "";
	height: 26px;
	width: 26px;
	left: 4px;
	bottom: 4px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
}

input:checked + .slider {
	background-color: green;
}

input:focus + .slider {
	box-shadow: 0 0 1px green;
}

input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
	border-radius: 34px;
}

.slider.round:before {
	border-radius: 50%;
} 

.online_slider_container {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.online_slider_error {
	display: none;
	color: red;
}

/*Search Section End*/



/*Benefits Section Start*/

.benefits {
	background: var(--section_grey);
	padding: 2.813rem 0;
}

.benefits_container {
	display: flex;
	flex-direction: column;
	padding: 0 0.625rem;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}

.benefits_header {
	text-align: center;
	font-size: 2rem;
	margin-bottom: -1.5rem;
}

.benefits_1_container {
	display: flex;
	flex-direction: column;
	margin-bottom: 1.25rem;
	margin: 0 auto;
	margin-top: 3.75rem;
	text-align: center;
}

.benefits_1_header_container {
	display: flex;
	align-items: center;
	flex-direction: column;
}

.benefits_1_image {
	width: 3.75rem;
	height: 3.75rem;
	margin-bottom: 0.625rem;
}

.benefits_1_header {
	color: black;
	margin-bottom: 0.625rem;
}

.benefits_1_text {
	margin: 0;
}

/*Benefits Section End*/



/*How Works Start*/

.how_works {
	background: white;
	padding: 2.813rem 0;
}

.how_works_container {
	padding: 0 0.625rem;
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	align-items: center;
}

.how_works_1_header {
	margin-bottom: 0.625rem;
}

.how_works_1_container {
	align-items: center;
	margin: 0 auto;
}

.animated_image {
	margin: 0 auto;
	width: 12.5rem;
	height: 12.5rem;
}

.find_tutor_section {
	padding: 45px 0;
	flex-grow: 1;
	background-color: var(--section_grey);
}

/*How Works End*/



/*Register Start*/

.register {
	background: var(--section_grey);
	padding: 2.813rem 0;
}

.register_container {
	padding: 0 0.625rem;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.register_header {
	text-align: center;
	font-size: 2rem;
}

.register_child_header {
	text-align: center;
}

.register_child_container {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: var(--shine_colour);
	border-radius: 25px;
	padding: 2.5rem 2.5rem;
	margin-top: 2.5rem;
}

.register_list {
	padding: 1.25rem 0;
	list-style: inside;
}

.register_list_item {
	margin-bottom: 0.625rem;
}

.register_form_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--section_grey);
	border-radius: 1.563rem;
	font-size: 1rem;
}

.autocomplete_dropdown_form {
	position: relative;
	width: 100%;
	max-width: 589px;
}


/*Register End*/



/*Footer Start*/

.footer {
	padding-top: 2.813rem;
	padding-bottom: 0.625rem;
	background: var(--shine_colour);	
}

.footer_container {
	padding: 0 0.625rem;
	justify-content: center;
	display: inline-flex;
	justify-content: space-between;
}

/*.footer_container_horizontal {
	display: grid;
	grid-gap: 35px;
	justify-content: center;
	grid-template-columns: repeat(auto-fit, minmax(0, 190px));
}

.footer_links_container {
	display: flex;
	flex-direction: column;
	align-items: center;
}*/

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

.footer_links_container {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 180px;
}

.how_works_list {
	margin-top: 30px;
}

.copyright_text {
	margin-top: 1.25rem;
}

.faq_question_container_first {
	margin-top: 30px;
	border-top: 1px solid rgb(225, 225, 225); 
	border-bottom: 1px solid rgb(225, 225, 225);
	padding: 12px 12px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0px;
}

.faq_question_container {
	border-bottom: 1px solid rgb(225, 225, 225);
	border-top: 1px solid rgb(225, 225, 225);
	padding: 12px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin-top: -1px;
}

.faq_question_container:hover, .faq_question_container:active {
	background-color: rgb(246, 246, 246);
	cursor: pointer;
}

.faq_answer {
	padding: 12px;
	display: none;
}

@media (hover: none) {
	.faq_question_container_first, .faq_question_container, .blog_summary_post {
		cursor: pointer;
	}
}

.faq_question_container_first:hover {
	background-color: rgb(246, 246, 246);
	cursor: pointer;
}

.faq_expand {
	width: 21px;
	height: 21px;
}

.faq_collapse {
	width: 21px;
	height: 21px;
	display: none;
}

.faq_question {
	font-size: 1rem;
}

.how_works_list_item {
	margin-top: 12px;
	margin-left: 18px;
}

.how_works_list_item_first {
	margin-top: 0px;
	margin-left: 18px;
}

.footer_container_vertical {
	width: 100%;
}

.other_links_title {
	text-align: center;
	font-weight: 700;
	font-size: 1.125rem;
	margin-bottom: 1.25rem;
	width: fit-content;
}

.footer_links {
	justify-content: center;
	align-items: center;
	text-align: center;
	list-style: none;
	display: flex;
	flex-direction: column;
	width: fit-content;
}

.footer_container {
	display: flex;
}

.footer_link {
	text-decoration: none;
	color: black;
}

.footer_link_list {
	margin-bottom: 0.313rem;
	display: inline;
	width: fit-content;
}

/*Footer End*/

/*HOME END*/



/*CONTACT US START*/

/*Contact Us Start*/

.inbox_unread {
	font-weight: 900;
}

.first_message_text {
	margin: auto auto;
}

.form_input:focus, .form_input_account_number:focus, .form_input_sort_code:focus, .form_input_tagline:focus, .form_input_day_month:focus, .form_input_year:focus, .form_input_bio:focus {
	outline: 2px solid var(--shine_colour) !important;
}

/*.form_input_bio:focus {
	outline: 2px solid var(--shine_colour) !important;
}*/

.contact_us_header_container {
	margin-bottom: 45px;

}

.contact_us {
	padding: 45px 0;
	background: var(--section_grey);
}

.contact_us_container {
	padding: 0 10px;
	display: flex;
	flex-direction: column;
	margin: 0 auto;
}

.tutor_profile_container {
	padding: 0 10px;
	display: flex;
	flex-direction: column;
	margin: 0 auto;
}

.contact_us_header {
	font-size: 2rem;
	margin-bottom: 22.5px;
}

.form_background {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	max-width: 785px;
}

.steps_complete_text {
	font-weight: 900;
}

.form_input {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 589px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.form_input_sort_code {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 100px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.form_input_account_number {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 130px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.tagline_bio_container {
	display: inline flex;
	flex-direction: column;
}

.form_input_tagline {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 857px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.form_input_greyed {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 589px;
	width: 100%;
	font-size: 16px;
	height: 35px;
	pointer-events: none;
	color: gray;
}

/*.form_input_view_only {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	border: none;
	max-width: 589px;
	width: 100%;
	font-size: 16px;
	height: 35px;
	pointer-events: none;
	color: #000000;
}*/

/*.hourly_lp_label {
	font-size: 18px;
}*/

.hourly_lp_input {
	padding: 7px 9px;
	border: none;
	max-width: 589px;
	width: 100%;
	font-size: 16px;
	height: 35px;
	pointer-events: none;
	color: #000000;
	font-weight: 900;
	font-size: 18px;
}

.form_input_password {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 549px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.form_input_password:focus {
	outline: 2px solid var(--shine_colour) !important;
}

.form_input_password_container {
	display: inline-flex;
}

.show_password_button {
	width: 40px;
	border: 1px solid rgb(205, 205, 205);
	background-color: var(--shine_colour);
	border-radius: 6px;
	cursor: pointer;
}

.show_password_button:hover, .hide_password_button:hover {
	background-color: var(--shine_colour_highlight);
}

.hide_password_button {
	display: none;
	width: 40px;
	border: 1px solid rgb(205, 205, 205);
	background-color: var(--shine_colour);
	border-radius: 6px;
	cursor: pointer;
}

.input_error_message {
	margin-bottom: 20px;
	margin-top: 10px;
	color: red;
	font-weight: 700;
}

.online_error_message {
	display: none;
	margin-top: 10px;
	color: red;
	font-weight: 700;
}

.submit_success_message {
	margin-top: 10px;
	color: green;
	font-weight: 700;	
}

.submit_error_message {
	margin-top: 10px;
	color: red;
	font-weight: 700;	
}

.form_input_select:focus {
	outline: 2px solid var(--shine_colour) !important;
}

.form_text {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);	
	height: 150px;
	font-size: 16px;
	width: 100%;
	max-width: 589px;
}

.form_text:focus {
	outline: 2px solid var(--shine_colour) !important;
}

.input_label {
	margin-bottom: 10px;
}

.date_input_label {
	margin-bottom: 1px;
	font-size: 13px;
	color: black;
}

.text_label {
	margin-bottom: 10px;
}

/*.form_wrap_container {
	display: inline;
	width: auto;
}*/

.form_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	color: #000000;
}

.form_button_space {
	margin-top: 30px;
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	color: #000000;
}

.other_contact {
	margin-top: 20px;
}



/*FIND TUTOR START*/

/*.find_tutor_section {
	padding: 45px 0;
	background: var(--section_grey);
}*/

.find_tutor_container {
	padding: 0 10px;
	display: flex;
	flex-direction: column;
}

.find_tutor_header {
	font-size: 2rem;
}

.find_tutor_text_container {
	margin-bottom: 30px;
}

.find_tutor_text {
	margin-top: 12px;
}

/*FIND TUTOR END*/



/*FIND TUTOR RESULTS START*/

/*Find Tutor Results Search*/

.results_search_section {
	padding-top: 45px;
	background: white;
	flex-grow: 1;
	position: relative;
	z-index: 2;
}

.results_search_container {
	padding: 0 10px;
}

.results_search_header {
	font-size: 2rem;
	margin-bottom: 30px;
}

/*Find Tutor Results End*/



/*Results List Start*/

.results_list_section {
	background: var(--section_grey);
	position: relative;
	z-index: 1;
}

.results_list_container {
	padding: 0 10px;
}

.results_list_filters {
	padding: 10px 10px;
	background-color: white;
	border-radius: 25px;
	margin-top: 10px;
}

.expand_filters {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	font-size: 1.5rem;
	cursor: pointer;
	background: none;
	border: none;
	width: 100%;
}

.filter_arrow {
	display: inline;
	height: 1.75rem;
	width: 1.75rem;
}

.filters_active {
	display: none;
	flex-direction: column;
	margin-top: 30px;
}

.distance_filter {
	margin-bottom: 22.5px;
	height: 51px;
}

.distance_header {
	margin-bottom: 22.5px;
	font-weight: 700;
}

.distance_slider_output {
	margin-bottom: 12px;
}





.price_from_to_container {
	display: flex;
	flex-direction: row;
	width: fit-content;
}

.price_from_label, .price_to_label {
	margin-bottom: 12px;
}


.price_header {
	margin-bottom: 22.5px;
	font-weight: 700;
}

.price_from_label, .price_to_label {
	width: fit-content;
}

/*.price_from_container {
	margin-bottom: 12px;
}*/

.price_to_container {
	margin-left: 18px;
}

.price_from_container, .price_to_container {
	display: flex;
	flex-direction: column;
	width: fit-content;
}

.price_to, .price_from {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	width: 80px;
	font-size: 16px;
}



.qualifications_filter {
	margin-top: 22.5px;
}

.qualifications_header {
	display: flex;
	flex-direction: column;
	margin-bottom: 22.5px;
	font-weight: 700;
}



.sort_by_filter {
	display: flex;
	flex-direction: column;
	margin-top: 22.5px;
}

.sort_by_header{
	margin-bottom: 22.5px;
	font-weight: 700;
}

.sort_by_input_label {
	margin-bottom: 12px;
}

.sort_by_input_label:last-of-type {
	margin-bottom: 0;
}


.form_radio_container {
	display: flex;
	flex-direction: column;
}

.form_radio_header{
	margin-bottom: 10px;
	font-weight: 700;
}

.form_radio_input_label {
	margin-bottom: 12px;
}

.form_radio_input_label:last-of-type {
	margin-bottom: 0;
}


.tutor_search_results {
	background: var(--section_grey);
	padding: 10px 0;
	display: flex;
	/*justify-content: center;*/
	flex-direction: column;
}

.find_tutor_results {
	background: var(--section_grey);
	/*padding: 45px 0;*/
	padding-top: 10px;
	padding-bottom: 10px;
	display: flex;
	/*justify-content: center;*/
	flex-direction: column;
}




.tutor_search_card_link {
	text-decoration: none;
	color: black;
	max-width: 550px;
	padding: 20px 20px;
	margin: 100px 0;
	background: white;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
	cursor: pointer;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 45px;
	word-wrap: break-word;
}

.tutor_search_card_link:last-of-type {
	margin-bottom: 0;
}


/*.tutor_search_card {
	max-width: 550px;
	padding: 20px 20px;
	margin: 100px 0;
	background: white;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
	cursor: pointer;
	width: 100%;
	margin: 100px auto;
}*/

.tutor_search_card_link:hover {
	box-shadow: 0 2.5px 7.5px rgba(93, 93, 93, 0.8);
}

.tutor_card_image {
	width: 100%;
	max-height: 480px;
	max-width: 480px;
	margin: 0 auto;
	border-radius: 25px;
	aspect-ratio: 1/1;
}

.tutor_card_text {
	display: flex;
	justify-content: flex-start;
}

/*.tutor_card_icon_container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}*/

.tutor_card_icon_container {
	margin-top: 12px;
	width: 100%;
	gap: 12px;
	display: grid;
	justify-content: flex-start;
	grid-template-columns: repeat(auto-fit, minmax(0, 160px));
}

.tutor_card_icon_profile_container {
	margin-top: 12px;
	width: 51%;
	gap: 12px;
	display: grid;
	justify-content: flex-start;
	grid-template-columns: repeat(auto-fit, minmax(0, 170px));
}

/*.tutor_card_profile_text {
	flex-grow: 1;
	display: flex;
	margin-top: 20px;
	flex-basis: 27%;
	flex-direction: row;
}*/

.tutor_card_icon {
	margin-right: 5px;
	height: 20px;
	width: 20px;
}

.tutor_card_name {
	font-size: 2rem;
	margin-top: 21px;
	font-weight: 700;
	text-decoration-line: underline;
  	text-decoration-thickness: 3px;
  	text-decoration-color: var(--shine_colour);
}

.tutor_card_header {
	font-size: 1.5rem;
	margin-top: 12px;
	/*word-wrap: break-word;*/
}

.tutor_card_price {
	font-size: 1.5rem;
	margin-top: 12px;
}

.tutor_card_text_container {
	display: flex;
	flex-direction: column;
}

.tutor_card_tagline_container {
	display: flex;
	flex-direction: column;
}

.tutor_search_error {
	font-weight: 700;
	color: #f90000;
}

.tutor_card_tagline_section {
	display: flex;
	flex-direction: column;
}


/*Results List End*/

/*FIND TUTOR RESULTS END*/



/*Tutor Profile Start*/

.tutor_profile_section {
	background-color: var(--section_grey);
	padding: 45px 0;
}

.tutor_profile_image {
	width: 100%;
	aspect-ratio: 1/1;
	max-width: 392px;
	max-height: 392px;
	border-radius: 25px;
}

.tutor_profile_image_text {
	display: flex;
	flex-direction: column;
}

.contact_tutor_button {
	align-self: flex-start;
	border-radius: 25px;
	padding: 0.625em;
	font-size: 1.25rem;
	border: 1px solid rgb(225, 225, 225);
	background: var(--shine_colour);
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
	margin-top: 30px;
	/*margin-bottom: 9px;*/
}

.contact_tutor_button:hover {
	background: var(--shine_colour_highlight);
}

@media only screen and (min-width: 72.688em	) {

	.tutor_card_tagline_section {
		flex-direction: row;
	}
	
	.tutor_card_icon_profile_container {
		width: 100%;
	}

	.tutor_profile_image_text {
		margin-left: 45px;
		justify-content: space-between;
	}

	.tutor_profile_box {
		display: flex;
		flex-direction: column;
	}

	.contact_tutor_button {
		margin-top: 0px;
		/*margin-bottom: 132px;*/
	}

}

.tutor_profile_location {
	display: flex;
	flex-direction: row;
	margin-top: 12px;
}

.tutor_profile_header {
	font-size: 1.5rem;
	text-decoration-line: underline;
  	text-decoration-thickness: 3px;
	text-decoration-color: var(--shine_colour);
}

.tutor_profile_availability_header {
	margin-bottom: 12px;
	font-size: 1.5rem;
	text-decoration-line: underline;
  	text-decoration-thickness: 3px;
	text-decoration-color: var(--shine_colour);
}

.tutor_profile_bio_section {
	margin-top: 45px;
}

.tutor_profile_bio {
	margin-top: 12px;
	white-space: pre-wrap;       
    white-space: -moz-pre-wrap;  
    white-space: -pre-wrap;      
    white-space: -o-pre-wrap;    
    word-wrap: break-word;
}

.tutor_profile_subjects_section {
	margin-top: 45px;
}


/*.tutor_profile_container {
	padding: 0 10px;
	display: flex;
	flex-direction: column;
}*/


.tutor_profile_review_date {
	margin-bottom: 12px;
}

.tutor_profile_review_text {
	margin-bottom: 22.5px;
}

.tutor_profile_review_text:last-child {
	margin-bottom: 0;
}

.tutor_profile_review_top {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.tutor_profile_review_rating {
	display: flex;
}

.tutor_profile_review_section {
	margin-bottom: 45px;
}

.tutor_profile_review_container {
	margin-top: 21px
}

.tutor_profile_reviews_container {
	margin-top: 12px;
	display: inline-block;
}

.tutor_profile_reviews_container .tutor_profile_review_container:first-of-type {
	margin-top: 0;
}

.tutor_profile_subjects_container {
	margin-top: 12px;
	display: inline-block;
}

.tutor_profile_subject_container {
	margin-top: 21px;
}

.tutor_profile_subjects_container .tutor_profile_subject_container:first-of-type {
	margin-top: 0;
}

.tutor_profile_subject_header {
	font-size: 1rem;
	font-weight: 700;
}

.tutor_profile_qualification_container {
	margin-top: 21px;
}

.tutor_profile_qualifications_container {
	margin-top: 12px;
	display: inline-block;
}

.tutor_profile_qualifications_container .tutor_profile_qualification_container:first-of-type {
	margin-top: 0;
}

.form_checkbox {
	display: flex;         /* Use Flexbox for layout */
	margin-bottom: 30px;
}

.form_checkbox_text {
	margin-left: 15px;     /* Space between checkbox and text */
}

.form_input_date_container {
	display: flex;
	flex-direction: row;
	gap: 12px;
}

.form_input_date_input_container {
	display: flex;
	flex-direction: column;
}

.form_input_day_month {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 47px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.form_input_year {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 56px;
	width: 100%;
	font-size: 16px;
	height: 35px;
}

.profile_back_button {
	margin-top: -22.5px;
	border: 0;
	padding: 0.8em 2.25em;
	background: white;
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	margin-bottom: 45px;
	border: 1px solid rgb(225, 225, 225);
}

.profile_back_button:hover {
	background: rgb(246, 246, 246);
}

/*Register Start*/

.register_form_section {
	background: var(--section_grey);
	padding: 45px 0;
}

.register_form_container {
	display: flex;
	flex-direction: column;
	padding: 0 10px;
}

.register_form_header {
	font-size: 2rem;
	margin-bottom: 45px;
}

/*.input_error_message:last-child {
	margin-bottom: 0;
}*/

.form_input_select {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 589px;
	width: 100%;
	font-size: 16px;
	background-color: white;
}

.form_input_flatpickr {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 589px;
	width: 100%;
	font-size: 16px;
}

.form_input_flatpickr:focus {
	outline: 2px solid var(--shine_colour) !important;
}


/*Register End*/

/*Login Start*/

.login_section {
	padding: 45px 0;
	background-color: var(--section_grey);
}

.login_container {
	padding: 0 10px;
}

.login_header {
	margin-bottom: 45px;
	margin-top: 20px;
	font-size: 2rem;
}

.login_form {
	background: white;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 628px;
	padding: 0 20px;
	border-radius: 25px;
	padding-bottom: 20px;
	margin: 0 auto;
}

.white_box_container {
	background: white;
	display: inline-flex;
	flex-direction: column;
	width: 100%;
	padding: 20px 20px;
	border-radius: 25px;
}

.login_form_bottom_container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.login_forgot_password {
	color: black;
	text-decoration: none;
}

.login_submit_container {
	display: flex;
	flex-direction: column;
}

.login_captcha_container {
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
}

.captcha_image {
	width: 175px;
	height: 75px;
	margin-bottom: 26px;
}



/* Dashboard Start */

.dashboard_section {
	flex-grow: 1;
	background-color: var(--section_grey);
}

.dashboard_container {
	padding: 45px 10px;
	display: flex;
	flex-direction: column;
}

.dashboard_header_1 {
	font-size: 2rem;
	margin-bottom: 30px;
}

.dashboard_header_2 {
	font-size: 1rem;
	margin-bottom: 21px;
}

.dashboard_header_3 {
	font-size: 1rem;
	margin-bottom: 30px;
}

.dashboard_header_4 {
	font-size: 1rem;
	margin-bottom: 12px;
}

.online_offline_container {
	display: flex;
	flex-direction: column;
	margin-bottom: 30px;
}

.email_notifications_container {
	display: flex;
	flex-direction: column;
}

.profile_status_radio {
	margin-bottom: 12px;
}

.profile_status_radio_last {
	margin-bottom: 0px;
}

.profile_status_radio_label {
	font-size: 1rem;
}

.dashboard_error_message {
	font-size: 1rem;
	margin-top: 12px;
	color: red;
	font-weight: 700;
}

.dashboard_error_header {
	font-size: 24px;
	margin-bottom: 21px;
	color: black;
}

.dashboard_error_message_complete {
	font-size: 1rem;
	margin-top: 12px;
	color: green;
	font-weight: 700;
}

.dashboard_error_header_complete {
	font-size: 24px;
	margin-bottom: 21px;
	color: green;
}

.lesson_booking_new_valid_container {
	display: flex;
	flex-direction: column;
}

/* Dashboard End */



/* Personal Details Start */

.personal_details_section {
	background-color: 	var(--section_grey);
}

.personal_details_container {
	padding: 45px 10px;
}

.account_details_text_container {
	margin-bottom: 30px;
	display: flex;
	flex-direction: column;
}

.account_details_header {
	font-size: 2rem;
	margin-bottom: 22.5px;
}

.personal_details_header {
	font-size: 1.5rem;
	margin-bottom: 12px;
}

.how_works_header {
	font-size: 1.5rem;
}

.account_details_menu {
	list-style: none;
	background-color: white;
	border-radius: 25px;
	padding: 24px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

.account_details_menu_item {
	flex-basis: 50%;
	text-align: center;
	padding: 10px;
}

.account_details_menu_item_active {
	background-color: var(--shine_colour);
	flex-basis: 50%;
	text-align: center;
	padding: 10px;
	border-radius: 25px;
}

.account_details_menu_link {
	text-decoration: none;
	color: black;
}

.personal_details_form {
	margin-top: 45px;
	background-color: white;
	border-radius: 25px;
	padding: 24px;
	display: flex;
	flex-direction: column;
}

.faq_container {
	margin-top: 45px;
	background-color: white;
	border-radius: 25px;
	padding: 24px;
	display: flex;
	flex-direction: column;
}


/* Personal Details End */

.verification_section {
	background-color: 	var(--section_grey);
}

.verification_container {
	padding: 45px 10px;
}

.verification_link_header {
	margin-bottom: 22.5px;
}

.table_overflow_scroll {
	overflow-x: auto;
	margin-bottom: 30px;
}

.table_overflow_scroll_profile {
	overflow-x: auto;
}

.enhanced_dbs_status_table {
	font-weight: 900;
}

.verification_link_table {
	border-collapse: collapse;
    font-size: 0.9em;
    font-family: sans-serif;
    min-width: 400px;
	border-radius: 5px 5px 0 0;
	overflow: hidden;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.verification_link_table thead tr {
    background-color: var(--shine_colour);
    color: #000000;
    text-align: left;
	font-weight: bold;
}

.verification_link_table th,
.verification_link_table td {
    padding: 18px 15px;
}

.verification_link_table tbody tr {
    border-bottom: 1px solid #dddddd;
}

.verification_link_table tr:nth-of-type(even) {
    background-color: #f3f3f3;
}

.verification_link_table tbody tr:last-of-type {
    border-bottom: 2px solid var(--shine_colour);
}

.steps_complete {
	color: green;
	font-weight: bold;
}

.steps_pending {
	color: red;
	font-weight: bold;
}

.steps_complete_status {
	font-weight: bold;
}

.verification_link_container {
	margin-bottom: 45px;
}

.verification_link_container:last-of-type {
	margin-bottom: 0;
}

.identity_document_container {
	display: flex;
	flex-direction: column;
}

.verification_upload_text {
	margin-bottom: 12px;
}

.identity_document_upload_container {
	margin-top: -9px;
	margin-bottom: 22.5px;
}

.identity_document_upload_container_1 {
	display: none;
	margin-bottom: 10px;

}

.identity_document_upload_container_2 {
	display: none;
	margin-bottom: 10px;
}

.identification_radio_header {
	font-weight: 400;
	font-size: 16px;
	margin-bottom: 12px;
}

.back_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: white;
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	margin-bottom: 30px;
	border: 1px solid rgb(225, 225, 225);
	text-decoration: none;
	color: #000000;
}

.back_button:hover {
	background: rgb(246, 246, 246);
}

.identity_document_submit_message {
	font-size: 1rem;
	color: green;
	font-weight: 700;
	margin-top: 10px;
}

.qualification_add_div {
	display: none;
	flex-direction: column;
	margin-top: 30px;
}

.specify_level_container {
	flex-direction: column;
}

.specify_grade_container {
	flex-direction: column;
}
/*Login End*/

/*Tutor Profile End*/

/* References start */

.references_add_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	border: 1px solid rgb(225, 225, 225);
}

.steps_to_complete_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	border: 1px solid rgb(225, 225, 225);
	margin-top: 20px;
	color: red;
}

.references_add_button:hover, .steps_to_complete_button:hover {
	background: var(--shine_colour_highlight);
}

.references_add_button_link {
	width: fit-content;
}

/* References end */

/*Stripe payment method update start*/

.stripe_payment_method_message {
	color: green;
	font-weight: 700;
	font-size: 1rem;
	margin-top: 10px;
}

/*Stripe payment method update end*/

/*Tutor profile start*/

/*Tutoring location start*/

.tutoring_location_label {
	margin-bottom: 12.5px;
}

.tutor_distance_form {
	display: flex;
	flex-direction: column;
}

/*Profile picture start*/

.upload_profile_picture_form {
	display: flex;
	flex-direction: column;
	margin-top: 22.5px;
}

.upload_background_check_form {
	display: flex;
	flex-direction: column;
}

/*.upload_pp_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
}*/

.image_button_container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 30px; 
	width: 392px;
	margin-top: 30px;
}

.image_upload_container {
	display: inline-flex;
	flex-direction: column;
	margin-top: 30px;
	width: 100%;
	max-width: 392px;
}

.upload_image_form {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.delete_image_form {
	display: flex;
	justify-content: center;
}

.delete_pp_label {
	margin-bottom: 20px;
}

.upload_file_input {
	margin-bottom: 0px;
}

.delete_profile_picture_form {
	display: flex;
	flex-direction: column;
	margin-top: 22.5px;
}

.upload_error_message {
	margin-top: 10px;
	color: red;
	font-weight: 700;
}

/*Profile picture end*/

/*Tagline start*/

.form_input_bio {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	max-width: 1000px;
	width: 100%;
	font-size: 16px;
	height: 310px;
}

.form_input_bio:focus {
	outline: 2px solid var(--shine_colour);
  }

/*Tagline end*/

/*Subject start*/

.subject_table_buttons {
	display: flex;
	flex-direction: row;
}

.table_update_button {
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
	margin-left: 12px;  
	white-space: nowrap;
}

.table_update_button:hover {
	background: rgb(246, 246, 246);
}

.table_delete_button {
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
}

.table_delete_button:hover {
	background: rgb(246, 246, 246);
}

/*Subject end*/

/*Subject add start*/

.autocomplete_dropdown_form {
	display: inline;
}

/*Subject add end*/

/*messages_start*/

.messages_section {
	padding: 45px 10px;
	background-color: var(--section_grey);
}

.messages_container {
	padding: 24px;
	display: flex;
	flex-direction: column;
	background-color: white;
	border-radius: 25px;
}

.messages_title {
	margin-bottom: 12px;
}

.messages_header_text_container {
	margin-bottom: 30px;
}

.messages_table_button {
	white-space: nowrap;
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
}

.messages_table_button:hover {
	background: rgb(246, 246, 246);
}

/*messages_end*/

/*chat_start*/

.chat_section {
	background-color: white;
	flex-grow: 1;
}

.chat_container {
	display: flex;
	flex-direction: column;
}

.chat_topbar {
	padding: 0 10px;
	height: 60px;
	background-color: white;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}

.back_chat_button {
	border: 0;
	padding: 0.4em 1.15em;
	background: white;
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	border: 1px solid rgb(225, 225, 225);
}

.back_chat_button:hover {
	background: rgb(246, 246, 246);
}

.chat_title {
	font-size: 2rem;
	font-weight: 700;
}

.chat_book_button {
	border: 0;
	padding: 0.4em 1.15em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	border: 1px solid rgb(225, 225, 225);
	text-decoration: none;
	color: #000000;
}

.chat_book_button:hover {
	background: var(--shine_colour_highlight);
}

.chat_bottombar_form {
	background-color: white;
	display: inline-flex;
	flex-direction: row;
	padding: 10px 3px;
}

.chat_messages {
	overflow: auto;
	height: calc(100vh - 96.5833px - 60px - 74px);
	padding: 0 20px;
	background-color: var(--section_grey);
	border-radius: 25px;
	display: flex;
	flex-direction: column;
}

.chat_input {
	padding: 7px 9px;
	border-radius: 6px;
	border: 1px solid rgb(205, 205, 205);
	width: 100%;
	font-size: 16px;
}

.chat_input:focus {
	outline: 2px solid var(--shine_colour);
  }

.send_message_button {
	border: 0;
	padding: 0.4em 1.15em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	border: 1px solid rgb(225, 225, 225);
	text-decoration: none;
	color: #000000;
	white-space: nowrap;
}

.send_message_button:hover {
	background: var(--shine_colour_highlight);
}

.first_message_background {
	background-color: var(--shine_colour);
	padding: 24px;
	border-radius: 25px;
	display: inline-block;
	max-width: 720px;
	margin: auto auto;
}

.chat_message_background {
	background-color: white;
	padding: 24px;
	border-radius: 25px;
	display: inline-block;
	max-width: 720px;
}

.chat_message_sender_background {
	padding: 24px;
	border-radius: 25px;
	display: inline-block;
	max-width: 720px;
	background-color: var(--shine_colour);
}

.chat_message_receiver_background {
	background-color: white;
	padding: 24px;
	border-radius: 25px;
	display: inline-block;
	max-width: 720px;
}

.chat_message_container_receiver {
	margin: 30px 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.chat_message_container_sender {
	margin: 30px 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.chat_message_details {
	font-weight: 700;
}

.chat_error_message {
	font-weight: 700;
	font-size: 1rem;
	color: #f90000;
	margin: 10px 0;
	text-align: end;
}

/*lesson booking new start*/

.lesson_booking_new_section {
	background-color: var(--section_grey);
	padding: 45px 10px;
	flex-grow: 1;
}

.lesson_booking_new_container {
	background: white;
	padding: 24px;
	border-radius: 25px;
	display: flex;
	flex-direction: column;
}

.form_input_radio_container {
	display: inline-flex;
	flex-direction: column;
	margin-bottom: 28px;
}

.lesson_frequency_label {
	margin-bottom: 12px;
}

/*.lesson_time_length_container {
	display: inline-flex;
}*/

/*lesson booking new end*/

/*chat_end*/

/* lesson bookings start */

.lesson_confirmation_section {
	padding: 45px 10px;
	background-color: var(--section_grey);
}

.lesson_confirmation_container {
	padding: 24px;
	display: flex;
	flex-direction: column;
	background-color: white;
	border-radius: 25px;
}

.lesson_confirmation_title {
	margin-bottom: 22.5px;
}

.lesson_confirmation_header_text_container {
	margin-bottom: 45px;
}

.lesson_booking_table_form {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.lesson_booking_update_button {
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
	margin-right: 12px;
}

.lesson_booking_delete_button {
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
}

.lesson_booking_delete_all_button {
	border-radius: 25px;
	padding: 0.625em;
	font-size: 0.9rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
	text-decoration: none;
	margin-left: 12px;
}

.lesson_booking_update_button:hover, .lesson_booking_delete_button:hover, .lesson_booking_delete_all_button:hover {
	background: rgb(246, 246, 246);
}

.lesson_book_existing_button {
	border: 0;
	padding: 0.8em 2.25em;
	background: var(--shine_colour);
	border-radius: 1.563rem;
	font-size: 1rem;
	width: fit-content;
	cursor: pointer;
	text-decoration: none;
	margin-top: 22.5px;
	color: #000000;
}

.lesson_book_existing_button:hover {
	background-color: var(--shine_colour_highlight);
}

.lesson_bookings_message {
	color: green;
	font-weight: 700;
	margin-top: 10px;	
}

/* lesson bookings end */

/* Messages notifications start */

.messages_notification {
	color: red !important;
	font-weight: 700 !important;
}

.blog_post_section {
	background-color: var(--section_grey);
	padding: 45px 10px;
}

.blog_post_container {
	padding: 0 10px;
  	display: flex;
  	flex-direction: column;
  	margin: 0 auto;
}

.blog_container {
	padding: 0 10px;
  	display: flex;
  	flex-direction: column;
  	margin: 0 auto;
}

.blog_post_title {
	font-size: 2.5rem;
	color: #000000;
	margin-top: 21px;
	text-align: center;
	text-decoration-line: underline;
	text-decoration-thickness: 3px;
	text-decoration-color: var(--shine_colour);
}

.blog_title {
	font-size: 2.5rem;
	color: #000000;
	text-decoration-line: underline;
	text-decoration-thickness: 3px;
	text-decoration-color: var(--shine_colour);
	margin-bottom: 45px;
}

.blog_post_date {
	color: grey;
	margin-top: 21px;
	text-align: center;
}

.blog_post_sub_title {
	font-size: 1.5rem;
	color: #000000;
	margin-top: 45px;
}

.blog_post_sub_title_2 {
	font-size: 1.2rem;
	color: #000000;
	margin-top: 21px;
}

.blog_post_text {
	margin-top: 21px;
}

.blog_post_list {
	margin-left: 16px;
	margin-top: 21px;
}

.blog_post_list_2 {
	margin-left: 16px;
}

.blog_post_list_first {
	margin-top: 0px;
}

/*.blog_post_list_item {
	margin-top: 21px;
}

.blog_post_list_item_close {
	margin-top: 6px;
}*/

.blog_post_background {
	background-color: white;
	padding: 24px;
	border-radius: 25px;
	display: inline;
}

.blog_post_image_main {
	margin-left: auto;
	margin-right: auto;
	display: block;
	aspect-ratio: 3/2;
	width: 100%;
	border-radius: 25px;
	max-width: 690px;
	max-height: 390px;
	/*max-width: 660px;
	max-height: 440px;*/
}

.blog_post_image_secondary {
	margin-top: 21px;
	margin-right: auto;
	display: block;
	/*aspect-ratio: 3/2;*/
	border-radius: 25px;
	width: 100%;
	height: 100%;
	max-width: 690px;
	max-height: 390px;
}

.blog_summary_image {
	margin-left: auto;
	margin-right: auto;
	display: block;
	aspect-ratio: 3/2;
	width: 100%;
	border-radius: 25px;
}

/*.blog_summary_post_container {
	display: inline-grid;
	grid-gap: 30px;
	justify-content: flex-start;
}*/

.blog_summary_post_container {
	display: grid;
	gap: 30px;
	justify-content: flex-start;
	/*grid-template-columns: repeat(auto-fit, minmax(0, 360px));*/
	grid-template-columns: repeat(auto-fit, minmax(0, 360px));
	justify-content: center;
}

.blog_summary_post {
	text-decoration: none;
	color: black;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
}

.blog_summary_post:hover {
	box-shadow: 0 2.5px 7.5px rgba(93, 93, 93, 0.8);
}

.blog_summary_title {
	margin-top: 15px;
	font-size: 1.25rem;
}

.blog_summary_text {
	margin-top: 12px;
	color: black;
}

.blog_summary_text_container {
	padding: 0 10px;
	padding-bottom: 10px;
}

.blog_summary_date {
	margin-top: 12px;
	color: grey;
}

.tutor_search_card_link {
	text-decoration: none;
	color: black;
	max-width: 550px;
	padding: 20px 20px;
	margin: 100px 0;
	background: white;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
	cursor: pointer;
	width: 100%;
	margin: 0 auto;
	margin-bottom: 10px;
	word-wrap: break-word;
}

.dashboard_square_container {
	display: grid;
	gap: 30px;
	justify-content: flex-start;
		grid-template-columns: repeat(auto-fit, minmax(0, 360px));
	/*grid-template-columns: repeat(auto-fill, 360px);*/
	grid-auto-rows: 240px;
	justify-content: center;
}

.dashboard_square {
	text-decoration: none;
	color: black;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
	border: 1px solid black;
	padding: 20px;
	justify-content: space-between;
}

.dashboard_square_steps {
	text-decoration: none;
	color: black;
	display: flex;
	flex-direction: column;
	border-radius: 25px;
	border: 1px solid red;
	padding: 20px;
	justify-content: space-between;
}

.dashboard_square:hover, .dashboard_square_steps:hover {
	box-shadow: 0 2.5px 7.5px rgba(93, 93, 93, 0.8);
}

.dashboard_square_top {
	display: flex;
	justify-content: space-between;
	height: 33.33%;
}

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

.dashboard_status_header {
	font-size: 16px;
	font-weight: 400;
	width: fit-content;
}

.dashboard_square_middle {
	height: 33.33%;
	display: flex;
	justify-content: space-between;
	overflow-wrap: break-word; /* Breaks long words at container edge */
}

/*.dashboard_square_image {
	margin: auto 0;
	width: 4rem;
	height: 4rem;
}*/

.dashboard_square_text_1 {
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: bold;
}

.dashboard_square_text_1_steps {
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: bold;
	color: #f90000;
}

.dashboard_square_bottom {
	height: 33.33%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-end;
	text-align: end;
}

.dashboard_square_text_2 {
	font-size: 16px;
	width: 257px;
}

.dashboard_profile_link {
	/*word-break: break-all;
	overflow-wrap: break-word;
	display: inline-block;
	max-width: 100%;
	word-break: break-all;*/
  	overflow-wrap: break-word;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	text-align: right;
	font-size: 16px;
	width: 257px;
    overflow-wrap: anywhere;
}

.availability_input_cell {
	text-align: center;
}

.filter_sort_title {
	display: none;
}


.modal {
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(0, 0, 0, 0.5);  /* dim background */
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1000;
  }
  
  .modal-content {
	background: #fff;
	padding: 2rem;
	border-radius: 10px;
	width: 300px;
	text-align: center;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2);
  }
  
  .modal-buttons button {
	margin: 0.5rem;
	padding: 0.5rem 1rem;
	cursor: pointer;
  }
  
  .hidden {
	display: none;
  }

/* Messages notifications end */

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

/*Tutor Search Results Start */

.filter_sort_title {
	display: block;
	font-size: 1.5rem;
	font-weight: 400;
}

.results_list_filters {
	padding: 22.5px 22.5px;
	/*margin-top: 45px;*/
	margin-top: 30px;
	margin-bottom: 45px;
	/*min-width: 292px;*/
	min-width: 303px;
}

.tutor_search_error {
	margin-bottom: 1000px;
}

.results_search_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}

.results_list_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
}

.tutor_search_results {
	width: 100%;
	padding-top: 30px;
	padding-bottom: 45px;
	padding-left: 30px;
	/*padding: 45px 0;
	padding-left: 45px;*/
}

.find_tutor_results {
	/*padding-top: 45px;*/
	padding-top: 30px;
	padding-bottom: 45px;
	width: 1208px;
}

.expand_filters {
	display: none;
}

.filters_active {
	display: block !important;
	/*margin-top: 0;*/
}

.tutor_card_image {
	max-height: 260px;
	max-width: 260px;
	margin: 0 0;
	border-radius: 25px;
	margin-right: 20px;
}

.tutor_search_card_link {
	flex-direction: row;
	/*max-width: none;*/
	max-width: 848px;
	/*margin-bottom: 45px;*/
	margin-bottom: 30px;
	/*width: 900px;*/
}

.tutor_card_text_container {
	width: 100%;
}

}



@media only screen and (min-width: 48em	) {

/*HOME START*/

/*General Start*/

body {
	overflow: visible !important;
}

/*General End*/



/*Header Start*/
.image_button_container {
	flex-direction: row;
	justify-content: space-between;
}

.nav_link {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.nav_links {
	list-style: none;
	font-size: 1rem;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	max-width: 77.375rem;
	margin: 0 auto;
}

.header_link {
	padding: 1rem 1.25rem;
	text-decoration: none;
	color: black;
}

.header_link:hover {
	background: #f0dc00;
}

.toggle_button {
	display: none !important;
}

.hamburger_notification {
	display: none !important;
}

.toggle_button_off {
	display: none !important;
}

.mobile_menu_links {
	display: none !important;
}

.desktop_topbar {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.desktop_topbar_container {
	border-bottom: 0;
}

.desktop_bottombar_container {
	background: var(--shine_colour);
	display: block;
	border-bottom: none;
}

.register_topbar_icon {
	width: auto;
	height: 0.938rem;
	margin-right: 0.188rem;
	vertical-align: middle;
}

.desktop_topbar_button_login {
	border-radius: 25px;
	padding: 0.625em;
	margin-left: 1.25rem;
	font-size: 1rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
}

.desktop_topbar_button_register {
	border-radius: 25px;
	padding: 0.625em;
	margin-left: 1.25rem;
	font-size: 1rem;
	border: 2px solid var(--shine_colour);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
}

.desktop_topbar_button_account {
	border-radius: 25px;
	padding: 0.625em;
	margin-left: 1.25rem;
	font-size: 1rem;
	border: 1px solid rgb(225, 225, 225);
	background: #ffffff;
	cursor: pointer;
	color: rgb(0, 0, 0);
	text-align: center;
}

.desktop_topbar_button_login:hover, .desktop_topbar_button_account:hover {
	background: rgb(246, 246, 246);
}

.desktop_topbar_button_register:hover {
	background: rgb(246, 246, 246);
}



/*Header End*/



/*Search Start*/

.main_image_box {
	background-color: #f90000;
	background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(/assets/images/main-image.jpeg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	color: white;
	display: flex;
	justify-content: center;
	isolation: isolate;
	padding-bottom: 13.5rem;
	padding-top: 13.5rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.search_input {
	padding: 0.625rem;
	max-width: 200px;
	margin-bottom: 0;
}

.search_input_postcode {
	padding: 0.625rem;
	max-width: 175px;
	margin-bottom: 0;
}

.search_input_subject_level {
	padding: 0.625rem;
	max-width: 225px;
	margin-bottom: 0;
}

.search_input_search {
	padding: 0.625rem;
	max-width: 225px;
	margin-bottom: 0;
}

.search_button {
	border-radius: 25px;
	background: var(--shine_colour);
	padding: 0.625rem 0.625rem;	
	border: none;
	cursor: pointer;
	font-size: 1.125rem;
}

.tutor_search_form {
	flex-direction: row;
	justify-content: space-between;
}

.tutor_search_results_topbar {
	background-color: white;
	border-radius: 25px;
	display: flex;
	justify-content: space-between;
}

.search_button {
	width: fit-content;
}

.autocomplete_dropdown_search {
	max-width: 200px;
}

/*Search End*/



/*Benefits Start*/

.benefits_container {
	width: 100%;
	max-width: 75.5rem;
	padding: 0;
}

.benefits_box_container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.benefits_1_container {
	width: 15%;
}

.benefits_1_image {
	margin-right: 0.625rem;
}

/*Benefits End*/



/*How Works Start*/

.how_works_container {
	width: 100%;
	max-width: 75.5rem;
	padding: 0;
}

.how_works_1_container {
	display: flex;
	flex-direction: row;
	justify-content: center;

}

.how_works_1_group {
	width: 40%;
}

.animated_image {
	width: 15%;
	margin: 0;
	margin-left: 1.25rem;
}

/*How Works End*/



/*Register Start*/

.register_container {
	flex-direction: row;
	width: 100%;
	max-width: 75.5rem;
	margin: 0 auto;
	justify-content: center;
	padding: 0;
}

.register_child_container {
	margin-left: 1.25rem;
	margin-right: 1.25rem;
}

.register_form_button:hover {
	background: rgb(205, 205, 205);
	cursor: pointer;
}

/*Register End*/



/*Footer Start*/

.footer_container {
	width: 100%;
	max-width: 75.5rem;
	margin: 0 auto;
}

/*Footer End*/

/*HOME END*/



/*CONTACT US START*/

/*Contact Us Start*/

.contact_us_container {
	max-width: 1208px;
	width: 100%;
}

.tutor_profile_container {
	max-width: 1208px;
	width: 100%;
}

.form_button:hover, .form_button_space:hover {
	background-color: var(--shine_colour_highlight);
}

.blog_post_container {
	width: 100%;
	max-width: 758px;
}

.blog_container {
	width: 100%;
	max-width: 1208px;
}



/*FIND TUTOR START*/
/*.results_search_section {
	flex-grow: 1;
}*/


.find_tutor_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;
}

/*FIND TUTOR END*/



/* Tutor Profile Start*/

/*.tutor_profile_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}*/

/*Tutor Profile End*/


/*Register Start*/

.register_form_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}

/*Register End*/



/*Login Start*/

.login_section {
	min-height: 566.417px;
	flex-grow: 1;
}

.login_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;		
}

.login_form {
	margin: 0 0;
}

/*Login End*/

/* Dashboard Start */

.dashboard_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;		
}

/* Dashboard End */

/* Personal Details Start */

.personal_details_section {
	flex-grow: 1;
}


.personal_details_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
	flex-direction: column;	

}

.account_details_menu {
	flex-direction: column;
	flex-wrap: nowrap;
	max-width: 237.6px;
	width: 100%;
}

.personal_details_form {
	margin-top: 0;
	margin-left: 45px;
	max-width: 905.4px;
	width: 100%;
}

.faq_container {
	margin-top: 0;
	margin-left: 45px;
	max-width: 905.4px;
	width: 100%;
}

.account_details_menu_item {
	flex-basis: 0;
}

.account_details_menu_item_active {
	flex-basis: 0;
}

.personal_details_container_browser {
	display: flex;
	flex-direction: row;
	display: flex;
}

/* Personal Details End */

/* Messages start */

.messages_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;		
}

.messages_section {
	flex-grow: 1;
}


/* Messages end */

/*chat_start*/

.chat_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}

.chat_messages {
	height: calc(100vh - 145.583px - 60px - 74px);
	padding: 0 90px;
}

/*chat_end*/

/*lesson booking new start*/

.lesson_booking_new_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}

/*lesson booking new end*/

/* lesson confirmation start */

.lesson_confirmation_container {
	width: 100%;
	max-width: 1208px;
	margin: 0 auto;	
}


/* lesson confirmation end */

}
