/* Start custom CSS *//* ==========================================================
   ROSE HOUSE SUPPLIES — CONTACT PAGE
   ========================================================== */
.rh-contact-page {
  --rh-cream:   #F4EFE6;
  --rh-bone:    #ede7da;
  --rh-white:   #ffffff;
  --rh-sage:    #3a4a3b;
  --rh-sage-dk: #2a3730;
  --rh-gold:    #a68a5f;
  --rh-gold-lt: #c9b48a;
  --rh-ink:     #1D1B17;
  --rh-ink-mid: #5a5a54;
  --rh-border:  #d8d2c4;
  --rh-serif:   'Fraunces', 'Georgia', serif;
  --rh-sans:    'Inter', system-ui, sans-serif;
  font-family: var(--rh-sans);
}

.rh-contact-inner {
  max-width: 1200px;
  margin: 0 auto;
}

.rh-contact-intro {
  font-family: var(--rh-sans);
  font-size: 17px;
  line-height: 1.6;
  color: var(--rh-ink-mid);
  max-width: 560px;
  margin: 0 auto;
}

.rh-section-head-center .rh-contact-intro { margin-left: auto; margin-right: auto; }

/* ── Layout ── */
.rh-contact-layout {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 56px;
  align-items: start;
  margin-top: 56px;
}

.rh-form-eyebrow,
.rh-section-head-center .rh-eyebrow { font-family: var(--rh-sans); }

.rh-form-eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--rh-gold);
  margin-bottom: 20px;
}

/* ==========================================================
   WPFORMS
   ========================================================== */
.rh-wpforms-wrap {
  background: var(--rh-white);
  border: 1px solid var(--rh-border);
  border-top: 2px solid var(--rh-gold);
  border-radius: 2px;
  padding: 34px 32px;
  box-shadow: 0 12px 32px -16px rgba(42,55,48,.18);
}

.rh-wpforms-wrap .wpforms-container { margin: 0 !important; }
.rh-wpforms-wrap .wpforms-form .wpforms-field { padding: 0 0 18px !important; }

.rh-wpforms-wrap .wpforms-field-label {
  font-family: var(--rh-sans) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--rh-sage) !important;
  margin-bottom: 8px !important;
}
.rh-wpforms-wrap .wpforms-required-label { color: var(--rh-gold) !important; }

.rh-wpforms-wrap .wpforms-field input[type="text"],
.rh-wpforms-wrap .wpforms-field input[type="email"],
.rh-wpforms-wrap .wpforms-field input[type="tel"],
.rh-wpforms-wrap .wpforms-field input[type="url"],
.rh-wpforms-wrap .wpforms-field input[type="number"],
.rh-wpforms-wrap .wpforms-field select,
.rh-wpforms-wrap .wpforms-field textarea {
  width: 100% !important;
  font-family: var(--rh-sans) !important;
  font-size: 14px !important;
  color: var(--rh-ink) !important;
  background: var(--rh-bone) !important;
  border: 1px solid var(--rh-border) !important;
  border-radius: 2px !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
  transition: border-color .2s ease, background .2s ease !important;
}
.rh-wpforms-wrap .wpforms-field input:focus,
.rh-wpforms-wrap .wpforms-field select:focus,
.rh-wpforms-wrap .wpforms-field textarea:focus {
  border-color: var(--rh-sage) !important;
  background: var(--rh-white) !important;
  outline: none !important;
}
.rh-wpforms-wrap .wpforms-field textarea { min-height: 130px !important; resize: vertical !important; }

.rh-wpforms-wrap .wpforms-field-description {
  font-family: var(--rh-sans) !important;
  font-size: 12px !important;
  color: var(--rh-ink-mid) !important;
  margin-top: 6px !important;
}

