*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#130d0c;color:#fff;font-family:'Montserrat',sans-serif}.topbar{position:fixed;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px 7%;background:linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,0));backdrop-filter:blur(5px)}.logo{width:54px;height:54px;border:1px solid #d6a84f;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#e6c16a;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:22px;box-shadow:0 0 20px rgba(214,168,79,.22)}.menu{display:flex;gap:26px}.menu a{color:#fff;text-decoration:none;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.9px}.menu a:hover{color:#f09ab1}.hero{min-height:100vh;position:relative;display:flex;align-items:center;padding:130px 7% 70px;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url('assets/foto-principal.jpg');background-size:cover;background-position:center top;filter:saturate(1.03)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,7,.94) 0%,rgba(12,8,7,.68) 38%,rgba(12,8,7,.16) 68%,rgba(12,8,7,.45) 100%)}.hero-content{position:relative;z-index:2;max-width:580px;text-align:center}.crown{font-size:58px;color:#f0a7bb;text-shadow:0 0 20px rgba(240,167,187,.35)}h1{font-family:'Great Vibes',cursive;font-size:96px;font-weight:400;color:#f2a7bb;margin:0;text-shadow:0 4px 20px rgba(0,0,0,.55)}h2{font-family:'Cormorant Garamond',serif;font-size:52px;letter-spacing:8px;text-transform:uppercase;color:#d7ad5d;margin:0 0 25px}.date{font-size:18px}.date span{color:#d7ad5d;margin:0 12px}.phrase{font-family:'Great Vibes',cursive;font-size:32px;color:#f8e6e9}.primary-btn,.outline-btn{display:inline-block;border-radius:999px;text-decoration:none;text-transform:uppercase;font-weight:700;letter-spacing:.8px}.primary-btn{margin:18px 0 30px;padding:17px 38px;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:#fff;box-shadow:0 12px 30px rgba(226,94,131,.25)}.countdown{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(214,168,79,.38);border-radius:12px;overflow:hidden;background:rgba(23,14,12,.58);backdrop-filter:blur(8px)}.countdown div{padding:20px 14px;border-right:1px solid rgba(214,168,79,.22)}.countdown div:last-child{border-right:0}.countdown strong{display:block;font-family:'Cormorant Garamond',serif;font-size:42px;color:#f186a3}.countdown span{text-transform:uppercase;font-size:12px}.section,.cards{max-width:1180px;margin:0 auto}.section{padding:70px 7%;text-align:center}.intro p{max-width:780px;margin:0 auto;line-height:1.9}.section-title{display:flex;gap:16px;justify-content:center;align-items:center;margin-bottom:32px}.section-title span,.icon{color:#f09ab1;font-size:34px}.section-title h3,.card h3{font-family:'Cormorant Garamond',serif;color:#e7bd68;text-transform:uppercase;letter-spacing:2px;font-size:30px;margin:0}.gallery{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0))}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.photo-grid img{height:235px;border-radius:12px;border:1px solid rgba(214,168,79,.55);object-fit:cover;object-position:center;width:100%;background:rgba(255,255,255,.06);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}.photo-grid img:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 18px 38px rgba(0,0,0,.38)}.note{opacity:.75;font-size:13px}.lightbox{display:none;position:fixed;z-index:999;inset:0;background:rgba(0,0,0,.88);align-items:center;justify-content:center;padding:25px}.lightbox.active{display:flex}.lightbox img{max-width:94vw;max-height:88vh;border-radius:14px;border:1px solid rgba(214,168,79,.55);box-shadow:0 20px 70px rgba(0,0,0,.65);object-fit:contain}.lightbox-close{position:absolute;top:22px;right:30px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(214,168,79,.7);background:rgba(0,0,0,.35);color:white;font-size:32px;line-height:1;cursor:pointer}.cards{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:18px;padding:30px 7% 20px}.card{border:1px solid rgba(214,168,79,.52);border-radius:14px;padding:34px 28px;text-align:center;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 20px 50px rgba(0,0,0,.25)}.card h4{font-family:'Cormorant Garamond',serif;color:#f09ab1;font-size:32px;text-transform:uppercase;margin:12px 0}.card p{line-height:1.7}.card iframe{width:100%;height:210px;border:0;border-radius:10px;margin:12px 0}.outline-btn{padding:13px 27px;border:1px solid #d7ad5d;color:#fff}.rsvp,.music-suggestion{border:1px solid rgba(214,168,79,.52);border-radius:16px;background:rgba(255,255,255,.04);margin-top:30px;margin-bottom:40px}.rsvp form,.music-suggestion form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rsvp textarea,.music-suggestion textarea{grid-column:span 2;min-height:110px}.rsvp input,.rsvp textarea,.music-suggestion input,.music-suggestion textarea{background:rgba(0,0,0,.25);border:1px solid rgba(214,168,79,.38);border-radius:8px;color:#fff;padding:16px;font:inherit}.rsvp button,.music-suggestion button{grid-column:span 2;border:0;border-radius:8px;padding:18px;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:#fff;text-transform:uppercase;font-weight:800;letter-spacing:1px;cursor:pointer}.music-suggestion button{background:linear-gradient(135deg,#1DB954,#36d475)}.music-intro{max-width:760px;margin:0 auto 26px;line-height:1.8}.spotify-btn{display:inline-block;margin-top:22px;padding:13px 28px;border-radius:999px;background:#1DB954;color:#fff;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.8px}.music-btn{position:fixed;right:24px;bottom:24px;z-index:30;width:74px;height:74px;border:0;border-radius:50%;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.45);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center}#musicIcon{font-size:28px;line-height:1}#musicText{font-size:10px;font-weight:700;text-transform:uppercase}footer{text-align:center;padding:55px 20px;border-top:1px solid rgba(214,168,79,.18);color:#e8c06d}footer p{font-family:'Great Vibes',cursive;color:#f4ced7;font-size:34px;margin:0 0 12px}@media(max-width:900px){.menu{display:none}.hero{padding:110px 22px 55px;align-items:flex-end}.hero-bg{background-position:center top}.hero-overlay{background:linear-gradient(180deg,rgba(8,6,6,.25),rgba(8,6,6,.95) 72%)}.hero-content{max-width:100%;width:100%}h1{font-size:64px}h2{font-size:34px;letter-spacing:5px}.countdown strong{font-size:30px}.cards,.rsvp form,.music-suggestion form{grid-template-columns:1fr}.rsvp textarea,.rsvp button,.music-suggestion textarea,.music-suggestion button{grid-column:span 1}.section{padding:55px 22px}.music-btn{width:64px;height:64px;right:14px;bottom:14px}}
.important-info,.gifts{
  border:1px solid rgba(214,168,79,.52);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  margin-top:30px;
  margin-bottom:40px;
}
.info-grid,.gift-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.info-grid article,.gift-grid article{
  border:1px solid rgba(214,168,79,.35);
  border-radius:14px;
  padding:24px 20px;
  background:rgba(0,0,0,.18);
}
.info-grid strong,.gift-grid h4{
  display:block;
  color:#f09ab1;
  font-family:'Cormorant Garamond',serif;
  text-transform:uppercase;
  letter-spacing:1.5px;
  font-size:22px;
  margin-bottom:10px;
}
.gift-grid{
  grid-template-columns:1fr 1fr;
  max-width:850px;
  margin:28px auto 0;
}
.gift-text{
  max-width:760px;
  margin:0 auto;
  line-height:1.8;
}
@media(max-width:900px){
  .info-grid,.gift-grid{grid-template-columns:1fr}
}

