/* Floral Wedding-Inspired Bootstrap 5.3 Theme */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Forum&display=swap');

:root {
  --bs-body-bg: #f3efe7;
  --bs-body-color: #7a4c3c;

  --bs-primary: #769c88;
  --bs-secondary: #c47a45;
  --bs-success: #b7d7b3;
  --bs-warning: #f2e694;
  --bs-info: #8cc0a7;
  --bs-light: #ffffff;
  --bs-dark: #7a4c3c;

  --bs-font-sans-serif: 'Playfair Display', serif;
  --bs-font-monospace: 'Courier New', monospace;

  --bs-border-radius: 0.5rem;
  --bs-border-color: #c47a45;

  --bs-link-color: var(--bs-primary);
  --bs-link-hover-color: #5a7c6e;

  --bs-btn-font-weight: 500;
  --bs-btn-border-radius: 0.5rem;

  --bs-input-bg: #fff8f0;
  --bs-input-border-color: #c47a45;
  --bs-input-focus-border-color: #769c88;
  --bs-input-focus-box-shadow: 0 0 0 0.25rem rgba(118, 156, 136, 0.25);

  --bs-navbar-bg: #fff8f0;
  --bs-navbar-color: #7a4c3c;
  --bs-navbar-hover-color: #c47a45;
  --bs-navbar-brand-color: #7a4c3c;
  --bs-navbar-brand-hover-color: #c47a45;
  --bs-navbar-toggler-border-color: #c47a45;
}

body {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  font-family: var(--bs-font-sans-serif);
}

a {
  color: var(--bs-link-color);
  text-decoration: underline;
}

a:hover,
a:focus {
  color: var(--bs-link-hover-color);
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--bs-primary);
  font-family: 'Forum', serif;
  font-weight: normal;
}

.btn-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.btn-primary:hover {
  background-color: #5a7c6e;
  border-color: #5a7c6e;
}

.card {
  border-color: var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  background-color: #fffefc;
  box-shadow: 0 0 0.25rem rgba(118, 156, 136, 0.1); /* soft green accent */
}

.section-accent {
  background-color: #b7d7b3;
  color: #7a4c3c;
  padding: 2rem;
  border-radius: var(--bs-border-radius);
}

.badge-green {
  background-color: #769c88;
  color: #fff;
  font-weight: 500;
  border-radius: 0.25rem;
  padding: 0.25em 0.5em;
}

input[type="text"],
input[type="email"],
textarea {
  background-color: var(--bs-input-bg);
  border-color: var(--bs-input-border-color);
  border-radius: var(--bs-border-radius);
  box-shadow: none;
}

input:focus,
textarea:focus {
  border-color: var(--bs-input-focus-border-color);
  box-shadow: var(--bs-input-focus-box-shadow);
}

.border-floral {
  border: none;
  display: block;
  margin: 2rem auto;
  height: 80px; /* adjust to fit your image's aspect ratio */
  width: 60%;
  background-image: url('floral-divider.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto; /* scale width, maintain aspect ratio */
}

@media (min-width: 576px) {
  .border-floral {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .border-floral {
    width: 40%;
  }
}

@media (min-width: 992px) {
  .border-floral {
    width: 30%;
  }
}

@media (min-width: 1200px) {
  .border-floral {
    width: 25%;
  }
}

.navbar {
  background-color: var(--bs-navbar-bg) !important;
  color: var(--bs-navbar-color);
  font-family: var(--bs-font-sans-serif);
  border-bottom: 1px solid var(--bs-border-color);
}

.navbar-brand {
  color: var(--bs-navbar-brand-color) !important;
  font-weight: 500;
  font-family: 'Forum', serif;
}

.navbar-brand:hover {
  color: var(--bs-navbar-brand-hover-color) !important;
}

.navbar-nav .nav-link {
  color: var(--bs-navbar-color);
  transition: color 0.2s;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
  color: var(--bs-navbar-hover-color);
}

.navbar-toggler {
  border-color: var(--bs-navbar-toggler-border-color);
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%237a4c3c' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

