.page-id-381 .site-main,
.page-id-381 .elementor-location-single {
	max-width: none;
	padding: 0;
}

.page-id-381 .lop-contact-page {
	color: #29291f;
	background: #fbf8f2;
}

.page-id-381 .lop-contact-page .elementor-widget:not(:last-child),
.page-id-381 .lop-contact-main .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}

.page-id-381 .lop-contact-page p,
.page-id-381 .lop-contact-main p {
	margin: 0;
}

.page-id-381 .lop-contact-hero {
	min-height: 295px;
	background-position: center right;
	background-size: cover;
}

.page-id-381 .lop-contact-hero > .elementor-container {
	min-height: 295px;
	align-items: center;
}

.page-id-381 .lop-contact-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(250,247,240,.98) 0%, rgba(250,247,240,.93) 31%, rgba(250,247,240,.20) 62%, transparent 100%);
}

.page-id-381 .lop-contact-hero > .elementor-container {
	position: relative;
}

.page-id-381 .lop-contact-hero-copy > .elementor-element-populated {
	padding: 30px 16px !important;
}

.page-id-381 .lop-contact-hero-title .elementor-heading-title,
.page-id-381 .lop-contact-title .elementor-heading-title {
	color: #25251c;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 500;
	line-height: 1;
}

.page-id-381 .lop-contact-hero-title .elementor-heading-title {
	font-size: 64px;
}

.page-id-381 .lop-contact-hero-title::after,
.page-id-381 .lop-contact-section-heading::after {
	content: "";
	display: block;
	width: 64px;
	height: 2px;
	margin: 13px 0 15px;
	background: #7f8617;
	transform: rotate(-1deg);
}

.page-id-381 .lop-contact-subtitle {
	color: #7b8214;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 25px;
	line-height: 1.2;
}

.page-id-381 .lop-contact-intro {
	max-width: 410px;
	margin-top: 12px !important;
	font-size: 15px;
	line-height: 1.55;
}

.page-id-381 .lop-contact-main {
	padding: 15px 24px;
	background: #fff;
}

.page-id-381 .lop-contact-main > .elementor-container {
	max-width: 1320px;
	column-gap: 26px;
}

.page-id-381 .lop-contact-content > .elementor-element-populated {
	padding: 0 !important;
}

.page-id-381 .lop-contact-side > .elementor-element-populated,
.page-id-381 .lop-form-card > .elementor-element-populated,
.page-id-381 .lop-map-card > .elementor-element-populated {
	border: 1px solid #ded6c8;
	border-radius: 8px;
}

.page-id-381 .lop-contact-side > .elementor-element-populated {
	padding: 17px 20px !important;
	background: #f7f2e9;
}

.page-id-381 .lop-info-card > .elementor-element-populated {
	padding: 0 !important;
}

.page-id-381 .lop-contact-section-heading .elementor-heading-title,
.page-id-381 .lop-form-heading .elementor-heading-title,
.page-id-381 .lop-pro-heading .elementor-heading-title,
.page-id-381 .lop-map-heading .elementor-heading-title {
	color: #29291f;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 29px;
	font-weight: 600;
	line-height: 1.1;
}

.page-id-381 .lop-contact-section-heading {
	position: relative;
	padding-left: 39px;
}

.page-id-381 .lop-contact-section-heading::before {
	content: "";
	position: absolute;
	left: 0;
	top: -2px;
	width: 29px;
	height: 29px;
	background: url("../../../../uploads/2026/08/lopyleo-about/icon-olive.svg") center / contain no-repeat;
}

.page-id-381 .lop-contact-section-heading::after {
	display: none;
}

.page-id-381 .lop-info-list {
	display: grid;
	gap: 15px;
}

.page-id-381 .lop-info-row {
	display: grid;
	grid-template-columns: 42px 1fr;
	gap: 15px;
	align-items: start;
	font-size: 15px;
	line-height: 1.45;
}

.page-id-381 .lop-info-row img {
	width: 32px;
	height: 32px;
}

.page-id-381 .lop-info-row strong {
	display: block;
	margin-bottom: 4px;
	font-size: 16px;
}

.page-id-381 .lop-info-row small {
	font-size: 13px;
	line-height: 1.35;
}

