@font-face {
    font-family: "Silk Serif Regular";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Regular"),
    url("../fonts/SilkSerif-Regular.ttf") format("truetype");
}

@font-face {
    font-family: "Silk Serif Regular";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Regular"), url("../fonts/SilkSerif-Regular.woff") format("woff");
}

@font-face {
    font-family: "Silk Serif Light";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Light"),
        url("../fonts/SilkSerif-Light.woff") format("woff");
}

@font-face {
    font-family: "Silk Serif Light";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Light"), url("../fonts/SilkSerif-Light.woff") format("woff");
}

@font-face {
    font-family: "Silk Serif Extra Light";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Extra Light"),
    url("../fonts/SilkSerif-ExtraLight.woff") format("woff");
}

@font-face {
    font-family: "Silk Serif Extra Light";
    font-style: normal;
    font-weight: normal;
    src: local("Silk Serif Extra Light"), url("../fonts/SilkSerif-ExtraLight.woff") format("woff");
}

@font-face {
    font-family: "Quicksand Light";
    font-style: normal;
    font-weight: normal;
    src: local("RetroSignature"),
        url("../fonts/Quicksand-Light.otf") format("opentype");
}

html {
    max-width: 575px;
    margin: auto;
    position: relative;
    overflow-x: hidden;
    overflow-y: hidden;
}

body {
    overflow-x: hidden;
}

/* COMMON */
.header {
    font-family: "Silk Serif Regular", serif;
    color: #2f1010;
    font-size: 70px;
    line-height: 0.5;
}
.btn-red {
    background-color: #951f1f;
    color: #fff;
}
.btn-brown {
    background: rgb(161, 115, 86);
    background: linear-gradient(
        270deg,
        rgba(161, 115, 86, 1) 0%,
        rgba(205, 154, 125, 1) 100%
    );
    color: #fff;
}
.btn {
    border-radius: 0 35px 0 35px;
    padding: 20px 25px;
}
.btn-submit {
    padding: 10px 0;
    background-color: #000000;
    color: #ffffff;
    width: 100%;
    border-radius: 0;
    font-family: "Silk Serif Light", serif;
    font-size: 17px;
}

.text-italic {
    font-style: italic;
}

#main-content {
    opacity: 0;
    visibility: hidden;
    transition: all ease-in-out 1s;
}
#main-content.open {
    opacity: 1;
    visibility: visible;
}
#audio {
    opacity: 0;
    visibility: hidden;
}

/* OPENING */
#opening {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: all ease-in-out 1s;
    height: 100vh;
    z-index: 999;
}
#opening .overlay {
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 999;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    text-align: center;
    color: #fff;
    padding: 50px 50px 130px;
    overflow-y: scroll;
}
#opening .logo {
    width: 25px;
    margin-bottom: 10px;
}
#opening .top {
    font-size: 12px;
    line-height: 1.2;
    letter-spacing: 2px;
}
#opening .text-opening {
    font-family: "Silk Serif Light", serif;
    font-size: 15px;
    margin-top: 170px;
}
#opening .name {
    font-family: "Silk Serif Light", serif;
    font-size: 55px;
    letter-spacing: 2px;
}
#opening .name div:first-child {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
#opening .name span {
    font-size: 20px;
    line-height: 0.5;
}
#opening .name .text {
    font-family: "Silk Serif Light", serif;
    font-size: 11px;
    margin-bottom: 15px;
}
#opening .text {
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 1.5;
    font-family: "Quicksand Light", sans-serif;
    font-weight: 900;
}
#opening .and {
    font-size: 30px;
    line-height: 1;
}
#opening .bottom {
    font-family: "Quicksand Light", sans-serif;
    font-size: 12px;
    padding: 0 30px;
}
#opening .undangan {
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid;
    border-radius: 10px;
    margin: 5px 0;
    font-size: 17px;
    font-weight: 700;
}
#opening .btn-container {
    margin: 10px 0 !important;
    display: flex;
    justify-content: center;
}
#opening .btn-open {
    width: 40px;
    height: 40px;
    border-radius: 100%;
    margin: 5px;
    align-items: center;
    justify-content: center;
    display: flex;
    text-decoration: none;
    background-color: #fff;
    color: #000;
}
#opening.open {
    height: 0;
    visibility: hidden;
    opacity: 0;
}
#opening .flower {
    position: absolute;
    top: -70px;
    left: -65px;
    width: 200px;
}
#opening .stalk-1 {
    position: absolute;
    top: 40px;
    left: -25px;
    width: 70px;
}
#opening .leaf {
    position: absolute;
    bottom: -10px;
    right: 5px;
    width: 100px;
}
#opening .stalk-2 {
    position: absolute;
    bottom: -25px;
    right: -20px;
    width: 75px;
    transform: rotate(-20deg);
}

