.elementor-383 .elementor-element.elementor-element-299f65fb{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-383 .elementor-element.elementor-element-32e895df{--display:flex;}.elementor-383 .elementor-element.elementor-element-bd2b05e{--display:flex;}.elementor-383 .elementor-element.elementor-element-71f82f3f{--display:flex;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-383 .elementor-element.elementor-element-299f65fb{--min-height:30px;--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-ab6f9b2 *//* === Sosie Wines — Commerce7 Booking Flow === */

body {
  /* Typography */
  --c7-font-family: 'Roboto', sans-serif;
  --c7-heading-font-family: 'brandon-grotesque', sans-serif;
  --c7-heading-font-weight: 900;
  --c7-heading-text-color: #612D2C;
  --c7-body-text-color: #432D2C;
  --c7-alt-text-color: #7A7A7A;

  /* Brand primary — deep brown, used for buttons, links, selected states */
  --c7-primary-color: #612D2C;
  --c7-primary-color-text: #612D2C;
  --c7-primary-color-dark: #432D2C;
  --c7-primary-color-focus: rgba(97, 45, 44, 0.2);

  /* Backgrounds */
  --c7-bg: #FFFFFF;
  --c7-bg-alt: #F5EFE4;       /* lighter cream than page bg, for content cards */
  --c7-border-color: #D4C9B5;

  /* Subtler shapes — less rounded, more refined */
  --c7-border-radius: 2px;
  --c7-button-border-radius: 0px;
  --c7-field-border-radius: 2px;
  --c7-modal-border-radius: 2px;
  --c7-block-border-radius: 2px;

  /* Buttons — solid brown with cream text */
  --c7-primary-button-bg: #612D2C;
  --c7-primary-button-bg-hover: #8B0013;   /* wine-red on hover */
  --c7-primary-button-text-color: #FFFFFF;

  /* Secondary/alt buttons */
  --c7-alt-button-bg: transparent;
  --c7-alt-button-bg-hover: #F5EFE4;
  --c7-alt-button-text-color: #612D2C;

  /* Links */
  --c7-link-color: #8B0013;

  /* Form fields */
  --c7-field-bg: #FFFFFF;
  --c7-field-border-color: #D4C9B5;
  --c7-field-focus-color: rgba(97, 45, 44, 0.1);

  /* Block content (cards) */
  --c7-block-bg: #FFFFFF;
  --c7-block-border-color: #D4C9B5;
}

/* === Targeted fixes for things variables don't cover === */

/* Force button text colour — the reserve buttons have a stuck text colour */
.c7-content .c7-btn,
.c7-content .c7-btn--primary,
.c7-content button {
  color: #FFFFFF !important;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 500;
  padding: 14px 24px !important;
  transition: background 0.2s ease;
}

/* The "Tasting" heading and other C7 headings — let them breathe */
.c7-content .c7-h1,
.c7-content .c7-h2 {
  font-family: 'brandon-grotesque', sans-serif;
  color: #612D2C;
  letter-spacing: 0.02em;
  margin-bottom: 8px;
}

/* The price line — make it secondary */
.c7-content .c7-product__add-to-cart__price {
  color: #7A7A7A;
  font-size: 14px;
}

/* "Closest available times" label — turn it into a proper section heading */
.c7-content .c7-reservation-type__next-availability > *:first-child,
.c7-content .c7-label {
  font-family: 'brandon-grotesque', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
  color: #612D2C;
  font-weight: 700;
}

/* Reserve time slot buttons — give them breathing room */
.c7-content .c7-reservation-type__next-availability button {
  margin: 4px 6px;
}

/* The main content area — add some breathing room and a refined container */
.c7-content {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 24px 80px;
  background: #FFFFFF;
  font-family: 'Roboto', sans-serif;
}

/* The reservation type card */
.c7-content .c7-reservation-type {
  background: #FFFFFF;
  padding: 32px;
  border: 1px solid #D4C9B5;
  border-radius: 2px;
  margin-top: 24px;
}

/* Search form — date/time/guests .elementor-383 .elementor-element.elementor-element-ab6f9b2 at the top */
.c7-content .c7-reservation__search {
  background: #F5EFE4;
  padding: 24px;
  border: 1px solid #D4C9B5;
  border-radius: 2px;
  margin-bottom: 32px;
}

/* Form labels */
.c7-content .c7-form__field label,
.c7-content .c7-label {
  font-family: 'brandon-grotesque', sans-serif;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #612D2C;
  font-weight: 700;
}

/* Form inputs and selects */
.c7-content select,
.c7-content input[type="text"],
.c7-content input[type="email"],
.c7-content input[type="tel"],
.c7-content input[type="date"] {
  border: 1px solid #D4C9B5 !important;
  background: #FFFFFF !important;
  color: #432D2C !important;
  padding: 10px 14px !important;
  font-family: 'Roboto', sans-serif !important;
  font-size: 14px !important;
}

.c7-content select:focus,
.c7-content input:focus {
  border-color: #612D2C !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(97, 45, 44, 0.1) !important;
}

/* Remove redundant grey box around each picker field
   (the inputs already carry their own border) */
.c7-reservation__search .c7-form__field {
  border: none !important;
  background: transparent !important;
}
.c7-reservation__search .c7-form__group {
  border: none !important;
}

/* Align Check Availability button with the input fields
   (button has no label above it, so bottom-align the row) */
.c7-reservation__search .c7-form__group {
  align-items: flex-end !important;
}
.c7-reservation__search .c7-btn--primary {
  height: 46px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}/* End custom CSS */