:root{
  --red-dark:#8e1216; --red:#b91c1c; --red-bright:#dc2626;
  --cream:#faf6f0; --ink:#3f1d1d;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',system-ui,-apple-system,Roboto,'Helvetica Neue',sans-serif;background:var(--cream);color:var(--ink)}
.wrap{max-width:640px;margin:0 auto}

/* hero langsung di atas, tanpa strip intro */
.hero{background:linear-gradient(180deg,#a31216,#8e1216);color:#fff;padding:44px 22px 54px;text-align:center}
.hero h1{font-size:clamp(38px,13vw,58px);line-height:.95;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.hero h1 span{display:block;font-size:clamp(30px,10vw,44px)}
.hero .dash{width:64px;height:8px;background:#fff;border-radius:99px;margin:18px auto 16px}
.hero h2{font-size:26px;font-weight:800}
.hero .kutip{font-size:15px;font-style:italic;color:#ffe9e9;margin-top:6px}

/* kartu info acara */
.card{background:#fff;border-radius:18px;box-shadow:0 10px 30px rgba(90,10,10,.16);margin:-28px 18px 22px;padding:22px 20px}
.row{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px dashed #f0d9d9}
.row:last-child{border-bottom:0}
.row svg{flex:0 0 26px;margin-top:2px}
.row .txt b{display:block;font-size:17px;line-height:1.25}
.row .txt span{font-size:14px;color:#7a5050}

/* gambar poster */
.poster{margin:0 18px 22px}
.poster a{display:block;border-radius:16px;overflow:hidden}
.poster-img{display:block;width:100%;height:auto;transition:transform .25s ease}
.poster a:hover .poster-img{transform:scale(1.02)}
.poster-fallback{background:repeating-linear-gradient(45deg,#f6e8e8,#f6e8e8 12px,#efdede 12px,#efdede 24px);border:2px dashed #d8b4b4;border-radius:16px;padding:36px 18px;text-align:center;color:#9c6a6a;font-weight:700;font-size:14px}

/* CTA */
.cta{margin:30px 18px 10px;text-align:center}
.cta h3{font-size:22px;color:#8e1216;font-weight:900}
.cta p{font-size:15px;line-height:1.5;margin-top:8px}
.cta .panah{display:inline-block;margin-top:10px;font-size:22px;animation:bob 1.2s infinite ease-in-out}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* kontak */
.section-title{text-align:center;font-size:13px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#a31216;margin:34px 0 12px}
.kontak{margin:0 18px}
.kontak .list{background:#fff;border-radius:16px;box-shadow:0 6px 18px rgba(90,10,10,.08);padding:8px 16px}
.kontak .k{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #f4e8e8;font-size:14px}
.kontak .k:last-child{border-bottom:0}
.kontak .k b{font-weight:700}
.kontak .k span{color:#a31216;font-weight:700;white-space:nowrap}

footer{background:#8e1216;color:#f3c8c8;text-align:center;padding:18px 20px}
footer .tema{color:#ffb3b3;font-weight:800;font-size:13px;letter-spacing:1px;margin-bottom:8px}
footer p{font-size:11px;line-height:1.6}

/* layar sempit: konten tetap tidak meluber */
@media (max-width:420px){
  .hero{padding:36px 16px 44px}
  .card,.poster,.kontak{margin-left:14px;margin-right:14px}
  .kontak .k{flex-direction:column;gap:2px}
  .kontak .k span{white-space:normal}
}
