/* Per-page CSS for Elementor page 1665. */

/* -------------------------------------------------------------------------- */
/* Container framework — sections fill width, content caps at 1200 */
/* -------------------------------------------------------------------------- */
.elementor-1665 .e-con.e-parent {
 width: 100%;
 display: flex;
 flex-direction: column;
 align-items: stretch;
 padding: 60px 20px;
 box-sizing: border-box;
}
.elementor-1665 .e-con.e-parent > .e-con-inner,
.elementor-1665 .e-con-boxed.e-flex.e-child > .e-con-inner {
 max-width: 1200px;
 width: 100%;
 margin: 0 auto;
 display: flex;
 flex-direction: column;
 gap: 24px;
 padding: 0;
 box-sizing: border-box;
}

/* Default child container = single column with stacked widgets */
.elementor-1665 .e-con-full.e-flex.e-child,
.elementor-1665 .e-con-boxed.e-flex.e-child {
 display: flex;
 flex-direction: column;
 flex: 1 1 0;
 min-width: 0;
 gap: 16px;
 align-items: stretch;
 justify-content: center;
}

/* -------------------------------------------------------------------------- */
/* Per-section layout overrides */
/* -------------------------------------------------------------------------- */

/* Section 1 — hero: just the video, full bleed (no horizontal padding) */
.elementor-1665 .e-con.e-parent.elementor-element-39f50ba {
 padding: 0;
 background: #000;
}

/* Section 2 — "Crafted for Connoisseurs" / Frame-69 / "Brew Your Way":
 * three columns side by side.
 * The extra .e-con.e-parent / .e-con-boxed.e-flex.e-child class on each
 * selector matches the base rule's specificity so the row direction wins. */
.elementor-1665 .e-con.e-parent.elementor-element-cc59c65 > .e-con-inner {
 flex-direction: row;
 flex-wrap: wrap;
 align-items: center;
 gap: 32px;
}

/* Section 5 — "Coffee for Connoisseurs": image + text, two columns */
.elementor-1665 .e-con.e-parent.elementor-element-6daf249 > .e-con-inner {
 flex-direction: row;
 flex-wrap: wrap;
 align-items: center;
 gap: 40px;
}

/* Section 7 — Frame-106/107/108 lifestyle trio, three columns */
.elementor-1665 .e-con.e-parent.elementor-element-d60a277 > .e-con-inner {
 flex-direction: row;
 flex-wrap: wrap;
 align-items: stretch;
 gap: 24px;
}

/* Section 9.a — Follow-Us strip: divider / heading / icon / divider */
.elementor-1665 .e-con-boxed.e-flex.e-child.elementor-element-48bc22b > .e-con-inner {
 flex-direction: row;
 flex-wrap: nowrap;
 align-items: center;
 justify-content: center;
 gap: 16px;
 margin-bottom: 24px;
}
.elementor-1665 .elementor-element-48bc22b .elementor-widget-image {
 flex: 1;
 min-width: 0;
}
.elementor-1665 .elementor-element-48bc22b .elementor-widget-heading,
.elementor-1665 .elementor-element-48bc22b .elementor-widget-icon {
 flex: 0 0 auto;
}

/* Section 9.b — Product trio (Group-52984935 / Espresso-10 / Group-52984936) */
.elementor-1665 .e-con-boxed.e-flex.e-child.elementor-element-f13a0bb > .e-con-inner {
 flex-direction: row;
 flex-wrap: wrap;
 align-items: center;
 justify-content: center;
 gap: 24px;
}

/* -------------------------------------------------------------------------- */
/* Typography */
/* -------------------------------------------------------------------------- */
.elementor-1665 .elementor-widget-heading .elementor-heading-title {
 font-family: "Playfair Display", "Noto Serif Display", serif;
 color: #1F201B;
 margin: 0;
 line-height: 1.2;
 font-weight: 500;
}
.elementor-1665 h2.elementor-heading-title { font-size: 36px; }
.elementor-1665 h4.elementor-heading-title { font-size: 22px; }
.elementor-1665 h6.elementor-heading-title {
 font-size: 14px;
 font-weight: 400;
 letter-spacing: 1px;
 text-transform: uppercase;
 color: #555;
}

