@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

:root {
  --wb-forest: #1A3C34;
  --wb-sage: #7BAE8C;
  --wb-sage-light: #B8D4C0;
  --wb-coral: #E8705A;
  --wb-coral-dark: #C9533C;
  --wb-cream: #F7F3ED;
  --wb-white: #FAFAF8;
  --wb-ink: #2D2D2D;
  --wb-mid: #6B7280;
  --wb-border: #E5E0D8;
}

body { font-family: 'DM Sans', sans-serif; color: #2D2D2D; background: #FAFAF8; }

h1,h2,h3,h4,h5 { font-family: 'Playfair Display', serif; color: #1A3C34; }

.wb-btn-primary {
  background: #E8705A; color: #fff; border-radius: 50px; padding: 14px 30px;
  font-family: 'DM Sans', sans-serif; font-weight: 600; font-size: 0.95rem;
  display: inline-block; transition: all .28s ease; border: none; cursor: pointer;
}
.wb-btn-primary:hover { background: #C9533C; transform: translateY(-2px); color: #fff; }

.wb-btn-secondary {
  background: transparent; color: #1A3C34; border: 2px solid #1A3C34;
  border-radius: 50px; padding: 12px 28px; font-family: 'DM Sans', sans-serif;
  font-weight: 600; font-size: 0.95rem; display: inline-block; transition: all .28s ease;
}
.wb-btn-secondary:hover { background: #1A3C34; color: #fff; transform: translateY(-2px); }

.wb-btn-white {
  background: #fff; color: #1A3C34; border-radius: 50px; padding: 14px 30px;
  font-family: 'DM Sans', sans-serif; font-weight: 600; font-size: 0.95rem;
  display: inline-block; transition: all .28s ease;
}
.wb-btn-white:hover { background: #F7F3ED; transform: translateY(-2px); color: #1A3C34; }

.wb-eyebrow {
  font-family: 'DM Sans', sans-serif; font-size: 0.75rem; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase; color: #E8705A;
  display: block; margin-bottom: 0.5rem;
}

.wb-card {
  background: #fff; border: 1px solid #E5E0D8; border-radius: 16px;
  transition: all .28s ease;
}
.wb-card:hover { transform: translateY(-6px); box-shadow: 0 8px 32px rgba(26,60,52,.12); }

.wb-section-cream { background: #F7F3ED; }
.wb-section-forest { background: #1A3C34; }
.wb-section-white { background: #FAFAF8; }

.wb-hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,0.12); color: rgba(255,255,255,0.9);
  border: 1px solid rgba(255,255,255,0.2); border-radius: 50px;
  padding: 6px 16px; font-size: 0.82rem; font-weight: 500; font-family: 'DM Sans', sans-serif;
}

.wb-trust-strip { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; justify-content: center; }
.wb-trust-item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.88rem; font-weight: 500; color: #6B7280; font-family: 'DM Sans', sans-serif; }

.wb-stat-num { font-family: 'Playfair Display', serif; font-size: 2.2rem; font-weight: 700; color: #fff; display: block; }
.wb-stat-label { font-size: 0.82rem; color: rgba(255,255,255,0.6); font-family: 'DM Sans', sans-serif; }

.wb-tag { display: inline-block; background: rgba(255,255,255,0.15); color: #fff; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 12px; border-radius: 50px; font-family: 'DM Sans', sans-serif; }

.wb-step-num { width: 72px; height: 72px; border-radius: 50%; background: #1A3C34; color: #fff; font-family: 'Playfair Display', serif; font-size: 1.5rem; font-weight: 700; display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem; box-shadow: 0 8px 32px rgba(26,60,52,.12); }

.wb-faq-item { border-bottom: 1px solid #E5E0D8; padding: 1.25rem 0; }
.wb-faq-q { font-weight: 600; font-size: 0.95rem; color: #1A3C34; cursor: pointer; font-family: 'DM Sans', sans-serif; }
.wb-faq-a { font-size: 0.9rem; color: #6B7280; font-family: 'DM Sans', sans-serif; line-height: 1.7; padding-top: 0.75rem; display: none; }
.wb-faq-item.open .wb-faq-a { display: block; }

.wpforms-submit { background: #E8705A !important; color: #fff !important; border-radius: 50px !important; padding: 14px 30px !important; font-family: 'DM Sans', sans-serif !important; font-weight: 600 !important; font-size: 0.95rem !important; border: none !important; cursor: pointer !important; width: 100% !important; transition: all .28s ease !important; }
.wpforms-submit:hover { background: #C9533C !important; }
.wpforms-field input, .wpforms-field textarea, .wpforms-field select { border: 1.5px solid #E5E0D8 !important; border-radius: 8px !important; font-family: 'DM Sans', sans-serif !important; padding: 12px 16px !important; }
.wpforms-field input:focus, .wpforms-field textarea:focus, .wpforms-field select:focus { border-color: #7BAE8C !important; outline: none !important; box-shadow: 0 0 0 3px rgba(123,174,140,.15) !important; }
.wpforms-field-label { font-family: 'DM Sans', sans-serif !important; font-weight: 600 !important; color: #1A3C34 !important; font-size: 0.85rem !important; }
