/* Oliva — Personalisation: "Add your dog's initial / name" field, boxed like the cart's promo code field. */
.oliva-pz { margin: 24px 0 8px; }
.oliva-pz label { display: block; margin-bottom: 10px; }
.oliva-pp .oliva-pz__input {
	display: block; width: 100%; height: 46px; box-sizing: border-box; margin: 0; padding: 0 14px;
	border: 1px solid var(--line, #e5e5e5); border-radius: 0; background: #fff; box-shadow: none;
	color: var(--ink, #1f1a14); font: 400 14px/1 var(--sans, "Jost", sans-serif); letter-spacing: .3em; text-transform: uppercase; outline: none; transition: border-color .2s;
}
.oliva-pp .oliva-pz--name .oliva-pz__input { letter-spacing: .06em; text-transform: none; }
.oliva-pp .oliva-pz__input:focus { border-color: var(--accent, #3b2f2a); }
.oliva-pz__note { display: block; margin-top: 8px; font-size: 11px; color: var(--muted, #8a7f7c); }

/* Phones: the field lives in the size panel (or the panel of its own), not in the footer */
@media (max-width: 767px) {
	.oliva-pp__buy .oliva-pz { display: none; }
	.oliva-pp__sheet .oliva-pz { width: 100%; margin: 0 0 18px; text-align: center; }
	.oliva-pp .oliva-pp__sheet .oliva-pz__input { text-align: center; }
	.oliva-pz-overlay .oliva-pp__sheet .oliva-pp__button { width: 100%; }
}

/* ID tags: the phone field under the name, and the message when the name is missing */
.oliva-pz__phone-label { margin-top: 18px; }
.oliva-pz__error { display: block; margin-top: 8px; font-size: 11px; color: #b3261e; }
.oliva-pz__error[hidden] { display: none; }
.oliva-pp .oliva-pz__input[aria-invalid="true"] { border-color: #b3261e; }
.oliva-pp .oliva-pz--tag .oliva-pz__input { letter-spacing: .06em; text-transform: none; }
.oliva-pz__note:empty { display: none; }
