
/* Large Screens (Desktops) */

@media only screen and (max-width : 1647px) { 
	#intro .splash.blue {
		top: -17px;
		left: -6px;
	}
}

@media only screen and (max-width : 1430px) {
	.section {
		max-width: 1200px;
	}

	#intro .splash.pink {
		right: -45px;
	}

	#intro .splash.blue {
		left: -61px;
	}

	#intro .grass {
		height: 90px;
	}

	#welcome .section {
		padding-top: 80px;
		padding-bottom: 110px;
	}

	#welcome .imageText .text {
		margin-right: 0;
		width: 613px;
	}

	#program .listing {
		margin-left: -15px;
		margin-right: -15px;
	}

	#program .listing .item {
		padding-left: 15px;
		padding-right: 15px;
	}

	#footer .section {
		padding-top: 182px;
	}

	#footer:before {
		height: 110px;
	}

	#footer:after {
		height: 174px;
	}

	#footer .blueDots {
		position: absolute;
		left: -88px;
		bottom: 23px;
		width: 282px;
		z-index: -1;
	}

	#footer .spiralPurple {
		width: 32.125%;
		height: 333px;
	}

	#footer .purpleCircle {
		width: 330px;
		height: 330px;
		bottom: 115px;
	}	
}

/* Medium Screens (Tablets - Landscape) */

@media only screen and (max-width : 1225px) {
	.section {
		max-width: 970px;
	}

	#header .logo {
		margin-left: 0;
		width: 360px;
	}

	#header #navigation {
		margin-top: 82px;
	}

	#header #navigation ul li {
		font-size: 17px;
		margin-left: 20px;
	}

	#intro .section {
		padding-top: 167px;
		height: 680px;
	}

	#intro .image {
		width: 420px;
	}

	#intro .text {
		font-size: 17px;
	}

	#intro .splash.pink {
		height: 440px;
		right: -81px;
	}

	#intro .splash.yellow {
		height: 213px;
	}

	#welcome .section {
		padding-bottom: 100px;
	}

	#welcome .imageText .text {
		width: 520px;
	}

	#welcome .imageText .image {
		width: 368px;
	}
	
	#program .listing {
		margin-left: -10px;
		margin-right: -10px;
	}

	#program .listing .item {
		padding-left: 10px;
		padding-right: 10px;
	}

	#program .listing .item .inner {
		padding: 30px 20px;
	}

	#enquiries .section {
		padding-bottom: 126px;
	}

	#enquiries .form {
		width: 495px;
	}

	#enquiries .image {
		width: 373px;
	}

	#footer .section {
		padding-top: 165px;
		padding-bottom: 70px;
	}

	#footer:before {
		height: 100px;
	}

	#footer:after {
		width: 35%;
	}

	#footer .blueDots {
		width: 225px;
	}

	#footer .purpleCircle {
		width: 200px;
		height: 200px;
		left: -100px;
		bottom: 187px;
	}

	#footer .spiralPurple {
		width: 27.125%;
		height: 291px;
	}

	.heading {
		font-size: 57px;
	}
}

/* Small Screens  (Tablets - Portrait ) */

@media only screen and (max-width : 991px) {
	.section {
		max-width: 750px;
		padding-left: 15px;
		padding-right: 15px;
	}

	#header .section {
		height: 160px;
	}
	
	#header .logo {
		margin: 0;
		position: absolute;
		left: 15px;
		top: 15px;
		width: 272px;
	}

	#header #navigation {
		margin-top: 120px;
	}

	#header #navigation ul li a:after {
		top: -0.5em;
		bottom: -0.5em;
	}

	#intro .section {
		height: 526px;
		padding-top: 174px;
	}

	#intro .image {
		margin-right: 0;
	}

	#intro .splash.blue {
		left: -47px;
	}

	#intro .splash.pink {
		height: 468px;
		right: -7px;
	}
	
	#intro .splash.yellow {
		height: 150px;
	}

	#intro .purpleLShaped {
		height: 90px;
	}

	#intro .splash.purple {
		height: 60px;
	}

	#intro .splash.green {
		height: 111px;
	}

	#intro .image {
		width: 300px;
	}

	#intro .text {
		font-size: 13.5px;
	}

	#intro .grass {
		height: 60px;
	}

	#welcome .section {
		padding-top: 55px;
		padding-bottom: 80px;
	}
	
	#welcome .heading {
		margin-bottom: 45px;
	}

	#welcome .imageText .image {
		margin-left: 0;
		width: 328px;
	}

	#welcome .imageText .text {
		font-size: 17px;
		width: 368px;
	}

	#program .listing {
		margin-left: -5px;
		margin-right: -5px;
	}

	#program .listing .item {
		padding-left: 5px;
		padding-right: 5px;
	}

	#program .listing .item .inner {
		padding: 30px 15px;
	}

	#enquiries:after {
		height: 152px;
	}

	#enquiries:before {
		width: 54.111111%;
		height: 311px;
	}

	#enquiries .section {
		padding-top: 110px;
	}

	#enquiries .section .wigglyLine {
		top: -43px;
		width: 341px;
	}

	#enquiries .image {
		margin-right: 10px;
		width: 315px;
	}

	#enquiries .form {
		width: 345px;
	}

	#footer .section {
		padding-top: 127px;
	}

	#footer:before {
		height: 60px;
	}

	#footer:after {
		height: 130px;
	}

	#footer .blueDots {
		width: 202px;
		bottom: 86px;
		left: -134px;
	}

	#footer .curveYellow {
		width: 22.4%;
	}

	#footer .contacts li {
		font-size: 17px;
	}

	#footer .spiralPurple {
		width: 24.125%;
		height: 220px;
		right: -37px;
		bottom: -15px;
	}

	.heading {
		font-size: 45px;
	}

	.linkBtn {
		font-size: 20px;
	}

}

