*{box-sizing:border-box}
body{margin:0;background:#030303;color:#fff;font-family:Montserrat,Arial,sans-serif}
a{color:inherit;text-decoration:none}

/* HERO */
.hero{height:610px;position:relative;overflow:hidden;background:linear-gradient(90deg,#030303 0%,#080604 27%,rgba(0,0,0,.15) 56%,#090503 100%),url('assets/hero-sparkle-couple.jpg') center right/cover no-repeat}
.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 73% 43%,transparent 0 24%,rgba(0,0,0,.52) 72%),linear-gradient(0deg,#030303 0%,transparent 27%)}

/* NAVBAR */
.topbar{height:110px;display:flex;align-items:flex-start;justify-content:space-between;padding:18px 60px;max-width:1400px;margin:0 auto;position:relative;z-index:10;width:100%}
.brand{text-align:center;color:#f2b450;width:230px}
.monogram{font-family:Cinzel,serif;font-size:66px;line-height:.8;letter-spacing:10px;}
.monogram .s{vertical-align:-12px;font-size:66px;margin-left:-25px;}
.monogram span{font-size:23px}
.monogram .star{font-size:15px;vertical-align:middle;}
.brand-name{font-family:Cinzel,serif;font-size:23px;margin-top:12px}
.brand-sub{font-family:Cinzel,serif;color:#fff;font-size:16px;letter-spacing:2px}
.brand-sub span{display:inline-block;width:48px;height:1px;background:#c99237;vertical-align:middle;margin:0 8px}
.nav{display:flex;gap:43px;list-style:none;margin:20px 0 0;padding:0;font-size:13px;font-weight:700}
.nav li a{text-decoration:none;color:#fff;padding-bottom:12px;transition:color .2s}
.nav li a:hover,.nav li a.active{color:#f3b653;border-bottom:2px solid #f3b653}
.menu-btn{display:none;border:1px solid #f2b450;background:transparent;color:#f2b450;padding:10px 15px;border-radius:4px;font-size:20px;cursor:pointer;margin-top:16px}
.book-top{margin-top:0;color:#f3b653;text-decoration:none;border:1px solid #bb842c;border-radius:3px;padding:17px 48px;font-weight:700;letter-spacing:1px;white-space:nowrap;margin-top:16px}
.book-top:hover{background:#f2b450;color:#000;transition:all .2s}

/* HERO CONTENT */
.hero-content{position:relative;z-index:2;margin-left:calc(50% - 700px);margin-top:70px;width:505px}
.eyebrow{color:#f3b653;letter-spacing:4px;font-size:18px;font-weight:600}
.hero h1{font-family:Cormorant Garamond,Cinzel,serif;font-size:78px;line-height:.86;margin:0;font-weight:600;letter-spacing:1px}
.hero h1 i{font-style:normal;color:#f3b653;font-size:42px}
.script-word{font-family:'Great Vibes','Parisienne',cursive!important;font-size:96px!important;font-weight:400!important;letter-spacing:1px;color:#e9aa51!important;text-transform:none;display:inline-block;margin-top:-4px}
.gold-swoosh{height:18px;border-bottom:2px solid #ce9134;border-radius:50%;width:390px;margin-top:-5px}
.subtext{line-height:1.55;font-size:15px}
.hero-buttons{margin-top:20px;display:flex;gap:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;height:38px;padding:0 32px;text-decoration:none;border-radius:5px;font-weight:800;font-size:13px}
.gold{background:#efae4e;color:#000}
.gold:hover{background:#f5c06a;transition:background .2s}
.dark{border:1px solid #ad7b2b;color:#fff}
.dark:hover{background:rgba(255,255,255,.08);transition:background .2s}
.serving{display:flex;align-items:center;gap:12px;margin-top:20px;font-size:22px}
.serving b{font-size:32px;color:#efae4e}
.serving small{font-size:9px;color:#efae4e}
.serving span{color:#bd8433;margin:0 10px}

/* SPLIT LAYOUT */
.split-section{display:block;padding:40px 60px 20px;max-width:1400px;margin:0 auto;width:100%}
.section-title{font-family:Cinzel,serif;color:#efbd68;letter-spacing:3px;text-align:center;font-size:17px;margin:0 0 12px}
.section-title span{display:inline-block;width:220px;border-top:1px solid #a26d23;vertical-align:middle}

/* SERVICE CARDS */
.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.cards article{border:1px solid #7e551e;border-radius:6px;overflow:hidden;text-align:center;background:#080808;min-height:250px}
.pic{height:126px;background-size:cover;background-position:center}
.p1,.g1{background-image:url('assets/sparkles.png')}
.p2,.g2{background-image:url('assets/clouds.png')}
.p3,.g3{background-image:url('assets/smoke.jpg')}
.p4,.g4{background-image:url('assets/cofetti.png')}
.p5,.g5{background-image:url('assets/effects.png')}
.p6{background-image:url('assets/co2.png')}
.p2{
    background-size:cover;
    background-position:center 40%;
}
.p6{
    background-position:center 70%;
}

article em{display:inline-flex;width:54px;height:54px;border:1px solid #bb842c;border-radius:50%;align-items:center;justify-content:center;margin-top:-27px;background:#16120c;color:#efb24d;font-style:normal;font-size:25px}
h3{font-size:14px}
article p{font-size:11px;line-height:1.45;padding:0 13px}

/* TRUST BADGES */
/* .trust{border:1px solid #7e551e;border-radius:7px;display:grid;grid-template-columns:repeat(5,1fr);margin-top:13px;text-align:center;padding:14px 0}
.trust div{border-right:1px solid #7e551e;padding:0 15px} */
.trust{
    border:1px solid #7e551e;
    border-radius:7px;
    overflow:hidden;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    margin-top:13px;
    text-align:center;
    padding:14px 0;
}
.trust div:last-child{border:0}
.trust div:first-letter{color:#efb24d;font-size:32px}
.trust b{display:block;color:#efb24d;font-size:13px}
.trust p{font-size:11px}
.trust div{
  border-right:1px solid #7e551e;
  border-bottom:1px solid #7e551e;
  padding:12px 15px;
}
.trust div:last-child{border-right:0}
.trust div:nth-child(3n){border-right:0}
.trust div:nth-last-child(-n+3){border-bottom:0}

/* GALLERY MOSAIC */
.mosaic{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:130px 105px;gap:8px}
.mosaic div{background-size:cover;background-position:center;border:1px solid #7e551e;border-radius:5px}
.mosaic .big{grid-row:1/3}
.gallery-btn{display:block;width:250px;margin:-12px auto 13px;padding:11px;border:1px solid #bd842b;text-align:center;color:#efbd68;text-decoration:none;background:#060606;border-radius:4px;font-weight:700;font-size:13px;position:relative}
.gallery-btn:hover{background:#1a1105;transition:background .2s}

/* BOTTOM CONTACT */
.bottom-contact{display:grid;grid-template-columns:.9fr 1fr 1.15fr;gap:18px;border-top:1px solid #533815;padding-top:15px}
.mini-brand{text-align:center}
.small{font-size:56px;color:#efb24d}
.mini-brand h2{font-family:Cinzel,serif;color:#efb24d;margin:0}
.mini-brand p{font-family:Cinzel,serif;margin:0}
.social{color:#efb24d;font-size:25px;margin-top:17px;word-spacing:18px}
.social a{color:#efb24d;text-decoration:none}
.social a:hover{color:#fff}
.contact-text{border-left:1px solid #604019;padding-left:20px}
.contact-text h2{font-family:Cinzel,serif;font-size:19px}
.contact-text p{font-size:13px}
.contact-text a{color:#fff;text-decoration:none}
.contact-text a:hover{color:#efb24d}

/* BOOKING FORM */
form{border:1px solid #8b5f20;border-radius:7px;padding:14px}
form h3{text-align:center;color:#efbd68;margin:0 0 12px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
input,select,textarea{width:100%;background:#050505;color:#ddd;border:1px solid #3f311c;border-radius:4px;padding:11px;font-size:12px;font-family:Montserrat,Arial,sans-serif}
input:focus,select:focus,textarea:focus{outline:1px solid #efb24d;border-color:#efb24d}
select{grid-column:1/3}
textarea{height:54px;margin-top:8px;grid-column:1/3}
button{width:100%;background:#efae4e;border:0;border-radius:4px;height:35px;margin-top:10px;font-weight:900;cursor:pointer;font-family:Montserrat,Arial,sans-serif}
button:hover{background:#f5c06a;transition:background .2s}

/* OCCASIONS */
.occasions{padding:0 60px 10px;max-width:1400px;margin:0 auto}
.occasion-list{border-top:1px solid #654417;border-bottom:1px solid #654417;display:grid;grid-template-columns:repeat(8,1fr);text-align:center;padding:20px 0;color:#efb24d}
.occasion-list div{font-size:35px}
.occasion-list b{display:block;color:#fff;font-size:12px;margin-top:10px}

/* FOOTER */
footer{text-align:center;color:#aaa;font-size:12px;padding:16px;border-top:1px solid #1a1005}
footer a{color:#efb24d}
footer a:hover{color:#fff}

/* MOBILE */
@media(max-width:900px){
  .hero{height:auto;padding-bottom:35px;background-position:58% center}
  .hero:after{background:linear-gradient(90deg,rgba(0,0,0,.93),rgba(0,0,0,.35)),linear-gradient(0deg,#030303 0%,transparent 24%)}
  .topbar{padding:15px;align-items:center;flex-wrap:wrap;height:auto}
  .brand{order:1}
  /*.menu-btn{display:block;order:2;margin-left:auto}*/
  .book-top{display:none}
  .nav{display:none;order:3;width:100%;flex-direction:column;gap:0;margin-top:10px;background:rgba(0,0,0,.96);border:1px solid #7e551e;border-radius:6px;padding:10px 0}
  .nav.open{display:flex}
  .nav li a{display:block;padding:12px 20px;border-bottom:1px solid #1a1005}
  .nav li:last-child a{border-bottom:0}
  .hero-content{margin:50px 25px 0;width:auto}
  .hero h1{font-size:48px}
  .script-word{font-size:78px!important}
  .split-section{grid-template-columns:1fr;padding:0 15px}
  .cards{grid-template-columns:repeat(2,1fr)}

.menu-btn{display:flex;align-items:center;justify-content:center;order:2;margin-left:auto;width:auto;padding:10px 20px;font-size:36px;line-height:1;}
  .brand-sub span{width:20px;}
  
  .mosaic{grid-template-columns:1fr 1fr}
  .mosaic .big{grid-row:auto}
  .bottom-contact{grid-template-columns:1fr}
  .section-title span{width:40px}
  .occasion-list{grid-template-columns:repeat(4,1fr)}

.trust{grid-template-columns:repeat(2,1fr)}
.trust div:nth-child(3n){border-right:1px solid #7e551e}
.trust div:nth-child(2n){border-right:0}
.trust div:nth-last-child(-n+3){border-bottom:1px solid #7e551e}
.trust div:nth-last-child(-n+2){border-bottom:0}
.trust div:last-child{border-bottom:0;border-right:0}
}

/*video section*/
/* VIDEO SPLIT SECTION */
/* VIDEO SECTION */
.video-section{
  position:relative;
  background:linear-gradient(135deg,#030303 0%,#0d0800 50%,#030303 100%);
  border-top:1px solid #2a1a08;
  border-bottom:1px solid #2a1a08;
  padding:70px 60px;
  overflow:hidden;
}
.video-section:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 70% 50%,rgba(239,178,77,.06) 0%,transparent 60%);
}
.video-split{
  display:grid;
  grid-template-columns:380px 1fr;
  gap:100px;
  align-items:center;
  max-width:1400px;
  margin:0 auto;
  position:relative;
  z-index:2;
}
.video-box{
  width:100%;
  max-width:340px;
  margin:0 auto;
  border:1px solid #7e551e;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 0 60px rgba(239,178,77,.15);
}
.video-box video{
  width:100%;
  display:block;
  aspect-ratio:9/16;
  object-fit:cover;
  background:#000;
}
.video-right{
  order:2;
  text-align:left;
  max-width:520px;
}
.video-right h1,
.video-right h2,
.video-right h3,
.video-right p{
  margin:0;
  padding:0;
}
.video-top{
  color:#efb24d;
  letter-spacing:4px;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  margin-bottom:10px;
  display:block;
}
.video-main{
  font-family:Cormorant Garamond,Cinzel,serif;
  font-size:72px;
  line-height:.9;
  font-weight:600;
  color:#fff;
  letter-spacing:1px;
  margin-bottom:6px;
}
.video-script-1{
  font-family:'Great Vibes','Parisienne',cursive!important;
  font-size:88px!important;
  font-weight:400!important;
  color:#e9aa51!important;
  display:block;
  margin-top:-20px;
  margin-bottom:16px;
}
.video-text{
  font-size:15px;
  line-height:1.6;
  color:#ddd;
  max-width:420px;
  margin-top:16px;
  margin-bottom:24px;
}
.video-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 32px;
  border-radius:4px;
  border:1px solid #bd842b;
  color:#fff;
  font-weight:800;
  font-size:13px;
  text-decoration:none;
  letter-spacing:.5px;
}
.video-btn:hover{
  background:#1a1105;
}

@media(max-width:900px){
  .video-section{padding:30px 20px}
  .video-split{
    grid-template-columns:160px 1fr;
    gap:20px;
    align-items:center;
    max-width:100%;
  }
  .video-left{order:1}
  .video-right{order:2;text-align:left}
  .video-box{max-width:160px!important;width:160px;margin:0}
  .video-main{font-size:28px}
  .video-script-1{font-size:36px!important}
  .video-text{font-size:12px;margin-top:8px;margin-bottom:12px}
  .video-btn{padding:8px 16px;font-size:11px}
  .video-top{font-size:10px;margin-bottom:4px}
 
}
/* MOBILE */


.testimonials{
  margin-top:28px;
  border-left:2px solid #7e551e;
  padding-left:18px;
  min-height:100px;
}
.testimonial{display:none}
.testimonial.active{display:block}
.quote{
  font-size:14px;
  line-height:1.7;
  color:#ddd;
  font-style:italic;
  margin:0 0 8px;
}
.author{
  font-size:12px;
  color:#efb24d;
  font-weight:700;
  letter-spacing:1px;
  margin:0;
}
.testimonial-dots{
  display:flex;
  gap:8px;
  margin-top:14px;
}
.dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#7e551e;
  cursor:pointer;
  transition:background .2s;
}
.dot.active{background:#efb24d}
