*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --ink:#0a0a0a;
  --ink2:#1a1a1a;
  --cream:#F4F2EA;
  --cream2:#e8e5da;
  --mist:#666;
  --mist2:#888;
  --pink:#FF7EB2;
  --pink2:#e8609a;
  --purple:#6D29FE;
  --purple2:#5a1ee8;
  --white:#ffffff;
  --border:rgba(10,10,10,.1);
  --border-pink:rgba(255,126,178,.18);
}

a{
  text-decoration:none;
  color: inherit;
}

#vr{
  font-family:'DM Sans',sans-serif;
  background:var(--cream);
  color:var(--ink);
  width:100%;
  min-height:100vh;
}

.content-wrap{
  width:100%;
  max-width:900px;
  margin:0 auto;
}

nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:1rem 2rem;
  border-bottom:1px solid var(--border);
  background:var(--cream);
  position:sticky;top:0;z-index:100;
}
@media(max-width:600px){nav{padding:.9rem 1.25rem;}}

.logo{
  font-family:'Knewave',cursive;
  font-size:22px;
  color:var(--ink);
  letter-spacing:.02em;
}
.logo span{color:var(--pink);}

.nav-r{display:flex;align-items:center;gap:1.25rem;}
.nav-lnk{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:400;letter-spacing:.1em;color:var(--mist);cursor:pointer;text-transform:uppercase;transition:color .2s;}
.nav-lnk:hover{color:var(--ink);}
.nav-btn{padding:7px 18px;background:transparent;color:var(--pink);border:1px solid rgba(255,126,178,.5);border-radius:100px;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
.nav-btn:hover{background:rgba(255,126,178,.1);}

/* ─── HERO ─────────────────────────── */
.hero{padding:5rem 2rem 4rem;text-align:center;border-bottom:1px solid var(--border);background:var(--cream);}
@media(max-width:600px){.hero{padding:3.5rem 1.5rem 3rem;}}
.etag{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--pink);margin-bottom:1rem;opacity:.9;}
.eh1{font-family:'Knewave',cursive;font-size:clamp(36px,6vw,68px);line-height:1.08;color:var(--ink);margin-bottom:1rem;}
.eh1 .domain{color:var(--pink);}
.esub{font-size:16px;font-weight:300;color:var(--mist);line-height:1.7;margin-bottom:2.5rem;max-width:360px;margin-left:auto;margin-right:auto;}
.hero-acts{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;}

.btn-main{padding:12px 30px;background:var(--pink);color:var(--white);border:none;border-radius:100px;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;font-weight:500;}
.btn-main:hover{background:var(--pink2);}
.btn-purple{padding:12px 30px;background:var(--purple);color:var(--white);border:none;border-radius:100px;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;font-weight:500;}
.btn-purple:hover{background:var(--purple2);}
.btn-ghost{padding:11px 26px;background:transparent;color:var(--mist);border:1px solid rgba(10,10,10,.18);border-radius:100px;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
.btn-ghost:hover{color:var(--ink);border-color:rgba(10,10,10,.35);}

/* ─── FEATURES ─────────────────────── */
.feats{display:grid;grid-template-columns:repeat(3,1fr)}
@media(max-width:600px){.feats{grid-template-columns:1fr;}}
.feat{padding:2rem 2rem;}
.feat:last-child{border-right:none;}
@media(max-width:600px){.feat{padding:1.5rem;border-right:none;border-bottom:1px solid var(--border);}.feat:last-child{border-bottom:none;}}
.ftitle{font-size:16px;font-weight:500;color:var(--ink);margin-bottom:.4rem;}
.fdesc{font-size:16px;font-weight:300;color:var(--mist);line-height:1.7;}

/* ─── BOOTH SECTION ─────────────────── */
.booth-section{
  padding:3.5rem 2rem;
  background:var(--cream);
  border-bottom:1px solid var(--border);
}
@media(max-width:600px){.booth-section{padding:2.5rem 1.25rem;}}

.stag{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--pink);margin-bottom:.4rem;opacity:.9;}
.stitle{font-family:'Knewave',cursive;font-size:clamp(20px,2.8vw,30px);color:var(--ink);margin-bottom:0.5rem;line-height:1.2;}
.ssub{font-size:13px;font-weight:300;color:var(--mist);margin-bottom:2rem;line-height:1.6;max-width:480px;}

