/*****************/
/* Media Queries */
/*****************/

/***************/
/*** TABLETS ***/
/***************/

/************/
/* PORTRAIT */
/************/

#home-hero .mobile-msg {
	display: none !important;
}


/* IPAD Pro */
@media (width <=1024px) and (orientation: portrait) {


 
/* Social Media Links Header/Footer */
	.nav-link.theme-btn-red.join-btn-header {
		width:fit-content;
		padding:5px;
		margin: 0 !important;
		text-align: center;
	}

	span.social-media-icons.social-header-footer {
		margin-top: 15px !important;
		text-align: left;
	}

	span.social-media-icons.social-header-footer b {
		display: block !important;
		color: white;
		font-size: 20px;
	}
/* ../Social Media Links Header/Footer */



	#location-hero.hero-container.why-join,
	#location-hero.hero-container.personal-training {
		/* height: auto; */
		background-position-x: right;
	}


	#location-hero.hero-container.why-join {
		background-image: url("why-join-banner-ipad.jpg");
		background-position-x: center;
		background-size: cover;
		background-position-y: bottom;
	}


	#location-hero.hero-container.personal-training {
		background-image: url("personal-training-banner-ipad-portrait.jpg");
		background-position-x: center;
		background-size: cover;
		background-position-y: bottom;
	}


	.dropdown-menu {
		background-color: transparent !important;
	}


	.top-links {
		padding: 20px 0 30px 0;
	}

	#home-hero .hero-caption {
		width: 100%;
		left: 0;
	}

	#home-hero .caption-heading {
		margin-top: 100px !important;
	}


	#home-hero video,
	#location-hero.hero-container {
		height: 60vh;
	}

	#location-header h2 {
		padding: 0;
	}

	#app-section h3 {
		font-size: 55px;
	}


	#location-header .hero-caption {
		text-align: center;
	}


	.hero-container .container,
	h1.caption-heading {
		text-align: center;
	}

	.hero-container .theme-btn-red {
		width: 45%;
		font-size: 18px;
		margin-bottom: 10px;
		display: inline-block;
	}

	.hero-container h1,
	.hero-container h2 {
		text-align: center;
		width: 100%;
	}


	.hero-container h2 {
		background: #00000042;
		padding: 25px;
		border-radius: 10px;
	}


	/* Footer */

	nav li.nav-item:last-child {
		text-align: center;
	}


	/* Navigation */


	ul.navbar-nav {
		border-top: 1px solid #ccc;
	}

 

}

