/*
Theme Name: Medway Theme
Description: Custom theme for medway.speechandlanguage.family
Author: Paul Purseglove
Version: 1.0
*/

nav#navbar_header #mobile_nav ul>li {
	padding: .5rem 0;
	margin: 0;
}

nav#navbar_header #mobile_nav ul.sub-menu>li {
	padding: .25rem 0;
}

nav#navbar_header #mobile_nav ul.sub-menu>li>a {
	font-size: .9rem;
}

nav#navbar_header #mobile_nav ul>li>a {
	color: #fff;
}

nav#navbar_header #mobile_nav ul.sub-menu {
	padding-left: 15px;
}

nav#navbar_header #mobile_nav ul.sub-menu>li>a {
	font-weight: 300;
}

nav#navbar_header #mobile_nav ul>li.current-menu-item,
nav#navbar_header #mobile_nav ul>li.current-page-ancestor {
	border-bottom: none;
}

nav#navbar_header #mobile_nav ul>li.current_page_item>a,
nav#navbar_header #mobile_nav ul>li.current-page-ancestor>a {
	color: var(--green);
}

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

@media only screen and (max-device-width: 480px) {

	html,
	body {
		width: 100%;
		margin: 0;
		padding: 0;
		overflow-x: hidden;
	}

	header {
		border-radius: 0;
		/* overflow: hidden; */
	}

	header #logo_banner {
		height: 70px;
		padding: 1rem .5rem;
	}

	#breadcrumbs {
		font-size: .8rem;
	}

	ul#breadcrumbs li:not(:last-child):after {
		margin: 0 8px;
	}

	#mobile-nav {
		display: inline-block;
		width: auto;
		margin: .5rem 2.1rem 0;
	}

	#mobile-nav .btn {
		padding: .3rem .8rem;
		color: #fff !important;
		font-size: .7rem;
	}

	.nav-brand img {
		max-width: 200px;
	}

	.navbar ul {
		margin-top: 10px;
	}

	#navbar_top.fixed-top {
		margin-right: 0;
	}

	footer {
		/* margin-right: -12px; */
		border-top-right-radius: 2.5rem;
	}

	.navbar ul li {
		padding: 0;
		margin: 0.5rem 0rem 1.5rem;
	}

	.navbar a:after {
		height: 2px;
		bottom: -5px;
	}

	.navbar a:hover:after,
	.navbar .current-menu-item a:after {
		height: 2px;
		background-color: var(--teal);
		bottom: -5px;
	}

	.navbar-toggler small {
		position: relative;
		left: 10px;
		font-size: 0.85rem;
		opacity: 0.7;
	}

	.two-cols {
		padding-left: unset;
		padding-right: unset;
	}

	.card .card-text {
		height: unset;
	}

	.home-cards .btn-listen {
		margin-bottom: 1rem;
	}

	.card .video {
		height: 13.36rem;
	}
	
	.image-card .video {
		height: unset;
	}

	a.icon-listen {
		position: absolute;
		top: 240px;
		right: 0;
	}

	footer p,
	footer p.float-end {
		margin-bottom: 10px;
		text-align: center !important;
		float: unset !important;
	}

	footer .footer-contact,
	footer .footer-socials {
		text-align: center;
	}

	footer .footer-logos {
		align-items: center;
		display: flex;
		justify-content: space-around;
	}

	footer .footer-logos img {
		max-width: 40%;
	}

	#page_banner {
		border-radius: 0 !important;
		padding: 1rem;
		border-bottom-width: 5px !important;
	}

	[class^="col-"],
	[class*=" col-"] {
		margin-bottom: 1rem !important;
	}

	label.checkboxes .wpcf7-list-item {
		width: 100%;
	}

	.login-register {
		padding: 0;
	}

	#resource .resource-header {
		border-radius: 0;
	}

	#resource .resource-header .col-right {
		height: 200px;
	}

	#resource .btn.float-end {
		float: none !important;
	}

	#resource h1:first-of-type {
		margin-bottom: 0 !important;
	}

	#resource .resource-share span {
		font-size: 1.25rem;
	}

	ul.footer-socials li.social-icon {
		width: 30px;
		height: 30px;
		margin-right: 5px;
	}

	ul.footer-socials li {
		font-size: 14px;
		line-height: 30px;
	}

}

@media only screen and (min-width: 481px) and (max-width: 768px) {
	.collapse:not(.show) {
		display: none !important;
	}
}

