:root{
    --default-color:#D4578D;
    --second-color:#439498;
    --light-pink:#F3B6B5;
    --pink-default:#D74A86;
    --blue-default:#3D888C;
    --light-blue:#8FCEDA;
    --color-shadow:#777;
    --lighter-pink:#F0C6D8;
}
/* font face */
@font-face {
    font-family: 'Futura Std Book';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Book'), url('../fonts/FuturaStdBook.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Book Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Book Oblique'), url('../fonts/FuturaStdBookOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Light Condensed';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Light Condensed'), url('../fonts/FuturaStdCondensedLight.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Light';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Light'), url('../fonts/FuturaStdLight.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Light Condensed Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Light Condensed Oblique'), url('../fonts/FuturaStdCondensedLightObl.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Light Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Light Oblique'), url('../fonts/FuturaStdLightOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Medium Condensed';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Medium Condensed'), url('../fonts/FuturaStdCondensed.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Medium';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Medium'), url('../fonts/FuturaStdMedium.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Medium Condensed Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Medium Condensed Oblique'), url('../fonts/FuturaStdCondensedOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Medium Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Medium Oblique'), url('../fonts/FuturaStdMediumOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Heavy';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Heavy'), url('../fonts/FuturaStdHeavy.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Heavy Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Heavy Oblique'), url('../fonts/FuturaStdHeavyOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Bold';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Bold'), url('../fonts/FuturaStdBold.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Bold Condensed';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Bold Condensed'), url('../fonts/FuturaStdCondensedBold.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Bold Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Bold Oblique'), url('../fonts/FuturaStdBoldOblique.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Bold Condensed Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Bold Condensed Oblique'), url('../fonts/FuturaStdCondensedBoldObl.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Extra Bold Condensed';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Extra Bold Condensed'), url('../fonts/FuturaStdCondensedExtraBd.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Extra Bold';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Extra Bold'), url('../fonts/FuturaStdExtraBold.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Extra Bold Condensed Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Extra Bold Condensed Oblique'), url('../fonts/FuturaStdCondExtraBoldObl.woff') format('woff');
}


@font-face {
    font-family: 'Futura Std Extra Bold Oblique';
    font-style: normal;
    font-weight: normal;
    src: local('Futura Std Extra Bold Oblique'), url('../fonts/FuturaStdExtraBoldOblique.woff') format('woff');
}