/* NAVBAR */
#navbar {
    width: 100%;
    max-width: 575px;
    margin: auto;
    display: flex;
    justify-content: space-around;
    background: #000000;
    align-items: center;
    position: fixed;
    bottom: 0;
    z-index: 997;
    opacity: 0;
    visibility: hidden;
    transition: all ease-in-out 1s;
}
#navbar.open {
    opacity: 1;
    visibility: visible;
}
#navbar .icon-container {
    height: 60px;
    width: 100%;
    justify-content: center;
    align-items: center;
    display: flex;
    transition: all ease-in-out 0.2s;
    position: relative;
}
#navbar .icon-container a {
    position: relative;
}
#navbar .icon-container.active {
    background-color: #bc2f12;
}
#navbar .icon {
    /* width: 25px; */
}

/*  COUNTDOWN */
#countdown {
    position: relative;
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: all ease-in-out 1s;
}

#countdown .countdown-container {
    font-family: "Silk Serif", serif;
    padding-top: 30px;
}

#countdown .countdown-container .text-countdown {
    font-size: 15px;
    color: #000000;
    display: flex;
    justify-content: center;
}

#countdown .countdown-container .time-countdown {
    color: #000000;
    display: flex;
    justify-content: center;
}

#countdown .box-count {
    margin: 0 10px;
}
#countdown .box-count .value {
    padding: 0 10px;
    font-size: 40px;
    font-family: "Silk Serif Regular", serif;
}
#countdown .box-count .text {
    text-align: center;
    font-size: 15px;
    font-family: "Silk Serif Light", serif;
}

/* PENGANTIN */
#pengantin {
    position: relative;
    overflow-x: clip;
    padding: 50px 0;
    background-color: #ffffff;
    color: #000000;
}
#pengantin .logo img {
    height: 150px;
    width: auto;
}
#pengantin .salam img {
    height: 40px;
    width: 82px;
}
#pengantin .header {
    font-family: "Silk Serif Light", serif;
    font-size: 26px;
}
#pengantin .text {
    font-family: "Silk Serif Extra Light", serif;
    font-size: 10px;
    padding-left: 20px;
    padding-right: 20px;
}
#pengantin .pengantin-inner {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding: 15px 0;
    margin: 0 10px;
    position: relative;
}
#pengantin .pengantin-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
#pengantin .pengantin-text {
    font-family: "Quicksand", sans-serif;
    font-size: 10px;
}
#pengantin .pengantin-name {
    font-family: "Silk Serif Light", serif;
    font-size: 26px;
    padding: 5px 5px;
    text-align: center;
    color: #2f2f2f;
    letter-spacing: 3px;
    line-height: 1.2;
}
#pengantin .pengantin-img {
    height: 250px;
    width: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-top: 30px;
    margin-bottom: 20px;
}
#pengantin .pengantin-img img {
    width: 90%;
    border-radius: 100%;
}
#pengantin .pengantin-desc {
    font-family: "Silk Serif Extra Light", serif;
    font-size: 10px;
    color: #000;
}

