* {
    margin: 0;
    padding: 0;
    font-size: 0;
}

@media only screen and (min-width: 0px) { 
    body, html {
        width: 100%;
    }

    #page-section-indicator {
        display: none;
    }
    
    .section-id{
        display: none;
    }
    
    main {
        width: 100%;
        margin: 0 auto;
        background-color: white;
    }
    
    #large-screen-background {
        width: 100%;
        height: 145vw;
        margin-top: -75.06px;
        background-position-x: 9%;
        background-image: url("project-image.jpg");
        background-size: cover;
        background-attachment: fixed;
        }

    #mobile-filter {
        height: 100%;
        width: 100%;
        background: linear-gradient(rgba(0,0,0,0.1) 0px, rgba(0,0,0,0.6));
    }
    
    #home-top {
        opacity: 0;
        width: 100%;
        height: 50vw;
        min-height: 40vw;
        max-height: 50vw;
        transition: opacity 0.6s ease-in-out;
    }
    
    #home-top-r-side{
        width: 90%;
        margin: 45vw 0 0 5%;
        vertical-align: top;
        display: inline-block;
    } 
    
    #home-top-title {
        font-family: 'Hind Siliguri', sans-serif;
        font-weight: lighter;
        font-size: 7vw;
        color: white;
        margin-bottom: 30px;
    }
    
    .home-top-button {
        margin: 0 5vw 0 0;
        padding: 0.6vw 1.2vw;
        color: #DDDDDD;
        background-color: #50015a;
        font-size: 16px;
        font-family: 'Hind Siliguri', sans-serif;
        text-decoration: none;
        border: none;
        border-radius: 8%;
    }
    
    .home-top-button:hover {
        background-color: #600080;
    }
    
    #review-wrapper {
        position: absolute;
        top: 145vw;
        width: 100%;
        height: auto;
        background-color: #600080;
        box-shadow: 3px 3px 20px #222222;
    }
    
    #review-title, #review-desc {
        display: inline-block;
        font-size: 18px;
        font-family: 'Hind Siliguri', sans-serif;
        color: white;
        margin: 5vw 10% 0.335vw;
    }
    
    #review-desc{
        display: none;
    }
    
    #review-txt-wrapper {
        position: relative;
        width: 100%;
        height: auto;
        bottom: -3.37vw;
        padding-bottom: 6.35vw;
        margin: 0 0 -1.35vw 0;
        background-color: #600080; 
    }
    
    #review {
        width: 80%;
        margin: 2.7vw auto 1.35vw;
        font-size: 14px;
        font-family: 'Hind Siliguri', sans-serif;
        color: white;
    }
    
    #review-txt-wrapper progress {
        display: inline-block;
        vertical-align: middle;
        width: 60%;
        height: 5px;
        color: #ba1acf;
        margin: 5% 10%;
    }
    
    #number {
        display: inline-block;
        vertical-align: middle;
        font-size: 18px;
        font-family: 'Hind Siliguri', sans-serif;
        color: white;
        width: 20%;
    }
    
    #scrollSymbol {
        margin: 130px 0 0 2vw;
        border-color: rgba(0,0,0,0);
        border-top-color: white;
        border-style: solid;
        border-width: 20px 14px 0px 14px;
        height: 0px;
        width: 0px;
        animation: scrollAction 3s ease-in-out infinite;
    }
    
    @keyframes scrollAction {
    50%{transform: translateY(10px);}
    100%{transform: translateY(0px);}
    }
    
    /*product introduction section*/
    
    #service-introduction-wrapper {
        display: none;
    }
    
    /* card design */
    
    #product-card-section {
        opacity: 0;
        width: 100%;
        height: auto;
        margin: 70vw 0 0;
        font-size: 0;   
        transition: opacity 0.6s ease-in-out;
    }
    
    #card1, #card2 {
        width: 80%;
        height: auto;
        margin: 15vw 10% 0;
        display: block;
        font-size: 0;
        background-color: white;
        box-shadow: #e2e2e2 1px 0px 15px;
        transition: all 0.6s ease-in-out;
    }

    #card1 {
        margin-top: 15vw;
    }
    
    #card1:hover, #card2:hover{
        transform: scale(0.95);
    }
    
    #card-img1, #card-img2 {
        width: 100%;
        height: 30vw;
        margin: -5% auto 5%;
        background-image: url("family-room.jpg");
        background-size: cover;
        background-position-y: 58%;
    }
    
    #card-img2 {
        background-image: url("triple-room.jpg");
    }
    
    .card-title {
        width: 60%;
        margin: 6% auto;
        text-align: center;
        font-weight: 100;
        font-family: 'Hind Siliguri', sans-serif;
        font-size: 22px;
        color: black;
        border-bottom: 2px solid black;
    }
    
    .card-desc {
        width: 80%;
        height: auto;
        margin: auto;
        text-align: center;
        font-weight: 100;
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        font-size: 14px;
        color: black;
    } 
    
    .card-perks{
        width: 100%;
        height: auto;
        margin: 6% auto;
        color: #6d6d6d;
    }
    
    .card-perks li{
        margin: 0.5vw 10%;
        font-size: 15px;
        list-style: none;
        font-weight: 100;
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    }
    
    .card-perks li:nth-child(odd) {
        background-color: #f7f7f7;
        padding: 1vw 10%;
        margin: 0;
    }
    
    .card-button {
        width: 35%;
        height: auto;
        margin: 3% 35% 9%;
        padding: 0.3vw 2vw;
        font-size: 18px;
        font-family: 'Hind Siliguri', sans-serif;
        border: none;
        border-radius: 10px;
        background-color: #50015a;
        color: white;
    }
    
    .card-button:hover {
        background-color: #600080;
    }
    
    #card-divider {
        display: none;
    }
    
    #introduction {
        opacity: 0;
        width: 100%;
        display: inline-block;
        vertical-align: top;
        margin: 5vw 0 10vw;
        text-align: center;
        transition: opacity 0.6s ease-in-out;
    }   
    
    #introduction-title, #introduction-title span {
        margin: 7vw 0 0 2vw;
        font-family: 'Hind Siliguri', sans-serif;
        font-weight: 100;
        font-size: 20px;
    }
    
    #introduction-title span {
        color: #600080;
        font-size: 30px;
        vertical-align: middle;
        margin-top: -4px;
    }
    
    #introduction-txt {
        width: 80%;
        margin: 0 auto;
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        font-size: 16px; 
        color: #2e2d2d;
        letter-spacing: 2px;
        line-height: 2em;
    }
    
    #introduction-txt span:nth-child(1) {
        font-size: 16px;
    }
    
    #introduction-txt span:nth-child(2) {
        font-size: 16px;
    }
    
    #introduction-txt span:nth-child(3) {
        font-size:  16px;
    }
    
    #introduction-txt span:nth-child(4) {
        font-size: 16px;
    }
    
    #our-story {
        opacity: 0;
        transition: opacity 0.6s ease-in-out;
    }
    
    #story-r {
        display: inline-block;
        width: 80%;
        height: auto;
        margin: 3vw 10% 0 ;
    }
    
    #story-pre-title {
        font-size: 16px;
        font-family: 'Hind Siliguri', sans-serif;
        color: rgb(100, 0, 109);
        margin-top: 3vw;
    }
    
    #story-title {
        font-size: 22px;
        font-family: 'Hind Siliguri', sans-serif;
        font-weight: 300;
        color: #2e2d2d;
        margin-top: 2vw;
    }
    
    #story, #story-quote {
        font-size: 14px;
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        line-height: 2em;
        margin: 0vw 0 4vw;
    }

    #story {
        margin-bottom: 8vw;
    }
    
    #story-quote, #story-quote span {
        font-size: 14px;
        font-weight: 500;
        margin: 3vw 0 2vw;
    }
    
    #story-quote span {
       line-height: 2em;
    }
    
    #story-read-more {
        width: 30%;
        padding: 0.7vw 4vw;
        font-size: 13px;
        font-family: 'Hind Siliguri', sans-serif;
        font-weight: 100;
        color: white;
        background-color: #50015a;
        border-radius: 10px;
        text-decoration: none;
        transition: transform 0.5s ease-in-out;
    }
    
    #story-read-more:hover {
        background-color: #600080;
    }
    
    #story-img {
        display: none;
    }
    
    #form-header {
        opacity: 0;
        font-size: 22px;
        font-family: 'Hind Siliguri', sans-serif;
        font-weight: 100;
        color: #2e2d2d;
        margin: 20vw 10% 3%;
        transition: opacity 0.6s ease-in-out;
    }
    
    form {
        opacity: 0;
        display: inline-block;
        vertical-align: top;
        width: 80%;
        margin: 0 0 0 10%;
        transition: opacity 0.6s ease-in-out;
    }
    
    .input, #submit {
        display: block;
        height: 40px;
        width: calc(100% - 3vw);
        padding-left: 3vw;
        margin: 2.08vw 0 0;
        font-size: 15px;
        font-family: 'Hind Siliguri', sans-serif;
        border-radius: 4px;
        border: 2px solid rgb(197, 197, 197);
    }
    
    #textarea {
        resize: none;
        height: 50px;
        padding: 2.5vw 0 0 3vw;
    }
    
    #validation {
        margin: 2vw 0 3vw 0;
        vertical-align: middle; 
    }
    
    #submit {
        width: 30%;
        height: auto;
        padding: 0.7vw 4vw;
        font-size: 13px;
        font-family: 'Hind Siliguri', sans-serif;
        color: white;
        background-color: #50015a;
        border-radius: 10px;
        text-decoration: none;
        transition: transform 0.5s ease-in-out;
    }
    
    #submit:hover {
        background-color: #600080;
    }
    
    #statement, #statement a {
        width: 90%;
        color: black;
        display: inline-block;
        font-size: calc(6.5px + .7vw);
        font-family: 'Hind Siliguri', sans-serif;
        vertical-align: middle;     
        margin: 2vw 0 3vw 4vw;
    }

    #statement a {
        width: auto;
        vertical-align: top;
        margin: 0;
    }
    
    #map {
        opacity: 0;
        display: inline-block;
        border-radius: 5px;
        margin: 15vw 0 10vw 10%;
        width: 80%;
        height: 80vw;
        transition: opacity 0.6s ease-in-out;
    }

}

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

