/* =========================================================
   Contact — Elementor rebuild (post 32401)
   Layout helpers + Forminator skin. Colours/type/spacing for
   headings live in the Elementor widgets so they stay editable.
   ========================================================= */

/* Detail rows: icon in a small circle, label + value beside it. */
.pk-contact-row > .elementor-container { align-items: flex-start; }
.pk-contact-ico .elementor-widget-icon .elementor-icon {
	width: 40px;
	height: 40px;
	border: 1px solid var(--accent, #966954);
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.pk-contact-ico .elementor-widget-icon .elementor-icon svg,
.pk-contact-ico .elementor-widget-icon .elementor-icon i { font-size: 15px; width: 15px; height: 15px; }
.pk-contact-row .elementor-widget-heading { margin-bottom: 4px !important; }
.pk-contact-row .elementor-heading-title { margin: 0; }
.pk-contact-row .elementor-widget-text-editor p { margin: 0; }
.pk-contact-row .elementor-widget-text-editor a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgba(150, 105, 84, 0.35);
	transition: border-color 0.25s ease, color 0.25s ease;
}
.pk-contact-row .elementor-widget-text-editor a:hover { color: var(--accent, #966954); border-color: var(--accent, #966954); }
.pk-contact-row > .elementor-container > .elementor-column:last-child > .elementor-widget-wrap { padding-left: 16px; }

/* Card column gets a subtle lift and the same rhythm as the Private Occasions cards. */
.pk-contact-card { transition: transform 0.35s ease; }
.pk-contact-card .elementor-widget-heading .elementor-heading-title { margin: 0; }

/* ---------------- Forminator (material style) skin ---------------- */
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-label,
.pk-contact .forminator-ui .forminator-label {
	font-family: "Inter", sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #4A4F4D !important;
	margin-bottom: 8px !important;
}
.pk-contact .forminator-ui .forminator-required { color: var(--accent, #966954) !important; }
.pk-contact .forminator-ui .forminator-input,
.pk-contact .forminator-ui .forminator-textarea {
	font-family: "Inter", sans-serif !important;
	font-size: 16px !important;
	color: #1C2321 !important;
	background: #F5F4F1 !important;
	border: 1px solid rgba(28, 35, 33, 0.10) !important;
	border-radius: 12px !important;
	padding: 14px 16px !important;
	box-shadow: none !important;
	transition: border-color 0.25s ease, background 0.25s ease;
}
.pk-contact .forminator-ui .forminator-textarea { min-height: 150px; resize: vertical; }
.pk-contact .forminator-ui .forminator-input:focus,
.pk-contact .forminator-ui .forminator-textarea:focus {
	outline: none !important;
	background: #FFFFFF !important;
	border-color: var(--accent, #966954) !important;
}
.pk-contact .forminator-ui .forminator-input::placeholder,
.pk-contact .forminator-ui .forminator-textarea::placeholder { color: #9A9D9B; }
/* Material skin draws an underline bar beneath the field; hide it. */
.pk-contact .forminator-ui.forminator-design--material .forminator-field::after,
.pk-contact .forminator-ui.forminator-design--material .forminator-input::after,
.pk-contact .forminator-ui.forminator-design--material .forminator-textarea::after { display: none !important; }
.pk-contact .forminator-ui .forminator-description { font-family: "Inter", sans-serif; font-size: 12px; color: #8A8E8C; }
.pk-contact .forminator-ui .forminator-row { margin-bottom: 20px !important; }
.pk-contact .forminator-ui .forminator-row.forminator-row-last { margin-bottom: 0 !important; }
.pk-contact .forminator-ui .forminator-button.forminator-button-submit {
	font-family: "Inter", sans-serif !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #FFFFFF !important;
	background: var(--accent, #966954) !important;
	border: 1px solid var(--accent, #966954) !important;
	border-radius: 999px !important;
	padding: 16px 34px !important;
	height: auto !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transition: background 0.25s ease, transform 0.25s ease;
}
.pk-contact .forminator-ui .forminator-button.forminator-button-submit:hover {
	background: #1C2321 !important;
	border-color: #1C2321 !important;
	transform: translateY(-1px);
}
.pk-contact .forminator-ui .forminator-response-message { font-family: "Inter", sans-serif; border-radius: 12px; }

@media (max-width: 767px) {
	.pk-contact-card { border-radius: 18px !important; }
}

/* Tablet + mobile: keep the icon beside the label/value in a fixed-width column. */
@media (max-width: 1024px) {
	.pk-contact-row > .elementor-container { flex-wrap: nowrap; }
	.pk-contact-row > .elementor-container > .pk-contact-ico { width: 52px !important; flex: 0 0 52px; }
	.pk-contact-row > .elementor-container > .elementor-column:last-child { width: auto !important; flex: 1 1 auto; min-width: 0; }
	.pk-contact-row > .elementor-container > .elementor-column:last-child > .elementor-widget-wrap { padding-left: 12px; }
}

/* ---------------- Placeholders + focus state ---------------- */
/* The material skin hides placeholders behind floating labels; our labels sit above
   the field, so show the placeholder as a soft hint. */
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input--wrap .forminator-input::placeholder,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input-with-icon .forminator-input::placeholder,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-textarea--wrap .forminator-textarea::placeholder,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input::placeholder,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-textarea::placeholder {
	opacity: 1 !important;
	color: #A3A6A4 !important;
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-style: italic;
	transition: color 0.25s ease;
}
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input:focus::placeholder,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-textarea:focus::placeholder { color: #C4B3AA !important; }
/* Kill the material green underline / textarea outline on focus. */
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input--wrap,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-textarea--wrap { border: 0 !important; background: transparent !important; box-shadow: none !important; }
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-input--wrap:after,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-textarea--wrap:after { display: none !important; content: none !important; }
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-is_active .forminator-input,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-is_active .forminator-textarea {
	border-color: var(--accent, #966954) !important;
	background: #FFFFFF !important;
	box-shadow: 0 0 0 3px rgba(150, 105, 84, 0.12) !important;
}
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-has_error .forminator-input,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-has_error .forminator-textarea { border-color: #C0392B !important; }
.pk-contact .forminator-ui .forminator-error-message { font-family: "Inter", sans-serif; font-size: 12px; color: #C0392B; margin-top: 6px; }

/* ---------------- Responsive ---------------- */
/* Tablet: the two columns stack (set in Elementor); tighten the card and the band. */
@media (max-width: 1024px) {
	.pk-contact-info > .elementor-widget-wrap { padding-right: 0 !important; padding-bottom: 48px !important; }
	.pk-contact-card > .elementor-widget-wrap { padding: 36px !important; }
	.pk-contact-info .elementor-widget-text-editor:not(.pk-contact-row *) { max-width: 560px; }
}
/* Tall-narrow tablet and phones. */
@media (max-width: 767px) {
	.pk-contact-card > .elementor-widget-wrap { padding: 28px 20px !important; }
	.pk-contact .forminator-ui .forminator-input,
	.pk-contact .forminator-ui .forminator-textarea { font-size: 16px !important; padding: 13px 14px !important; }
	.pk-contact .forminator-ui .forminator-button.forminator-button-submit { width: 100%; text-align: center; }
	.pk-contact .forminator-ui .forminator-row { margin-bottom: 16px !important; }
}
@media (max-width: 380px) {
	.pk-contact-card > .elementor-widget-wrap { padding: 22px 16px !important; }
}

/* Labels: the material skin floats them inside the field; keep ours static above it. */
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-label,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-floating--input .forminator-label {
	position: static !important;
	display: block !important;
	transform: none !important;
	top: auto !important;
	left: auto !important;
	line-height: 1.4 !important;
	padding: 0 !important;
	margin: 0 0 8px !important;
	pointer-events: auto !important;
}
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-input--wrap,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-textarea--wrap,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-floating--input .forminator-input--wrap,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field.forminator-floating--input .forminator-textarea--wrap { padding: 0 !important; margin: 0 !important; }
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-input,
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-textarea { height: auto !important; min-height: 0; }
.pk-contact .forminator-ui.forminator-custom-form[data-design="material"] .forminator-field .forminator-textarea { min-height: 150px; }
