/*CSS by AabhaPandey.com*/
html,body,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,ol,ul,li,form,table,tr,th,td,embed,audio,video{margin:0;padding:0;border:0;font-weight:inherit;vertical-align:baseline}span,a,address,code,del,em,kbd,small,strong,sub,sup,var,label,time,mark,figcaption{font-weight:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}html{box-sizing:border-box;text-rendering:optimizeLegibility}body{text-rendering:optimizeLegibility;overflow-y:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior:contain;overflow-x:hidden}ol,ul{list-style:none}blockquote,q{quotes:none}table{border-collapse:collapse;border-spacing:0}img{height:auto;max-width:100%}svg:not(:root){overflow:hidden}figure,img{margin:0px;vertical-align:middle}a{background-color:transparent;text-decoration:none;-webkit-tap-highlight-color:transparent}a:active,a:hover,a:focus,input[type="image"],select:focus,input,input[type="button"]:focus,:focus{outline:0}select::-moz-focus-inner,button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill{background-color:#fff !important;box-shadow:0 0 0px 1000px white inset}input,textarea{-webkit-appearance:none}textarea{overflow:auto}select::-ms-expand{display:none}select{-webkit-appearance:none;-moz-appearance:none;text-indent:1px;text-overflow:''}@-moz-document url-prefix(){select{-moz-appearance:none;padding:0;text-indent:.01px;text-overflow:''}}@supports (-moz-appearance: meterbar) and (background-blend-mode: difference,normal){background-image:none !important}select.multiselect{height:auto}@media screen and (-webkit-min-device-pixel-ratio: 0){::i-block-chrome,select{margin-top:2px}}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;line-height:normal}button[disabled],html input[disabled]{cursor:default}html{font-size:14px}@media screen and (min-width: 481px) and (max-width: 992px){html{font-size:15px}}@media screen and (min-width: 993px){html{font-size:16px}}body,button,input,select,textarea{font:300 1rem/1.6 Open Sans,Arial,Helvetica,sans-serif;color:#545454}@media only screen and (max-width: 600px){body,button,input,select,textarea{font-weight:300}}div,li,button,a,span{letter-spacing:.03em}body h1,body h2,body h3,body .nav-wrapper{letter-spacing:normal;}p{margin:0}p.small{margin:0 0 .5em;line-height:1}li p{margin:0}
@keyframes rotat{
0%, 30%, 70%, 100% { transform:translateX(0px); }
50%{ transform:translateX(-150px);}
}
@keyframes header-phone{
    0%,30%{opacity:0; transform:translate3d(-20px, 20px, 0)}
    80%{opacity:1; transform:translate3d(0, 0, 0)}
    100%{opacity:0}
}
@keyframes header-phone2{
    0%{opacity:0; transform:translate3d(-20px, 20px, 0)}
    70%,90%{opacity:1;transform:translate3d(0, 0, 0)}
    100%{opacity:0}
}
@keyframes zoom{
    0%{transform:scale(.8);  opacity: 0}
    70%,90%{transform:scale(1); opacity: 1}
    100%{transform:scale(.8);  opacity: 0}
}
@keyframes slide{
    0%, 100% { left: 0%; }
    17%{left:0%}
    20%{left:-100%}
    37%{left:-100%}
    40%{left:-200%}
    57%{left:-200%}
    60%{left:-300%}
    77%{left:-300%}
    80%{left:-400%}
    97%{left:-400%}
}
.clearfix{clear:both;}
.clearfix::after{content:""; display: block; clear: both;}
/*Button Style*/
.button{ box-shadow: none; padding: 10px 30px; display: inline-block; text-align: center; font-size: 1.2rem; font-weight: 400; color:#333333; background-color: #d4d4d4; margin: 20px auto; transition: all .5s ease-in-out; box-shadow: 5px 5px 5px rgba(0,0,0,.3);}
.button:hover, .button:focus{ background-color: #ababab;  box-shadow: 0px 0px 5px rgba(0,0,0,.6); text-shadow: 1px 1px 1px rgba(0,0,0,.3);}
.button.primary{color:#ffffff; background-color: #350d6f;}
.button.primary:hover, .button.primary:focus{ background-color: #441d8d;}
.phone{width:.8rem;height:.8rem; fill:#350d6f;}
#phone path{fill:#350d6f}#phone path:nth-child(2){animation:header-phone 1s infinite cubic-bezier(.1, .57, .5, 1)}#phone path:nth-child(3){animation:header-phone2 1s infinite cubic-bezier(.1, .57, .5, 1)}
/*Header*/
header{font-size: .9rem; position: sticky; top:-45px; overflow: hidden; z-index: 100;  }
h1{text-align: center; position: relative; top:18px; margin-top: -76px; transition: all .5s ease-in-out;}
.scrolled h1{ top:56px;}
h1 img{box-shadow:0 -10px 5px rgba(0,0,0,.5);}
.scrolled h1 img{ box-shadow: none;}
.topnav ul{display: flex; justify-content: flex-end;}
.topnav ul li a{ font-size: .8rem; line-height: 1; color:#350d6f; background-color:#ffffff; padding:14px 10px; display: block; transition: all .5s ease-in-out; box-sizing: border-box; height: 42px;}
header ul li{margin-bottom: 0;}
.topnav ul li a .icon{ vertical-align: middle; margin-right: 5px;}
.topnav ul li a .locate{font-size: 1.5rem; animation:zoom 2s infinite ease-in; display: inline-block; line-height: .8rem; vertical-align: -4px;}
.topnav ul li a:hover{ background-color:#f9f11b; color:#350d6f; }
header nav ul{display: flex; text-transform: uppercase; background: rgba(53,13,111,1);}
header nav ul li{ font-size: .9rem; margin-bottom: 0; line-height: 1;  text-align: center; white-space: nowrap; flex-grow: 1;}
header nav ul li.mobmenu{ display: none;}
header nav a{color:#f9f11b; padding: 20px 1vw; background-color:#350d6f; display: block; box-sizing: border-box; width: 100%; transition: all .5s ease-in-out;}
.scrolled header{ box-shadow:0 5px 5px -3px rgba(0,0,0,.8);}
header nav a:hover, header nav a.current{color:#350d6f; background-color:#f9f11b; box-shadow: 0 5px 5px -5px rgba(0,0,0,.3);}
.phone path:nth-child(2){
    animation: header-phone 1s infinite cubic-bezier(.1, .57, .5, 1)
}
.phone path:nth-child(3){
    animation: header-phone2 1s infinite cubic-bezier(.1, .57, .5, 1)
}
/*Header End*/
/*Footer*/
/*Footer End*/
/*Main Body*/
.main{ font-weight: normal;}
.slider{position: fixed; z-index: -1; top:42px; left: 0; overflow: hidden; height: calc(100vh - 42px); width:100vw;}
.slider ul{ animation:slide 30s infinite; width:500%; height: 100%; animation-play-state:running; white-space: nowrap; position: relative; }
.slider:hover{animation-play-state:paused;}
.slider .slides{float: left; width:20%; height: 100%; position: relative;}
@media screen and (orientation:landscape){
.slider img{width:100%; height: 100%;}
}
@media screen and (orientation:portrait){
    .slider img{width:auto; height: 100%;}
}
.review{ text-align: center;}
.txtyslider{animation:slide 30s infinite; width:500%; animation-play-state:running; white-space: nowrap; position: relative; text-align: center;}
.txtyslider li{float: left; width:20%; position: relative; white-space: normal; font-size: 1.5rem; line-height: 1.8; font-style: italic; padding: 0px 50px; box-sizing: border-box;}
.txtyslider li *{ margin: 0 auto; max-width: 720px;}
.commentor{opacity: .7; font-size: .7em; font-style: normal;}
.txtyslider li .commentor{ margin-top: 30px;}
.rating{ font-style: normal; font-size: 1.8em; color:#f4fd01;}

h2{font-size: 2rem; font-weight: normal; margin:50px 0; line-height: 1; text-align: center; text-shadow: 3px 3px 2px rgba(0,0,0,.4); color:#350d6f;}
section:not(.welcome) h2, .main > h2{ text-transform: uppercase; padding: 0 0px 10px;}
section:not(.welcome) h2{ margin:100px 0 50px;}
section:not(.welcome) h2 span.txt, .main > h2 span.txt{ position: relative;}
section:not(.welcome) h2 span.txt::after, .main > h2 span.txt::after{box-shadow: 2px 2px 0px #acacac; display: block; content: ""; position: absolute; background-color: #350d6f; bottom:0; height: 2px; left:-55px; right:-55px;}
h2 .icon-reading{ width:32px; height: 32px; fill:#350d6f; margin: 0 15px;}
h3, h4{ font-weight: bold; margin-bottom: 0px;}
p + h3{ margin-top:30px;}
p{letter-spacing: 0.05em; line-height: 1.62; margin-bottom: 20px;}
blockquote{font-style: italic; font-size: 1.2em;}
.headerbg img{width:100%; height: auto;}
ul{}
strong{ font-weight: bold;}
ul li{font-size: 1.2rem; margin-bottom:10px; line-height: 1.5;}
.bold{font-weight: bold;}
p.bottom{ margin-top: 30px;}
header nav h1 a{background-color:transparent;}
header nav h1 a:hover, header nav h1 a.current{background-color:transparent; box-shadow: none;}
.content{position: relative; background-color: #ffffff; margin-top: calc(100vh - 45px); box-shadow: 0 -15px 15px rgba(0,0,0,.3); padding-bottom: 30px;}
.container{max-width:1170px; width:92%; margin: 0 auto; overflow-x: hidden;}
.welcome{ max-width: 770px; background-color:rgba(200,200,200,.7); padding: 20px 60px; position: relative; top:-250px; box-sizing: border-box; color:#212121; z-index: 6; box-shadow: 0 0 32px rgba(0,0,0,.5); transition: all .5s ease-in-out; border:1px solid rgba(200,200,255,.3); border-bottom-color: rgba(255,255,255,.5);}
.scrolled .welcome{top:-350px;}
.scrolled2 .welcome{top:-400px;}
.welcome::before, .welcome::after{ position: absolute; top:0; left:0; width:100%; height: 100%; background-color:rgba(255,255,255,.1); content:""; display: block; z-index: -1;}
.welcome::before{ transform: translate3d(-20px, -20px, 0);}
.welcome::after{ transform: translate3d(20px, 20px, 0);}
.welcome h2{ color:#f9f11b;}
.welcome p{ font-weight: 400;}
.welcome .button.primary{color:#441d8d; background-color: #f9f11b; display: block; max-width: 200px;}
.welcome .button.primary:hover, .welcome .button.primary:focus{ background-color: #f4fd01;}
.welcome+section{ margin-top:-230px; transition: all .5s ease-in-out;}
.scrolled .welcome+section{margin-top:-350px;}
.scrolled2 .welcome+section{margin-top:-400px;}
.scrolled .slider{top:-45px;}
hgroup{text-align: center; margin: 30px 0 5px;}
hgroup h2{ margin: 0 0 5px 0;}
hgroup h3{ margin-bottom: 10px; text-align: right; font-weight: normal; font-style: italic; font-size: 1rem; color:#212121;}

.facilities{text-align: center;}
.facilities ul{ display: flex; flex-wrap: wrap;}
.facilities ul li{flex-basis: 33%; text-align: center; margin-bottom: 70px; font-size: 1rem; transition: all .5s ease-in-out;}
.facilities ul li .circle{ border:2px solid #350d6f; border-radius: 100%; width:100px; height: 100px; margin: 0 auto 10px; display: block;}
.facilities .ikon{ width:64px; height: 64px; fill: #350d6f; padding: 18px 0;}
.facilities ul li a{color: #350d6f; transition: all .5s ease-in-out;}
.facilities li:hover{ transform: translateY(-5px);}
.facilities li:hover .circle{ background-color: #f4fd01; transition: all .5s ease-in-out;}
.facilities ul li:hover a, .facilities ul li a:hover{color:#6e17ec; text-shadow: 1px 1px 1px rgba(0,0,0,.5);}
.whyus .ikon{ width:56px; height: 56px; fill: #333333; padding: 8px 0;}
.whyus .circle{ border:1px solid #333333; border-radius: 100%; width:76px; height: 76px; margin: 0 20px 0 0; text-align: center; flex-grow: 0;}
.flex{display: flex; margin-bottom: 10px; align-items: center;}
.flex .txt{flex-basis: 75%; flex-grow: 1;}
.gallery 
/* The Masonry Container */
.masonry {
  margin: 1.5em auto;
  column-gap: 16px;
    box-sizing: border-box;
    position: relative;
}

/* The Masonry Brick */
.masonry .item {
  background: #fff;
  padding: 0;
  margin: 0 0 16px;
    box-sizing: border-box;
    position: relative;
    cursor: pointer;
    transition: all .5s ease-in-out;
    overflow: hidden;
}
.masonry .item img{transition: all .5s ease-in-out;}
.masonry .item:hover img{max-width:120%;}
@media screen and (min-width:768px)
{
.masonry .item::after{transition: all .5s ease-in-out; content: ""; display: block; position: absolute; top:50%; left:50%; width:0%; height: 0%; background: rgba(0,0,0,.5); z-index: 14; }
.masonry .item:hover::after{ top:0; left:0; width:100%; height: 100%;}
.masonry .item .zoom{transition: all .5s ease-in-out; position: absolute; top:50%; left:50%; margin-top: -16px; margin-left: -16px; z-index: 15;}
.masonry .item .zoom .icon{fill:#f4fd01; width:32px; height: 32px; opacity: .5}
.masonry .item .zoom::after{content: "Tap to Zoom"; display: block; text-align: center; opacity: .5; color: #f4fd01; text-indent: -27px; font-size: .9rem; font-weight: bold; text-transform: uppercase;}
.popup{
    position: fixed;
    top:0vh;
    left:0vw;
    width:100vw;
    height: 100vh;
    z-index: 200;
    text-align: center;
    background: rgba(0,0,0,.8);
    overflow: scroll;
    padding: 50px;
    box-sizing: border-box;
    display: none;
}
.popup .close{ position: absolute; top:10px; right:10px; cursor: pointer; padding:20px; box-sizing: border-box;}
.popup .close .icon{ fill:#f4fd01; width:32px; height: 32px;}
}
@media only screen and (max-width: 767px){
    .popup, .masonry .item .zoom{display: none;}
    .masonry .item{ cursor: default;}
}
@media (hover: hover){
    .masonry .item .zoom{opacity: 0;}
    .masonry .item:hover .zoom{opacity:1;}
}

/* Masonry on large screens */
@media only screen and (min-width: 1024px) {
  .masonry {
    column-count: 4;
  }
}

/* Masonry on medium-sized screens */
@media only screen and (max-width: 1023px) and (min-width: 768px) {
  .masonry {
    column-count: 3;
  }
}

/* Masonry on small screens */
@media only screen and (max-width: 767px) and (min-width: 540px) {
  .masonry {
    column-count: 2;
  }
}
.s-reviews{max-width: 700px; margin: 0 auto;}
.s-reviews blockquote{margin-bottom:16px;}
.s-reviews .commentor{margin-bottom: 32px;}
/*Review form*/
.rating {
  display: inline-block;
  position: relative;
  height: 50px;
  line-height: 50px;
  font-size: 50px;
}

.rating label {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  cursor: pointer;
}

.rating label:last-child {
  position: static;
}

.rating label:nth-child(1) {
  z-index: 5;
}

.rating label:nth-child(2) {
  z-index: 4;
}

.rating label:nth-child(3) {
  z-index: 3;
}

.rating label:nth-child(4) {
  z-index: 2;
}

.rating label:nth-child(5) {
  z-index: 1;
}

.rating label input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
padding:0;
}

.rating label .s-icon {
  float: left;
  color: transparent;
}

.rating label:last-child .s-icon {
  color: #350d6f;
}

.rating:not(:hover) label input:checked ~ .s-icon,
.rating:hover label:hover input ~ .s-icon {
  color: #f9f11b;
}

.rating label input:focus:not(:checked) ~ .s-icon:last-child {
  color: #350d6f;
  text-shadow: 0 0 5px #f9f11b;
}
form{padding-bottom:50px}
.field-wrap{width:500px;max-width:95%;margin:0 auto 10px;position:relative}
.note{font-size:1rem}
input, textarea{background-color:rgba(255,255,255,0.5);border:none;border-radius:5px;padding:15px 10px 15px 155px;display:block;box-sizing:border-box;width:100%;box-shadow:inset 0px 0px 5px rgba(0,0,0,0.2);transition:all 1s ease-out}
input:hover, input:focus, textarea:hover, textarea:focus{box-shadow:inset 2px 2px 5px rgba(0,0,0,0.2)}
textarea{padding-left:10px;text-indent:150px} 
.label{position:absolute;top:15px;left:10px;z-index:3;color:#666666;font-size:1rem; width:110px; text-align: right;}
.label::after{content:"";display:block;width:1px;height:30px;border-right:1px solid #ccc;position:absolute;left:120px;top:0}
.field-wrap:first-of-type .label::after{left:140px}
input[type="submit"]{padding:5px 10px;min-width:150px;margin-top:15px;text-transform:uppercase;height:60px;font-size:18px;box-sizing:border-box;transition:all 1s ease-out;width:auto}
input[disabled]{opacity: .5; cursor: default;}
#contact .alert{height:50px;line-height:50px;border:2px solid rgba(122,47,151,0.5);margin:5px 0;text-align:center}
.alert.alert-danger{border:2px solid #ff0000}

.pricing{display: flex;
    flex-wrap: wrap;
    align-items: stretch;}
.pricing li{flex: 1 0 29%;
    padding: 4rem;
    box-sizing: border-box;
    text-align: center;
    background: #f0f0f0;
    margin: 2%;
    transition: all .2s ease-in-out;
}
.pricing li:hover{box-shadow:inset 0 0 16px 16px rgba(0,0,0,.2);}

.main:not(.container){text-align: center;}
.main > address{padding: 5rem; font-size: 1.2rem;}
iframe{width:100vw; height: 100vh; max-height: 450px;}

.sitemap{display: flex; flex-wrap: wrap;}
.sitemap li{flex:1 0 50%; box-sizing: border-box; padding: 30px;}
.sitemap li a{display: block; padding: 80px 0; background: #f0f0f0; transition: all .2s ease-in-out; text-align: center; color:#fff; background-color: #350d6f;}
.sitemap li a:hover{box-shadow:inset 0 0 16px 16px rgba(0,0,0,.2); color:#350d6f; background-color: #f9f11b;}

footer{border-top: 2px solid #350d6f; text-align: center; font-size: .9rem; background: #ffffff;}
footer .address{ padding: 5px 0;}
.copy-icon{display:inline-block;background-color:#161616; padding:2px;vertical-align:middle; width:16px;height:16px}
.copy{padding:.5rem 0; max-width:600px;font-size:.9rem;text-align:center;color:#333;}
.copy a,.copy:hover{color:#333!important;}

@media only screen and (max-width: 767px){
    header{overflow: initial; position: static; display: flex; flex-direction: row-reverse; background-color: #350d6f;}
    h1{width:175px;}
    h1 img{box-shadow: none;}
    header nav ul li h1 a{padding:0;}
    header.on nav ul li h1 a{padding:0 0 0 30px;}
    header nav{flex:1 0 auto; transition: all .2s ease-in-out;}
    .topnav ul li a{background-color: transparent; color:#ffffff;}
    .phone{fill:#ffffff}
    .topnav ul li a:hover .phone{fill:#350d6f}
    header.on nav{ width:280px; position: fixed; top: 0; left: 0; height: 100vh; auto; z-index: 15;}
    header nav::before{position: fixed;top:0;left:0;width:0%; height: 0%; z-index: -1; background: rgba(0,0,0,.8); content: ""; display: block;}
    header.on nav::before{width:100%; height: 100%;}
    header nav ul{display:block; height: 0px; overflow: hidden;}
    header.on nav ul{height: 100vh;}
    header nav .mobmenu{height: 42px; position: relative; cursor: pointer; width:42px; z-index: 15; display: block;}
    header nav .mobmenu::before, header nav .mobmenu::after{content:"≡"; display: block; font-size:3rem; color:#ffffff; position: absolute; top:-16px; left:5px;}
    header nav .mobmenu::after{left:15px;}
    header.on nav .mobmenu{position: absolute; top:10px; right: -42px;}
    header.on nav .mobmenu::before{content:"✕"; background-color:#350d6f; left:0; padding: 5px; line-height: 1;}
    header.on nav .mobmenu::after{display: none;}
    header nav ul a{text-align: left; box-sizing: border-box; padding-left: 30px;}
    header nav li h1 {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: 0 auto;
        text-align: center;
        height: 42px;
        overflow: hidden;
    }
    header.on nav li h1{ position: static; height: auto; margin: 0; margin-top: 18px;}
}
@media only screen and (max-width: 560px){
    .topnav ul li a{
        padding: 6px 10px;
        white-space: nowrap;
        width: 33px;
        overflow: hidden;
        margin-right: 5px;
    }
    .topnav ul li a .icon{
        margin-right:16px;
    }
    .topnav ul li a .phone{
        width: 1.2rem;
        height: 1.2rem;
        vertical-align: -6px;
    }
    .topnav ul li a .locate{
       line-height: 1.8rem;
        vertical-align: 0px;
        font-size: 2rem;
        margin-left: -4px
    }
    h2{font-size: 1.2rem;}
    .button{padding:10px;}
    section:not(.welcome) h2, .main > h2{ padding: 0 0px 10px; margin:50px 0 20px;}
    h2 .icon-reading{ width:28px; height: 28px; vertical-align: middle;}
    .facilities ul li{ flex-basis: 50%; margin-bottom: 40px;}
    .label{position: static;}
    input, textarea{padding-left:10px;}
    .label::after{display:none;}
    .welcome{padding:20px;}
    .flex{align-items: flex-start;}
    .pricing li{flex:1 0 100%; margin:2% 0; padding: 2rem;}
    .sitemap li{flex:1 0 100%; padding: 10px;}
    .sitemap li a{padding: 40px 0;}
    .slider{position: static;}
    .content{margin-top: 0;}
    .welcome{position: static; box-shadow: none; border: none; background: none;}
    .welcome h2{text-shadow: none; color:#350d6f;}
    .welcome::before, .welcome::after{display:none;}
    .welcome + section{margin-top: 0;}
}
/*Main Body End*/