#page-section-indicator {
    position: fixed;
    background-color: white;
    padding: 1.35vw 0.675vw 0;
    border-radius: 4px;
    top: 15vw;
    right: 2vw;
}

.section-id{
    display: block;
    width: 0.5vw;
    height: 0.5vw;
    margin-bottom: 1.5vw;
    border-radius: 50%;
    background-color: rgb(156, 156, 156);
}

main {
    padding: 0 0 9.45vw;
}

#large-screen-background {
    height: auto;
    margin-top: 0;
    background-position-y: 100%;
}


#home-top-r-side{
    width: 50vw;
    margin: 10.37vw 0 0 10%;
} 

#home-top-title {
    font-size: 3.5vw;
    margin-bottom: 4vw;
}

.home-top-button {
    font-size: 15px;
}


#review-wrapper {
    display: block;
    position: relative;
    float: right;
    top: 0;
    width: 20.27vw;
    height: 27.02vw;
    margin: 10vw 11% 0 0;
    background-color: white;
}

#review-title, #review-desc {
    color: #555555;
    margin: 1.35vw 2.02vw 0.335vw;
}

#review-desc{
    display: block;
    font-size: 16px;
    margin-top: 0;
}

#review-txt-wrapper {
    position: absolute;
    height: 60%;
    bottom: 3.37vw;
    padding: 0 0.337vw 0.67vw;
    margin: 0 0 -1.35vw -0.337vw;
    box-shadow: 3px 3px 20px #222222;
}