.elementor-1665 .elementor-widget-text-editor,
.elementor-1665 .elementor-widget-text-editor p {
 font-family: "Lato", sans-serif;
 font-size: 16px;
 line-height: 1.7;
 color: #333;
 margin: 0;
}

/* Centered copy in standalone heading-only sections */
.elementor-1665 .elementor-element-037b656 .elementor-widget-heading .elementor-heading-title,
.elementor-1665 .elementor-element-037b656 .elementor-widget-text-editor,
.elementor-1665 .elementor-element-7f6ac5c .elementor-widget-heading .elementor-heading-title,
.elementor-1665 .elementor-element-7f6ac5c .elementor-widget-text-editor,
.elementor-1665 .elementor-element-9b87eec > .e-con-inner > .elementor-widget-heading .elementor-heading-title,
.elementor-1665 .elementor-element-836df5d .elementor-widget-heading .elementor-heading-title {
 text-align: center;
}
.elementor-1665 .elementor-element-037b656 .elementor-widget-text-editor,
.elementor-1665 .elementor-element-7f6ac5c .elementor-widget-text-editor {
 max-width: 720px;
 margin-left: auto;
 margin-right: auto;
}

/* "Crafted for Connoisseurs" / "Brew Your Way" left+right column copy */
.elementor-1665 .elementor-element-08fd1e4,
.elementor-1665 .elementor-element-e6d8272 {
 text-align: left;
}
.elementor-1665 .elementor-element-edce0f8 .elementor-heading-title {
 font-family: "Playfair Display", serif;
 font-style: italic;
 color: #537052;
 font-size: 18px;
 font-weight: 400;
}

/* -------------------------------------------------------------------------- */
/* Images & media */
/* -------------------------------------------------------------------------- */
.elementor-1665 .elementor-widget-image { text-align: center; }
.elementor-1665 .elementor-widget-image img {
 max-width: 100%;
 height: auto;
 display: inline-block;
}

/* Section 1 hero video — full bleed */
.elementor-1665 .elementor-element-917614e .elementor-widget-container,
.elementor-1665 .elementor-element-917614e .elementor-wrapper {
 width: 100%;
}
.elementor-1665 .elementor-element-917614e video {
 width: 100%;
 height: auto;
 max-height: 80vh;
 object-fit: cover;
 display: block;
}

/* Section 2 middle illustration (Frame-69) */
.elementor-1665 .elementor-element-2aa3f77 img { max-width: 360px; }

/* Section 5 about-us image (7480-1-1) */
.elementor-1665 .elementor-element-488c3ad img { max-width: 100%; border-radius: 8px; }

/* Section 7 lifestyle frames (Frame-106/107/108) */
.elementor-1665 .elementor-element-139e3a7 img,
.elementor-1665 .elementor-element-c9c05fa img,
.elementor-1665 .elementor-element-1955452 img {
 width: 100%;
 max-width: 360px;
 border-radius: 12px;
}

/* Section 9 vector dividers */
.elementor-1665 .elementor-element-73eb086,
.elementor-1665 .elementor-element-8dddfde {
 flex: 1;
 min-width: 0;
}
.elementor-1665 .elementor-element-73eb086 img,
.elementor-1665 .elementor-element-8dddfde img {
 width: 100%;
 max-width: none;
 height: 2px;
 object-fit: cover;
}

/* Section 9 product trio bottles */
.elementor-1665 .elementor-element-fdeae92 img,
.elementor-1665 .elementor-element-aa49d49 img,
.elementor-1665 .elementor-element-475f3d6 img {
 width: 100%;
 max-width: 320px;
}