.page-id-381 .lop-info-row a {
	color: #29291f;
}

.page-id-381 .lop-social-row {
	margin-top: 13px;
	padding-left: 57px;
}

.page-id-381 .lop-social-row a {
	display: inline-block;
	margin-right: 8px;
}

.page-id-381 .lop-social-row img {
	width: 23px;
	height: 23px;
}

.page-id-381 .lop-pro-mini {
	margin-top: 18px !important;
}

.page-id-381 .lop-pro-mini > .elementor-container {
	min-height: 150px;
	border: 1px solid #d6cda8;
	border-radius: 8px;
	background: #eeead5;
	overflow: hidden;
}

.page-id-381 .lop-pro-mini-art .elementor-widget-container {
	text-align: center;
}

.page-id-381 .lop-pro-mini-art img {
	width: 94px !important;
	max-width: 100% !important;
	height: 122px !important;
	border-radius: 0;
	object-fit: contain;
}

.page-id-381 .lop-pro-mini-copy > .elementor-element-populated {
	padding: 18px 16px 18px 0 !important;
}

.page-id-381 .lop-pro-heading .elementor-heading-title {
	font-size: 26px;
}

.page-id-381 .lop-pro-text {
	margin: 8px 0 12px !important;
	font-size: 15px;
	line-height: 1.45;
}

.page-id-381 .lop-small-button .elementor-button,
.page-id-381 .lop-contact-form .elementor-button,
.page-id-381 .lop-map-button .elementor-button {
	border: 1px solid #7f8617;
	border-radius: 24px;
	background: #7f8617;
	color: #fff;
	font-weight: 600;
}

.page-id-381 .lop-small-button .elementor-button {
	padding: 10px 18px;
	font-size: 12px;
}

.page-id-381 .lop-form-card > .elementor-element-populated {
	padding: 12px 22px !important;
	background: #fff;
}

.page-id-381 .lop-form-heading-row > .elementor-container {
	align-items: center;
}

.page-id-381 .lop-form-heading-row .elementor-column > .elementor-element-populated {
	padding: 0 !important;
}

.page-id-381 .lop-form-heading .elementor-heading-title {
	font-size: 28px;
}

.page-id-381 .lop-form-intro {
	margin-top: 5px !important;
	font-size: 13px;
	color: #646158;
}

.page-id-381 .lop-form-icon {
	text-align: right;
}

.page-id-381 .lop-form-icon img {
	width: 46px;
	height: 46px;
}

.page-id-381 .lop-contact-form {
	margin-top: 10px !important;
}

.page-id-381 .lop-contact-form .elementor-form-fields-wrapper {
	margin-left: -7px;
	margin-right: -7px;
}

.page-id-381 .lop-contact-form .elementor-field-group {
	padding-left: 7px;
	padding-right: 7px;
	margin-bottom: 9px;
}

.page-id-381 .lop-contact-form .elementor-field-label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.page-id-381 .lop-contact-form input.elementor-field,
.page-id-381 .lop-contact-form select.elementor-field {
	min-height: 39px;
	padding: 8px 13px;
	border: 1px solid #d7d3cb;
	border-radius: 7px;
	background: #fff;
	color: #29291f;
	font-size: 14px;
}