#review {
    font-size: 1.1vw;
}

#review-txt-wrapper progress {
    height: 0.27vw;
}

#number {
    font-size: 14px;
}

#scrollSymbol {
    margin: 4vw 0 0 2vw;
}

/*product introduction section*/

#service-introduction-wrapper {
    display: block;
    opacity: 0;
    width: calc(70% - 16px);
    height: auto;
    margin: 4vw auto 0;
    transition: opacity 0.6s ease-in-out;
    border-left: 8px solid #600080;
}

#logospinner {
    display: inline-block;
    vertical-align: middle;
    width: 6vw;
    height: auto;
    margin: 0 4vw;
}

#service-introduction-text {
    display: inline-block;
    vertical-align: middle;
    width: 79%;
    margin: 0 auto 0;
    font-size: 18px;
    font-family: 'Hind Siliguri', sans-serif;
    line-height: 2em;
}

/* card design */

#product-card-section {
    margin: 3vw 0 0;
}

#card1, #card2 {
    vertical-align: middle;
    width: 30%;
    height: 35vw;
    margin: 7vw 0 0;
    padding: 0 0 5vw;
    display: inline-block;
    border-radius: 10px;
}

#card1 {
    margin-left: 15%;
    margin-right: calc(5% - 25px);
}

#card2 {
    margin-left: calc(5% - 25px);
}

