/*
 * Copyright © Graybird. All rights reserved.
 * Website undangan ini dilindungi hukum. Jangan menyalin atau mendistribusikan ulang tanpa izin.
 */
:root{--font-heading:'Playfair Display',serif;--font-body:'Lora',serif;--color-gold:#c0a26d;--color-dark:#3a3a3a;--color-light:#fdfaf5;--color-white:#fff;--background-image:url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=1200&q=80')}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-dark);background-color:var(--color-light);line-height:1.8;font-size:16px;overflow:hidden}.container{max-width:700px;margin:0 auto;padding:0 15px;overflow:hidden}section{padding:80px 0;text-align:center;position:relative}.with-bg{background-image:var(--background-image);background-size:cover;background-position:center;background-attachment:fixed}.overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(255,255,255,.3);z-index:1}.section-content{position:relative;z-index:2}h1,h2,h3,.font-heading{font-family:var(--font-heading);color:var(--color-gold);font-weight:700}h1{font-size:3.5rem;margin-bottom:20px}h2{font-size:2.5rem;margin-bottom:20px}h3{font-size:1.8rem;margin-bottom:15px}p{margin-bottom:15px}.floral-frame{width:150px;height:auto;margin-bottom:30px}.separator{width:80px;height:2px;background-color:var(--color-gold);margin:30px auto;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c0a26d,#f3e5ab,#c0a26d);background-size:200% auto;color:#fff;padding:12px 35px;border-radius:50px;text-decoration:none;font-family:var(--font-body);font-weight:600;letter-spacing:1px;transition:all 0.5s ease;border:none;margin-top:20px;cursor:pointer;box-shadow:0 8px 20px rgba(192,162,109,0.4)}.btn:hover{background-position:right center;color:#fff;transform:translateY(-3px);box-shadow:0 12px 25px rgba(192,162,109,0.6)}.btn i{margin-right:8px}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}#cover{position:fixed;top:0;left:0;width:100%;height:100vh;background-image:url('https://images.unsplash.com/photo-1469371670807-013ccf25f16a?auto=format&fit=crop&w=1200&q=80');background-size:cover;background-position:center;display:flex;justify-content:center;align-items:center;z-index:1000;transition:opacity 1s ease-out,visibility 1s;color:var(--color-dark);text-shadow:1px 1px 2px rgba(255,255,255,.8)}#cover.hidden{opacity:0;visibility:hidden}.cover-content{text-align:center;padding:20px;background:rgba(255,255,255,.7);border-radius:15px;box-shadow:0 10px 25px rgba(0,0,0,0.1)}.cover-content p{font-size:1.1rem;margin:5px 0}.cover-content h1{font-size:4rem;color:var(--color-gold)}.cover-content .btn{background-color:var(--color-gold);color:var(--color-white);border-color:var(--color-gold)}.cover-content .btn:hover{background-color:transparent;color:var(--color-gold)}.couple-container{display:flex;flex-direction:column;gap:50px}.couple-profile img{width:200px;height:200px;object-fit:cover;border-radius:50%;border:5px solid var(--color-gold);margin-bottom:20px}.couple-profile p{max-width:350px;margin-left:auto;margin-right:auto}.event-grid{display:flex;flex-direction:column;gap:40px;margin-top:40px}.event-card{background-color:rgba(255,255,255,.9);padding:30px;border-radius:15px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.event-card i{font-size:2.5rem;color:var(--color-gold);margin-bottom:15px}.event-card h3{color:var(--color-dark)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:40px}.gallery-grid img{width:100%;height:300px;object-fit:cover;border-radius:10px;transition:transform .3s ease}.gallery-grid img:hover{transform:scale(1.05)}.gift-card{background-color:var(--color-white);padding:20px;border-radius:10px;margin:10px auto;max-width:400px;box-shadow:0 4px 15px rgba(0,0,0,.05)}.gift-card p{margin:5px 0;word-break:break-word}#music-control{position:fixed;bottom:20px;right:20px;width:50px;height:50px;background-color:var(--color-gold);color:var(--color-white);border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:999;box-shadow:0 2px 10px rgba(0,0,0,.2);font-size:20px}#music-control.playing .fa-compact-disc{animation:spin 3s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@media (min-width:768px){h1{font-size:4.5rem}.couple-container{flex-direction:row;justify-content:center;align-items:flex-start;gap:80px}.event-grid{flex-direction:row}.event-card{flex:1}.gallery-grid{grid-template-columns:repeat(3,1fr)}}/* Butterfly Animation */
.butterfly {
  position: fixed;
  z-index: 1200;
  width: 48px;
  height: 48px;
  pointer-events: none;
  animation: fly-butterfly 12s linear infinite;
}
.butterfly svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 2px 8px rgba(200,150,255,0.15));
}
.butterfly.b1 { top: 10%; left: 5%; animation-delay: 0s; }
.butterfly.b2 { top: 60%; left: 90%; animation-delay: 3s; }
.butterfly.b3 { top: 80%; left: 10%; animation-delay: 6s; }
.butterfly.b4 { top: 30%; left: 80%; animation-delay: 9s; }
@keyframes fly-butterfly {
  0%   { transform: translateY(0) scale(1) rotate(-10deg); opacity: 1; }
  10%  { transform: translateY(-30px) scale(1.1) rotate(10deg); }
  20%  { transform: translateY(10px) scale(0.95) rotate(-5deg); }
  30%  { transform: translateY(-20px) scale(1.05) rotate(15deg); }
  40%  { transform: translateY(20px) scale(1) rotate(-10deg); }
  50%  { transform: translateY(-10px) scale(1.1) rotate(10deg); }
  60%  { transform: translateY(30px) scale(0.9) rotate(-5deg); }
  70%  { transform: translateY(-20px) scale(1.05) rotate(15deg); }
  80%  { transform: translateY(10px) scale(1) rotate(-10deg); }
  90%  { transform: translateY(-30px) scale(1.1) rotate(10deg); }
  100% { transform: translateY(0) scale(1) rotate(-10deg); opacity: 1; }
}



