:root{
  --gold:#d8b352;
  --gold-soft:#f0d488;
  --text:#f7f1e6;
  --muted:#d0c1ae;
  --line:rgba(216,179,82,.25);
  --shadow:0 22px 60px rgba(0,0,0,.42);
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  overflow-x:hidden;
  height:100%;
}

body{
  font-family:'Inter',sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(216,179,82,.09), transparent 22%),
    linear-gradient(180deg,#090705 0%, #0f0a08 45%, #140d0a 100%);
  height:100vh;
  overflow:hidden;
}

.construction-page{
  height:100vh;
  position:relative;
  padding:0;
  overflow:hidden;
}

.hero-poster{
  height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
  padding:16px 0;
}

.poster-card{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  border:1px solid rgba(216,179,82,.18);
  box-shadow:var(--shadow);
  background:linear-gradient(rgba(8,6,5,.22), rgba(8,6,5,.55)), linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
  max-height:calc(100vh - 32px);
}

.poster-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,0) 0px, rgba(255,255,255,0) 110px, rgba(255,255,255,.015) 111px, rgba(255,255,255,0) 112px),
    linear-gradient(90deg, rgba(21,12,8,.96) 0%, rgba(31,20,15,.88) 44%, rgba(23,15,11,.62) 100%);
  pointer-events:none;
}

.poster-card .row{
  align-items:center;
}

.poster-left,.poster-right{
  position:relative;
  z-index:2;
}

.poster-left{
  padding:40px 50px 30px;
  display:flex;
  align-items:center;
  background:radial-gradient(circle at top left, rgba(216,179,82,.10), transparent 24%), linear-gradient(180deg, rgba(64,42,30,.55), rgba(24,16,12,.92));
}

.poster-content{
  position:relative;
  z-index:3;
  max-width:480px;
}

.date-badge{
  width:116px;
  height:116px;
  border-radius:50%;
  border:3px solid rgba(216,179,82,.35);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.14), transparent 28%), linear-gradient(180deg, #84563c 0%, #5e3b29 100%);
  box-shadow:0 10px 24px rgba(0,0,0,.25);
  margin-bottom:22px;
}

.date-badge .small{
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#f4dec0;
}

.date-badge strong{
  font-family:'Bebas Neue',sans-serif;
  font-size:2.5rem;
  letter-spacing:.04em;
  line-height:1;
}

.small-line-wrap{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}

.small-line{
  width:72px;
  height:2px;
  background:rgba(255,255,255,.5);
}

.small-text{
  font-family:'Cinzel',serif;
  font-size:1rem;
  color:#f1e2c3;
}

.script-title{
  font-family:'Great Vibes',cursive;
  font-size:3rem;
  line-height:1;
  color:#ffbd93;
  text-shadow:0 0 18px rgba(255,165,120,.28);
  margin-bottom:6px;
}

.poster-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(3rem, 6vw, 5.5rem);
  line-height:.95;
  letter-spacing:.03em;
  margin:0 0 10px;
  color:#f7f1e6;
  text-shadow:0 8px 26px rgba(0,0,0,.26);
}

.sub-head{
  font-family:'Cinzel',serif;
  font-size:1.2rem;
  color:var(--gold-soft);
  margin-bottom:18px;
}

.contact-box{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:28px;
}

.contact-row{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--text);
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:14px 16px;
  width:100%;
  max-width:430px;
}

.contact-row i{
  color:var(--gold);
  font-size:1.05rem;
}

.btn-gold{
  background:linear-gradient(135deg,var(--gold) 0%, var(--gold-soft) 100%);
  color:#1a120a;
  border:none;
  font-weight:800;
  padding:14px 28px;
  box-shadow:0 12px 28px rgba(0,0,0,.24);
}

.btn-gold:hover{
  color:#120c07;
  transform:translateY(-2px);
}

.footer-copy{
  margin-top:26px;
  color:var(--muted);
  max-width:480px;
  line-height:1.7;
  font-size:.95rem;
}

.poster-right{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 24px 0;
  background:radial-gradient(circle at top right, rgba(216,179,82,.10), transparent 22%), linear-gradient(180deg, rgba(32,21,15,.20), rgba(14,10,8,.78));
  min-height:760px;
}

.artist-photo-wrap{
  position:relative;
  width:min(100%, 560px);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  max-width:480px;
  margin:0 auto;
}

.artist-photo-wrap img{
  width:100%;
  height:520px;
  display:block;
  object-fit:cover;
  object-position:top center;
  border-radius:20px;
  filter:drop-shadow(0 28px 40px rgba(0,0,0,.38));
}

.floating-info{
  position:absolute;
  right:28px;
  bottom:30px;
  z-index:5;
  background:rgba(10,8,7,.85);
  color:#fff;
  border:1px solid rgba(216,179,82,.24);
  border-radius:16px;
  padding:12px 16px;
  box-shadow:var(--shadow);
  font-weight:600;
}

.floating-info i{
  color:var(--gold);
}

/* remover luzes do topo */
.lights{
  display:none !important;
}

@media (max-width:1199.98px){
  .poster-left{padding:36px 36px 26px}
  .poster-right{min-height:620px}
  .script-title{font-size:2.8rem}
  .poster-card{max-height:calc(100vh - 24px)}
}

@media (max-width:991.98px){
  html,body{
    height:auto;
  }

  body{
    height:auto;
    overflow:auto;
  }

  .construction-page{
    height:auto;
    min-height:100vh;
    padding:16px 0;
    overflow:visible;
  }

  .hero-poster{
    height:auto;
    min-height:100vh;
    padding:0;
  }

  .poster-card{
    max-height:none;
    border-radius:24px;
  }

  .poster-left{
    padding:28px 22px 18px;
    text-align:center;
  }

  .poster-content{
    max-width:100%;
    margin:0 auto;
  }

  .date-badge{
    margin:0 auto 18px;
  }

  .small-line-wrap{
    justify-content:center;
  }

  .contact-row{
    max-width:none;
  }

  .poster-right{
    min-height:auto;
    padding:18px 18px 10px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }

  .artist-photo-wrap{
    max-width:360px;
    margin:0 auto;
    display:flex;
    justify-content:center;
  }

  .artist-photo-wrap img{
    height:420px;
    margin:0 auto;
  }

  .floating-info{
    position:static;
    margin:14px auto 0;
    width:auto;
    max-width:100%;
    text-align:center;
  }
}

@media (max-width:575.98px){
  .poster-left{
    padding:22px 16px 14px;
  }

  .date-badge{
    width:90px;
    height:90px;
  }

  .date-badge strong{
    font-size:1.9rem;
  }

  .date-badge .small{
    font-size:.72rem;
  }

  .small-line{
    width:44px;
  }

  .small-text{
    font-size:.82rem;
  }

  .script-title{
    font-size:2.1rem;
  }

  .poster-title{
    font-size:3rem;
    line-height:.9;
  }

  .sub-head{
    font-size:1rem;
    line-height:1.5;
  }

  .contact-row{
    font-size:.92rem;
    padding:12px 14px;
    text-align:left;
  }

  .footer-copy{
    font-size:.9rem;
  }

  .btn-gold{
    width:100%;
  }

  .artist-photo-wrap{
    max-width:300px;
  }

  .artist-photo-wrap img{
    height:360px;
  }

  .floating-info{
    font-size:.9rem;
    padding:10px 14px;
  }
}