/* IPAD Air */
@media (width <=920px) and (orientation: portrait) {

	/* App section */

	#app-section .basic-list {
		font-size: 20px;
	}


	/* Main Page Banner */


	#home-hero.hero-container a {
		margin: auto;
		width: auto;
	}


	#home-hero.hero-container .caption-subhead2 {
		margin-top: 10px;
	}

	#home-hero .caption-subhead3 {
		margin-top: 10px;
		font-size: 26px;
		line-height: 32px;
	}


	/* #home-hero {
		min-height: auto !important;
	}
 */

	/* #home-hero .caption-subhead1,
	#location-hero .caption-subhead1 {
		font-size:105px;

    } */


	#home-hero .caption-subhead3,
	#location-hero .caption-subhead1 {
		margin-top: 10px;
		/* font-size:80px; */
	}


	#location-hero .caption-subhead1 {
		font-size: 50px;
	}


	#home-hero .top-links p {
		margin-bottom: 10px;
	}


	#home-hero .top-links strong {
		font-size: 18px;
	}


	/* Locations header */


	/* #location-hero .top-links {
		padding: 15px;
		margin: 10px;
	} */

	#location-hero .top-links p {
		margin-bottom: 10px;
	}


	#home-hero .top-links strong,
	#location-hero .top-links strong {
		font-size: 18px;
	}


	/* Hero Overlay */

	.hero-overlay {
		display: none;
		/* background: linear-gradient(95deg, rgb(12 2 0) 0%, rgba(255, 255, 255, 0) 175%) !important; */
	}


	#why-join-section {
		padding: 50px 0;
	}


	#review-video-section .theme-btn {
		display: inline-block !important;
		margin-right: 25px !important;
	}


	#membership-section {
		padding-top: 40px;
	}

	#membership-section a {
		display: block;
	}


	#why-join-section h3 {
		margin-bottom: 25px;
	}


	#getting-started-section,
	#why-join-section {
		margin: 50px 0;
	}

	#why-join-section h3,
	#getting-started-section h3,
	#review-video-section h3,
	#app-section h3 {
		font-size: 35px;
		text-align: center;
	}


	.join-item {
		margin-top: 25px;
	}


	section {
		margin: 0;
	}


	/* Location Hero Elements */

	#location-hero .caption-subhead2 {
		margin: 0;
	}


	/* Main Page Header Elements */

	h1.caption-heading {
		line-height: 25px;
	}

	span.caption-subhead2 {
		display: block;
		line-height: 40px;
		margin-bottom: 15px;
		font-size: 33px;
	}

	h1.caption-heading {
		display: block;
		line-height: 10px;
	}

	span.caption-subhead3 {
		display: block;
		line-height: 35px;
		margin-top: 0;
	}

	#location-link {
		margin-top: 0;
	}

	#top-link-section img {
		max-width: 40px;
	}

	.top-links strong {
		font-size: 25px;
	}

	.hero-container .theme-btn-red {
		width: 75%;
		/* width: 90%;
        font-size: 18px;
        padding: 15px !important;
        margin-bottom:10px; */
	}


	/* .top-links {
		background: #1f1f1fb3;
		margin-bottom: 10px;
		border-radius: 10px;
	} */


	/* Locations */

	#location-header h1 {
		font-size: 45px;
		margin-bottom: 20px;
	}


	#location-header h1 a {
		color: white;
		text-decoration: none;
		font-size: 38px !important;
		line-height: 50px;
		width: 100%;
	}


	span.social-media-icons a {
		display: inline;
	}


	#getting-started-section h3 {
		/* margin: 25px 0 0 0; */
	}


	#review-section {
		margin-top: 25px;
	}

	/* Hide Book Tour Mobile */

	section#top-link-section .col-lg-4:first-child {
		/* display: none; */
	}


	/* Mobile Nav */

	nav .navbar-nav {
		padding-right: 10px;
	}


	/* nav li.nav-item:last-child {
		padding: 10px 0 0 0;
		font-size: 14px;
		margin-left: 0;
		text-align: center;
	} */

	.navbar-nav .dropdown-menu {
		border: none;
		padding-top: 0;
	}


  

	/* Why Join Hero Caption */
	.hero-caption h2 {
		width: 100%;
	}


	/* Toggle Section */

	#toggle-section h3 {
		font-size: 45px;
		margin: 0;
	}

	#toggle-section .fa-chevron-down {
		margin-top: 10px;
	}


	h3 {
		font-size: 35px;
	}

	p {
		font-size: 18px !important;
	}

	/* Hero Screen */


	.hero-container {
		min-height: auto;
		padding: 75px 0;
	}


	.hero-container h1 {
		font-size: 50px;
		color: white;
		font-weight: bold;
		text-shadow: 0 0 5px #363636;
		line-height: 50px;
		margin-bottom: 30px;
		margin-top: 25px !important;
		text-align: center;
	}


	.hero-container h2,
	.hero-container-video h2 {
		font-size: 25px;
		color: white;
		text-shadow: 0 0 5px #363636;
		margin-bottom: 35px;
		text-align: center;
	}


	.hero-container a {
		font-size: 25px;
		margin: auto;
		display: block;
		text-align: center;
		width: 100%;
	}


	#top-link-section {
		/* margin-top:0;
        position: relative; */
	}

	.links a {
		width: 70%;
	}

	/* Container */


	main.container-fluid {
		min-height: auto !important;
	}


	/* Home Membership Section  */

	#membership-section .img-holder {
		min-height: auto;
	}


	#review-section,
	#general-header-section {
		padding: 40px;
	}


	/* Image Holders */

	.img-holder {
		min-height: auto;
	}

	#membership-section .img-holder .redBtnCenter,
	.img-holder .redBtnCenter {
		position: relative !important;
		left: unset !important;
		margin: 15px auto;
		transform: none !important;
	}


	/* Why Join */

	#why-join-section {
		text-align: center;
	}

	#why-join-section p {
		font-size: 18px !important;
	}


	#getting-started-list .toggle-header,
	#personal-training-list .toggle-header,
	#why-join-list .toggle-header,
	#class-description-list .toggle-header {
		font-size: 18px;
	}


	section#join-benefits-section .img-holder {
		min-height: 0 !important;
	}

	/* Toggle Section */

	#toggle-section {
		max-height: none;
	}

	.toggle-header {
		font-size: 20px;
	}

	.toggle-header img {
		margin-right: 5%;
		width: 12%;
	}

	.toggle-desc {
		font-size: 18px;
	}


	/* Get Started */
	#get-started-list li {
		padding-left: 55px;
	}

	#get-started-list img {
		max-width: 50px;
	}

	/* App Section */
	#app-section a {
		width: 75% !important;
		margin: 10px auto;
	}

	#app-list li {
		font-size: 20px;
	}


	iframe#mapLocation {
		margin-top: 50px;
		border-radius: 30px;
	}


	/* #app-links {
        display: block;
        margin-top: 10px;
        width: 100%;
        text-align: center;
    }
     */

	#appLinks a {
		display: block;
		text-align: center;
	}


	#app-section .phone-img {
		margin-top: 50px;
	}

	/* Review Video */
	.ratio-9x16 {
		aspect-ratio: 9 / 16 !important;
	}


	/* Review Section */

	#review-video-section .theme-btn,
	#join-benefits-section .theme-btn {
		text-align: center;
		width: 230px;
		display: block;
		margin: 15px auto !important;
	}


	/* General Section */
	#general-section strong.heading {
		text-align: center;
	}


	#get-started-list strong {
		font-size: 17px;
	}


	/* FORMS */
	#general-form {
		margin: 25px 0 !important;
	}


}