.timeline-section{border-top:1px solid rgba(214,168,79,.18);border-bottom:1px solid rgba(214,168,79,.18)}
.timeline-intro{max-width:760px;margin:0 auto 34px;line-height:1.8;color:#f4ced7}
.timeline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:22px}
.timeline-card{position:relative;padding:14px;border:1px solid rgba(214,168,79,.42);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 18px 40px rgba(0,0,0,.22)}
.timeline-card .year{font-family:'Cormorant Garamond',serif;color:#e7bd68;font-size:30px;font-weight:700;margin-bottom:10px}
.timeline-card img{width:100%;height:220px;object-fit:cover;border-radius:12px;border:1px solid rgba(214,168,79,.35);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.timeline-card img:hover{transform:scale(1.03);box-shadow:0 15px 35px rgba(0,0,0,.38)}
.photos-hero{min-height:58vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:130px 7% 70px;background:linear-gradient(rgba(15,9,8,.72),rgba(15,9,8,.92)),url('assets/foto-principal.jpg') center top/cover no-repeat}
.photos-hero h1{font-family:'Great Vibes',cursive;color:#f2a7bb;font-size:92px;margin:0}
.photos-hero p{font-family:'Cormorant Garamond',serif;color:#e7bd68;text-transform:uppercase;letter-spacing:3px;font-size:22px}
.gallery-page{max-width:1280px}
.pix-box{max-width:560px;margin:32px auto 0;border:1px solid rgba(214,168,79,.45);border-radius:16px;padding:30px;background:rgba(0,0,0,.22)}
.pix-box h4{color:#f09ab1;font-family:'Cormorant Garamond',serif;text-transform:uppercase;letter-spacing:2px;font-size:26px;margin:0 0 16px}
.pix-key{padding:16px;border-radius:10px;background:rgba(255,255,255,.08);border:1px dashed rgba(214,168,79,.55);color:#fff;word-break:break-all}
.pix-box button{margin-top:14px;border:0;border-radius:999px;padding:14px 28px;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:white;font-weight:800;text-transform:uppercase;cursor:pointer}
.pix-box small{display:block;margin-top:12px;color:#e7bd68}
@media(max-width:900px){.photos-hero h1{font-size:58px}.timeline-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.timeline-card img{height:190px}}

/* Ajuste solicitado: linha do tempo com fotos pequenas e sem clique */
.timeline-grid{
  grid-template-columns:repeat(auto-fit,minmax(105px,1fr));
  gap:14px;
}
.timeline-card{
  padding:9px;
  border-radius:14px;
}
.timeline-card .year{
  font-size:22px;
  margin-bottom:7px;
}
.timeline-card img{
  height:125px !important;
  cursor:default !important;
  pointer-events:none;
  border-radius:10px;
}
.timeline-card img:hover{
  transform:none !important;
  box-shadow:none !important;
}
@media(max-width:900px){
  .timeline-grid{
    grid-template-columns:repeat(3,1fr);
    gap:10px;
  }
  .timeline-card img{
    height:105px !important;
  }
  .timeline-card .year{
    font-size:20px;
  }
}

/* Ajuste solicitado: linha do tempo em uma única linha com rolagem horizontal */
.timeline-grid{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:14px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:10px 4px 22px !important;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}
.timeline-card{
  min-width:120px !important;
  max-width:120px !important;
  flex:0 0 120px !important;
  scroll-snap-align:start;
}
.timeline-card img{
  height:120px !important;
}
.timeline-grid::-webkit-scrollbar{
  height:10px;
}
.timeline-grid::-webkit-scrollbar-track{
  background:rgba(255,255,255,.08);
  border-radius:999px;
}
.timeline-grid::-webkit-scrollbar-thumb{
  background:linear-gradient(135deg,#e25e83,#f4a1b6);
  border-radius:999px;
}
.timeline-section::after{
  content:'Arraste para o lado para ver todos os anos';
  display:block;
  margin-top:8px;
  color:#e7bd68;
  font-size:13px;
  opacity:.85;
}
@media(max-width:900px){
  .timeline-grid{
    grid-template-columns:none !important;
  }
  .timeline-card{
    min-width:108px !important;
    max-width:108px !important;
    flex-basis:108px !important;
  }
  .timeline-card img{
    height:105px !important;
  }
}

/* Página principal - convite de entrada */
.invite-body{
  min-height:100vh;
  overflow-x:hidden;
}
.invite-page{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px 22px;
  background:
    linear-gradient(135deg,rgba(12,8,7,.82),rgba(12,8,7,.62)),
    url('assets/foto-principal.jpg') center top/cover no-repeat;
}
.invite-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at center,rgba(242,167,187,.18),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.62));
}
.invite-card{
  position:relative;
  z-index:2;
  width:min(720px,94vw);
  text-align:center;
  padding:58px 42px;
  border:1px solid rgba(214,168,79,.55);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(20,12,11,.72),rgba(20,12,11,.48));
  backdrop-filter:blur(10px);
  box-shadow:0 30px 90px rgba(0,0,0,.55);
}
.invite-logo{
  width:72px;
  height:72px;
  border:1px solid #d6a84f;
  border-radius:50%;
  margin:0 auto 24px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#e6c16a;
  font-family:'Cormorant Garamond',serif;
  font-weight:700;
  font-size:30px;
  box-shadow:0 0 28px rgba(214,168,79,.28);
}
.invite-small{
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:13px;
  color:#e7bd68;
  margin:0 0 10px;
}
.invite-card h1{
  font-family:'Great Vibes',cursive;
  font-size:98px;
  color:#f2a7bb;
  margin:0;
  text-shadow:0 5px 20px rgba(0,0,0,.55);
}
.invite-card h2{
  font-family:'Cormorant Garamond',serif;
  color:#e7bd68;
  font-size:46px;
  text-transform:uppercase;
  letter-spacing:8px;
  margin:0;
}
.invite-line{
  width:210px;
  height:1px;
  background:linear-gradient(90deg,transparent,#d7ad5d,transparent);
  margin:28px auto;
}
.invite-date{
  font-size:18px;
  color:#fff;
  font-weight:600;
}
.invite-text{
  max-width:520px;
  margin:18px auto 30px;
  color:#f8e6e9;
  line-height:1.8;
}
.enter-btn{
  display:inline-block;
  padding:17px 42px;
  border-radius:999px;
  background:linear-gradient(135deg,#e25e83,#f4a1b6);
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:1px;
  box-shadow:0 16px 40px rgba(226,94,131,.28);
}
.invite-footer{
  margin:28px 0 0;
  font-family:'Great Vibes',cursive;
  color:#f4ced7;
  font-size:30px;
}
@media(max-width:700px){
  .invite-card{padding:42px 24px}
  .invite-card h1{font-size:64px}
  .invite-card h2{font-size:30px;letter-spacing:5px}
  .invite-footer{font-size:25px}
}






/* Página de mensagens dos convidados */
.messages-hero{
  min-height:58vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:130px 7% 70px;
  background:linear-gradient(rgba(15,9,8,.72),rgba(15,9,8,.92)),url('assets/foto-principal.jpg') center top/cover no-repeat;
}
.messages-hero h1{
  font-family:'Great Vibes',cursive;
  color:#f2a7bb;
  font-size:86px;
  margin:0;
}
.messages-hero p{
  max-width:760px;
  font-family:'Cormorant Garamond',serif;
  color:#e7bd68;
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:20px;
}
.message-form-section{
  max-width:880px;
  border:1px solid rgba(214,168,79,.52);
  border-radius:16px;
  background:rgba(255,255,255,.04);
  margin-top:45px;
}
.message-form{
  display:grid;
  gap:18px;
}
.message-form input[type="text"], .message-form textarea{
  background:rgba(0,0,0,.25);
  border:1px solid rgba(214,168,79,.38);
  border-radius:8px;
  color:#fff;
  padding:16px;
  font:inherit;
}
.message-form textarea{min-height:140px}
.file-label{
  display:flex;
  flex-direction:column;
  gap:10px;
  border:1px dashed rgba(214,168,79,.55);
  border-radius:12px;
  padding:18px;
  color:#f4ced7;
  background:rgba(0,0,0,.18);
}
.file-label input{color:#fff}
.message-form button{
  border:0;
  border-radius:8px;
  padding:18px;
  background:linear-gradient(135deg,#e25e83,#f4a1b6);
  color:#fff;
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:1px;
  cursor:pointer;
}
.alert{
  padding:14px 18px;
  border-radius:10px;
  margin-bottom:20px;
  font-weight:700;
}
.alert.error{background:rgba(226,94,94,.18);border:1px solid rgba(226,94,94,.55)}
.alert.success{background:rgba(29,185,84,.18);border:1px solid rgba(29,185,84,.55)}
.messages-wall{max-width:1280px}
.messages-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:22px;
}
.message-card{
  text-align:left;
  border:1px solid rgba(214,168,79,.42);
  border-radius:16px;
  padding:22px;
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
  box-shadow:0 18px 40px rgba(0,0,0,.22);
}
.message-card img{
  width:100%;
  max-height:260px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(214,168,79,.35);
  margin-bottom:16px;
}
.message-card h4{
  margin:0;
  color:#f09ab1;
  font-family:'Cormorant Garamond',serif;
  font-size:28px;
}
.message-card small{color:#e7bd68}
.message-card p{line-height:1.75;color:#f8e6e9}
.empty-msg{color:#f8e6e9}
@media(max-width:700px){
  .messages-hero h1{font-size:56px}
  .messages-hero p{font-size:16px}
}

/* Ajuste solicitado: fotos do mural pequenas e completas */
.message-card{
  text-align:center;
}
.message-card img{
  width:150px !important;
  height:150px !important;
  max-height:150px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:rgba(0,0,0,.22);
  display:block;
  margin:0 auto 16px !important;
  padding:6px;
}
@media(max-width:700px){
  .message-card img{
    width:130px !important;
    height:130px !important;
    max-height:130px !important;
  }
}

/* Ajuste solicitado: foto do mural responsiva, inteira e com ampliação ao clicar */
.message-card img{
  width:100% !important;
  max-width:180px !important;
  height:auto !important;
  max-height:180px !important;
  aspect-ratio:1/1;
  object-fit:contain !important;
  object-position:center !important;
  background:rgba(0,0,0,.22);
  display:block;
  margin:0 auto 16px !important;
  padding:6px;
  cursor:pointer;
  transition:transform .25s ease, box-shadow .25s ease;
}
.message-card img:hover{
  transform:scale(1.04);
  box-shadow:0 12px 28px rgba(0,0,0,.35);
}
.message-lightbox{
  display:none;
  position:fixed;
  z-index:9999;
  inset:0;
  background:rgba(0,0,0,.9);
  align-items:center;
  justify-content:center;
  padding:24px;
}
.message-lightbox.active{
  display:flex;
}
.message-lightbox img{
  max-width:94vw;
  max-height:88vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:14px;
  border:1px solid rgba(214,168,79,.55);
  box-shadow:0 20px 70px rgba(0,0,0,.65);
  background:#130d0c;
}
.message-lightbox-close{
  position:absolute;
  top:22px;
  right:30px;
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(214,168,79,.7);
  background:rgba(0,0,0,.42);
  color:white;
  font-size:34px;
  line-height:1;
  cursor:pointer;
}
@media(max-width:700px){
  .message-card img{
    max-width:145px !important;
    max-height:145px !important;
  }
  .message-lightbox{
    padding:16px;
  }
  .message-lightbox-close{
    top:14px;
    right:14px;
  }
}

/* Cabeçalho clássico */
.topbar{
  background:rgba(18,12,11,.78)!important;
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(214,168,79,.35);
}
.topbar .menu a{
  font-family:'Cormorant Garamond',serif!important;
  font-size:1.18rem!important;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:#f3e6cf!important;
  position:relative;
  transition:.3s;
}
.topbar .menu a:hover{
  color:#e7bd68!important;
}
.topbar .menu a::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-8px;
  width:0;
  height:1px;
  background:#d6a84f;
  transition:.3s;
  transform:translateX(-50%);
}
.topbar .menu a:hover::after{
  width:70%;
}
.logo span{
  font-family:'Great Vibes',cursive!important;
  font-size:2.3rem!important;
  color:#e7bd68!important;
}

/* Ajuste medieval do cabeçalho */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&display=swap');

.topbar .menu a{
    font-family:'Cinzel', serif !important;
    font-size:0.92rem !important;
    letter-spacing:1px !important;
    font-weight:500 !important;
}

.logo span{
    font-family:'Cinzel', serif !important;
    font-size:1.8rem !important;
    letter-spacing:2px;
}



/* CORREÇÃO FINAL HOSTINGER */
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Cormorant+Garamond:wght@400;600;700&family=Montserrat:wght@300;400;600;700&family=Cinzel:wght@400;500;600&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#130d0c;color:#fff;font-family:'Montserrat',Arial,sans-serif;overflow-x:hidden}
.topbar{position:fixed!important;top:0;left:0;width:100%;z-index:999;display:flex!important;align-items:center;justify-content:space-between;padding:16px 7%;background:rgba(18,12,11,.88)!important;border-bottom:1px solid rgba(214,168,79,.35);backdrop-filter:blur(12px)}
.logo{width:54px;height:54px;border:1px solid #d6a84f;border-radius:50%;display:flex!important;align-items:center;justify-content:center;text-decoration:none;color:#e7bd68!important}.logo span{font-family:'Cinzel',serif!important;font-size:1.65rem!important}
.menu{display:flex!important;gap:22px}.menu a{font-family:'Cinzel',serif!important;font-size:.86rem!important;letter-spacing:1px;text-transform:uppercase;text-decoration:none;color:#f3e6cf!important;font-weight:500}.menu a:hover{color:#e7bd68!important}
.invite-page{position:relative;min-height:100vh;display:flex!important;align-items:center;justify-content:center;padding:40px 22px;background:linear-gradient(135deg,rgba(12,8,7,.82),rgba(12,8,7,.62)),url('assets/foto-principal.jpg') center top/cover no-repeat!important}
.invite-overlay{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(242,167,187,.18),transparent 34%),linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.62))}
.invite-card{position:relative;z-index:2;width:min(720px,94vw);text-align:center;padding:58px 42px;border:1px solid rgba(214,168,79,.55);border-radius:26px;background:linear-gradient(145deg,rgba(20,12,11,.76),rgba(20,12,11,.52));box-shadow:0 30px 90px rgba(0,0,0,.55);backdrop-filter:blur(10px)}
.invite-logo{width:72px;height:72px;border:1px solid #d6a84f;border-radius:50%;margin:0 auto 24px;display:flex;align-items:center;justify-content:center;color:#e6c16a;font-family:'Cinzel',serif;font-weight:600;font-size:28px}
.invite-small{text-transform:uppercase;letter-spacing:3px;font-size:13px;color:#e7bd68;margin:0 0 10px}.invite-card h1{font-family:'Great Vibes',cursive!important;font-size:86px!important;color:#f2a7bb!important;margin:0!important;line-height:1.05;text-shadow:0 5px 20px rgba(0,0,0,.55)}
.invite-card h2{font-family:'Cormorant Garamond',serif!important;color:#e7bd68!important;font-size:44px!important;text-transform:uppercase;letter-spacing:8px;margin:0}.invite-line{width:210px;height:1px;background:linear-gradient(90deg,transparent,#d7ad5d,transparent);margin:28px auto}.invite-date{font-size:18px;font-weight:600}.invite-text{max-width:520px;margin:18px auto 30px;color:#f8e6e9;line-height:1.8}.invite-footer{margin:28px 0 0;font-family:'Great Vibes',cursive;color:#f4ced7;font-size:30px}
.enter-btn,.primary-btn,.outline-btn{display:inline-block!important;border-radius:999px!important;text-decoration:none!important;text-transform:uppercase!important;font-weight:800!important;letter-spacing:1px!important}.enter-btn,.primary-btn{padding:16px 34px!important;background:linear-gradient(135deg,#e25e83,#f4a1b6)!important;color:#fff!important;box-shadow:0 16px 40px rgba(226,94,131,.28)}
.hero{min-height:100vh;position:relative;display:flex!important;align-items:center;padding:130px 7% 70px;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url('assets/foto-principal.jpg');background-size:cover;background-position:center top}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,7,.94),rgba(12,8,7,.55),rgba(12,8,7,.35))}.hero-content{position:relative;z-index:2;max-width:580px;text-align:center}.crown{font-size:58px;color:#f0a7bb}.hero h1{font-family:'Great Vibes',cursive!important;font-size:88px!important;color:#f2a7bb!important;margin:0!important}.hero h2{font-family:'Cormorant Garamond',serif!important;font-size:48px!important;letter-spacing:8px;text-transform:uppercase;color:#d7ad5d!important;margin:0 0 25px}.phrase{font-family:'Great Vibes',cursive;font-size:32px;color:#f8e6e9}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(214,168,79,.38);border-radius:12px;overflow:hidden;background:rgba(23,14,12,.58)}.countdown div{padding:20px 14px;border-right:1px solid rgba(214,168,79,.22)}.countdown strong{display:block;font-family:'Cormorant Garamond',serif;font-size:42px;color:#f186a3}.countdown span{text-transform:uppercase;font-size:12px}
.section,.cards{max-width:1180px;margin:0 auto}.section{padding:70px 7%;text-align:center}.section-title{display:flex;gap:16px;justify-content:center;align-items:center;margin-bottom:32px}.section-title span,.icon{color:#f09ab1;font-size:34px}.section-title h3,.card h3{font-family:'Cormorant Garamond',serif;color:#e7bd68;text-transform:uppercase;letter-spacing:2px;font-size:30px;margin:0}.cards{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:18px;padding:30px 7% 20px}.card{border:1px solid rgba(214,168,79,.52);border-radius:14px;padding:34px 28px;text-align:center;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 20px 50px rgba(0,0,0,.25)}.card h4{font-family:'Cormorant Garamond',serif;color:#f09ab1;font-size:32px;text-transform:uppercase;margin:12px 0}.card iframe{width:100%;height:210px;border:0;border-radius:10px;margin:12px 0}.outline-btn{padding:13px 27px;border:1px solid #d7ad5d;color:#fff}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.photo-grid img{height:235px;border-radius:12px;border:1px solid rgba(214,168,79,.55);object-fit:cover;width:100%;cursor:pointer}.rsvp,.music-suggestion,.important-info,.gifts,.message-form-section{border:1px solid rgba(214,168,79,.52);border-radius:16px;background:rgba(255,255,255,.04);margin-top:30px;margin-bottom:40px}.rsvp form,.music-suggestion form,.message-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rsvp textarea,.music-suggestion textarea,.message-form textarea{grid-column:span 2;min-height:110px}.rsvp input,.rsvp textarea,.music-suggestion input,.music-suggestion textarea,.message-form input[type=text],.message-form textarea{background:rgba(0,0,0,.25);border:1px solid rgba(214,168,79,.38);border-radius:8px;color:#fff;padding:16px;font:inherit}.rsvp button,.music-suggestion button,.message-form button{grid-column:span 2;border:0;border-radius:8px;padding:18px;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:#fff;text-transform:uppercase;font-weight:800;letter-spacing:1px;cursor:pointer}.file-label{grid-column:span 2;display:flex;flex-direction:column;gap:10px;border:1px dashed rgba(214,168,79,.55);border-radius:12px;padding:18px;color:#f4ced7;background:rgba(0,0,0,.18)}
.timeline-grid{display:flex!important;flex-wrap:nowrap!important;gap:14px!important;overflow-x:auto!important;padding:10px 4px 22px!important}.timeline-card{min-width:120px;max-width:120px;flex:0 0 120px;padding:9px;border:1px solid rgba(214,168,79,.42);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025))}.timeline-card .year{font-family:'Cormorant Garamond',serif;color:#e7bd68;font-size:22px;font-weight:700;margin-bottom:7px}.timeline-card img{width:100%;height:120px;object-fit:cover;border-radius:10px;pointer-events:none}
.photos-hero,.messages-hero{min-height:58vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:130px 7% 70px;background:linear-gradient(rgba(15,9,8,.72),rgba(15,9,8,.92)),url('assets/foto-principal.jpg') center top/cover no-repeat}.photos-hero h1,.messages-hero h1{font-family:'Great Vibes',cursive!important;color:#f2a7bb!important;font-size:78px!important;margin:0}.photos-hero p,.messages-hero p{font-family:'Cormorant Garamond',serif;color:#e7bd68;text-transform:uppercase;letter-spacing:3px;font-size:20px}
.messages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}.message-card{text-align:center;border:1px solid rgba(214,168,79,.42);border-radius:16px;padding:22px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 18px 40px rgba(0,0,0,.22)}.message-card img{width:100%;max-width:180px;height:auto;max-height:180px;aspect-ratio:1/1;object-fit:contain;background:rgba(0,0,0,.22);display:block;margin:0 auto 16px;padding:6px;cursor:pointer}.message-card h4{margin:0;color:#f09ab1;font-family:'Cormorant Garamond',serif;font-size:28px}.message-card small{color:#e7bd68}.message-card p{line-height:1.75;color:#f8e6e9}
.lightbox,.message-lightbox{display:none;position:fixed;z-index:9999;inset:0;background:rgba(0,0,0,.9);align-items:center;justify-content:center;padding:24px}.lightbox.active,.message-lightbox.active{display:flex}.lightbox img,.message-lightbox img{max-width:94vw;max-height:88vh;object-fit:contain;border-radius:14px;border:1px solid rgba(214,168,79,.55)}.lightbox-close,.message-lightbox-close{position:absolute;top:22px;right:30px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(214,168,79,.7);background:rgba(0,0,0,.42);color:white;font-size:34px;line-height:1;cursor:pointer}
.music-btn{position:fixed;right:24px;bottom:24px;z-index:1000;width:74px;height:74px;border:0;border-radius:50%;background:linear-gradient(135deg,#e25e83,#f4a1b6);color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.45);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center}#musicIcon{font-size:28px;line-height:1}#musicText{font-size:10px;font-weight:700;text-transform:uppercase}
footer{text-align:center;padding:55px 20px;border-top:1px solid rgba(214,168,79,.18);color:#e8c06d}footer p{font-family:'Great Vibes',cursive;color:#f4ced7;font-size:34px;margin:0 0 12px}
@media(max-width:900px){.menu{display:none!important}.hero{padding:110px 22px 55px;align-items:flex-end}.hero h1,.invite-card h1{font-size:58px!important}.hero h2,.invite-card h2{font-size:30px!important;letter-spacing:5px}.invite-card{padding:42px 24px}.cards,.rsvp form,.music-suggestion form,.message-form{grid-template-columns:1fr}.rsvp textarea,.rsvp button,.music-suggestion textarea,.music-suggestion button,.message-form textarea,.message-form button,.file-label{grid-column:span 1}.section{padding:55px 22px}.music-btn{width:64px;height:64px;right:14px;bottom:14px}.photos-hero h1,.messages-hero h1{font-size:54px!important}.timeline-card{min-width:108px;max-width:108px;flex-basis:108px}.timeline-card img{height:105px}}

/* Menu mobile corrigido */
.mobile-menu-btn{
  display:none;
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(214,168,79,.7);
  background:rgba(0,0,0,.35);
  color:#e7bd68;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:1002;
}
@media(max-width:900px){
  .topbar{
    padding:12px 18px !important;
  }
  .mobile-menu-btn{
    display:flex !important;
    align-items:center;
    justify-content:center;
  }
  .topbar .menu{
    display:none !important;
    position:absolute !important;
    top:72px !important;
    left:18px !important;
    right:18px !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:14px !important;
    background:rgba(18,12,11,.97) !important;
    border:1px solid rgba(214,168,79,.45) !important;
    border-radius:16px !important;
    box-shadow:0 18px 50px rgba(0,0,0,.55) !important;
    backdrop-filter:blur(12px) !important;
  }
  .topbar .menu.active{
    display:flex !important;
  }
  .topbar .menu a{
    display:block !important;
    width:100% !important;
    padding:14px 12px !important;
    text-align:center !important;
    border-bottom:1px solid rgba(214,168,79,.15) !important;
    font-size:.9rem !important;
  }
  .topbar .menu a:last-child{
    border-bottom:0 !important;
  }
}

/* Menu mobile definitivo com todas as opções */
.mobile-menu-btn{
  display:none;
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(214,168,79,.7);
  background:rgba(0,0,0,.38);
  color:#e7bd68;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:10010;
}
.mobile-nav-panel{
  display:none;
}
@media(max-width:900px){
  .topbar{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    padding:12px 18px !important;
  }
  .mobile-menu-btn{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .topbar .menu{
    display:none !important;
  }
  .mobile-nav-panel{
    display:none !important;
    position:fixed !important;
    top:76px !important;
    left:16px !important;
    right:16px !important;
    z-index:10000 !important;
    flex-direction:column !important;
    padding:12px !important;
    background:rgba(18,12,11,.98) !important;
    border:1px solid rgba(214,168,79,.55) !important;
    border-radius:18px !important;
    box-shadow:0 18px 55px rgba(0,0,0,.65) !important;
    backdrop-filter:blur(14px) !important;
  }
  .mobile-nav-panel.active{
    display:flex !important;
  }
  .mobile-nav-panel a{
    display:block !important;
    width:100% !important;
    padding:15px 12px !important;
    text-align:center !important;
    color:#f3e6cf !important;
    text-decoration:none !important;
    font-family:'Cinzel',serif !important;
    font-size:.92rem !important;
    letter-spacing:1px !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(214,168,79,.18) !important;
  }
  .mobile-nav-panel a:last-child{
    border-bottom:0 !important;
  }
  .mobile-nav-panel a:hover{
    color:#e7bd68 !important;
  }
}

/* MENU MOBILE DEFINITIVO - INDEPENDENTE DO CABEÇALHO */
.mobile-menu-floating,
.mobile-menu-box,
.mobile-menu-overlay{
  display:none;
}

@media(max-width:900px){
  .mobile-menu-floating{
    display:flex !important;
    position:fixed !important;
    top:18px !important;
    right:18px !important;
    width:52px !important;
    height:52px !important;
    z-index:999999 !important;
    border-radius:50% !important;
    border:1px solid rgba(214,168,79,.8) !important;
    background:rgba(18,12,11,.96) !important;
    color:#e7bd68 !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:30px !important;
    font-weight:700 !important;
    line-height:1 !important;
    cursor:pointer !important;
    box-shadow:0 12px 35px rgba(0,0,0,.55) !important;
    font-family:Arial,sans-serif !important;
  }

  .mobile-menu-floating.open{
    background:#e25e83 !important;
    color:white !important;
  }

  .mobile-menu-overlay{
    display:none !important;
    position:fixed !important;
    inset:0 !important;
    z-index:999990 !important;
    background:rgba(0,0,0,.62) !important;
    backdrop-filter:blur(4px) !important;
  }

  .mobile-menu-overlay.open{
    display:block !important;
  }

  .mobile-menu-box{
    display:flex !important;
    position:fixed !important;
    top:84px !important;
    left:16px !important;
    right:16px !important;
    z-index:999998 !important;
    flex-direction:column !important;
    background:rgba(18,12,11,.99) !important;
    border:1px solid rgba(214,168,79,.65) !important;
    border-radius:18px !important;
    padding:12px !important;
    box-shadow:0 20px 60px rgba(0,0,0,.75) !important;
    transform:translateY(-22px) !important;
    opacity:0 !important;
    pointer-events:none !important;
    transition:opacity .25s ease, transform .25s ease !important;
  }

  .mobile-menu-box.open{
    opacity:1 !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }

  .mobile-menu-box a{
    display:block !important;
    width:100% !important;
    padding:16px 12px !important;
    text-align:center !important;
    color:#f3e6cf !important;
    text-decoration:none !important;
    font-family:'Cinzel',serif !important;
    font-size:.95rem !important;
    letter-spacing:1px !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(214,168,79,.20) !important;
  }

  .mobile-menu-box a:last-child{
    border-bottom:0 !important;
  }

  .mobile-menu-box a:active,
  .mobile-menu-box a:hover{
    color:#e7bd68 !important;
  }

  /* Esconde o menu desktop no celular, mas mantém o botão fixo acima */
  .topbar .menu,
  .mobile-nav-panel,
  #mobileNavPanel{
    display:none !important;
  }
}

/* Correção final do clique no menu mobile */
@media(max-width:900px){
  #mobileMenuFloating{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:fixed !important;
    top:18px !important;
    right:18px !important;
    z-index:2147483647 !important;
  }
  #mobileMenuOverlay{
    display:none !important;
    position:fixed !important;
    inset:0 !important;
    background:rgba(0,0,0,.62) !important;
    z-index:2147483645 !important;
  }
  #mobileMenuOverlay.open{
    display:block !important;
  }
  #mobileMenuBox{
    display:flex !important;
    position:fixed !important;
    top:82px !important;
    left:16px !important;
    right:16px !important;
    z-index:2147483646 !important;
    flex-direction:column !important;
    background:rgba(18,12,11,.99) !important;
    border:1px solid rgba(214,168,79,.65) !important;
    border-radius:18px !important;
    padding:12px !important;
    box-shadow:0 20px 60px rgba(0,0,0,.75) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(-15px) !important;
    transition:opacity .2s ease, transform .2s ease, visibility .2s ease !important;
  }
  #mobileMenuBox.open{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
  #mobileMenuBox a{
    display:block !important;
    width:100% !important;
    padding:16px 12px !important;
    text-align:center !important;
    color:#f3e6cf !important;
    text-decoration:none !important;
    font-family:'Cinzel',serif !important;
    font-size:.95rem !important;
    letter-spacing:1px !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(214,168,79,.20) !important;
  }
  #mobileMenuBox a:last-child{
    border-bottom:0 !important;
  }
}

/* Botão flutuante mobile definitivo */
.float-nav-mobile{
  display:none;
}

@media(max-width:900px){
  .topbar .menu{
    display:none !important;
  }

  .float-nav-mobile{
    display:block !important;
    position:fixed !important;
    right:18px !important;
    bottom:96px !important;
    z-index:2147483647 !important;
    font-family:'Cinzel',serif !important;
  }

  .float-nav-toggle{
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(214,168,79,.85) !important;
    background:linear-gradient(135deg,#e25e83,#f4a1b6) !important;
    color:#fff !important;
    font-size:30px !important;
    font-weight:700 !important;
    line-height:1 !important;
    cursor:pointer !important;
    box-shadow:0 16px 42px rgba(0,0,0,.55) !important;
  }

  .float-nav-items{
    display:flex !important;
    flex-direction:column !important;
    gap:9px !important;
    position:absolute !important;
    right:0 !important;
    bottom:72px !important;
    min-width:230px !important;
    padding:14px !important;
    border-radius:18px !important;
    border:1px solid rgba(214,168,79,.6) !important;
    background:rgba(18,12,11,.98) !important;
    box-shadow:0 18px 55px rgba(0,0,0,.65) !important;
    backdrop-filter:blur(12px) !important;
    opacity:0 !important;
    transform:translateY(12px) scale(.98) !important;
    pointer-events:none !important;
    transition:opacity .22s ease, transform .22s ease !important;
  }

  .float-nav-items.active{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
    pointer-events:auto !important;
  }

  .float-nav-items a{
    display:block !important;
    padding:13px 16px !important;
    border-radius:12px !important;
    text-align:center !important;
    color:#f3e6cf !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
    font-size:.86rem !important;
    letter-spacing:1px !important;
    border:1px solid rgba(214,168,79,.18) !important;
    background:rgba(255,255,255,.035) !important;
  }

  .float-nav-items a:hover,
  .float-nav-items a:active{
    color:#130d0c !important;
    background:#e7bd68 !important;
  }
}

/* MENU MOBILE CSS-ONLY - sem JavaScript */
.mobile-css-nav{
  display:none;
}

@media(max-width:900px){
  .topbar .menu,
  .float-nav-mobile,
  .mobile-menu-floating,
  .mobile-menu-box,
  .mobile-nav-panel{
    display:none !important;
  }

  .mobile-css-nav{
    display:block !important;
    position:fixed !important;
    right:18px !important;
    bottom:96px !important;
    z-index:2147483647 !important;
    font-family:'Cinzel',serif !important;
  }

  .mobile-nav-check{
    display:none !important;
  }

  .mobile-nav-button{
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(214,168,79,.85) !important;
    background:linear-gradient(135deg,#e25e83,#f4a1b6) !important;
    color:#fff !important;
    font-size:30px !important;
    font-weight:700 !important;
    line-height:58px !important;
    text-align:center !important;
    cursor:pointer !important;
    display:block !important;
    box-shadow:0 16px 42px rgba(0,0,0,.55) !important;
    user-select:none !important;
  }

  .mobile-nav-options{
    position:absolute !important;
    right:0 !important;
    bottom:72px !important;
    min-width:235px !important;
    padding:14px !important;
    border-radius:18px !important;
    border:1px solid rgba(214,168,79,.6) !important;
    background:rgba(18,12,11,.98) !important;
    box-shadow:0 18px 55px rgba(0,0,0,.65) !important;
    backdrop-filter:blur(12px) !important;
    opacity:0 !important;
    transform:translateY(12px) scale(.96) !important;
    pointer-events:none !important;
    transition:opacity .2s ease, transform .2s ease !important;
  }

  .mobile-nav-check:checked ~ .mobile-nav-options{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
    pointer-events:auto !important;
  }

  .mobile-nav-check:checked + .mobile-nav-button{
    background:#e7bd68 !important;
    color:#130d0c !important;
  }

  .mobile-nav-options a{
    display:block !important;
    padding:13px 16px !important;
    margin-bottom:9px !important;
    border-radius:12px !important;
    text-align:left !important;
    color:#f3e6cf !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
    font-size:.86rem !important;
    letter-spacing:.8px !important;
    border:1px solid rgba(214,168,79,.18) !important;
    background:rgba(255,255,255,.035) !important;
  }

  .mobile-nav-options a:last-child{
    margin-bottom:0 !important;
  }

  .mobile-nav-options a:hover,
  .mobile-nav-options a:active{
    color:#130d0c !important;
    background:#e7bd68 !important;
  }
}

/* MENU MOBILE FLUTUANTE FINAL - nativo com DETAILS, sem JavaScript */
.mobile-floating-menu{display:none}
@media(max-width:900px){
  .topbar .menu,.mobile-css-nav,.float-nav-mobile,.mobile-menu-floating,.mobile-menu-box,.mobile-nav-panel,.mobile-nav-check,.mobile-nav-options{display:none!important}
  .mobile-floating-menu{
    display:block!important;position:fixed!important;right:18px!important;bottom:92px!important;
    z-index:2147483647!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;
    font-family:'Cinzel',serif!important;
  }
  .mobile-floating-menu summary{
    list-style:none!important;width:60px!important;height:60px!important;border-radius:50%!important;
    border:1px solid rgba(214,168,79,.9)!important;background:linear-gradient(135deg,#e25e83,#f4a1b6)!important;
    color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;
    font-size:32px!important;line-height:1!important;font-weight:700!important;cursor:pointer!important;
    box-shadow:0 16px 42px rgba(0,0,0,.6)!important;-webkit-tap-highlight-color:transparent!important;
  }
  .mobile-floating-menu summary::-webkit-details-marker{display:none!important}
  .mobile-floating-menu[open] summary{background:#e7bd68!important;color:#130d0c!important}
  .mobile-floating-links{
    position:absolute!important;right:0!important;bottom:76px!important;width:245px!important;padding:14px!important;
    border-radius:18px!important;border:1px solid rgba(214,168,79,.65)!important;background:rgba(18,12,11,.98)!important;
    box-shadow:0 20px 60px rgba(0,0,0,.72)!important;backdrop-filter:blur(12px)!important;
  }
  .mobile-floating-links a{
    display:block!important;width:100%!important;padding:13px 14px!important;margin-bottom:9px!important;border-radius:12px!important;
    text-align:left!important;color:#f3e6cf!important;text-decoration:none!important;text-transform:uppercase!important;
    font-size:.86rem!important;letter-spacing:.8px!important;border:1px solid rgba(214,168,79,.18)!important;background:rgba(255,255,255,.04)!important;
  }
  .mobile-floating-links a:last-child{margin-bottom:0!important}
  .mobile-floating-links a:hover,.mobile-floating-links a:active{color:#130d0c!important;background:#e7bd68!important}
}

/* MENU MOBILE POPUP FINAL */
.mobile-css-nav,.float-nav-mobile,.mobile-menu-floating,.mobile-menu-box,.mobile-menu-overlay,.mobile-nav-panel,.mobile-floating-menu,.mobile-menu-btn{display:none!important}
.ldb-mobile-open,.ldb-mobile-overlay,.ldb-mobile-popup{display:none}
@media(max-width:900px){
  .topbar .menu{display:none!important}
  .ldb-mobile-open{
    display:flex!important;position:fixed!important;right:18px!important;bottom:92px!important;width:62px!important;height:62px!important;
    z-index:2147483647!important;border-radius:50%!important;border:1px solid rgba(214,168,79,.9)!important;
    background:linear-gradient(135deg,#e25e83,#f4a1b6)!important;color:#fff!important;align-items:center!important;justify-content:center!important;
    font-size:32px!important;font-weight:800!important;line-height:1!important;box-shadow:0 18px 48px rgba(0,0,0,.62)!important;
    cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;font-family:Arial,sans-serif!important;
  }
  .ldb-mobile-overlay{
    display:block!important;position:fixed!important;inset:0!important;z-index:2147483645!important;background:rgba(0,0,0,.66)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .25s ease,visibility .25s ease!important;backdrop-filter:blur(4px)!important;
  }
  .ldb-mobile-overlay.active{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .ldb-mobile-popup{
    display:flex!important;position:fixed!important;left:50%!important;top:50%!important;width:min(86vw,360px)!important;z-index:2147483646!important;
    transform:translate(-50%,-46%) scale(.94)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;flex-direction:column!important;
    gap:10px!important;padding:26px 20px 20px!important;border-radius:24px!important;border:1px solid rgba(214,168,79,.7)!important;
    background:rgba(18,12,11,.98)!important;box-shadow:0 24px 80px rgba(0,0,0,.78)!important;transition:opacity .25s ease,transform .25s ease,visibility .25s ease!important;
    font-family:'Cinzel',serif!important;
  }
  .ldb-mobile-popup.active{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,-50%) scale(1)!important}
  .ldb-mobile-title{color:#e7bd68!important;text-transform:uppercase!important;letter-spacing:3px!important;font-size:1.05rem!important;text-align:center!important;padding-bottom:12px!important;border-bottom:1px solid rgba(214,168,79,.32)!important;margin-bottom:4px!important}
  .ldb-mobile-close{position:absolute!important;right:12px!important;top:10px!important;width:34px!important;height:34px!important;border-radius:50%!important;border:1px solid rgba(214,168,79,.6)!important;background:rgba(255,255,255,.05)!important;color:#e7bd68!important;font-size:24px!important;line-height:1!important;cursor:pointer!important}
  .ldb-mobile-popup a{display:block!important;width:100%!important;padding:14px 16px!important;border-radius:14px!important;text-decoration:none!important;color:#f3e6cf!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(214,168,79,.20)!important;text-transform:uppercase!important;letter-spacing:.8px!important;font-size:.9rem!important;text-align:left!important}
  .ldb-mobile-popup a:hover,.ldb-mobile-popup a:active{background:#e7bd68!important;color:#130d0c!important}
  body.ldb-menu-open{overflow:hidden!important}
}

.mobile-css-nav,.float-nav-mobile,.mobile-menu-floating,.mobile-menu-box,.mobile-menu-overlay,.mobile-nav-panel,.mobile-floating-menu,.ldb-mobile-open,.ldb-mobile-overlay,.ldb-mobile-popup{display:none!important}

/* Texto do convite - Kunstler Script */
.whistledown-note{
  max-width:680px;
  margin:24px auto 28px;
  padding:22px 28px;
  border:1px solid rgba(214,168,79,.45);
  border-radius:20px;
  background:rgba(18,12,11,.56);
  box-shadow:0 18px 50px rgba(0,0,0,.30);
  color:#f8d6df;
  text-align:center;
  line-height:1.45;
  font-family:'Kunstler Script','KunstlerScript','Edwardian Script ITC','Great Vibes',cursive !important;
  font-size:31px;
  font-weight:400;
}
.whistledown-note p{margin:0 0 16px}
.whistledown-note p:last-child{margin-bottom:0}
@media(max-width:700px){
  .whistledown-note{padding:18px 16px;font-size:25px;line-height:1.35}
}

#days,#hours,#minutes,#seconds{display:block!important;min-width:2ch!important}.music-btn{cursor:pointer!important;}