.page-id-381 .lop-contact-form .elementor-select-wrapper.elementor-field {
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.page-id-381 .lop-contact-form textarea.elementor-field {
	height: 79px;
	min-height: 79px;
	resize: vertical;
}

.page-id-381 .lop-contact-form .elementor-field:focus {
	border-color: #7f8617;
	box-shadow: 0 0 0 2px rgba(127,134,23,.12);
}

.page-id-381 .lop-contact-form .elementor-field-type-submit {
	text-align: center;
}

.page-id-381 .lop-contact-form .elementor-field-type-submit .elementor-button {
	margin-right: auto;
	margin-left: auto;
}

.page-id-381 .lop-contact-form .elementor-field-group-type,
.page-id-381 .lop-contact-form .elementor-field-group-message {
	position: relative;
}

.page-id-381 .lop-contact-form .elementor-field-group-type .elementor-field-label,
.page-id-381 .lop-contact-form .elementor-field-group-message .elementor-field-label {
	position: absolute;
	z-index: 2;
	top: 5px;
	left: 20px;
	width: auto;
	height: auto;
	margin: 0;
	clip: auto;
	overflow: visible;
	color: #5c5a52;
	font-size: 10px;
	font-weight: 400;
	line-height: 1;
	white-space: normal;
}

.page-id-381 .lop-contact-form .elementor-field-group-type select.elementor-field {
	height: 48px;
	padding-top: 16px;
}

.page-id-381 .lop-contact-form .elementor-field-group-message textarea.elementor-field {
	padding-top: 23px;
}

.page-id-381 .lop-contact-form .elementor-button {
	min-width: 205px;
	max-width: 205px;
	width: auto !important;
	padding: 10px 24px;
	font-size: 14px;
}

.page-id-381 .lop-contact-form .elementor-message {
	margin: 12px 7px 0;
	font-size: 14px;
}

.page-id-381 .lop-map-card {
	margin-top: 13px !important;
}

.page-id-381 .lop-map-card > .elementor-element-populated {
	padding: 0 !important;
	background: #f7f2e9;
	overflow: hidden;
}

.page-id-381 .lop-map-row > .elementor-container {
	min-height: 198px;
}

.page-id-381 .lop-map-image .elementor-widget-container,
.page-id-381 .lop-map-image img {
	width: 100%;
	height: 198px;
}

.page-id-381 .lop-map-row .lop-map-image > .elementor-element-populated {
	padding: 0 !important;
}

.page-id-381 .lop-map-image img {
	object-fit: cover;
}

.page-id-381 .lop-map-copy > .elementor-element-populated {
	padding: 25px 20px !important;
}

.page-id-381 .lop-map-heading .elementor-heading-title {
	font-size: 23px;
}

.page-id-381 .lop-map-text {
	margin: 12px 0 18px !important;
	font-size: 13px;
	line-height: 1.45;
}

.page-id-381 .lop-map-button .elementor-button {
	padding: 10px 18px;
	background: transparent;
	color: #5f6510;
	font-size: 12px;
}

.page-id-381 .lop-contact-services {
	padding: 10px 24px;
	background: #f0e9de;
}

.page-id-381 .lop-contact-services > .elementor-container {
	max-width: 1320px;
	column-gap: 18px;
}

.page-id-381 .lop-contact-services .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}

.page-id-381 .lop-service-item > .elementor-element-populated {
	min-height: 70px;
	padding: 7px 18px !important;
	border-right: 1px solid #d7cebf;
	display: grid;
	grid-template-columns: 60px 1fr;
	grid-template-rows: auto auto;
	column-gap: 15px;
	align-content: center;
}

.page-id-381 .lop-service-item:last-child > .elementor-element-populated {
	border-right: 0;
}

.page-id-381 .lop-service-item .elementor-widget-image {
	grid-row: 1 / 3;
}

.page-id-381 .lop-service-item .elementor-widget-image img {
	width: 54px;
	height: 54px;
}

.page-id-381 .lop-service-title .elementor-heading-title {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 18px;
	font-weight: 600;
}

.page-id-381 .lop-service-copy {
	margin-top: 4px !important;
	font-size: 12px;
	line-height: 1.35;
}

@media (max-width: 1024px) {
	.page-id-381 .lop-contact-hero-title .elementor-heading-title { font-size: 54px; }
	.page-id-381 .lop-contact-main > .elementor-container { column-gap: 18px; }
	.page-id-381 .lop-contact-side > .elementor-element-populated { padding: 24px 20px !important; }
	.page-id-381 .lop-form-card > .elementor-element-populated { padding: 22px !important; }
}