/*************/
/* LANDSCAPE */
/*************/


@media (width <=1368px) and (orientation: landscape) {

/* Social Media Links Header/Footer */
	.nav-link.theme-btn-red.join-btn-header {
		width:fit-content;
		padding:5px;
		margin: 0 !important;
		text-align: center;
	}

	span.social-media-icons.social-header-footer {
		margin-top: 15px !important;
		text-align: left;
	}

	span.social-media-icons.social-header-footer b {
		display: block !important;
		color: white;
		font-size: 20px;
	}
/* ../Social Media Links Header/Footer */

	#location-hero.hero-container.why-join,
	#location-hero.hero-container.personal-training {

		height: auto;
		background-position-x: right;
	}


	.dropdown-menu {
		background-color: transparent !important;
	}


	#location-hero .caption-heading {
		margin-top: 60px;
		/* text-align: center; */
	}

	#location-hero p {
		/* text-align: center; */
		width: 50%;
	}


	.caption-subhead1 {
		font-size: 50px;
	}

	.top-links {
		padding: 20px 0 30px 0;
	}

 

	ul.navbar-nav {
		border-top: 1px solid #ccc;
	}


}


/* IPAD Pro */
@media (width <=1180px) and (orientation: landscape) {

  

	#location-hero.hero-container.personal-training {
		background-image: url("personal-training-banner-ipad-landscape.jpg");
	}

	#home-hero .caption-heading {
		margin-top: 155px;
	}

	#home-hero .caption-subhead1 {
		font-size: 95px;
	}

	#home-hero .caption-subhead2 {
		font-size: 40px;
	}

	#home-hero .caption-subhead3 {
		font-size: 24px;
	}


}