/* Extra Small Screens */

@media only screen and (max-width : 767px) {
	#menuBtn {
		display: block;
	}

	#header .section {
		display: block;
		height: auto;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		padding-top: 32px;
		padding-bottom: 15px;
	}

	#header #navigation {
		display: none;
	}

	#header .logo {
		position: static;
		display: block;
		width: 277px;
		margin: 0 auto 20px;
	}
	
	#header .socials {
		position: static;
		-webkit-filter: brightness(0) saturate(100%);
		        filter: brightness(0) saturate(100%);
		opacity: 0.7;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	#header .socials li {
		margin: 0 5px;
	}

	#header .socials li img {
		height: 26px;
	}

	#intro .section {
		height: auto;
		margin: 0;
		padding-top: 205px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	
	#intro .splash.pink {
		height: 151px;
		right: 0;
	}

	#intro .splash.blue {
		left: -10px;
		top: -9px;
		width: 32%;
		height: 149px;
	}

	#intro .text {
		margin: 0 auto;
		width: auto;
		max-width: 320px;
		text-align: center;
	}

	#intro .text .heading:before {
		left: 1.65em;
		bottom: -0.3em;
	}

	#intro .text .heading:after {
		right: 0.1em;
	}

	#intro .text:before {
		left: -0.95em;
	}

	#intro .image {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
		width: 250px;
		margin: 0 auto 30px;
	}

	#intro .text {
		padding-bottom: 29px;
	}

	#intro .text .heading:before {
		left: -0.7em;
	}

	#intro .grass {
		height: 40px;
	}

	#intro .splash.green {
		height: 55px;
	}

	#intro .splash.purple {
		width: 20.27777777777778%;
		height: 40px;
	}

	#intro .purpleLShaped {
		height: 41px;
	}

	#intro .splash.yellow {
		height: 80px;
	}

	#welcome {
		text-align: center;
	}

	#welcome .section {
		padding-top: 45px;
		padding-bottom: 60px;
	}

	#welcome .heading {
		margin-bottom: 32px;
	}

	#welcome .imageText {
		display: block;
	}

	#welcome .imageText .text {
		width: 100%;
	}

	#welcome .imageText .image {
		width: 280px;
		margin: 0 auto 50px;
		left: 8px;
	}

	#program .section {
		padding-bottom: 15px;
	}

	#program:before, #program:after {
		height: 38px;
	}

	#program:before {
		top: -36px;
	}

	#program:after {
		bottom: -36px;
	}

	#program .listing {
		display: block;
		margin-top: 30px;
	}

	#program .listing .item {
		width: 100%;
	}

	#program .listing .item .inner {
		padding-left: 5%;
		padding-right: 5%;
	}

	#enquiries:before {
		width: 68.111111%;
		height: 160px;
	}

	#enquiries:after {
		width: 100px;
		height: 100px;
		top: -47px;
	}

	#enquiries .section {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		padding-top: 80px;
		padding-bottom: 115px;
	}

	#enquiries .section .wigglyLine {
		top: -48px;
		left: -11px;
		width: 239px;
	}

	#enquiries .form {
		width: 100%;
	}

	#enquiries .image {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
		margin: 0 auto 40px;
		width: 270px;
		left: 8px;
	}

	#enquiries .image .pinkDashed {
		right: -39.425963%;
		bottom: -13%;
		width: 74.726166%;
	}

	#footer .section {
		padding-top: 66px;
		padding-bottom: 25px;
	}

	#footer:before {
		height: 35px;
	}
	
	#footer:after {
		height: 73px;
	}

	#footer .logo {
		width: 280px;
		margin-bottom: 32px;
	}

	#footer .contacts {
		display: block;
	}

	#footer .contacts li {
		font-size: 13.6px;
		margin: 0 0 25px;
	}

	#footer .grassImage {
		height: 40px;
	}

	#footer .contacts li a {
		padding: 0 !important;
	}

	#footer .contacts li a:before {
		position: static !important;
		display: block;
		margin: 0 auto 10px;
	}

	#footer .contacts li.location a:before {
		width: 1.3em;
		height: 1.8em;
	}

	#footer .curveYellow {
		height: 104px;
		width: 40.4%;
	}

	#footer .spiralPurple {
		width: 30.125%;
		height: 156px;
		right: -37px;
		bottom: -21px;
	}

	#footer .purpleCircle {
		left: auto;
		right: -116px;
		width: 150px;
		height: 150px;
		bottom: 150px;
	}

	#footer .blueDots {
		width: 152px;
		bottom: 141px;
		left: -104px;
	}

	.heading {
		font-size: 38px;
	}

	.linkBtns {
		display: block;
	}

	.linkBtns .linkBtn {
		margin-left: auto;
		margin-right: auto;
	}

    .modal-content {
        width: 100%;
    }

}

@media only screen and (max-width : 478px) { 
    .modal-content {
        width: 100%;
    }
}

@media only screen and (max-width : 400px) { 
	
}