.elementor-41246 .elementor-element.elementor-element-bce73b3{--display:flex;--min-height:100vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:none;--border-style:none;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-41246 .elementor-element.elementor-element-77b53af{text-align:center;}.elementor-41246 .elementor-element.elementor-element-77b53af .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:15px;font-weight:400;text-transform:uppercase;color:#CFCFCF;}.elementor-41246 .elementor-element.elementor-element-1adce48{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 0px;--row-gap:0px;--column-gap:0px;--grid-auto-flow:row;--justify-items:center;--align-items:center;}.elementor-41246 .elementor-element.elementor-element-599f2fc{text-align:center;}.elementor-41246 .elementor-element.elementor-element-599f2fc .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:60px;font-weight:bold;color:#FFFFFF;}.elementor-41246 .elementor-element.elementor-element-c495b7d{text-align:center;}.elementor-41246 .elementor-element.elementor-element-c495b7d .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:80px;font-weight:500;color:#FFFFFF1A;}.elementor-41246 .elementor-element.elementor-element-1c5c9fd{text-align:center;}.elementor-41246 .elementor-element.elementor-element-1c5c9fd .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:60px;font-weight:bold;color:#FFFFFF;}.elementor-41246 .elementor-element.elementor-element-4a62f63{text-align:center;}.elementor-41246 .elementor-element.elementor-element-4a62f63 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;color:#CFCFCF;}#elementor-popup-modal-41246 .dialog-widget-content{animation-duration:0.5s;background-color:#111111E8;border-style:none;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-41246{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-41246 .dialog-message{width:100vw;height:100vh;align-items:center;}@media(max-width:1024px){.elementor-41246 .elementor-element.elementor-element-1adce48{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-41246 .elementor-element.elementor-element-bce73b3{--width:450px;}.elementor-41246 .elementor-element.elementor-element-1adce48{--width:25%;}}@media(max-width:767px){.elementor-41246 .elementor-element.elementor-element-77b53af .elementor-heading-title{letter-spacing:0.05em;}.elementor-41246 .elementor-element.elementor-element-1adce48{--width:30%;--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-41246 .elementor-element.elementor-element-4a62f63 .elementor-heading-title{font-size:15px;letter-spacing:1.5px;}}/* Start custom CSS *//* 1. Animasi Intro: The Wedding Of (Dipercepat) */
.anim-intro {
    opacity: 0;
    /* Durasi total dipercepat menjadi 2 detik */
    animation: cinematicIntro 2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@keyframes cinematicIntro {
    0% { opacity: 0; transform: scale(0.95); filter: blur(8px); }
    15% { opacity: 1; transform: scale(1); filter: blur(0); } /* Cepat muncul */
    60% { opacity: 1; transform: scale(1.03); filter: blur(0); } /* Bertahan lebih singkat */
    100% { opacity: 0; transform: scale(1.08); filter: blur(12px); visibility: hidden; } 
}

/* 2. Animasi Inisial Terpisah (R & K) */
.anim-monogram-1 {
    opacity: 0;
    /* Mulai muncul di detik 1.8 (saat intro mulai memudar) */
    animation: cinematicMonogram 1.5s cubic-bezier(0.25, 1, 0.5, 1) 1.8s forwards;
}

.anim-monogram-2 {
    opacity: 0;
    /* Mulai muncul di detik 2.0 (selisih 0.2 detik dari inisial pertama) */
    animation: cinematicMonogram 1.5s cubic-bezier(0.25, 1, 0.5, 1) 2.0s forwards;
}

@keyframes cinematicMonogram {
    0% { opacity: 0; transform: scale(0.9); filter: blur(10px); }
    100% { opacity: 1; transform: scale(1); filter: blur(0); }
}

/* 3. Garis Preloader */
.preloader-line {
    width: 120px; 
    height: 1px;
    background-color: #ffffff;
    margin: auto; 
    opacity: 0;
    transform: scaleX(0);
    transform-origin: center;
    /* Muncul di detik 1.9, berada di antara kedua inisial */
    animation: lineExpand 1.5s cubic-bezier(0.85, 0, 0.15, 1) 1.5s forwards;
}

@keyframes lineExpand {
    0% { transform: scaleX(0); opacity: 0; filter: blur(2px); }
    20% { opacity: 1; }
    100% { transform: scaleX(1); opacity: 1; filter: blur(0); }
}

/* 4. Animasi Nama Pasangan */
.anim-names {
    opacity: 0;
    /* Mulai muncul di detik 2.6, setelah inisial dan garis mulai terbentuk */
    animation: cinematicNames 1.5s cubic-bezier(0.25, 1, 0.5, 1) 2.6s forwards;
}

@keyframes cinematicNames {
    0% { opacity: 0; transform: translateY(15px); filter: blur(8px); }
    100% { opacity: 1; transform: translateY(0); filter: blur(0); }
}/* End custom CSS */