/* custom css */
.container{
    max-width: 1080px;
}
#top-bar{
    z-index: 10;
}
body, html{
    overflow-x: hidden;
}
.font-medium, body, html, p, div{
    font-family: 'Futura Std Book', sans-serif;
}
body, html, p, div{
    font-size:16px;
}
body{
    background-color:#439498;
    padding-right: 0 !important;
}
.font-bold, h1, h2, h3, h4, h5{
    font-family: 'Futura Std Bold', sans-serif;
}
.font-light{
    font-family: 'Futura Std Light', sans-serif;
}
.font-heavy{
    font-family: 'Futura Std heavy', sans-serif;
}
.bg-default{
    background-color: #D4578D;
}
.bg-second{
    background-color: #439598;
}
.bg-third{
    background-color: #3D888C;
}
.bg-fourth{
    background-color:#D74A86;
}
.bg-light-pink{
    background-color:#F3B6B5;
}
.bg-pink-default{
    background-color:#D74A86;
}
.bg-blue-default{
    background-color:#3D888C;
}
.bg-light-blue{
    background-color:#8FCEDA;
}
.text-default{
    color: #D4578D;
}
.text-second{
    color: #439598;
}
.text-third{
    color: #3D888C;
}
.text-fourth{
    color:#D74A86;
}
.main-content{
    width:100%;
    overflow: hidden;
    background:url("../images/BG.jpg") 50% 0 / 100% auto repeat;
    position: relative;
}
.page-title{
    font-size:3.3rem;
}
.logo-container{
    max-width: 350px;
    width:50%;
    margin:auto;
}
.border-default{
    border:3px solid var(--default-color);
}
.border-second{
    border:5px solid var(--light-blue);
}
.upcoming, .to-do{
    border-radius:15px;
    height: 100%;
}
.forever-day{
    border-radius:25px;
}
.upcoming-list ul{
    list-style: none;
}
.upcoming-item{
    width:100%;
    border:1px solid var(--lighter-pink);
    position: relative;
    z-index: 0;
    overflow: visible;
}
.upcoming-item:hover{
    z-index: 1;
}
.upcoming-tile{
    width: 100%;
    margin: 0.2em auto;
    position: relative;
    height: 75px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.text-bold{
    font-weight: bold;
}
.upcoming-content{
    position: relative;
    width: 68%;
    overflow:visible;
}
.upcoming-content a{
    display: block;
    position: relative;
}
.upcoming-content:before{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-width: 0 13px 50px 161px;
    border-color: transparent transparent rgba(0, 0, 0, 0.26) transparent;
    border-style: solid;
    right: -10px;
    bottom: 0px;
    /* filter: drop-shadow(24px 17px 4px rgba(0, 0, 0, 0.23)); */
    transform: rotate(3.5deg);
    transition: all 0.3s;
    filter:blur(4px)
}
.to-do-card {
    position: relative;
    overflow:visible;
}
.to-do-card > div{
    display: block;
    position: relative;
}
.to-do-card:before{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-width: 0 150px 104px 18px;
    border-color: transparent transparent #777 transparent;
    border-style: solid;
    left: -1px;
    bottom: 10px;
    filter: drop-shadow(-11px 12px 5px rgba(0, 0, 0, 0.35));
    -webkit-filter: drop-shadow(-11px 12px 5px rgba(0, 0, 0, 0.35));
    -webkit-transform: rotate(355deg);
    transform: rotate(355deg);
    transition: all 0.3s;
}
.to-do-card:hover:before{
    filter: drop-shadow(-12px 14px 4px rgba(0, 0, 0, 0.45));
    -webkit-transform: rotate(356deg);
    -moz-transform: rotate(356deg);
    -o-transform: rotate(356deg);
    -ms-transform: rotate(356deg);
    transform: rotate(356deg);
}
.upcoming-content:hover:before{
    /* filter: drop-shadow(27px 15px 4px rgba(0, 0, 0, 0.38)); */
    filter:blur(2.5px);
    border-color: transparent transparent rgba(0, 0, 0, 0.5) transparent;
    bottom: -2px;
    transform: rotate( 3.8deg );
}
a:hover{
    text-decoration: none;
}
.upcoming-date {
    font-weight: bold;
    color: var(--pink-default);
    padding: 2px 10px;
    background-color: var(--lighter-pink);
    height: auto;
    align-self: flex-start;
}
.upcoming-title{
    font-family: 'Futura Std Book', sans-serif;
}
.upcoming-select, .upcoming-select label{
    position:relative;
    height: 22px;
}
.upcoming-select{
    padding: 0 1rem !important;
}
.upcoming-select label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    margin: 4px 0;
    width: 18px;
    height: 18px;
    transition: transform 0.28s ease;
    border-radius: 3px;
    border: 1px solid var(--light-pink);
}
.upcoming-select label:after {
    content: '';
    display: block;
    width: 30px;
    height: 45px;
    transform: scale(0);
    transition: transform ease 0.25s;
    will-change: transform;
    position: absolute;
    bottom: 3px;
    left: 1px;
    background: url(../images/checker.png) 0 100% / 100% no-repeat;
}
.upcoming-select.active label::before {
    color: var(--pink-default);
}