@media only screen and (min-width: 769px) and (max-width: 959px) {
	.collapse:not(.show) {
		display: none !important;
	}
}

@media only screen and (max-width: 959px) {
	header #logo_banner .right-col {
		display: none !important;
	}

	.sub-menu {
		display: none;
	}

	.caret-icon {
		cursor: pointer;
		padding-left: 5px;
		position: absolute;
		right: 0;
	}


	.navbar-toggler {
		position: absolute;
		top: 18px;
		right: 0;
		width: 50px;
		height: 50px;
		z-index: 999;
	}

	#mobile_nav {
		padding: 4rem;
		width: 100vw;
		height: 100vh;
		position: fixed;
		overflow: scroll;
		top: 70px;
		left: 0;
		background: var(--mid-blue);
		color: #ffffff;
		z-index: 999;
		/* display: flex; */
	}

	.navbar-expand-md .navbar-nav {
		flex-direction: column;
	}
}


@media only screen and (min-width: 960px) {
	footer {
		border-top-right-radius: 2.5rem;
	}

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

	#mobile_nav,
	.navbar-toggler {
		display: none !important;
	}

	/* .collapse:not(.show) {
		display: none !important;
	} */

	.sub-menu {
		display: none;
		opacity: 0;
		visibility: hidden;
		position: absolute;
		top: 46px;
		left: 0;
		z-index: 1000;
		border-radius: 0 0 0.4rem 0.4rem;
		background: #fff;
		padding: 0;
		width: 720px;
		pointer-events: none;
		transition: opacity 0.3s ease, visibility 0.3s;
	}

	.sub-menu-visible {
		display: flex;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.sub-menu.reverse {
		right: 0;
		left: auto;
	}

	.menu-item-has-children:hover .sub-menu {
		display: flex;
		flex-direction: row;
		opacity: 1;
	}

	.sub-menu::before {
		content: "";
		width: 20px;
		height: 20px;
		display: block;
		background-color: var(--mid-blue);
		position: absolute;
		left: 35px;
		top: -9px;
		transform: rotate(45deg);
		z-index: 101;
		border-radius: 2px;
	}

	.sub-menu.reverse::before {
		background-color: #fff;
		right: 35px;
		left: unset;
	}

	.sub-menu .col-1 {
		width: 50%;
		/* height: 100%; */
		flex-grow: 1;
		float: left;
		background: var(--mid-blue);
		color: #fff;
		padding: 2.25rem 2.25rem 2rem;
		border-bottom-left-radius: 0.4rem;
	}

	.sub-menu .col-2 {
		width: 50%;
		/* height: 100%; */
		flex-grow: 1;
		float: right;
		padding: 1.25rem 1rem 2.25rem;
	}

	.sub-menu .col-1 .sub-menu-title {
		font-size: 1.5rem;
		font-weight: 500;
		margin-bottom: 1rem;
	}

	.sub-menu .col-1 .sub-menu-text {
		font-size: 0.875rem;
		font-weight: 200;
		margin-bottom: 1rem;
	}

	.sub-menu .col-1 .sub-menu-link {
		font-size: 1rem;
		text-decoration: underline;
		color: #fff;
		font-weight: 400;
	}

	.sub-menu .col-1 .sub-menu-link::after {
		content: "\f35a";
		font-family: var(--fa-style-family, "Font Awesome 6 Free");
		font-weight: 900;
		position: absolute;
		margin-left: 10px;
		color: var(--green);
	}

	.sub-menu .col-2 ul {
		list-style-type: none;
		padding: 0;
		margin: 0;
	}

	.sub-menu .col-2 ul li {
		padding: 1rem !important;
	}

	.sub-menu .col-2 a {
		color: #232428;
		text-decoration: none;
	}

	.sub-menu .col-2 ul a:not(:last-child) li {
		border-bottom: 1px solid #d9dde0;
	}

	.sub-menu .col-2 ul li:after {
		content: "\f061";
		font-family: var(--fa-style-family, "Font Awesome 6 Free");
		font-weight: 900;
		position: absolute;
		right: 32px;
		color: var(--primary);
	}

	.sub-menu .col-2 ul li:hover {
		background-color: var(--mid-blue);
	}

	.sub-menu .col-2 ul a:hover,
	.sub-menu .col-2 ul li:hover:after {
		color: #fff !important;
	}


}

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

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

/* for iPad */
@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation: portrait) {
	/* For portrait layouts only */
}

@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation: landscape) {
	/* For landscape layouts only */
}