body {
    margin: 0;
}
.single-page-container {
    display: grid;
    grid-template-columns: 3fr 2fr;
    grid-template-rows: 1fr;
    position: relative;
    height: 100%;
    margin: 0px;
}
@media (max-width: 991px) {
    .single-page-container {
        grid-template-columns: 1fr;
    }
}


.side-image {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh;
    width: 100%;
    position: sticky;
    z-index: 1;
    overflow: hidden;
    top: 0;
    background-size: cover;
    -webkit-background-position: center center;
    background-position: center center;
    background-repeat: no-repeat;
}

.wedding-image {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

@media (max-width: 991px) {
    .side-image {
        width: 100%;
        height: 90vw;
        position: relative;
    }
}

.wedding-info-container {
    width: 100%;
    height: 100vh;
    overflow-x:hidden;
    overflow-y:scroll;
    position: relative;
    background-color: #FFFFFF;
    background-repeat: no-repeat;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
    background-attachment: inherit;
}

@media (max-width: 991px){
    .wedding-info-container {
        width: 100%;
        position: relative;
        height: 100%;
        overflow:unset;
    }
}


.wedding-info {
    text-align: center;
    font-family: 'Libre Baskerville';
    color: #000000;
    font-weight: 400;
    text-transform: none;
    line-height: 1.6;
    letter-spacing: normal;
    font-size: 16px;   
    margin-left: 5%;
    margin-right: 5%;
}

.wedding-info h1{
    font-size: 40px;
    font-family: 'Cormorant Garamond';
    text-transform: uppercase;
    font-family: 'Cormorant Garamond';
    color: #000000;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.21;
    letter-spacing: normal;
    margin: 0;
    vertical-align: baseline;
    border: 0;
    padding: 0;
    box-sizing: border-box;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}


@media (max-width: 991px) {
    .wedding-info h1 {
        font-size: 90px;
    }
}

.wedding-info h2{
    font-size: 32px;
    font-family: 'Cormorant Garamond';
    text-transform: uppercase;
    font-family: 'Cormorant Garamond';
    color: #000000;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.21;
    letter-spacing: normal;
    margin: 0;
    vertical-align: baseline;
    border: 0;
    padding: 0;
    box-sizing: border-box;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

@media (max-width: 991px) {
    .wedding-info h2 {
        font-size: 85px;
    }
}


.wedding-info h4{
    margin-top:0px;
}


@media (max-width: 991px) {
    .wedding-info h4 {
        font-size: 40px;
    }
}

.wedding-info .wedding-header {
    display: flex;
    flex-direction: column;
    position:relative;
    min-height: 100vh;
    align-items: center;

    font-family: 'Cormorant Garamond';
    color: #000000;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.21;
    letter-spacing: normal;
    font-size: 3.111111111111111vw;
    vertical-align: baseline;
    border: 0;
    box-sizing: border-box;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

@media (max-width: 991px){
    .wedding-info .wedding-header {
        min-height: 1385px;
    }
}


.wedding-info .wedding-header .wedding-name {
    flex:1;
    display:flex;
    flex-direction: column ;
    align-items: center;
    justify-content: center;
    width:100%;
    max-width:200px;
}

@media (max-width: 991px){
    .wedding-info .wedding-header .wedding-name {
        font-size: 80px;
    }
}


.wedding-info .wedding-header .flower-bottom {
    width: 80%;
    z-index: 50;
    margin-right: 10%;
    margin-left: 10%;
    display: block;
    position: absolute;
    bottom: 5%;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}

.wedding-info .wedding-header .flower-top {
    display: block;
    position: absolute;
    width: 80%;
    z-index: 50;
    margin-right: 10%;
    margin-left: 10%;
    top: 5%;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}

.wedding-info .wedding-see-more {
    position: absolute;
    bottom: 10%;
    margin-left: auto;
    margin-right: auto;
    color: #000000;
    -webkit-animation: animation-intro 3s 4;
    animation: animation-intro 3s 4;
}

@media (max-width: 991px){
    .wedding-info .wedding-see-more {
        bottom: 20%;
    }
}

.wedding-info .wedding-date {
    font-family: 'Libre Baskerville';
    color: #000000;
    font-weight: 400;
    text-transform: none;
    line-height: 1.6;
    letter-spacing: normal;
    font-size: 16px;

    padding-top: 80px;
    width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
}

@media (max-width: 991px){
    .wedding-info .wedding-date {
        font-size: 40px;
    }
}

.wedding-info .wedding-rsvp {
    background-color: rgb(84, 110, 111);
    border-radius: 4px;
    border: none;
    padding: 16px;
    font-family: Libre Baskerville;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
    line-height: 16px;
   
    text-align: center;
    width: 80%;
    display: block;
    margin-left: auto;
    margin-right: auto;

    margin-top: 80px;
    text-decoration: none;
    font-style: normal;

    animation: pulse 2s infinite;
}

@media (max-width: 991px){
    .wedding-info .wedding-rsvp {
        font-size: 40px;
        padding:80px;
    }
}

.wedding-info .wedding-rsvp:hover {
    background-color: rgb(50.4, 66, 66.6);
    color: #FFFFFF;
    -webkit-text-decoration: none;
    text-decoration: none;
}

.wedding-info .section {
    margin-top: 120px; 
}

.wedding-info .section:before {
    -webkit-background-size: contain;
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-background-position: center;
    background-position: center;
    height: 53px;
    width: 108px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    background-image: url(https://images.zola.com/b9b515b7-7401-4266-ba12-74fa5f8128c7);
    content: ' ';
}

ul {
    padding-inline-start: 0px;
}

li {
    list-style-type: none;
}

@media (max-width: 991px){
    .wedding-info .section {
        margin-top: 220px; 
    }
    
    .wedding-info .section:before {
        height: 147px;
        width: 297px;
    }
}


@media (max-width: 991px) {
    .wedding-info .wedding-party-location {
        font-size: 32px;
    }
}

@media (max-width: 991px) {
    .wedding-info .map {
        width: 85vw;
        height: 30vh;
    }
}


@media (max-width: 991px){
    .wedding-info .wedding-stay {
        font-size: 40px;
        padding:80px;
    }
}




.wedding-info .credit{
    margin-top:20px;
    font-size: 12px;
}

@media (max-width: 991px) {
    .wedding-info .credit {
        font-size: 32px;
    }
}

@keyframes animation-intro {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}

	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	}
}

.wedding-rsvp {
    display: none !important ; 
}

#popup-box {
    position: fixed;
    background: #f3f3f3;
    width: 700px;
    height: 200px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    display:flex;
    align-items: center;
    justify-content: center;
    
    background-color: #3e504c;
    color: #b8d7d0;
}

@media (max-width: 991px) {
    #popup-box {
        width: 800px;
        height: 300px;
        font-size: 24px;
    }
}

#popup-box .content {
    text-align: center;
}
#popup-box a{
    color: white;
    font-weight: bold;
    font-size: 23px
}

@media (max-width: 991px) {
    #popup-box a{
        font-size: 33px
    }
}

#popup-box .flower-bottom {
    width: 30%;
    z-index: 50;
    margin-right: 10%;
    margin-left: 10%;
    display: block;
    position: absolute;
    bottom: 5%;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}

#popup-box .flower-top {
    display: block;
    position: absolute;
    width: 30%;
    z-index: 50;
    margin-right: 10%;
    margin-left: 10%;
    top: 5%;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}
