/*
Theme Name:   Gauley Bridge Flower Shop
Theme URI:    https://gauleybridgeflowershop.com
Description:  Divi 5 child theme for Gauley Bridge Flower Shop
Author:       Gauley Bridge Flower Shop
Template:     Divi
Version:      1.0.0
Text Domain:  gbfs
*/

/* ============================================
   IMPORT GOOGLE FONTS
   ============================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=Jost:wght@300;400;500&display=swap');

/* ============================================
   GLOBAL BASE
   ============================================ */
body {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  background-color: #F7F3ED;
  color: #1C1C1C;
}

h1, h2, h3, h4, h5, h6,
.et_pb_slide_title,
.et_pb_module_header {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
}

p, li, label, input, select, textarea, button {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
}

/* ============================================
   COLOUR TOKENS (reference comments)
   Forest green:   #1E3A2F
   Dark section:   #2A3028
   Ivory bg:       #F7F3ED
   Blush accent:   #D9B8A7
   Warm border:    #C8B89A
   Sage text:      #5A6B5E
   Sage icon:      #5A8A60
   Sage light:     #A8C4A0
   ============================================ */

/* ============================================
   DIVI SECTION OVERRIDES
   ============================================ */
.et_pb_section {
  padding: 60px 0;
}

.et_pb_row {
  width: 90%;
  max-width: 1100px;
}

/* ============================================
   NAVIGATION
   ============================================ */
#main-header,
#main-header .et-menu-nav {
  background-color: #F7F3ED !important;
  border-bottom: 1px solid #C8B89A;
}

#main-header .et_pb_menu .et-menu a,
#main-header .et-menu > li > a {
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5A6B5E !important;
}

#main-header .et_pb_menu .et-menu a:hover,
#main-header .et-menu > li > a:hover {
  color: #1E3A2F !important;
}

#logo {
  font-family: 'Cormorant Garamond', serif;
}

/* ============================================
   BUTTONS
   ============================================ */
.et_pb_button {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  padding: 12px 28px !important;
}

.et_pb_button_0,
.et_pb_button.gbfs-btn-primary {
  background-color: #1E3A2F !important;
  color: #F7F3ED !important;
  border: 1px solid #1E3A2F !important;
}

.et_pb_button_0:hover,
.et_pb_button.gbfs-btn-primary:hover {
  background-color: #2A5040 !important;
  border-color: #2A5040 !important;
}

.et_pb_button.gbfs-btn-outline {
  background-color: transparent !important;
  color: #F7F3ED !important;
  border: 1px solid #A8C4A0 !important;
}

.et_pb_button.gbfs-btn-outline:hover {
  background-color: rgba(168, 196, 160, 0.15) !important;
}

/* ============================================
   FLUENTFORMS STYLING
   Match the shop's aesthetic
   ============================================ */
.fluentform .ff-el-input--label label {
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5A6B5E;
}

.fluentform .ff-el-form-control,
.fluentform input[type="text"],
.fluentform input[type="email"],
.fluentform input[type="tel"],
.fluentform input[type="date"],
.fluentform select,
.fluentform textarea {
  font-family: 'Jost', sans-serif;
  font-size: 13px;
  font-weight: 300;
  color: #1C1C1C;
  background-color: #ffffff;
  border: 1px solid #C8B89A;
  border-radius: 0;
  padding: 10px 14px;
  box-shadow: none;
  transition: border-color 0.2s ease;
}

.fluentform .ff-el-form-control:focus,
.fluentform input:focus,
.fluentform select:focus,
.fluentform textarea:focus {
  border-color: #5A8A60;
  outline: none;
  box-shadow: none;
}

.fluentform .ff_submit_btn_wrapper .ff-btn-submit,
.fluentform button[type="submit"] {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background-color: #1E3A2F !important;
  color: #F7F3ED !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 14px 32px !important;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.fluentform .ff_submit_btn_wrapper .ff-btn-submit:hover,
.fluentform button[type="submit"]:hover {
  background-color: #2A5040 !important;
}

.fluentform .ff-message-success {
  font-family: 'Jost', sans-serif;
  font-size: 14px;
  color: #5A8A60;
  border-left: 2px solid #5A8A60;
  padding: 12px 16px;
  background: rgba(90, 138, 96, 0.06);
  border-radius: 0;
}

.fluentform .ff-el-is-error .ff-el-form-control {
  border-color: #C0392B;
}

.fluentform .error.text-danger {
  font-family: 'Jost', sans-serif;
  font-size: 12px;
  color: #C0392B;
}

/* ============================================
   BLURB MODULES (service cards)
   ============================================ */
.et_pb_blurb_content {
  font-family: 'Jost', sans-serif;
}

.et_pb_blurb .et_pb_module_header {
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px;
  font-weight: 400;
  color: #1E3A2F;
}

.et_pb_blurb_description {
  font-size: 13px;
  line-height: 1.65;
  color: #5A6B5E;
}

/* ============================================
   FOOTER
   ============================================ */
#main-footer {
  background-color: #1C1C1C;
  border-top: none;
}

#main-footer .footer-widget h4,
#main-footer .et_pb_widget_title {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  color: #F7F3ED;
}

#main-footer p,
#main-footer li,
#main-footer a {
  font-family: 'Jost', sans-serif;
  font-size: 13px;
  font-weight: 300;
  color: #888888;
}

#main-footer a:hover {
  color: #A8C4A0;
}

#footer-bottom {
  background-color: #1C1C1C;
  border-top: 1px solid #2A2A2A;
}

#footer-bottom,
#footer-bottom p {
  font-family: 'Jost', sans-serif;
  font-size: 12px;
  color: #666666;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 767px) {
  .et_pb_row {
    width: 95%;
  }

  .et_pb_section {
    padding: 40px 0;
  }
}

@media (max-width: 479px) {
  h1.gbfs-hero-headline {
    font-size: 52px;
  }
}