/* IPAD Mini */
@media (width <=1024px) and (orientation: landscape) {

	.top-links strong {
		font-size: 24px;
	}

	#location-hero.hero-container.why-join {
		background-image: url("why-join-banner-ipad-landscape.jpg");
	}

}


/**************/
/*** MOBILE ***/
/**************/

/*************/
/* PORTRAIT */
/*************/

/* Surface Pro */
@media (width <=915px) and (orientation: portrait) {


	#location-link {
		color: white;
		font-size: 46px;
		text-decoration: none;
		margin-bottom: 25px;
		display: block;
		line-height: 50px;
	}


	.caption-subhead3-classes.classes-hero {
		line-height: 40px;
		font-size: 40px;
	}


	.caption-subhead3 {
		display: block;
		font-size: 22px;
	}

	footer small {
		text-align: center;
	}

	#review-video-section,
	#app-section {
		padding: 50px 0;
	}

	#benefits-section h3 {
		color: white;
		margin: 25px 0;
		font-size: 35px;
	}

	#benefits-section .collapsible-header,
	#benefits-section .collapsible-header span {
		font-size: 21px;
	}


	#review-section,
	#general-header-section,
	.general-header-section {
		margin: 50px 0;
	}

	#gym-access-feature-section h3 {
		text-align: center;
		font-weight: normal;
		margin-top: 25px;
	}

	#location-section #location-description {
		text-align: center;
	}

	#block3-section {
		padding: 25px 0;
	}


}


/* Samsung S20 */
@media (width <=820px) and (orientation: portrait) {


	#location-hero .caption-subhead1.classes-hero {
		display: block;
	}

}


