.emoji-captcha{
  margin:1rem 0 1.2rem;
  padding:1rem 1.05rem;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.1);
  background:rgba(255,255,255,.55);
}
.emoji-captcha__label{
  margin:0 0 .75rem;
  font-size:.92rem;
  font-weight:600;
  line-height:1.35;
}
.emoji-captcha__prompt-emoji{
  font-size:1.15rem;
  margin-left:.25rem;
}
.emoji-captcha__options{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}
.emoji-captcha__btn{
  appearance:none;
  width:3.1rem;
  height:3.1rem;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
  transition:transform .15s ease, border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.emoji-captcha__btn:hover{
  transform:translateY(-1px);
  border-color:rgba(0,0,0,.28);
}
.emoji-captcha__btn.is-selected{
  border-color:#2e8b76;
  box-shadow:0 0 0 3px rgba(46,139,118,.22);
  background:#f3fbf8;
}
.emoji-captcha__refresh{
  margin-top:.65rem;
  border:0;
  background:none;
  color:inherit;
  opacity:.7;
  font-size:.8rem;
  text-decoration:underline;
  cursor:pointer;
  padding:0;
}
.emoji-captcha__refresh:hover{ opacity:1; }
.emoji-captcha__error{
  margin:.55rem 0 0;
  color:#b42318;
  font-size:.85rem;
  min-height:1.1em;
}

/* Dark forms (Villa Giolai contact) */
.contact__form .emoji-captcha{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
  color:#f3efe6;
}
.contact__form .emoji-captcha__btn{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.16);
  color:#fff;
}
.contact__form .emoji-captcha__btn.is-selected{
  border-color:#c9a66b;
  box-shadow:0 0 0 3px rgba(201,166,107,.28);
  background:rgba(201,166,107,.16);
}
