/*
Theme Name: Hello Elementor Child
Author: 
Description: Your description goes here
Version: 1.0
Template: hello-elementor

This is the child theme for Hello Elementor theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/* Keep short phrases together on small screens (e.g. "Written Estimate", "Mon–Fri, 8 AM–5 PM", "Se Habla Español").
   Wrap a phrase in <span class="pn-nw">…</span> in Elementor to stop it breaking across lines. */
.pn-nw {
	white-space: nowrap;
}

a[href^="tel:"],
a[href^="sms:"] {
	white-space: nowrap;
}

/* Even out line lengths in headings and labels so a single word isn't left alone on the last line. */
.elementor-heading-title,
.elementor-icon-box-title,
.e-n-accordion-item-title-text,
.elementor-button-text {
	text-wrap: balance;
}

.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.elementor-icon-list-text,
.elementor-icon-box-description {
	text-wrap: pretty;
}

/* Service card headers with a "Most Requested" chip: on phones, move the chip onto its own line
   above the title so the title keeps the full width ("Deep Cleaning" instead of "Deep / Cleaning"). */
@media (max-width: 767px) {
	.pn-check-band:has(> .pn-chip) {
		flex-wrap: wrap;
	}

	.pn-check-band > .pn-chip {
		order: -2;
	}

	.pn-check-band:has(> .pn-chip) > .e-con {
		flex: 1 1 0;
		min-width: 0;
	}

	.pn-check-band:has(> .pn-chip)::after {
		content: "";
		order: -1;
		flex-basis: 100%;
		height: 0;
	}
}

/* ---------- Estimate form (Home #start + Contact) ---------- */