/* -------------------------------------------------------------------------- */
/* Buttons */
/* -------------------------------------------------------------------------- */
.elementor-1665 .elementor-button-wrapper { text-align: inherit; }
.elementor-1665 .elementor-button {
 background-color: #126c39;
 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;
 border: 0;
 cursor: pointer;
 transition: background-color 0.2s ease;
}
.elementor-1665 .elementor-button:hover { background-color: #0e5630; }

.elementor-1665 .elementor-align-center,
.elementor-1665 .elementor-align-center .elementor-button-wrapper {
 text-align: center;
}

/* -------------------------------------------------------------------------- */
/* Section backgrounds */
/* -------------------------------------------------------------------------- */
.elementor-1665 > .e-con.e-parent {
 background-color: #FFF2D5;
}
.elementor-1665 > .e-con.e-parent.elementor-element-39f50ba {
 background-color: #000;
}
.elementor-1665 > .e-con.e-parent.elementor-element-322ab98,
.elementor-1665 > .e-con.e-parent.elementor-element-9b87eec {
 background-color: #1f201b;
 color: #fff;
}
.elementor-1665 > .e-con.e-parent.elementor-element-9b87eec .elementor-heading-title {
 color: #fff;
}

/* -------------------------------------------------------------------------- */
/* Testimonials list (testi-listindia) */
/* The card surface (black bg, gold heading, white body) is owned by the theme
 * (themes/percol/assets/css/core.css). Here we only handle the grid layout
 * and let testi-item be a transparent grid cell so the theme's .texti-box
 * styling shines through. */
/* -------------------------------------------------------------------------- */
.elementor-1665 .testi-listindia {
 list-style: none;
 padding: 0;
 margin: 30px 0;
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
 gap: 20px;
}
.elementor-1665 .testi-listindia .testi-item {
 list-style: none;
 background: transparent;
 border: 0;
 padding: 0;
 margin: 0;
 display: flex;
}
.elementor-1665 .testi-listindia .testi-item > .texti-box {
 width: 100%;
 border-radius: 8px;
}

/* -------------------------------------------------------------------------- */
/* Newsletter form */
/* -------------------------------------------------------------------------- */
.elementor-1665 .sub-form .wpcf7,
.elementor-1665 .sub-form .wpcf7-form,
.elementor-1665 .sub-form .elementor-shortcode {
 width: 100%;
 margin: 0;
 padding: 0;
}
/* Newsletter section — slim padding so form sits close to footer */
.elementor-1665 .e-con.e-parent.elementor-element-836df5d {
 padding-top: 32px;
 padding-bottom: 16px;
}
.elementor-1665 .e-con.e-parent.elementor-element-836df5d > .e-con-inner {
 gap: 8px;
}
.elementor-1665 .elementor-element-836df5d .wpcf7-form,
.elementor-1665 .elementor-element-836df5d form {
 margin: 0 !important;
}
.elementor-1665 .sub-form .wpcf7-form p {
 display: flex;
 gap: 8px;
 justify-content: center;
 align-items: stretch;
 margin: 16px auto 0;
 max-width: 540px;
 flex-wrap: wrap;
 padding: 4px;
 background: #fff;
 border-radius: 6px;
 box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
.elementor-1665 .sub-form .wpcf7-form br { display: none; }
.elementor-1665 .sub-form .wpcf7-form-control-wrap {
 flex: 1 1 240px;
 display: flex;
}
.elementor-1665 .sub-form input[type="email"] {
 flex: 1;
 padding: 10px 14px;
 border: 0;
 border-radius: 4px;
 font-size: 16px;
 min-width: 0;
 width: 100%;
 font-family: "Playfair Display", serif;
 background: transparent;
 outline: none;
}
.elementor-1665 .sub-form input[type="submit"] {
 background-color: #F4B82E;
 color: #0D1210;
 padding: 10px 28px;
 border: 0;
 border-radius: 4px;
 cursor: pointer;
 font-family: "Playfair Display", serif;
 font-weight: 600;
 font-size: 15px;
 flex: 0 0 auto;
}
.elementor-1665 .sub-form input[type="submit"]:hover {
 background-color: #e0a51d;
}

/* -------------------------------------------------------------------------- */
/* Mobile */
/* -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
 .elementor-1665 .e-con.e-parent { padding: 48px 20px; }
}

@media (max-width: 768px) {
 .elementor-1665 .e-con.e-parent { padding: 40px 16px; }
 .elementor-1665 .e-con.e-parent.elementor-element-cc59c65 > .e-con-inner,
 .elementor-1665 .e-con.e-parent.elementor-element-6daf249 > .e-con-inner,
 .elementor-1665 .e-con.e-parent.elementor-element-d60a277 > .e-con-inner,
 .elementor-1665 .e-con-boxed.e-flex.e-child.elementor-element-f13a0bb > .e-con-inner {
 flex-direction: column;
 }
 .elementor-1665 .elementor-element-08fd1e4,
 .elementor-1665 .elementor-element-e6d8272 {
 text-align: center;
 }
 .elementor-1665 h2.elementor-heading-title { font-size: 28px; }
}
