/* Per-page CSS for Elementor page 2188. */

/* Container layout */
.elementor-2188 .elementor-element[data-element_type="container"] {
 display: flex;
 flex-direction: column;
 align-items: stretch;
 width: 100%;
}
.elementor-2188 .e-con.e-parent {
 padding: 60px 20px;
}
.elementor-2188 .e-con-inner {
 max-width: 1200px;
 margin: 0 auto;
 padding: 20px 0;
 width: 100%;
 display: flex;
 flex-direction: column;
 gap: 30px;
}

/* Two-column rows */
.elementor-2188 .e-con-full.e-flex.e-child,
.elementor-2188 .e-con-boxed.e-flex.e-child {
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
 align-items: center;
 justify-content: center;
 gap: 40px;
}
@media (max-width: 768px) {
 .elementor-2188 .e-con-full.e-flex.e-child,
 .elementor-2188 .e-con-boxed.e-flex.e-child {
 flex-direction: column;
 text-align: center;
 }
}

/* Headings */
.elementor-2188 .elementor-widget-heading .elementor-heading-title {
 font-family: "Playfair Display", "Noto Serif Display", serif;
 font-weight: 500;
 color: #2c5f5d;
 text-align: center;
 margin: 0;
 line-height: 1.2;
 font-size: 32px;
}
.elementor-2188 > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-2188 > .e-con.e-parent:first-of-type .elementor-widget-heading:first-of-type .elementor-heading-title {
 font-size: 48px;
 margin-bottom: 30px;
 color: #2c5f5d;
}

/* Body text */
.elementor-2188 .elementor-widget-text-editor,
.elementor-2188 .elementor-widget-text-editor p {
 font-family: "Lato", sans-serif;
 font-size: 16px;
 line-height: 1.7;
 color: #444;
 text-align: center;
 max-width: 720px;
 margin-left: auto;
 margin-right: auto;
}

/* Images */
.elementor-2188 .elementor-widget-image {
 text-align: center;
}
.elementor-2188 .elementor-widget-image img {
 max-width: 240px;
 height: auto;
 margin: 0 auto;
 display: block;
}
/* Larger hero/feature images */
.elementor-2188 > .e-con.e-parent:first-of-type .elementor-widget-image img {
 max-width: 480px;
}

/* Section background alternation */
.elementor-2188 > .e-con.e-parent:nth-of-type(odd) {
 background-color: #FFF2D5;
}
.elementor-2188 > .e-con.e-parent:nth-of-type(even) {
 background-color: #ffffff;
}

/* Buttons */
.elementor-2188 .elementor-button {
 background-color: #2c5f5d;
 color: #fff !important;
 padding: 12px 32px;
 border-radius: 4px;
 font-family: "Lato", sans-serif;
 font-weight: 600;
 letter-spacing: 0.5px;
 text-decoration: none;
 display: inline-block;
}
.elementor-2188 .elementor-button:hover {
 background-color: #1a4040;
}

/* Widget vertical spacing */
.elementor-2188 .elementor-widget {
 margin-bottom: 20px;
}
.elementor-2188 .elementor-widget:last-child {
 margin-bottom: 0;
}

/* Lists (used on sustainability page) */
.elementor-2188 .elementor-widget-text-editor ul,
.elementor-2188 .elementor-widget-text-editor ol {
 text-align: left;
 max-width: 720px;
 margin: 16px auto;
 padding-left: 24px;
 color: #444;
 font-family: "Lato", sans-serif;
 line-height: 1.8;
}
.elementor-2188 .elementor-widget-text-editor li {
 margin-bottom: 8px;
}