/* Numbered section headers */
.elementor-element.pn-estimate-form .pn-fstep {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin-top: 8px;
	padding-top: 22px;
	border-top: 1px dashed var(--pn-line, #D5E4E2);
}

/* Each step starts with a hidden .e-field-step marker, then its first section heading */
.elementor-element.pn-estimate-form .e-form__step > .e-field-step + .elementor-field-type-html .pn-fstep {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.elementor-element.pn-estimate-form .pn-fstep-n {
	display: grid;
	place-items: center;
	flex: none;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--pn-mint-soft, #E6F2F0);
	color: var(--pn-teal, #2A6B73);
	font-family: var(--pn-mono, "DM Mono", monospace);
	font-size: 11px;
}

.elementor-element.pn-estimate-form .pn-fstep-t {
	color: var(--pn-ink, #0C2C41);
	font-family: "DM Sans", sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
}

.elementor-element.pn-estimate-form .pn-fstep-note {
	width: 100%;
	margin: 6px 0 0;
	color: var(--pn-muted, #5A7078);
	font-size: 13.5px;
	line-height: 1.55;
}

/* Labels that the section header already covers stay available to screen readers only */
.elementor-element.pn-estimate-form :is(.elementor-field-group-type, .elementor-field-group-frequency, .elementor-field-group-addons, .elementor-field-group-date, .elementor-field-group-photos, .elementor-field-group-notes) > .elementor-field-label {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* Selectable option cards (cleaning type, frequency, add-ons) */
.elementor-element.pn-estimate-form .elementor-field-type-radio .elementor-field-subgroup,
.elementor-element.pn-estimate-form .elementor-field-type-checkbox .elementor-field-subgroup {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 10px;
	width: 100%;
}

.elementor-element.pn-estimate-form .elementor-field-group-frequency .elementor-field-subgroup {
	grid-template-columns: repeat(4, 1fr);
}

.elementor-element.pn-estimate-form .elementor-field-subgroup .elementor-field-option {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-element.pn-estimate-form .elementor-field-option input {
	position: absolute;
	opacity: 0;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	cursor: pointer;
}

.elementor-element.pn-estimate-form .elementor-field-option label {
	display: flex !important; /* Elementor sets radio/checkbox labels to inline with equal specificity */
	align-items: center;
	gap: 10px;
	height: 100%;
	min-height: 50px;
	padding: 12px 14px;
	border: 1.5px solid var(--pn-line, #D5E4E2);
	border-radius: 12px;
	background: #FBFEFE;
	color: var(--pn-ink, #0C2C41) !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	line-height: 1.3 !important;
	cursor: pointer;
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.elementor-element.pn-estimate-form .elementor-field-option label::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	border: 1.5px solid #B9D0CE;
	border-radius: 50%;
	background: #fff center / 11px 11px no-repeat;
	transition: inherit;
}

.elementor-element.pn-estimate-form .elementor-field-type-checkbox .elementor-field-option label::before {
	border-radius: 5px;
}

.elementor-element.pn-estimate-form .elementor-field-option:hover label {
	border-color: #B9D0CE;
	background-color: #fff;
}

.elementor-element.pn-estimate-form .elementor-field-option input:checked + label {
	border-color: var(--pn-teal, #2A6B73);
	background-color: var(--pn-mint-soft, #E6F2F0);
}

.elementor-element.pn-estimate-form .elementor-field-option input:checked + label::before {
	border-color: var(--pn-teal, #2A6B73);
	background-color: var(--pn-teal, #2A6B73);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m2.5 6.2 2.3 2.3 4.7-5'/%3E%3C/svg%3E");
}

.elementor-element.pn-estimate-form .elementor-field-option input:focus-visible + label {
	box-shadow: 0 0 0 4px rgba(42, 107, 115, .13);
}

/* Date, upload and notes */
.elementor-element.pn-estimate-form .elementor-field-group-date .elementor-field {
	max-width: 280px;
}

.elementor-element.pn-estimate-form .elementor-upload-field {
	padding: 14px !important;
	border-style: dashed !important;
	color: var(--pn-muted, #5A7078);
	font-size: 14px;
	cursor: pointer;
}

.elementor-element.pn-estimate-form .elementor-upload-field::file-selector-button {
	margin-right: 12px;
	padding: 8px 16px;
	border: 0;
	border-radius: 999px;
	background: var(--pn-mint-soft, #E6F2F0);
	color: var(--pn-teal, #2A6B73);
	font: 500 14px "DM Sans", sans-serif;
	cursor: pointer;
}

.elementor-element.pn-estimate-form textarea.elementor-field {
	min-height: 110px;
	resize: vertical;
}

@media (max-width: 767px) {
	.elementor-element.pn-estimate-form .elementor-field-type-radio .elementor-field-subgroup,
	.elementor-element.pn-estimate-form .elementor-field-type-checkbox .elementor-field-subgroup {
		grid-template-columns: 1fr 1fr;
	}

	.elementor-element.pn-estimate-form .elementor-field-group-type .elementor-field-subgroup {
		grid-template-columns: 1fr;
	}

	.elementor-element.pn-estimate-form .elementor-field-group-date .elementor-field {
		max-width: none;
	}
}

/* Multi-step: progress indicator */
.elementor-element.pn-estimate-form .e-form__indicators {
	align-items: flex-start;
	margin-bottom: 26px;
	padding: 0;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator {
	flex: none;
	gap: 7px;
	min-width: 48px;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator__number {
	width: 30px !important;
	height: 30px !important;
	margin: 0 auto !important;
	border: 1.5px solid var(--pn-line, #D5E4E2) !important;
	background: #FBFEFE !important;
	color: var(--pn-muted, #5A7078) !important;
	font: 500 12px/1 var(--pn-mono, "DM Mono", monospace) !important;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__number {
	border-color: var(--pn-teal, #2A6B73) !important;
	background: var(--pn-teal, #2A6B73) !important;
	color: #fff !important;
	box-shadow: 0 0 0 4px rgba(42, 107, 115, .13);
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number {
	border-color: var(--pn-teal, #2A6B73) !important;
	background: var(--pn-mint-soft, #E6F2F0) !important;
	color: var(--pn-teal, #2A6B73) !important;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator__label {
	color: var(--pn-muted, #5A7078) !important;
	font: 400 12px/1.3 "DM Sans", sans-serif !important;
	letter-spacing: 0 !important;
	white-space: nowrap;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__label {
	color: var(--pn-ink, #0C2C41) !important;
	font-weight: 600 !important;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator__separator {
	flex: 1 1 auto;
	min-width: 8px;
	height: 1.5px;
	margin: 15px 6px 0;
	background: var(--pn-line, #D5E4E2) !important;
}

.elementor-element.pn-estimate-form .e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator {
	background: var(--pn-teal, #2A6B73) !important;
}

/* Multi-step: Back / Next buttons */
.elementor-element.pn-estimate-form .e-form__buttons {
	display: flex;
	flex-wrap: nowrap;
	gap: 12px;
	margin-top: 8px;
	margin-bottom: 26px; /* room for the button shadow before the note below the form */
}

.elementor-element.pn-estimate-form .e-form__buttons__wrapper {
	flex: 1 1 auto;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-element.pn-estimate-form .e-form__buttons__wrapper.elementor-field-type-previous {
	flex: 0 0 auto;
}

.elementor-element.pn-estimate-form .e-form__buttons__wrapper__button-previous {
	padding-inline: 26px !important;
	border: 1.5px solid var(--pn-line, #D5E4E2) !important;
	background: #fff !important;
	color: var(--pn-teal, #2A6B73) !important;
	box-shadow: none !important;
}

.elementor-element.pn-estimate-form .e-form__buttons__wrapper__button-previous:hover {
	border-color: var(--pn-teal, #2A6B73) !important;
	transform: none;
}

@media (max-width: 767px) {
	/* Five equal columns so all steps fit the card width */
	.elementor-element.pn-estimate-form .e-form__indicators__indicator {
		flex: 1 1 0;
		min-width: 0;
	}

	.elementor-element.pn-estimate-form .e-form__indicators__indicator__separator {
		display: none;
	}

	.elementor-element.pn-estimate-form .e-form__indicators__indicator__label {
		font-size: 10.5px !important;
	}
}

@media (max-width: 359px) {
	/* Very small phones: only the current step keeps its label */
	.elementor-element.pn-estimate-form .e-form__indicators__indicator:not(.e-form__indicators__indicator--state-active) .e-form__indicators__indicator__label {
		visibility: hidden;
	}
}

/* Estimate form field icons.
   Drawn on the field wrapper instead of the input: Chrome's autofill removes an input's background image,
   which made the ZIP icon vanish when a saved value was picked. */
.elementor-element.pn-estimate-form .elementor-field-textual {
	background-image: none !important;
}

.elementor-element.pn-estimate-form .elementor-field-group-name, .elementor-element.pn-estimate-form .elementor-field-group-phone, .elementor-element.pn-estimate-form .elementor-field-group-email, .elementor-element.pn-estimate-form .elementor-field-group-zip, .elementor-element.pn-estimate-form .elementor-field-group-size, .elementor-element.pn-estimate-form .elementor-field-group-bedrooms, .elementor-element.pn-estimate-form .elementor-field-group-bathrooms, .elementor-element.pn-estimate-form .elementor-field-group-date {
	position: relative;
}

.elementor-element.pn-estimate-form .elementor-field-group:is(.elementor-field-group-name, .elementor-field-group-phone, .elementor-field-group-email, .elementor-field-group-zip, .elementor-field-group-size, .elementor-field-group-bedrooms, .elementor-field-group-bathrooms, .elementor-field-group-date)::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: 46px; /* label (26px) + half of the 56px input, minus half the icon */
	left: 22px; /* 7px column padding + 15px inside the field */
	width: 16px;
	height: 16px;
	background: var(--pn-ic) center / 16px 16px no-repeat;
	pointer-events: none;
}

.elementor-element.pn-estimate-form .elementor-field-group:is(.elementor-field-group-name, .elementor-field-group-phone, .elementor-field-group-email, .elementor-field-group-zip, .elementor-field-group-size, .elementor-field-group-bedrooms, .elementor-field-group-bathrooms, .elementor-field-group-date):focus-within::after {
	background-image: var(--pn-ic-focus);
}

/* The date field has no visible label */
.elementor-element.pn-estimate-form .elementor-field-group.elementor-field-group-date::after {
	top: 21px;
}

.elementor-element.pn-estimate-form .elementor-field-group-name {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%225.5%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M2.5%2014c.9-2.6%203-4%205.5-4s4.6%201.4%205.5%204%22%2F%3E%3C%2Fsvg%3E%0A");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%225.5%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M2.5%2014c.9-2.6%203-4%205.5-4s4.6%201.4%205.5%204%22%2F%3E%3C%2Fsvg%3E%0A");
}

.elementor-element.pn-estimate-form .elementor-field-group-phone {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5.2%201.8%206.6%205%205.1%206.3a9%209%200%200%200%204.6%204.6L11%209.4l3.2%201.4-.6%202.6a1%201%200%200%201-1.1.8C6.6%2013.6%202.4%209.4%201.8%203.5a1%201%200%200%201%20.8-1.1l2.6-.6Z%22%2F%3E%3C%2Fsvg%3E%0A");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5.2%201.8%206.6%205%205.1%206.3a9%209%200%200%200%204.6%204.6L11%209.4l3.2%201.4-.6%202.6a1%201%200%200%201-1.1.8C6.6%2013.6%202.4%209.4%201.8%203.5a1%201%200%200%201%20.8-1.1l2.6-.6Z%22%2F%3E%3C%2Fsvg%3E%0A");
}

.elementor-element.pn-estimate-form .elementor-field-group-email {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%223.5%22%20width%3D%2212%22%20height%3D%229%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22m2.5%204.5%205.5%204%205.5-4%22%2F%3E%3C%2Fsvg%3E%0A");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%223.5%22%20width%3D%2212%22%20height%3D%229%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22m2.5%204.5%205.5%204%205.5-4%22%2F%3E%3C%2Fsvg%3E%0A");
}

.elementor-element.pn-estimate-form .elementor-field-group-zip {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%2014.5s4.5-4.2%204.5-8A4.5%204.5%200%200%200%203.5%206.5c0%203.8%204.5%208%204.5%208Z%22%2F%3E%3Ccircle%20cx%3D%228%22%20cy%3D%226.5%22%20r%3D%221.6%22%2F%3E%3C%2Fsvg%3E%0A");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%2014.5s4.5-4.2%204.5-8A4.5%204.5%200%200%200%203.5%206.5c0%203.8%204.5%208%204.5%208Z%22%2F%3E%3Ccircle%20cx%3D%228%22%20cy%3D%226.5%22%20r%3D%221.6%22%2F%3E%3C%2Fsvg%3E%0A");
}

.elementor-element.pn-estimate-form .elementor-field-group-size {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.5%207.5%208%203l5.5%204.5V13a.8.8%200%200%201-.8.8H3.3a.8.8%200%200%201-.8-.8V7.5Z%22%2F%3E%3C%2Fsvg%3E%0A");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.5%207.5%208%203l5.5%204.5V13a.8.8%200%200%201-.8.8H3.3a.8.8%200%200%201-.8-.8V7.5Z%22%2F%3E%3C%2Fsvg%3E%0A");
}

.elementor-element.pn-estimate-form .elementor-field-group-bedrooms {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%203.5v10M2%2010h12M14%2013.5v-5a2%202%200%200%200-2-2H7.5V10%22%2F%3E%3Ccircle%20cx%3D%224.6%22%20cy%3D%228%22%20r%3D%221.4%22%2F%3E%3C%2Fsvg%3E");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%203.5v10M2%2010h12M14%2013.5v-5a2%202%200%200%200-2-2H7.5V10%22%2F%3E%3Ccircle%20cx%3D%224.6%22%20cy%3D%228%22%20r%3D%221.4%22%2F%3E%3C%2Fsvg%3E");
}

.elementor-element.pn-estimate-form .elementor-field-group-bathrooms {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M1.8%208h12.4v1.4a3.1%203.1%200%200%201-3.1%203.1H4.9a3.1%203.1%200%200%201-3.1-3.1V8Z%22%2F%3E%3Cpath%20d%3D%22M3.8%208V3.9a1.6%201.6%200%200%201%203.1-.5%22%2F%3E%3Cpath%20d%3D%22m4.6%2012.5-.6%201.7M11.4%2012.5l.6%201.7%22%2F%3E%3C%2Fsvg%3E");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M1.8%208h12.4v1.4a3.1%203.1%200%200%201-3.1%203.1H4.9a3.1%203.1%200%200%201-3.1-3.1V8Z%22%2F%3E%3Cpath%20d%3D%22M3.8%208V3.9a1.6%201.6%200%200%201%203.1-.5%22%2F%3E%3Cpath%20d%3D%22m4.6%2012.5-.6%201.7M11.4%2012.5l.6%201.7%22%2F%3E%3C%2Fsvg%3E");
}

.elementor-element.pn-estimate-form .elementor-field-group-date {
	--pn-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%235B9B9F%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%223%22%20width%3D%2212%22%20height%3D%2211%22%20rx%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M2%206.6h12M5.4%201.8v2.4M10.6%201.8v2.4%22%2F%3E%3C%2Fsvg%3E");
	--pn-ic-focus: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%232A6B73%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%223%22%20width%3D%2212%22%20height%3D%2211%22%20rx%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M2%206.6h12M5.4%201.8v2.4M10.6%201.8v2.4%22%2F%3E%3C%2Fsvg%3E");
}


/* Notes has no icon, so it doesn't need the icon gap */
.elementor-element.pn-estimate-form textarea.elementor-field {
	padding-left: 16px !important;
}

/* Keep autofilled fields in the site's colours instead of Chrome's blue */
.elementor-element.pn-estimate-form .elementor-field-textual:-webkit-autofill,
.elementor-element.pn-estimate-form .elementor-field-textual:-webkit-autofill:hover {
	-webkit-box-shadow: 0 0 0 1000px #FBFEFE inset !important;
	-webkit-text-fill-color: var(--pn-ink, #0C2C41) !important;
	caret-color: var(--pn-ink, #0C2C41);
}

.elementor-element.pn-estimate-form .elementor-field-textual:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 1000px #fff inset, 0 0 0 4px rgba(42, 107, 115, .13) !important;
}