@media (max-width: 767px) {
	.page-id-381 .lop-contact-hero,
	.page-id-381 .lop-contact-hero > .elementor-container { min-height: 166px; }
	.page-id-381 .lop-contact-hero { background-position: 68% center; }
	.page-id-381 .lop-contact-hero::before { background: linear-gradient(90deg, rgba(250,247,240,.98) 0%, rgba(250,247,240,.88) 52%, rgba(250,247,240,.18) 100%); }
	.page-id-381 .lop-contact-hero-copy { width: 100%; }
	.page-id-381 .lop-contact-hero-copy > .elementor-element-populated { padding: 12px 24px !important; }
	.page-id-381 .lop-contact-hero-title .elementor-heading-title { font-size: 36px; }
	.page-id-381 .lop-contact-hero-title::after { margin: 8px 0; }
	.page-id-381 .lop-contact-subtitle { font-size: 15px; }
	.page-id-381 .lop-contact-intro { max-width: 220px; margin-top: 5px !important; font-size: 9px; line-height: 1.35; }
	.page-id-381 .lop-contact-main { padding: 20px 15px 28px; }
	.page-id-381 .lop-contact-side,
	.page-id-381 .lop-contact-content { width: 100%; }
	.page-id-381 .lop-map-side-space { display: none; }
	.page-id-381 .lop-contact-map-section .lop-contact-content { width: 100% !important; }
	.page-id-381 .lop-contact-side { margin-bottom: 12px; }
	.page-id-381 .lop-contact-side > .elementor-element-populated { padding: 0 !important; border: 0; background: transparent; }
	.page-id-381 .lop-info-card > .elementor-element-populated { padding: 13px 16px !important; border: 1px solid #ded6c8; border-radius: 8px; background: #f7f2e9; }
	.page-id-381 .lop-contact-section-heading .elementor-heading-title { font-size: 25px; }
	.page-id-381 .lop-info-list { gap: 13px; }
	.page-id-381 .lop-info-row { grid-template-columns: 39px 1fr; gap: 12px; font-size: 14px; line-height: 1.4; }
	.page-id-381 .lop-info-row img { width: 29px; height: 29px; }
	.page-id-381 .lop-info-row strong { font-size: 15px; }
	.page-id-381 .lop-info-row small { font-size: 12px; line-height: 1.3; }
	.page-id-381 .lop-social-row { margin-top: 11px; padding-left: 51px; }
	.page-id-381 .lop-pro-mini { margin-top: 14px !important; }
	.page-id-381 .lop-pro-mini > .elementor-container { min-height: 128px; }
	.page-id-381 .lop-pro-mini-art img { width: 70px !important; height: 92px !important; }
	.page-id-381 .lop-pro-mini-art { width: 28%; }
	.page-id-381 .lop-pro-mini-copy { width: 72%; }
	.page-id-381 .lop-pro-mini-copy > .elementor-element-populated { padding: 13px 13px 13px 0 !important; }
	.page-id-381 .lop-pro-heading .elementor-heading-title { font-size: 23px; }
	.page-id-381 .lop-pro-text { font-size: 14px; line-height: 1.4; }
	.page-id-381 .lop-form-card > .elementor-element-populated { padding: 24px 15px 20px !important; border-color: #252817; background: #252817; }
	.page-id-381 .lop-form-heading .elementor-heading-title,
	.page-id-381 .lop-form-intro { color: #fff; }
	.page-id-381 .lop-form-heading .elementor-heading-title { font-size: 28px; }
	.page-id-381 .lop-form-heading-copy { width: 80%; }
	.page-id-381 .lop-form-heading-icon { width: 20%; }
	.page-id-381 .lop-contact-form .elementor-field-group { width: 100%; }
	.page-id-381 .lop-contact-form .elementor-field,
	.page-id-381 .lop-contact-form select.elementor-field { min-height: 48px; background: #fff; }
	.page-id-381 .lop-contact-form .elementor-button { width: 100% !important; }
	.page-id-381 .lop-contact-form .elementor-button { max-width: none; }
	.page-id-381 .lop-map-row .elementor-column { width: 100%; }
	.page-id-381 .lop-map-image img,
	.page-id-381 .lop-map-image .elementor-widget-container { height: 220px; }
	.page-id-381 .lop-map-copy > .elementor-element-populated { padding: 24px 20px !important; }
	.page-id-381 .lop-contact-services { padding: 18px 15px; }
	.page-id-381 .lop-service-item { width: 100%; }
	.page-id-381 .lop-service-item > .elementor-element-populated { min-height: 88px; border-right: 0; border-bottom: 1px solid #d7cebf; }
	.page-id-381 .lop-service-item:last-child > .elementor-element-populated { border-bottom: 0; }
}