.booth-layout{display:grid;grid-template-columns:1fr 190px;gap:1.5rem;align-items:start;}
@media(max-width:620px){.booth-layout{grid-template-columns:1fr;gap:1rem;}}

/* ── Camera block ─────────────────── */
.booth-main{display:flex;flex-direction:column;gap:.75rem;}

.brresults{
  display:none;
  width:100%;
  justify-content:center;
  align-items:center;
  gap:.75rem;
  margin-top:.75rem;
  flex-wrap:wrap;
}

.brresults .btn-main{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:170px;
}

.booth-frame{
  position:relative;
  width:100%;
  padding-bottom:100%;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,126,178,.15);
}
.booth-inner{
  position:absolute;
  inset:0;
  overflow:visible;
}

#bvid{
  width:100%;height:100%;object-fit:cover;
  display:none;
  position:absolute;inset:0;
}
#boc{
  position:absolute;inset:0;width:100%;height:100%;
  pointer-events:none;z-index:2;
}

.corners{position:absolute;inset:0;pointer-events:none;z-index:3;}
.cr{position:absolute;width:14px;height:14px;border-color:rgba(255,126,178,.3);border-style:solid;border-width:0;}
.ctl{top:10px;left:10px;border-top-width:1px;border-left-width:1px;}
.ctr{top:10px;right:10px;border-top-width:1px;border-right-width:1px;}
.cbl{bottom:10px;left:10px;border-bottom-width:1px;border-left-width:1px;}
.cbr{bottom:10px;right:10px;border-bottom-width:1px;border-right-width:1px;}

/* start screen */
#bstart{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:1rem;
  background:#080808;z-index:5;
}
.bstart-ico{font-size:32px;color:rgba(255,126,178,.3);}
.bstart-txt{font-size:13px;color:rgba(244,242,234,.3);letter-spacing:.08em;text-align:center;line-height:1.5;}
.bcambtn{
  padding:9px 22px;background:rgba(255,126,178,.12);color:rgba(244,242,234,.75);
  border:1px solid rgba(255,126,178,.3);border-radius:100px;font-family:'DM Sans',sans-serif;
  font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .2s;
}
.bcambtn:hover{background:rgba(255,126,178,.25);}

/* countdown */
#bcd{
  position:absolute;inset:0;display:none;align-items:center;justify-content:center;
  background:rgba(0,0,0,.5);font-family:'Knewave',cursive;font-size:96px;
  color:var(--white);z-index:6;
}

/* flash */
.bflash{position:absolute;inset:0;background:white;opacity:0;pointer-events:none;z-index:7;transition:opacity .07s;}

/* shoot button */
.bctrl{
  display:none;
  align-items:center;justify-content:center;
  padding:.25rem 0;
}
.bshoot{
  width:60px;height:60px;border-radius:50%;
  background:var(--pink);
  border:3px solid rgba(255,255,255,.2);
  outline:3px solid var(--pink);
  cursor:pointer;transition:transform .1s;flex-shrink:0;
}
.bshoot:hover{transform:scale(1.06);}
.bshoot:active{transform:scale(.9);}
.bshoot:disabled{opacity:.2;cursor:not-allowed;transform:none;}

/* ── Result overlay ───────────────── */
#bresec{
  position:absolute;
  inset:0;
  display:none;
  z-index:999;
  background:#080808;
}
#brimg{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* ─── SIDE PANEL ────────────────────── */
.bside{display:flex;flex-direction:column;gap:.875rem;}
.bpanel{
  background:rgba(255,255,255,.6);
  border:1px solid var(--border-pink);
  border-radius:10px;
  padding:.875rem;
}
.bplabel{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pink);margin-bottom:.6rem;opacity:.9;}

.bupz{
  border:1px dashed rgba(255,126,178,.25);border-radius:8px;
  padding:.75rem;text-align:center;cursor:pointer;transition:background .15s;
}
.bupz:hover{background:rgba(255,126,178,.07);}
.bupz-ico{font-size:18px;color:rgba(255,126,178,.35);display:block;margin-bottom:3px;}
.bupz-txt{font-size:12px;color:var(--mist);letter-spacing:.04em;line-height:1.6;}