.upcoming-select.active label::after {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.upcoming-select label {
    display: block;
    padding-left: 18px;
    font-weight: normal;
    cursor: pointer;
}
.upcoming-select.active label::before {
    outline: 0;
}
.upcoming-select input{
    display: none;
}
@keyframes lighter_1 {
    from {opacity: 1;}
    to {opacity: 0;}
}
@keyframes lighter_2 {
    from {opacity: 0;}
    to {opacity: 1;}
}
@keyframes top_lighters {
    from {transform: translateY(-200px);}
    to {transform: translateY(0);}
}
@keyframes to-do-second {
    from {transform: rotate(0);}
    to {transform: rotate(4deg);}
}
@keyframes to-do-first {
    from {transform: rotate(0);}
    to {transform: rotate(-8deg);}
}
@keyframes fade {
    from {opacity: 0;}
    to {opacity: 1;}
}
@keyframes fade-scale {
    from {opacity: 0;transform: scale(0);}
    to {opacity: 1;transform: scale(1);}
}
@keyframes fade-up {
    from {opacity: 0;transform: translateY(-250);}
    to {opacity: 1;transform: translateY(-250);}
}
@keyframes fade-down {
    from {opacity: 0;transform: translateY(250);}
    to {opacity: 1;transform: translateY(0);}
}
@keyframes fade-right {
    from {opacity: 0;transform: translateX(-250);}
    to {opacity: 1;transform: translateX(0);}
}
@keyframes fade-left {
    from {opacity: 0;transform: translateX(250);}
    to {opacity: 1;transform: translateX(0);}
}
.fade{
    animation-name: fade;
    animation-duration: 1s;
}
.fade-scale{
    animation-name: fade-scale;
    animation-duration: 1s;
}
.fade-up{
    animation-name: fade-up;
    animation-duration: 1s;
}
.fade-down{
    animation-name: fade-down;
    animation-duration: 1s;
}
.fade-right{
    animation-name: fade-right;
    animation-duration: 1s;
}
.fade-left{
    animation-name: fade-left;
    animation-duration: 1s;
}
.lighter-1 {
    animation-name: lighter_1;
    animation-duration: 1s;
    animation-iteration-count:infinite;
    animation-direction: alternate-reverse;
}
.lighter-2 {
    animation-name: lighter_2;
    animation-duration: 1s;
    animation-iteration-count:infinite;
    animation-direction: alternate-reverse;
}
.top-righters{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    animation-name: top_lighters;
    animation-duration: 4s;
    z-index: 2;
}
.to-do-second{
    position: relative;
    z-index: 1;
    margin-top: -3.1rem;
    transform: rotate(4deg);
    animation-name: to-do-second;
    animation-duration: 2s;
}
.to-do-second > div{
    padding-top: 5rem !important;
}
/*.to-do-second:hover, .to-do-first:hover{*/
/*    z-index: 3;*/
/*}*/
.to-do-first{
    position: relative;
    z-index: 2;
    transform: rotate(-8deg);
    animation-name: to-do-first;
    animation-duration: 2s;
    max-width:230px;
    margin-left: auto;
}
.to-do-first:hover .bg-default{
    background-color:var(--blue-default) ;
}
.to-do-body {
    background: url(../images/to-do-bg.png) 50% 50% / 80% auto no-repeat;
}
.top-left{
    top:5px;
    left:5px;
}
.top-right{
    right:5px;
    top:5px;
}
.left-bg-cards{
    top:10rem;
    left:-50px;
    width:23%;
}
.right-bg-cards{
    top:4rem;
    right:-30px;
    width:23%;
    z-index: 1;
}
.card-left-1{
    position: relative;
    z-index: 2;
}
.card-left-2{
    max-width:80%;
    margin-left:auto;
    margin-top:-50px;
    position: relative;
    z-index: 1;
}
.card-left-3{
    max-width:90%;
}
.card-left-4{
    max-width:90%;
}
.card-right-1{
    max-width:230px;
    margin-right:auto;
}
.card-right-2{
    max-width:80%;
    margin-left:auto;
    margin-top:-2rem;
}
.card-right-3{
    margin-top:-4rem;
    max-width:83%;
}
.content-container {
    box-shadow: 4px 6px 3px 3px #00000040;
    z-index: 2;
}
.footer-social{
    font-size:30px;
    color:white;
}
footer{
    position: relative;
    z-index: 2;
}
.modal-default{
    background:url("../images/popup-bg-1.jpg") 0 0 / cover no-repeat;
}
.modal-second{
    background:url("../images/second-modal-bg.jpg") 50% 50% / cover no-repeat;
}
.modal-dialog {
    max-width: 616px;
    width: 85%;
    margin:auto;
}
.modal-medium{
    max-width:500px !important;
}
.modal-second button[data-dismiss="modal"] {
    right: -3%;
    top: -3%;
    font-size: 25px;
}
button[data-dismiss="modal"] {
    position: absolute;
    right: 8%;
    top: 8%;
    z-index: 10;
    color:white;
    font-size: 50px;
    font-family: 'Futura Std light', sans-serif;
    opacity: 1;
}
.btn-default{
    width: 100%;
    max-width: 250px;
    background-color: var(--blue-default);
    color:white;
}
.btn-block{
    width:100% !important;
    max-width: 100%;
}
.btn-default:hover{
    background-color: var(--pink-default);
    color:white;
}
.text-small{
    font-size:14px;
}
.back_to_home{
    top:25px;
    left:40px;
    z-index: 10;
}
/* image gallery*/
.gal {
    column-count: 4;
    column-gap: 4px;
}
.gal img{ width: 100%; padding: 2px 0;}

/* multi-step form */
#ms_form fieldset {
    /*stacking fieldsets above each other*/
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
}
/*Hide all except first fieldset*/
#ms_form{
    position: relative;
}
#ms_form fieldset:not(:first-of-type) {
    display: none;
}
/*progressbar*/
#progressbar {
    margin-bottom: 30px;
    overflow: hidden;
    /*CSS counters to number the steps*/
    counter-reset: step;
}
#progressbar li {
    list-style-type: none;
    color: white;
    text-transform: uppercase;
    font-size: 9px;
    width: 33.33%;
    float: left;
    position: relative;
}
#progressbar li:before {
    content: counter(step);
    counter-increment: step;
    width: 20px;
    line-height: 20px;
    display: block;
    font-size: 10px;
    color: #333;
    background: white;
    border-radius: 3px;
    margin: 0 auto 5px auto;
}
/*progressbar connectors*/
#progressbar li:after {
    content: '';
    width: 100%;
    height: 2px;
    background: white;
    position: absolute;
    left: -50%;
    top: 9px;
    z-index: -1; /*put it behind the numbers*/
}
#progressbar li:first-child:after {
    /*connector not needed before the first step*/
    content: none;
}
/*marking active/completed steps green*/
/*The number of the step and the connector before it = green*/
#progressbar li.active:before,  #progressbar li.active:after{
    background: #27AE60;
    color: white;
}
#ms_form{
    min-height: 400px;
    width: 100%;
}
/* mobile-style */
@media (max-width:650px){
    body, html, p, div{
        font-size:14px;
    }
    .page-title{
        font-size:2.2rem;
    }
    .upcoming-date{
        font-size: 12px;
        position: absolute;
        top:0;
        left:0;
    }
    .upcoming-item{
        padding-top: 24px;
        padding-left:5px;
    }
    .upcoming-content{
      width:82%;
    }
    .left-bg-cards{
        top:3rem;
        width:40%;
    }
    .right-bg-cards{
        width:35%;
        top:1rem;
    }
    .card-right-3{
        margin-top:-2rem;
    }
    .card-left-2{
        margin-top:-15px;
    }
    button[data-dismiss="modal"] {
        right: 3%;
        top: 3%;
        font-size: 25px;
    }
    .back_to_home{
        top:15px;
        left:40px;
    }
    .content-container{
        padding-top:40px !important;
    }
    .gal {
        column-count: 2;

    }
    .modal-default {
        background: url(../images/popup-bg-1.jpg) 100% 0 / cover no-repeat;
    }
    .modal-dialog{
        margin-top: 55px;
    }
}