#card-img1, #card-img2 {
    height: 40%;
    border-radius: 10px 10px 0 0;
}

.card-title {
    font-size: 1.5vw;
}

.card-desc {
    font-size: 1vw;
}

.card-perks li{
    font-size: 1.1vw;
}

.card-perks li:nth-child(odd) {
    padding: 0.3vw 10%;
}

.card-button {
    margin: 0% 35%;
    padding: 0.1vw 1vw;
    font-size: 1.1vw;
}

#card-divider {
    display: inline-block;
    vertical-align: middle;
    width: 40px;
    font-size: 20px;
    font-family: 'Hind Siliguri', sans-serif;
    font-weight: 100;
    color: #666666;
    text-align: center;
}

#introduction-title, #introduction-title span {
    margin: 7vw 0 0 1vw;
    font-size: 30px;
}

#introduction-title span {
    font-size: 45px;
}

#introduction-txt {
    width: 55vw;
    font-size: 20px; 
}

#introduction-txt span:nth-child(1) {
    font-size: 40px;
}

#introduction-txt span:nth-child(2) {
    font-size: 36px;
}

#introduction-txt span:nth-child(3) {
    font-size:  42px;
}

#introduction-txt span:nth-child(4) {
    font-size: 40px;
}

#story-r {
    width: 40vw;
    margin: 3vw 0 0 10%;
}

#story-pre-title {
    font-size: 18px;
}

#story-title {
    font-size: 30px;
}

#story, #story-quote {
    font-size: 16px;
}

#story {
    margin-bottom: 74px;
}

#story-quote, #story-quote span {
    font-size: 17.5px;
}

#story-quote span {
   line-height: 2vw;
}

#story-read-more {
    padding: 0.5vw 3vw;
    font-size: 15px;
}

#story-img {
    display: block;
    width: 27vw;
    float: right;
    margin: 6vw 10% 10% 0;
    border-radius: 10px;
}

#form-header {
    font-size: 2vw;
    margin: 10vw 0 0 10%;
}

form {
    width: 43%;
}

.input, #submit {
    height: 3vw;
    width: 90%;
    padding-left: 0.5vw;
}

#textarea {
    height: 4vw;
    padding: 2.5vw 0 0 0.5vw;
}

#validation {
    margin: 2vw 0 0 0;
}

#submit {
    width: 30%;
    padding: 0.5vw 0.8vw;
    font-size: 15px;
}

#statement, #statement a {
    font-size: 13px;
    margin: 2vw 0 0 25px;
}

#statement a {
    margin: 0;
}

#map {
    margin: 2vw 0 0 10%;
    width: 27%;
    height: 29vw;
}
}