/* SLIDER */
#slider {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: all ease-in-out 1s;
    /*height: 100vh;*/
    background-color: #000000;
}
#slider .text-story {
    font-family: "Silk Serif Light", serif;
    font-size: 26px;
    text-align: center;
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    padding-top: 30px;
}
#slider .desc-story p {
    font-family: "Quicksand", serif;
    font-size: 10px;
    text-align: center;
    color: #FFFFFF;
    padding: 10px 30px;
}
#slider .own-carousel {
    perspective: 1000px;
}
/*#slider .owl-carousel .owl-item {*/
/*    transition: all 0.5s ease;*/
/*    transform: scale(0.8);*/
/*}*/
/*#slider .owl-carousel .owl-item.active {*/
/*    transition: all 0.5s ease;*/
/*    transform: scale(1);*/
/*}*/
/*#slider .owl-carousel .owl-item.active .img-slider-container img {*/
/*    width: 75%;*/
/*}*/

/* VIDEO GALLERY */
#video-gallery {
    margin-top: 30px;
}
#video-gallery iframe {
    aspect-ratio: 16 / 9;
    width: 100% !important;
}


/* PEMBUKA */
#pembuka {
    padding: 30px 20px;
}
#pembuka .text-container {
    color: #070707;
    font-family: "Silk Serif", serif;
}
#pembuka .paragraf {
    text-align: center;
    font-size: 10px;
    color: #070707;
    font-family: "Silk Serif Light", serif;
}


/* ACARA */
#acara {
    padding: 50px 25px 0;
    position: relative;
    overflow-x: clip;
}
#acara .card {
    color: #707070;
}
#acara .inner {
    padding: 0 30px 25px 30px;
}
#acara .inner .text-acara span {
    font-family: "Quicksand", serif;
    font-size: 10px;
}

#acara .date-inner,
#acara .time-inner {
    font-family: "Silk Serif Light", serif;
    font-size: 32px;
    color: #000000;
}
#acara .location {
    padding-top: 20px;
    margin-top: 15px;
    margin-bottom: 10px;
    font-size: 13px;
    color: #000000;
    font-family: "Silk Serif Light", serif;
}
#acara .btn-location {
    padding: 10px 0;
    background-color: #000000;
    color: #ffffff;
    width: 100%;
    border-radius: 0;
    font-family: "Silk Serif Light", serif;
    font-size: 17px;
}
#acara .paragraf {
    font-family: "Silk Serif Light", serif;
    font-size: 14px;
    text-align: center;
    color: #000000;
}
#acara .closing {
    font-family: "Silk Serif Light", serif;
    font-size: 26px;
    text-align: center;
    color: #000000;
}


/* ADDITIONAL */
#acara #additional {
    padding: 0 30px;
    position: relative;
    overflow-x: clip;
}
#acara #additional .text-additional span {
    font-family: "Quicksand", serif;
    font-size: 10px;
}
#acara #additional .box {
    background-color: #ffffff;
    /*max-width: 300px;*/
    width: 100%;
    margin: auto;
    color: #000000;
    /*text-align: center;*/
    /*padding: 30px 10px 10px;*/
    /*border-radius: 0 40px 0 40px;*/
}
/*#acara #additional .title {*/
/*    font-family: "Cormorant Garamond Regular";*/
/*    font-size: 28px;*/
/*    color: #2f1010;*/
/*    margin-bottom: 10px;*/
/*}*/
/*#acara #additional .custom-border {*/
/*    height: 2px;*/
/*    width: 100%;*/
/*    background-color: #2f1010;*/
/*    margin: 20px auto;*/
/*    padding: 0 10px;*/
/*    max-width: 80%;*/
/*}*/
/*#acara #additional .time {*/
/*    font-family: "Cormorant Garamond Light";*/
/*    font-size: 18px;*/
/*    color: #2f1010;*/
/*    display: block;*/
/*}*/
/*#acara #additional .time-inner {*/
/*    font-family: "Cormorant Garamond Light";*/
/*    font-size: 15px;*/
/*}*/
#additional .location-inner {
    font-family: "Silk Serif Light", serif;
    font-size: 24px;
}
/*#additional .btn-location {*/
/*    margin-top: 15px;*/
/*    width: 100%;*/
/*    background-color: #1d5d43;*/
/*    color: #fff;*/
/*    border-radius: 10px;*/
/*    padding: 10px;*/
/*}*/


