/**
 * Form controls: iOS Safari sizing, select chevrons, icon alignment.
 */
:root {
	--pb-form-control-height: 48px;
	--pb-chevron-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231D1C56' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}

.fields,
.quote-fields,
.grid2,
.pb-grid {
	align-items: end;
}

.fields > .field,
.quote-fields > label,
.quote-fields > .field,
.grid2 > .field,
.pb-grid > .pb-field,
.pb-grid > label {
	min-width: 0;
	max-width: 100%;
}

/* 16px avoids iOS zoom; min-width:0 stops grid overflow */
#main .field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
#main .field select,
#main .quote-fields .field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
#main .quote-fields .field select,
#main .quote-fields select,
#main .quote-bar select,
#main .form-card select,
#main .form-card input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
#main .contact-form select,
#main .contact-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
#main .pb-field select,
#main .pb-field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
#main .pinkbird-lead-form select,
#main .pinkbird-career-form select,
#main .pinkbird-career-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]) {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	font-size: 16px;
	line-height: 1.25;
	min-height: var(--pb-form-control-height);
}

#main .field select,
#main .quote-fields select,
#main .quote-bar select,
#main .form-card select,
#main .contact-form select,
#main .pb-field select,
#main .pinkbird-lead-form select,
#main .pinkbird-career-form select,
#main .prov-select select {
	appearance: none;
	-webkit-appearance: none;
	padding-right: 2.75rem;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 12px 12px;
	background-image: var(--pb-chevron-svg);
}

.prov-select::after {
	display: none;
}

#main .field input[type="date"],
#main .quote-fields input[type="date"],
#main .quote-bar input[type="date"],
#main .form-card input[type="date"],
#main .contact-form input[type="date"],
#main .pb-field input[type="date"] {
	display: block;
	min-height: var(--pb-form-control-height);
}

/* Homepage / global quote bar matches existing 54px rhythm */
.quote-fields .field input:not([type="checkbox"]):not([type="radio"]),
.quote-fields .field select,
.quote-bar .field input:not([type="checkbox"]):not([type="radio"]),
.quote-bar .field select {
	min-height: 54px;
	height: 54px;
}

/* SVG icons replacing text arrows (↗ →) */
.pb-icon {
	display: inline-block;
	vertical-align: -0.12em;
	flex-shrink: 0;
	width: 1em;
	height: 1em;
}

.btn .pb-icon,
#quote .btn .pb-icon,
#main .btn .pb-icon {
	width: 1.05em;
	height: 1.05em;
	margin-left: 0.35em;
}

.text-link .pb-icon {
	margin-left: 0.25em;
}

.related-location-arrow,
.city-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
	font-size: 0;
}

.related-location-arrow .pb-icon,
.city-arrow .pb-icon {
	width: 1.125rem;
	height: 1.125rem;
}
