body.es.elementor-kit-7 {
	--e-global-color-primary: #34402f;
	--e-global-color-secondary: #4b5a43;
	--e-global-color-text: #2a2823;
	--e-global-color-accent: #b4483c;
	--e-global-color-1390010: #fbf6ee;
	--e-global-color-0f3d541: #b4483c;
	--e-global-color-055b42c: #e2eadb;
	--e-global-typography-primary-font-family: "Newsreader";
	--e-global-typography-primary-font-weight: 450;
	--e-global-typography-687feae-font-family: "Newsreader";
	--e-global-typography-687feae-font-weight: 450;
	background-color: var(--es-cream);
}

body.es .site-main,
body.es .elementor-location-single,
body.es .elementor-location-archive { padding-top: 16px; }

body.es .elementor :is(h1, h2, h3, h4).elementor-heading-title,
body.es .site-main :is(h1, h2, h3) {
	font-family: var(--es-serif);
	letter-spacing: -.012em;
}

body.es .site-main [data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
body.es .site-main [data-elementor-type="wp-page"] > .elementor-section:first-child {
	width: auto;
	margin: 0 clamp(8px, 2vw, 24px);
	border-radius: 0 0 var(--es-r-lg) var(--es-r-lg);
	overflow: hidden;
}

body.es .site-main .elementor-widget-image img,
body.es .site-main .elementor-image-box-img img,
body.es .site-main .gallery img,
body.es .site-main .wp-block-image img,
body.es .site-main .elementor-widget-image-gallery img {
	border-radius: var(--es-r-md);
}

body.es .site-main .e-con.e-child {
	border-radius: var(--es-r-md);
}

body.es .site-main .elementor-button,
body.es .site-main button:not(.es-burger),
body.es .site-main input[type="submit"],
body.es .site-main input[type="button"] {
	border-radius: 999px;
	font-family: var(--es-sans);
	font-weight: 600;
	letter-spacing: .01em;
	transition: background-color .2s, transform .2s;
}

body.es .site-main .elementor-button:hover { transform: translateY(-1px); }

body.es .site-main input[type="text"],
body.es .site-main input[type="email"],
body.es .site-main input[type="tel"],
body.es .site-main input[type="number"],
body.es .site-main input[type="date"],
body.es .site-main input[type="time"],
body.es .site-main select,
body.es .site-main textarea,
body.es .site-main .elementor-field-textual {
	border-radius: var(--es-r-sm);
	border: 1px solid rgba(42, 40, 35, .18);
	background: var(--es-paper);
	padding: 12px 16px;
	font-family: var(--es-sans);
	transition: border-color .2s, box-shadow .2s;
}

body.es .site-main input:focus,
body.es .site-main select:focus,
body.es .site-main textarea:focus {
	border-color: var(--es-olive-2);
	box-shadow: 0 0 0 3px var(--es-sage);
	outline: none;
}

body.es .site-main .elementor-accordion-item,
body.es .site-main .elementor-toggle-item,
body.es .site-main .e-n-accordion-item {
	border-radius: var(--es-r-sm);
	overflow: hidden;
}

body.es .site-main .elementor-widget-google_maps iframe,
body.es .site-main iframe[src*="google.com/maps"] {
	border-radius: var(--es-r-lg);
}

body.es .page-header .entry-title { color: var(--es-olive); }

body.es .site-main + .es-footer,
body.es main + .es-footer { margin-top: clamp(48px, 6vw, 80px); }

.es-prose .wp-block-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 32px 0; padding: 0; }
.es-prose .wp-block-gallery.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.es-prose .wp-block-gallery.columns-1 { grid-template-columns: 1fr; }
.es-prose .wp-block-gallery .wp-block-image { margin: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--es-r-sm); }
.es-prose .wp-block-gallery img { display: block; width: 100%; height: 100%; object-fit: cover; }
.es-prose .wp-block-list { padding-left: 1.2em; }

@media (max-width: 600px) {
	.es-prose .wp-block-gallery, .es-prose .wp-block-gallery.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
}