/* DIGITAL ENVELOPE  */
#digital-envelope {
    margin-top: 3rem;
    padding: 20px 0 0;
    position: relative;
    overflow-x: clip;
}
#digital-envelope .box {
    border: 1px solid #2f2f2f;
    max-width: 300px;
    width: 100%;
    margin: auto;
    text-align: center;
    padding: 30px 10px;
    position: relative;
}
#digital-envelope .inner {
    padding: 0 30px 0 30px;
}
#digital-envelope .inner span {
    font-family: "Silk Serif Light", serif;
    font-size: 24px;
}
#digital-envelope .paragraf p {
    font-family: "Silk Serif Light", serif;
    font-size: 13px;
}
#modal-envelope .modal-body {
    background-color: #fff;
}
#modal-envelope .btn-copy {
    background-color: #000000;
    color: white;
    border-radius: 0;
    padding: 10px 10px;
}

/* KONFIRMASI */
#konfirmasi {
    padding: 0 30px 50px;
    font-family: "Silk Serif Light", serif;
}
#konfirmasi .header {
    padding: 70px 30px 50px;
    font-family: "Silk Serif Light", serif;
    font-size: 30px;
}
#konfirmasi .form-control {
    background-color: #d3d3d3;
}
#konfirmasi .form-control:focus {
    border-color: #d3d3d3;
    box-shadow: 0 0 0 0.2rem rgba(175, 135, 126, 0.5);
}
#konfirmasi .custom-control-label {
    color: #000000;
}
#konfirmasi .custom-control-label::before {
    border: 2px solid #000000;
    width: 1.25rem;
    height: 1.25rem;
    background-color: #d3d3d3;
}
#konfirmasi .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #000000;
    border-color: #000000;
}
#konfirmasi .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(175, 135, 126, 0.5);
}
#konfirmasi .custom-control-label::after {
    top: 0.35rem;
    left: -1.37rem;
}
#konfirmasi .btn-submit {
    width: 50%;
    background-color: #000000;
    color: #fff;
    border-radius: 0;
    padding: 10px 10px;
    font-size: 15px;
}

/* COMMENT */
#comment {
    padding: 30px 0px;
    color: #2f1010;
    font-family: "Silk Serif Light", serif;
}
#comment .box {
    padding: 20px 30px;
}
#comment .box:nth-child(2n + 1) {
    text-align: left;
}
#comment .box:nth-child(2n) {
    text-align: right;
}
#comment .box:nth-child(2n + 1) .text {
    border-left: 2px solid #2f1010;
    padding: 5px 5px 5px 20px;
}
#comment .box:nth-child(2n) .text {
    border-right: 2px solid #2f1010;
    padding: 5px 20px 5px 5px;
}
#comment .title {
    font-size: 20px;
}
#comment .text {
    margin: 10px 0;
}

/* FOOTER */
#footer {
    padding-bottom: 100px;
    color: #000000;
}
#footer .footer-social {
    align-items: center;
    justify-content: center;
    display: flex;
}
#footer .footer-social a {
    color: #000000;
    float: left;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    margin: 5px;
    align-items: center;
    justify-content: center;
    display: flex;
    text-decoration: none;
}
#footer .footer-social a i {
    font-size: 25px;
}
#footer .copyright a {
    color: #000000;
}