/* Samsung S20 */
@media (width <=420px) and (orientation: portrait) {


	/* Memberships */
	h1#membershipsHeader {
		margin-top: 65px !important;
	}


	/* PanZoom */
	#panzoomControls {
		display: block;
	}


	/* Locations Banners */

	#location-hero.hero-container.bathurst-banner {
		background-image: url("bathurst-banner-mobile.jpg") !important;
	}

	#location-hero.hero-container.dundas-banner {
		background-image: url("bathurst-banner-mobile.jpg") !important;
	}

	#location-hero.hero-container.dupont-banner {
		background-image: url("bathurst-banner-mobile.jpg") !important;
	}

	#location-hero.hero-container.truscott-banner {
		background-image: url("bathurst-banner-mobile.jpg") !important;
	}

	#location-hero.hero-container.applewood-banner {
		background-image: url("bathurst-banner-mobile.jpg") !important;
	}


	#location-hero.hero-container.why-join {
		background-image: url("why-join-mobile-bg.jpg") !important;
	}


	#location-hero.hero-container.personal-training {
		background-image: url("pt-banner-mobile.jpg") !important;
	}

	#location-hero.hero-container.classes-banner {
		background-image: url("classes-banner-mobile.jpg") !important;
	}


	#why-join-section {
		background-image: url("why-join-section-mobile-banner.jpg") !important;
	}

	#review-video-section {
		background-image: url("members-section-mobile-banner.jpg") !important;
		background-size: auto;
		background-position-y: top;
	}


	#mapLocation {
		min-height: 300px;
		margin-bottom: 25px;
		display: block;
	}

	#location-staff-time {
		margin-top: 25px;
	}

	#hour-evaluation-section .theme-btn-red {
		display: block;
		text-align: center;
		margin-bottom: 25px;
	}


	#general-section.contact-section h1,
	h1.generic-heading {
		font-size: 40px;
		margin-bottom: 0;
		text-align: center;
	}

	#general-section.contact-section h2,
	#general-section.contact-section h3 {
		font-size: 30px;
		text-align: center;
	}


	#location-hero .caption-subhead1 {
		font-size: 60px;
	}


	footer small {
		text-align: center;
	}

	#review-video-section,
	#app-section {
		padding: 50px 0;
	}

	#benefits-section h3 {
		color: white;
		margin: 25px 0;
		font-size: 35px;
	}

	#benefits-section .collapsible-header,
	#benefits-section .collapsible-header span {
		font-size: 21px;
	}


	#review-section,
	#general-header-section,
	.general-header-section {
		margin: 50px 0;
	}

	#gym-access-feature-section h3 {
		text-align: center;
		font-weight: bold;
		margin-top: 25px;
		line-height: normal;
	}

	#location-section #location-description {
		text-align: center;
	}

	#block3-section {
		padding: 25px 0;
	}

	iframe#mapLocation {
		width: 100%;
		height: 100%;
		margin: auto;
		display: block;
		border-radius: 10px;
	}

	.tourVideo {
		margin-top: 25px;
	}

	#class-section #location-description {
		margin-top: 25px;
		padding: 0;
		text-align: center;
	}

	#logo {
		width: 90%;
	}

	#home-hero video {
		height: 80vh;
	}

	#location-hero.hero-container {
		height: auto;
	}


	#location-hero .caption-heading {
		margin-top: 10% !important;
	}


	#home-hero .caption-heading {
		margin-top: 30% !important;
	}


	#home-hero #top-link-section {
		position: absolute;
		padding: 0 20px;
	}


	#home-hero .caption-subhead1 {
		font-size: 47px;
	}


	#home-hero span.caption-subhead2 {
		font-size: 25px;
		line-height: normal;
		display: none;
	}


	#location-hero .caption-subhead1.classes-hero,
	#location-hero.why-join .caption-subhead1,
	#location-hero.personal-training .caption-subhead1 {
		font-size: 42px;
		line-height: 45px;
		margin-bottom: 10px;
	}

	#location-hero .caption-subhead1.classes-hero span {
		display: block;
	}

	#location-hero .caption-heading {
		line-height: 45px !important;
	}

	#location-hero .caption-subhead2 {
		font-size: 20px;
		line-height: normal;
		margin-bottom: 10px !important;
		margin-top: 15px;
	}

	#location-link {
		margin-top: 0;
	}


	#location-hero .caption-subhead3,
	#location-hero .caption-subhead3-classes,
	#home-hero .caption-subhead3 {
		position: relative;
		font-size: 20px;
		line-height: 25px;
		display: none;
	}


	.modal.custom-80 {
		--bs-modal-width: 100vw !important;
	}


	#home-hero .caption-subhead3 {
		display: none;
		padding: 0 25px;
	}


	#location-link {
		font-size: 20px;
		line-height: 25px;
		margin-bottom: 0;
		font-size: 20px !important;
	}


	#location-hero.classes-banner #location-link {
		margin-top: 0 !important;
		margin-bottom: 35px;
		line-height: 25px;
	}


	#top-link-section {
		position: relative;
		background: none;
	}

	.top-links {
		/* background: #212529db; */
		border-radius: 10px;
		margin-bottom: 10px;
	}

	#location-hero #top-link-section img,
	#home-hero #top-link-section img {
		margin: 0;
	}

	#location-hero .top-links,
	#home-hero .top-links {
		padding: 10px;
	}

	#social-media-section {
		text-align: center;
	}


	#home-hero .hero-overlay {
		display: none;
	}

	#location-hero .caption-subhead1 {
		font-size: 50px;
		display: block;
		margin-bottom: 15px;
	}

	#location-hero .theme-btn-red {
		margin: auto;
		display: block;
		text-align: center;
		width: fit-content;
	}

	.theme-btn {
		text-align: center !important;
	}


}


/* Samsung S20 */
@media (width <=360px) and (orientation: portrait) {


	#home-hero video {
		height: 85vh;
	}

	#home-hero #top-link-section {
		position: absolute;
		top: 275px;
	}


	#location-hero .caption-subhead1.classes-hero {
		font-size: 40px;
	}


}


/* iPhone 15 & 15 Pro in portrait */
@media only screen and (width: 393px) and (height: 852px) and (-webkit-device-pixel-ratio: 3) {
	/* your styles here */
}