#boprev{width:100%;aspect-ratio:1;border-radius:6px;object-fit:contain;background:rgba(255,126,178,.04);display:none;margin-top:6px;}
@media (max-width: 600px) {
  #boprev {
    width: 30%;
    display: block;
    margin: 0 auto;
  }
}

.brmv{
  width:100%;margin-top:5px;font-size:11px;padding:5px;
  border:1px solid rgba(255,126,178,.18);background:transparent;border-radius:100px;
  cursor:pointer;color:var(--mist2);font-family:'DM Sans',sans-serif;
  display:none;letter-spacing:.06em;text-transform:uppercase;transition:background .1s;
}
.brmv:hover{background:rgba(255,126,178,.07);}
.canva-lnk{display:block;margin-top:6px;font-size:13px;color:var(--mist2);text-decoration:none;text-align:center;transition:color .15s;}
.canva-lnk:hover{color:var(--pink);}

.timers{display:flex;gap:3px;}
.ttbtn{
  flex:1;padding:5px 2px;font-size:12px;font-family:'DM Sans',sans-serif;
  border:1px solid rgba(10,10,10,.12);background:transparent;border-radius:100px;
  cursor:pointer;color:var(--mist);letter-spacing:.05em;transition:all .12s;
}
.ttbtn.active{background:var(--pink);color:#ffffff;border-color:rgba(255, 255, 255, 0.45);}

.hero-img{max-width: 100%; padding-top: 80px;}

/* ─── CONTACT SECTION ───────────────── */
.contact-section{
  padding:3.5rem 2rem;
  background:var(--cream);
  border-bottom:1px solid var(--border);
}
@media(max-width:600px){.contact-section{padding:2.5rem 1.5rem;}}

.cinner{max-width:540px;}
.cform{display:flex;flex-direction:column;gap:8px;margin-top:1.5rem;}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
@media(max-width:480px){.cgrid{grid-template-columns:1fr;}}
.cinput,.ctextarea{
  width:100%;padding:10px 14px;
  min-height: 56px;
  border:1px solid rgba(10,10,10,.12);border-radius:8px;
  font-family:'DM Sans',sans-serif;font-size:14px;font-weight:300;
  background:rgba(255,255,255,.7);color:var(--ink);outline:none;transition:border-color .2s;
}
.cinput::placeholder,.ctextarea::placeholder{color:var(--mist);opacity:.65;}
.cinput:focus,.ctextarea:focus{border-color:rgba(255,126,178,.55);}
.ctextarea{resize:vertical;min-height:100px;}
.csubmit{
  padding:12px;background:var(--pink);color:var(--white);border:none;border-radius:100px;
  font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;
  cursor:pointer;transition:background .2s;margin-top:2px;font-weight:500;
}
.csubmit:hover{background:var(--pink2);}
.csent{
  display:none;padding:10px;background:rgba(255,126,178,.08);
  border:1px solid rgba(255,126,178,.2);border-radius:8px;
  font-size:13px;color:rgba(255,126,178,.8);text-align:center;letter-spacing:.04em;
}

/* ─── FOOTER ─────────────────────────── */
footer{
  padding:1.5rem 2rem;
  display:flex;align-items:center;justify-content:space-between;
  border-top:1px solid var(--border);
  background:var(--cream);
  flex-wrap:wrap;gap:.75rem;
}
@media(max-width:600px){footer{padding:1.5rem;}}
.flogo{font-family:'Knewave',cursive;font-size:18px;color:var(--ink);}
.flogo span{color:var(--pink);}
.flinks{display:flex;gap:1.25rem;font-family:'DM Sans'}
.flinks a{font-size:14px;letter-spacing:.08em;color:var(--mist);text-decoration:none;text-transform:uppercase;transition:color .2s;}
.flinks a:hover{color:var(--ink);}
.fcopy{font-size:14px;letter-spacing:.08em;color:var(--mist);opacity:.55; font-family:'DM Sans';}