/* Name field First/Last alignment */
.rh-wpforms-wrap .wpforms-field-row { margin: 0 !important; width: 100% !important; }
.rh-wpforms-wrap .wpforms-field-row .wpforms-field-row-block { padding: 0 8px !important; }
.rh-wpforms-wrap .wpforms-field-row .wpforms-field-row-block:first-child { padding-left: 0 !important; }
.rh-wpforms-wrap .wpforms-field-row .wpforms-field-row-block:last-child { padding-right: 0 !important; }

/* Errors */
.rh-wpforms-wrap .wpforms-error { border-color: #b3503e !important; }
.rh-wpforms-wrap label.wpforms-error {
  font-size: 11px !important;
  color: #b3503e !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Submit button — matches .rh-btn-primary */
.rh-wpforms-wrap .wpforms-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: 100% !important;
  padding: 16px 30px !important;
  font-family: var(--rh-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  background: var(--rh-sage) !important;
  color: var(--rh-cream) !important;
  border: 1px solid var(--rh-sage) !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: background .3s ease, color .3s ease, border-color .3s ease !important;
}
.rh-wpforms-wrap .wpforms-submit:hover {
  background: var(--rh-gold) !important;
  border-color: var(--rh-gold) !important;
  color: var(--rh-ink) !important;
}

/* Confirmation message */
.rh-contact-page .wpforms-confirmation-container-full {
  background: var(--rh-bone) !important;
  border: 1px solid var(--rh-border) !important;
  border-top: 2px solid var(--rh-gold) !important;
  border-radius: 2px !important;
  color: var(--rh-ink) !important;
  font-family: var(--rh-sans) !important;
  padding: 24px 26px !important;
}

/* ==========================================================
   DETAILS PANEL
   ========================================================== */
.rh-contact-details-col .rh-info-panel {
  background: var(--rh-white);
  border: 1px solid var(--rh-border);
  border-top: 2px solid var(--rh-gold);
  border-radius: 2px;
  padding: 30px 30px 12px;
  box-shadow: 0 12px 32px -16px rgba(42,55,48,.18);
}

.rh-contact-details-col .rh-info-head {
  padding-bottom: 18px;
  margin-bottom: 6px;
  border-bottom: 1px solid var(--rh-border);
}
.rh-contact-details-col .rh-info-eyebrow {
  font-family: var(--rh-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--rh-gold);
}

.rh-contact-details-col .rh-info-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.rh-contact-details-col .rh-info-item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 18px 0;
  border-bottom: 1px solid var(--rh-border);
}
.rh-contact-details-col .rh-info-item:last-child { border-bottom: none; }

.rh-contact-details-col .rh-info-ico {
  width: 38px; height: 38px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  border-radius: 2px;
  background: var(--rh-bone);
  border: 1px solid var(--rh-border);
  color: var(--rh-sage);
}

.rh-contact-details-col .rh-info-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 1px;
}
.rh-contact-details-col .rh-info-label {
  font-family: var(--rh-sans);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--rh-ink-mid);
}
.rh-contact-details-col .rh-info-value,
.rh-contact-details-col a.rh-info-value {
  font-family: var(--rh-sans) !important;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500;
  color: var(--rh-ink);
  text-decoration: none;
}
.rh-contact-details-col a.rh-info-value { color: var(--rh-sage); transition: color .2s ease; }
.rh-contact-details-col a.rh-info-value:hover { color: var(--rh-gold); }

/* Opening hours as a tidy two-column mini-grid */
.rh-contact-details-col .rh-info-hours {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 16px;
  font-weight: 400;
}
.rh-contact-details-col .rh-info-hours span:nth-child(odd) { color: var(--rh-ink-mid); }
.rh-contact-details-col .rh-info-hours span:nth-child(even) { color: var(--rh-ink); font-weight: 500; }

@media (max-width: 900px) {
  .rh-contact-details-col .rh-info-panel { padding: 24px 22px 8px; }
}

.rh-contact-details-col .rh-info-label {
  text-align: left;
}/* End custom CSS */