* { margin:0; padding:0; box-sizing:border-box; -webkit-box-sizing:border-box; -webkit-appearance:none;}
body { font-family: 'Lato', sans-serif; font-size:18px; line-height:30px; color:#5b5b5b; background-color: #f9f6f1;}
h1, h2, h3, h4, h5, h6, h7 { line-height:130%; padding:5px 0 0 0; font-family: 'Montserrat', sans-serif; font-weight:normal; margin-bottom:00px; color:#000;}
.clear-float { clear:both;}
.clear-ul { margin:0; padding:0; list-style:none;}
.space-line {  width:100px; height:4px; background-color:#f00; display:inline-block; margin:10px 0 15px 0;}
.space-after { margin-bottom: 20px; }
h1 { font-size:52px; }
h2 { font-size:42px;}
h3 { font-size:32px;}
h4 { font-size:28px;}
h5 { font-size:24px;}
h6 { font-size:20px;}
a { text-decoration:none; color:inherit; transition:all ease-in-out 0.3s; -webkit-transition:all ease-in-out 0.3s;}
p { margin-bottom:10px;}
.text-links { color:#06F;}
.box-links { background-color:#06F; color:#fff; display:inline-block; padding:5px 15px;}
img { max-width:100%; margin:0; padding:0; font-size:0; display:block; overflow: hidden;}
ul { list-style: none; margin: 0 0 10px 0; padding: 0;}
ul li { margin: 0; padding: 0 0 0 20px; position: relative;}
ul li:before { content: "\f061"; font-family: FontAwesome; font-size: 10px; color: #bbb; position: absolute; left: 0; top: 0px;}
ul.clear-ul li { padding: 0;}
ul.clear-ul li:before { display: none;}
.spl-text { color: #f00;}
.large-text { font-size: 60px;}
.full-img { width: 100%; }
.text-center { text-align: center;}
.sep-line { width: 200px; display: block; margin: 10px 0; height: 2px; background-color: #d4d4d4;}
.sep-line.center { margin: 10px auto; }

.wrapper-1000 { width:1000px; margin:0 auto; position:relative;}
.wrapper-1200 { width:1200px; margin:0 auto; position:relative; }
.wrapper-90p { width:95%; margin:0 auto; }
.block-2 { width:50%; margin:0; padding:0; float:left; min-height: 1px; position: relative;}
.block-2.right { float:right;}
.block-2.text { padding:6% 5%; }
.block-3 { width:33.33%; margin:0; padding:0; float:left; min-height: 1px; position: relative;}
.block-3.right { float:right;}
.block-3.text { padding:6% 5%; }


.extra-padding { padding:8% 10%;}
.extra-padding-rl { padding: 0 10%; }
.extra-padding-tb { padding:8% 0%;}
.extra-padding-top { padding-top:8%;}
.mid-padding { padding:4% 5%;}
.mid-padding-rl { padding:0% 5%;}
.mid-padding-tb { padding:4% 0%;}
.fix-padding-20 { padding:20px;}
.fix-padding-tb-20 { padding:20px 0;}
.padding-bottom-0 { padding-bottom:0; }
.padding-top-0 { padding-bottom:0; }


section { position: relative; padding: 100px 0; width: 100%; }
section.clear { padding: 0;}
section.last { padding-bottom: 0; }
.no-overflow { overflow: hidden; }
.read-more { padding: 10px 30px; background-color: #f00; color: #fff; margin-top: 5px; display: inline-block; }
.read-more:hover { background-color: #000; }

.flex-block { display: flex; align-items: center; flex-wrap: wrap; }
.flex-block.no-wrap {flex-wrap: nowrap; }
.flex-block .flex-child {  }
.flex-block.reverse { flex-direction: row-reverse; }
.flex-2 .flex-child { width: 50%;}
.flex-2 .flex-child.text { justify-content: center;}
.flex-2 .flex-child.text { padding:2% 5%; }
.flex-2-wrapper { display: flex;}
.flex-2 .flex-child { flex-grow: 0;}
.flex-3 .flex-child { width: 32.33%; margin: 0.5%;}
.flex-4 .flex-child { width:24%; margin: 0.5%; flex-grow: 1; }
.flex-content-top { align-items: flex-start;}
.flex-box.reverse { flex-direction: row-reverse; }
.flex-reset-height { align-items: normal; align-items: stretch; }

header { display: flex;}
.logo { margin:10px 0; width: 200px; display: block;}
.main-menu-wrapper { font-family: 'Montserrat', sans-serif; align-self: center; margin-left: auto;}
.main-menu-ul { display:flex;}
.main-menu-ul li { position:relative; flex-grow: 1; text-align:center; margin: 5px; padding: 0; }
.main-menu-ul li:before { display: none;}
.main-link { width:100%; display:block; padding:5px 25px; color:#000; position:relative; font-size:19px;}
.main-menu-ul li:after { content:""; position:absolute; z-index: -1; width:100%; height:100%; border: solid 2px #000; display:block; left:0; bottom:0; transition:all ease-in-out 0.3s; -webkit-transition:all ease-in-out 0.3s; top:-100%; opacity: 0;}
.main-menu-ul li:hover, .main-menu-ul li.active { color:#000;}
.main-menu-ul li:hover:after, .main-menu-ul li.active:after { top:-2px; opacity: 1; }
.sub-link-ul { position:absolute; left:0; top:100%; padding:10px; background-color:#fff; border: solid 2px #000; width:250px; text-align:left; transform:rotateX(-90deg); -webkit-transform:rotateX(-90deg); transform-origin:center top; -webkit-transform-origin:center top; opacity:0; transition:all ease-in-out 0.3s; -webkit-transition:all ease-in-out 0.3s; z-index: 999; }
.main-menu-ul li:hover .sub-link-ul { transform:rotateX(00deg); opacity:1;}
.sub-link-ul li { position:relative;}
.sub-link-ul li:after {display: none;}
.sub-link { text-align:left; display:block; padding:10px 5px; color:#000;}
.sub-link:hover, .sub-link-ul li.active .sub-link { color: #f00; }
.main-menu-icon { position: absolute; right: 20px; top: 30px; width: 40px; height: 40px; display: none; z-index: 1500;}
.main-menu-icon .main-menu-icon-bar { position: absolute; width: 100%; height: 2px; background-color: #000; left: 0; top: 50%; transition: all ease-in 0.3s;}
.main-menu-icon .main-menu-icon-bar:nth-child(1) { transform: translateY(-15px);}
.main-menu-icon .main-menu-icon-bar:nth-child(3) {  transform: translateY(15px);}
.main-menu-icon.on .main-menu-icon-bar:nth-child(1) { transform: rotate(45deg);}
.main-menu-icon.on .main-menu-icon-bar:nth-child(3) { transform: rotate(-45deg);}
.main-menu-icon.on .main-menu-icon-bar:nth-child(2) { opacity: 0;}
.main-dd-parent .main-link { position: relative;}
.main-dd-parent .main-link:after { content: "\f107"; font-family: FontAwesome; font-size: 16px; position: relative; display: inline-block; transform: translateX(11px);}

.main-banner { box-shadow: 5px 5px 10px rgba(0,0,0,0.5); border: solid 10px #fff; max-height: 80%; }
.main-banner .owl-dots { position: absolute; left: -30px; bottom: 0;}
.owl-dots { margin-top: 10px; text-align: center;}
.owl-dot span { width: 10px; height: 10px; background-color: #000; margin: 3px 5px; display: inline-block;}
.owl-dot.active span { background-color: #f00;}
.main-banner .owl-dots .owl-dot { display: block;}
.banner-img { background: url(../images/secure-environment-for-beauty-care.jpg) center center no-repeat; background-size: cover; }
.banner-text { position: relative;}
.banner-text h1, .banner-text h2 { font-weight: 300;}
.banner-text-right { width: 75%; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
.main-owl-wrapper { position: absolute; width: 55%; max-width: 500px; left: -20%; top: 50%; transform: translateY(-50%); z-index:100; }

.home-about { padding-bottom: 0; position: relative;}
.home-about * { color: #fff;}
.home-about  .read-more-arrow { position: absolute; right: 10px; bottom: 30px;}
.read-more-arrow { display: inline-block; width: 80px; height: 80px; line-height: 72px; text-align: center; border-radius: 50%; border: solid 2px #f00; color: #f00; margin: 0 auto;}
.read-more-arrow:after {content: ">"; transform: scaleX(0.5); display: block; font-family: FontAwesome; font-size: 70px; font-weight: 300; margin-left: 4px;  }
.read-more-arrow:hover { color: #000; border-color: #000;}
.dark-bg { background: url(../images/dark-bg.png) left top repeat-x;}
.grey-bg { background-color: #303030; color: #fff; padding: 80px 0; text-align: center;}
.grey-bg * { color: #fff;}
.grey-bg .read-more-arrow { color: #fff; border-color: #fff;}
.grey-bg .read-more-arrow:hover { color: #f00; border-color: #f00; }
.grey-bg .owl-dot span { background-color: #fff; }
.grey-bg .owl-dot.active span { background-color: #f00; }
.home-academy-text { position: absolute; width: 40%; padding: 5%; background-color:  rgba(255,255,255,0.5); right: 0; top: 20%; }
.home-academy-footer { position: absolute; left: 0; bottom: 0;  background-color: rgba(255,255,255,0.5); width: 100% }
.home-academy-40 { float: left; width: 35%; background-color: #f00; text-align: right; padding-right: 30px;}
.home-academy-60 { float: left; width: 65%; }
.home-academy-40 .soci-icon { color: #fff; font-size: 35px; padding: 20px 20px;}
.home-academy-40 .soci-icon:hover { color: #000;}
.founder-img-bg { position: relative; background-color: #000; }
.founder-img-bg:after { content: ""; position: absolute; width: 100%; height: 100%; left: 0; top: 0; background:url(../images/founder.jpg) center center no-repeat #000000; background-size: cover; opacity: 0.4; }
.founder-img { position: absolute; width: 70%; max-width: 550px; z-index: 10; left: -6%; top: 50%; transform: translateY(-50%); }
.home-founder-text { padding: 10% 5%;}
.home-services-slider .owl-item { opacity: 0.2; transition: all 0.3s ease-in; }
.home-services-slider .owl-item.active { opacity: 1; }
.testimonials-wrapper {  position: relative; margin: 20px auto;}
/*.testimonials-wrapper:before { content: "\f10d"; font-family: FontAwesome; font-size: 100px; margin: 30px 50px 0 10px; float: left; color: #000;}*/


/* about us  */
.founder-text { padding: 80px 6%; border:solid 40px rgb(0 0 0 / 5%); box-sizing: border-box;}
.founder-pic { background: url(../images/about-founder.jpg) center center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}
.margin-tb-50 { margin: 50px auto;}
.margin-top-0 { margin-top: 0px;}
.parallax-wrapper { position: relative; overflow: hidden;}
.parallax-box { position: relative; width: 100%; background-size: cover; }
.interior-paral { background: url(../images/paral-joynjoy-interior.jpg) center center no-repeat; background-size: cover;}

.laser-pic { background: url(../images/laser-center.jpg) center center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}

/* services */
.qna .qna-q { font-size: 120%; width: 100%; padding:10px 50px 10px 30px; position: relative; background-color: #303030; color: #fff; display: block; border: solid 1px rgb(255 255 255/30%); }
.qna .qna-q:after {content:"\f107"; font-family: fontAwesome; font-size: 25px; position: absolute; right:0; top:0; width: 30px; text-align: center; color: inherit; padding:8px; transition: all ease-out 0.3s; }
.qna .qna-q.active:after { transform:rotate(180deg);}
.qna .qna-a { display: none; padding:30px; border: solid 1px rgb(0 0 0 /20%); }
.stick-to-top { position: sticky; position: -webkit-sticky; top: 0;}

.services-slider { overflow: hidden; }
.services-slider-pic {width: 100%; height:100%; background-position: center center; background-repeat: no-repeat; background-size: cover; height: 100vh; }
.services-slider-pic.br1 { background-image: url(../images/services-bridal/1.jpg); }
.services-slider-pic.br2 { background-image: url(../images/services-bridal/2.jpg); }
.services-slider-pic.br3 { background-image: url(../images/services-bridal/3.jpg); }
.services-slider-pic.br4 { background-image: url(../images/services-bridal/4.jpg); }
.services-slider-pic.br5 { background-image: url(../images/services-bridal/5.jpg); }
.services-slider-pic.br6 { background-image: url(../images/services-bridal/6.jpg); }
.services-slider-pic.br7 { background-image: url(../images/services-bridal/7.jpg); }
.services-slider-pic.br8 { background-image: url(../images/services-bridal/8.jpg); }
.services-slider-pic.br9 { background-image: url(../images/services-bridal/9.jpg); }

.services-slider-pic.hc1 { background-image: url(../images/services-haircare/1.jpg); }
.services-slider-pic.hc2 { background-image: url(../images/services-haircare/2.jpg); }
.services-slider-pic.hc3 { background-image: url(../images/services-haircare/3.jpg); }
.services-slider-pic.hc4 { background-image: url(../images/services-haircare/4.jpg); }
.services-slider-pic.hc5 { background-image: url(../images/services-haircare/5.jpg); }
.services-slider-pic.hc6 { background-image: url(../images/services-haircare/6.jpg); }
.services-slider-pic.hc7 { background-image: url(../images/services-haircare/7.jpg); }
.services-slider-pic.hc8 { background-image: url(../images/services-haircare/8.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/9.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/10.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/11.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/12.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/13.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/14.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/15.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/16.jpg); }
.services-slider-pic.hc9 { background-image: url(../images/services-haircare/17.jpg); }

.services-slider-pic.na1 { background-image: url(../images/services-nailart/1.jpg); }
.services-slider-pic.na2 { background-image: url(../images/services-nailart/2.jpg); }
.services-slider-pic.na3 { background-image: url(../images/services-nailart/3.jpg); }
.services-slider-pic.na4 { background-image: url(../images/services-nailart/4.jpg); }
.services-slider-pic.na5 { background-image: url(../images/services-nailart/5.jpg); }
.services-slider-pic.na6 { background-image: url(../images/services-nailart/6.jpg); }

.services-slider .owl-dots { margin-top: -40px; position: relative; z-index: 100; background-color:rgb(255 255 255 / 50%); }

.haircare-bg { background: url(../images/hair-care.jpg) left center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}
.beautycare-bg { background: url(../images/beauty-care.jpg) right top no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}
.dayspa-bg { background: url(../images/day-spa.jpg) center center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}
.skintreatment-bg { background: url(../images/skin-care.jpg) center bottom no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh;}

.styled-table td, .styled-table th { padding:10px; border-right:solid 1px rgb(0 0 0 / 40%); border-bottom:solid 1px rgb(0 0 0 / 40%); text-align:left; }
.styled-table { border-left:solid 1px rgb(0 0 0 / 40%); border-top:solid 1px rgb(0 0 0 / 40%); }
.styled-table thead { background-color: #379c83; color: #fff; letter-spacing: 1px; }

/* academy */
.academy-pic { background: url("../images/joynjoy-academy.jpg") center center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh; }
.courses-pic { background: url("../images/joynjoy-academy.jpg") center center no-repeat; background-size: cover; position: sticky; position: -webkit-sticky; top: 0; height: 100vh; }
.course-list .flex-child { background-color: #F9D3AA; }
.courses-list .flex-block a img { width: 100%; }
.return-btn { position:absolute; padding:10px 20px; color:#fff; background-color:rgb(0 0 0 / 40%); right:0; top:0; transition: all ease-out 0.3s; }
.return-btn:hover { background-color:rgb(0 0 0 / 70%); }
.duration-fees .flex-child { padding:30px; background-color: #F9D3AA; margin-right:20px; }
.duration-fees .flex-child:last-child { margin-right:0px; }

.list-two, .list-three, .list-four, .list-five { flex-wrap: wrap; align-items: stretch; }
.list-two li, .list-three li, .list-four li, .list-five li { width: 49.5%; margin:0.25%; padding: 15px !important; border: solid 1px rgb(0 0 0/10%); align-items: normal; }
.list-three li { width: 32.834%; }
.list-four li { width: 24.5%; }
.list-five li { width: 19.5%; }
.list-two li.full, .list-three li.full, .list-four li.full, .list-five li.full { width:99.5%;}

.white-bg { background-color: #fff; }
.founder-social-icons .social-icon { padding:5px; width:40px; height:43px; display:block; background-color: #f00; color: #fff; margin:0 5px; font-size: 30px; }

/* forms */
.form-ul li{ margin-bottom:10px; position:relative; background:none; padding:0 10px;}
.form-ul li span{ display:inline-block; padding:2px 10px; background-color:#999; color:#fff;}
.form-ul li.err .form-field { border-color:#f00; position: relative; }
.form-ul li.err:after { content:"invalid"; position:absolute; padding:3px 8px; background-color: #f00; color:#fff; border-radius: 7px; right:7px; top: 37px; }

.form-field{ padding:15px 10px; line-height:20px; font-size:16px; border:none; border:solid 1px #999; box-sizing:border-box; -webkit-box-sizing:border-box; width:100%; position:relative; border-radius:10px;}
.form-field:disabled{ background-color:#E9E9E9;}
.form-btn{ cursor:pointer; font-size:16px; text-align:center; display:inline-block; line-height:30px; margin-top:20px; padding:5px 30px; color:#fff; position:relative; transition:all ease-in-out 0.3s; -webkit-transition:all ease-in-out 0.3s; border:none; border-radius:10px; -webkit-border-radius:10px; background-color:#f00; color:#fff;}
.form-btn:hover{ background-color:#000;}
.form-response{ background-color:#c4e9f3; color:#000; padding:10px; margin-top:10px; overflow:auto;}
.form-response a, .form-response h2{ background-color:#94cddc; padding:2px 5px; border-radius:5px; -webkit-border-radius:5px;}
.form-response h2{ display:inline-block;}
.form-response a:hover{ background-color:#fff;}
.form-response ul{ text-align:left; width:100%; display:block; padding:10px 5px; box-sizing:border-box; -webkit-box-sizing:border-box;}
.form-response ul li{ background-color:#94cddc;}


footer { padding:30px 0 80px 0; background-color:#d20e0e; color:#fff;}
footer .wrapper-1200 { display:flex;}
footer .wrapper-1200 * { flex-grow:1;}
.by-elegant { text-align:right;}
.move-to-top { width: 60px; height: 60px; line-height: 57px; text-align: center;border-radius: 50%; border:solid 2px #000; color: #000; position: fixed; right: 10px; bottom: 10px; background-color: rgba(255,255,255,0.3); z-index: 999;}
.move-to-top:after { content: "\f062"; font-family: FontAwesome; display: block;font-size: 23px; color: inherit;}
.move-to-top.off { bottom: -100px;}
.social-icons { text-align:center; display:flex; font-size:22px;}
.social-icons li a:hover { color: #000; }

.about-achievements .flex-child { padding:20px; background-color: #fff; margin: 2px; border:solid 1px rgb(0 0 0 / 30%); }
/* .tiles-list { width :30%; } */
.grid-item { width: 31.5%; margin: 10px 0; padding:20px; background-color: #fff; border:solid 1px rgb(0 0 0 / 30%); }
.grid-item h4 { font-size: 22px; }

@media screen and (max-width:1000px){
	.wrapper-90p, .wrapper-1200, .wrapper-1000 { width:100%;}
	.block-2 { width:100%; float:none;}
	.block-2.right { float:none;}
	.block-2.text, .flex-2.text { padding:6% 5%; }
	.flex-2-wrapper { display: block;}
	.flex-2 { flex-grow: 0; width: 100%;}
	.ele-same-height .ele-template { height: auto !important;}
	.large-text { font-size: 43px; }
	h1 { font-size: 43px; }
	.flex-block { display: block;}
	
	.flex-2 .flex-child, .flex-3 .flex-child, .flex-4 .flex-child { width:100%; margin: 0; }
	
	header, .main-menu-ul { display: block;}
	.logo { margin: 10px 0 10px 20px; position: relative; z-index: 999;}
	.main-menu-wrapper {position: absolute; left: 0; top: 0; display: none; width: 100%; background-color: #fff; z-index: 900; padding: 110px 0 50px 0; box-shadow: 0 5px 30px rgba(0,0,0,0.5);}
	.main-link { font-weight: 700; padding: 15px;}
	.sub-link-ul { position:relative; transform:none; opacity:1; margin:0 auto; text-align:center; top:0;  }
	.sub-link { text-align: center;}
	.main-menu-icon { display: block;}
	.main-menu-ul li:after { display: none;}
	.main-dd-parent.active .main-link { color: #f00;}
	
	.banner-img { background-position: center bottom; background-size: 320%; }
	.banner-text-right { position: relative; width: 90%; text-align: center; margin: 10px auto; transform: translateY(0);}
	.main-owl-wrapper { position: relative; width: 80%; left: 10%; top: 0%; transform: translateY(30%);}
	.banner-text { margin-top: 40%; }
	section { padding: 60px 0; overflow: hidden;}
	.home-about-text { padding: 5px 30px;}
	.home-academy-footer { position: relative;}
	.home-academy-40 { float: none; width: 100%; padding: 10px; text-align: center;}
	.home-academy-text { position: relative; width: 100%; top: 0; text-align: center;}
	.home-academy-text img { margin: 0 auto;}
	.founder-img { position: relative; width: 100%; left: 0; top: 0; transform: translateY(0);}
	.founder-img-bg:after { display: none;}
	.testimonials-wrapper:before { font-size: 60px; float: none;}
	.testimonials { padding:10px 30px;}
	
	footer .wrapper-1200 { display: block; text-align: center;}
	.social-icons { margin: 30px auto;}
	
	/* about us */
	.founder-pic { height: 350px; position: relative;}
	.founder-text { padding: 30px; border-width: 10px;}
	.about-achievements { padding: 30px;}
	.margin-tb-50 { margin: 30px auto;}
	
	/* contact */
	.contact h1 { text-align: center; padding: 20px 20px 0 20px;}
	.contact .block-2 { padding: 30px;}
	
	.list-three li, .list-four li, .list-five li { width: 95%; margin: 5px auto;}
	.grid-item { width: 100%; text-align: center; }
}