
/*
  Barn Red + Barn Wood theme overrides
  Drop-in CSS that works with most vanilla + Divi-like classnames.
  Safe to include sitewide; uses CSS variables and low-specificity overrides.
*/

:root{
  --brand-primary: #8A1C1C;           /* barn red */
  --brand-primary-700: #761616;
  --brand-primary-600: #6a1414;
  --brand-primary-500: #8A1C1C;
  --brand-primary-300: #b23b3b;
  --brand-accent:  #A67C52;            /* warm wood accent */
  --brand-accent-700:#8a673f;
  --brand-bg:      #2f241a;            /* deep barn wood */
  --brand-surface: #3e2c1e;            /* raised panels/cards */
  --brand-surface-2:#4b3523;
  --brand-text:    #F7F3EE;            /* warm off-white */
  --brand-text-2:  #E9E2D9;
  --brand-muted:   #c8b8a6;
  --brand-link:    #F2D3B3;
  --ring:          rgba(138,28,28,0.35);
}

/* Base */
html, body{
  background: var(--brand-bg);
  color: var(--brand-text);
}
a{ color: var(--brand-link); }
a:hover, a:focus{ color: #fff2e0; text-decoration: underline; }

/* Panels / cards */
.card, .panel, .widget, .et_pb_module, .et_pb_column, .et_pb_row, .et_pb_section, .et_pb_with_border {
  background-color: var(--brand-surface);
  color: var(--brand-text);
  border: 1px solid rgba(255,255,255,0.06);
  box-shadow: 0 8px 18px rgba(0,0,0,0.3);
}

/* Buttons (generic) */
button,
.btn,
input[type="submit"],
input[type="button"],
input[type="reset"],
a.button,
.et_pb_button {
  background: var(--brand-primary);
  color: #fff !important;
  border: 1px solid var(--brand-primary-700);
  border-radius: 8px;
  padding: 0.7em 1.15em;
  font-weight: 600;
  letter-spacing: .2px;
  transition: background .2s ease, transform .06s ease, box-shadow .2s ease;
  box-shadow: 0 6px 14px rgba(138,28,28,0.28);
}
button:hover,
.btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
a.button:hover,
.et_pb_button:hover {
  background: var(--brand-primary-600);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(138,28,28,0.33);
}
button:active,
.btn:active,
input[type="submit"]:active,
input[type="button"]:active,
a.button:active,
.et_pb_button:active {
  transform: translateY(0);
}

/* Outline / Secondary buttons */
.btn-outline, .button-outline, .et_pb_button.et_pb_bg_layout_light {
  background: transparent;
  color: var(--brand-primary) !important;
  border: 2px solid var(--brand-primary);
  box-shadow: none;
}
.btn-outline:hover, .button-outline:hover, .et_pb_button.et_pb_bg_layout_light:hover {
  background: var(--brand-primary);
  color: #fff !important;
}

/* Inputs */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
select, textarea {
  background: var(--brand-surface-2);
  color: var(--brand-text);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: .6em .8em;
  outline: none;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--brand-primary-300);
  box-shadow: 0 0 0 3px var(--ring);
}

/* Headers / nav */
header, .site-header, .et_header_style_left, .et-l, .et_pb_menu {
  background: linear-gradient(180deg, #3a281a, #2f241a);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.et_pb_menu__menu>nav>ul>li>a, .et-menu li a {
  color: var(--brand-text-2);
}
.et_pb_menu__menu>nav>ul>li>a:hover, .et-menu li a:hover {
  color: #ffffff;
}

/* Footer */
footer, .site-footer, #main-footer {
  background: #261c14;
  color: var(--brand-muted);
  border-top: 1px solid rgba(255,255,255,0.06);
}
#footer-bottom, .footer-bottom {
  background: #1f1711;
  color: var(--brand-muted);
}

/* Divi-specific tweaks */
.et_pb_button, .et_pb_contact_submit, .et_password_protected_form .et_submit_button {
  background: var(--brand-primary) !important;
  border-color: var(--brand-primary-700) !important;
  color: #fff !important;
}
.et_pb_button:hover, .et_pb_contact_submit:hover, .et_password_protected_form .et_submit_button:hover {
  background: var(--brand-primary-600) !important;
}

/* Badges / tags */
.badge, .tag, .label {
  background: var(--brand-accent);
  color: #261c14;
  border-radius: 999px;
  padding: .25em .6em;
}

/* Tables */
table {
  border-collapse: collapse;
  width: 100%;
  background: var(--brand-surface);
  color: var(--brand-text);
}
th, td {
  border: 1px solid rgba(255,255,255,0.08);
  padding: .6em .7em;
}
th {
  background: #4a3524;
}

/* Utility */
.surface { background: var(--brand-surface); color: var(--brand-text); }
.surface-2 { background: var(--brand-surface-2); color: var(--brand-text); }
.text-muted { color: var(--brand-muted); }
.link { color: var(--brand-link); }
.link:hover{ color:#fff; }
.primary { color: var(--brand-primary); }
.bg-primary { background: var(--brand-primary); color:#fff; }
.border-primary { border-color: var(--brand-primary) !important; }

/* Optional wood texture overlay for big sections (swap image url if desired) */
.section-wood {
  position: relative;
  background: var(--brand-surface);
}
.section-wood::before{
  content:"";
  position:absolute; inset:0;
  background-image: url('/assets/img/textures/barn-wood.jpg');
  background-size: cover;
  background-position: center;
  opacity:.18;
  pointer-events:none;
  mix-blend-mode: overlay;
}