@media only screen and (min-width: 1480px) {
    body {
        background-color: #fdfdfd;
    }

    #page-section-indicator {
        padding: 20px 10px 0;
    }
    
    .section-id{
        width: 7.4px;
        height: 7.4px;
        margin-bottom: 22.2px;
    }
    
    main {
        width: 1480px;
        padding: 0 0 140px;

    }

    #large-screen-background {
        background-position-y: 40%;
    }
    
    #home-top {
        vertical-align: top;
        width: 1480px;
        margin: 0 auto;
        min-height: 592px;
        max-height: 740px;
    }
    
    #home-top-r-side{
        width: 740px;
        margin: 198px 0 0 10%;
    } 
    
    #home-top-title {
        font-size: 51.8px;
        margin-bottom: 59.2px;
    }
    
    .home-top-button {
        margin: 0 74px 0 0;
        padding: 8.88px 17.76px;
    }
    
    #review-wrapper {
        width: 300px;
        height: 400px;
        margin: 148px 12% 0 0;
    }

    #review-title, #review-desc {
        font-size: 22.2px;
        margin: 20px 30px 5px;
    }

    #review-desc{
        margin-top: 0;
        font-size: 18px;
    }
    
    #review-txt-wrapper {
        bottom: 50px;
        padding: 0 5px 10px;
        margin: 0 0 -20px -5px;
    }

    #review {
        margin: 40px auto 20px;
        font-size: 16px;
    }

    #review-txt-wrapper progress {
        height: 4px;
    }

    #number {
        font-size: 16px;
    }
    
    #scrollSymbol {
        margin: 59.2px 0 0 29.6px;
    }

    
    
     /*product introduction section*/
    
     #service-introduction-wrapper {
        width: calc(80% - 16px);
        margin-bottom: 0;
    }

    #logospinner {
        width: 88.8px;
    }
    
    #service-introduction-text {
        width: 74%;
    }
    

    /* card design */

    #product-card-section {
        margin: 50px 0 0;
    }
    
    #card1, #card2 {
        height: 518px;
        margin: 103.6px 10% 0 10%;
        padding: 0 0 74px;
    }
    
    #card1 {
        margin-right: calc(10% - 25px);
    }

    #card2 {
        margin-left: calc(10% - 25px);
    }

    .card-title {
        font-size: 22.2px;
    }
    
    .card-desc {
        font-size: 14.8px;
    }

    
    .card-perks li{
        margin: 7.4px 10%;
        font-size: 16.28px;
    }
    
    .card-perks li:nth-child(odd) {
        padding: 4.44px 10%;
    }
    
    .card-button {
        padding: 1.48px 14.8px;
        font-size: 16.28px;
    }
    
    /* introduction txt */

    #introduction {
        margin-top: 74px;
        margin-bottom: 148px;
    }   
    
    #introduction-title, #introduction-title span {
        margin: 103px 0 0 14.8px;
    }
    
    #introduction-txt {
        width: 814px;
    }

    #story-r {
        width: 592px;
        margin: 44.4px 0 0 10%;
    }
    
    #story-pre-title {
        margin-top: 44.4px;
    }
    
    #story-title {
        margin-top: 29.6px;
    }
    
    #story, #story-quote {
        margin: 0 0 59.2px;
    }
    
    #story-quote, #story-quote span {
        margin: 44.4px 0 29.6px;
    }
    
    #story-quote span {
       line-height: 29.6px;
    }
    
    #story-read-more {
        padding: 7.4px 59.2px;
    }
    
    #story-img {
        width: 399.6px;
        margin: 88.8px 10% 10% 0;
    }
    
    #form-header {
        font-size: 29.6px;
        margin: 222px 0 0 10%;
    }
    
    .input, #submit {
        height: 44.4px;
        padding-left: 7.4px;
        margin: 30.784px 0 0;
    }
    
    #textarea {
        height: 59.2px;
        padding: 37px 0 0 7.4px;
    }
    
    #validation {
        margin: 2vw 0 0 0;
    }
    
    #submit {
        padding: 7.4px 11.84px;
    }
    
    #map {
        border-radius: 13.32px;
        margin: 29.6px 0 0 10%;
        height: 542px;
    }  
}