/* iPhone 15 & 15 Pro in landscape */
@media only screen and (width: 852px) and (height: 393px) and (-webkit-device-pixel-ratio: 3) {
	/* your styles here */
}


/*************/
/* LANDSCAPE */
/*************/


/* Mobile Devices */

@media (width <=915px) and (orientation: landscape) {


	#location-hero.hero-container {
		margin-top: 0;
		height: 100vh;
	}

	#location-link {
		font-size: 46px;
	}


	#location-hero .caption-subhead1 {
		font-size: 80px;
	}

	#location-hero .caption-subhead2 {
		margin-top: 0;
	}

	#location-hero .caption-heading {
		margin-top: 0;
	}


	#location-link {
		margin-bottom: 0;
	}


	.top-links strong {
		font-size: 19px;
		display: block;
	}


	.top-links {
		padding: 10px 0;
	}


	.fixed-top {
		position: relative;
	}


	.hero-container {
		margin-top: 0;
	}

	h1.caption-heading {
		text-align: center;
	}


	h1.caption-heading {
		margin-top: 50px;
	}

	.caption-subhead2 {
		font-size: 35px;
	}

	.caption-subhead3 {
		font-size: 21px;
	}

	#home-hero.hero-container {
		/* min-height: 640px; */
	}

	/* General Pages */
	.hero-container h1 {
		font-size: 60px;
		text-align: center;
		margin: 0;
	}

	.hero-container h2 {
		width: 100%;
		text-align: center;
	}

	.hero-container {
		min-height: auto;
		text-align: center;
	}

	#intro-p h3 {
		font-size: 45px;
	}


	/* Vive Fitness App Section */
	#app-section h3 {
		font-size: 44px;
	}


}

/* Mobile landscape */
@media (width <=740px) and (orientation: landscape) {}


@media (width <=915px) and (height <=412px) {

	#home-hero .caption-heading {
		margin-top: 35px;
	}

	#home-hero .caption-subhead1 {
		font-size: 80px;
	}

	#home-hero video {
		width: 100%;
		height: 100vh;
		object-fit: cover;
	}

	#home-hero .caption-subhead2 {
		margin-bottom: 0;
	}

	#home-hero .top-links strong {
		font-size: 18px;
	}

}


@media (width <=740px) and (height <=360px) {

	#home-hero .caption-heading {
		margin-top: 35px;
	}

	#home-hero .caption-subhead1 {
		font-size: 80px;
	}

	#home-hero video {
		width: 100%;
		height: 100vh;
		object-fit: cover;
	}

	#home-hero .caption-subhead2 {
		margin-bottom: 0;
	}

	#home-hero .top-links strong {
		font-size: 18px;
	}

	#home-hero .hero-caption {
		left: 0;
		width: 100%;
	}

	#home-hero .caption-subhead1 {
		font-size: 60px;
	}

	#home-hero .caption-subhead2 {
		margin-top: 0;
	}

	#home-hero .container {
		position: initial !important;
		margin: 0;
		width: 100%;
		max-width: none;
	}

	.top-links {
		padding: 10px 0 10px 0;
	}

	#top-link-section img {
		margin: 5px 0;
	}

	#membership-section {
		padding: 25px 0 10px 0;
	}


	.redBtnCenter {
		position: relative;
	}

	.redBtnCenter {
		position: relative;
		left: unset;
		bottom: unset;
		display: block;
		margin: 0 auto 25px auto;
		transform: none;
	}

}


/*************************/
/* MOBILE MENU LANDSCAPE */
/*************************/


@media (width <=1024px) and (orientation: portrait) {

	nav.navbar-expand-xxl a {
		color: white;
	}

	ul.dropdown-menu.show {
		background-color: unset;
		border: none;
		padding-top: 0;
	}

	#location-hero p {
		text-align: center;
		width: 100%;
	}

}


@media (width <=1366px) and (orientation: landscape) {

	nav.navbar-expand-xxl a {
		color: white;
	}

	ul.dropdown-menu.show {
		background-color: unset;
		border: none;
		padding-top: 0;
	}

}