/* 1970s Catalog Bootstrap Theme */
@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Times+New+Roman&display=swap');

:root {
  /* Typography - switching to serif fonts typical of catalogs */
  --bs-font-serif: 'Merriweather', 'Times New Roman', serif;
  --bs-body-font-family: var(--bs-font-serif);

  /* Colors - 70s catalog palette */
  --bs-primary: #ce7e00;    /* 70s gold/amber */
  --bs-secondary: #834655;  /* muted burgundy */
  --bs-success: #2a5c3f;    /* forest green */
  --bs-info: #33658a;       /* muted blue */
  --bs-warning: #ffcc00;    /* yellow */
  --bs-danger: #b22222;     /* brick red */
  --bs-light: #f4eed9;      /* cream/off-white */
  --bs-dark: #3c2f2f;       /* dark brown */

  /* Page background - slightly aged paper look */
  --bs-body-bg: #f8f5eb;
  --bs-body-color: #222222;

  /* Border styling */
  --bs-border-radius: 0;
  --bs-border-radius-lg: 0;
  --bs-border-radius-sm: 0;
  --bs-border-width: 1px;

  /* Spacing */
  --bs-gutter-x: 1.5rem;
}

* {
  box-shadow: none !important;
}

body {
  font-family: var(--bs-body-font-family);
  line-height: 1.5;
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  margin-bottom: 1rem;
  color: #333;
}

h1 {
  font-size: 2.5rem;
  border-bottom: 4px solid var(--bs-primary);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

h2 {
  font-size: 2rem;
  border-bottom: 2px solid var(--bs-primary);
  padding-bottom: 0.3rem;
}

h3 {
  font-size: 1.5rem;
}

p {
  margin-bottom: 1rem;
}

/* Grid layout with visible borders */
.catalog-grid .row {
  border-bottom: 1px solid #ccc;
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
}

.catalog-grid .col, .catalog-grid [class^="col-"] {
  border-right: 1px dotted #ccc;
  padding: 1rem;
}

.catalog-grid .col:last-child, .catalog-grid [class^="col-"]:last-child {
  border-right: none;
}

/* Item styling */
.catalog-item {
  margin-bottom: 2rem;
  padding: 1rem;
  border: 1px solid #aaa;
  background-color: white;
}

.catalog-item-title {
  font-weight: 700;
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
}

.catalog-item-code {
  font-family: monospace;
  color: var(--bs-secondary);
  font-size: 0.9rem;
}

.catalog-item-price {
  font-weight: 700;
  font-size: 1.3rem;
  color: var(--bs-primary);
  margin-top: 0.5rem;
}

/* Navigation styled like catalog tabs */
.navbar {
  background-color: var(--bs-light) !important;
  border-bottom: 2px solid var(--bs-primary);
  padding: 0;
}

.navbar-brand {
  font-weight: 700;
  font-size: 1.8rem;
  color: var(--bs-primary) !important;
  padding: 0.5rem 1rem;
}

.nav-link {
  text-transform: uppercase;
  font-weight: 600;
  padding: 1rem 1.5rem !important;
  color: var(--bs-dark) !important;
  border-right: 1px solid #ccc;
}

.nav-link.active {
  background-color: white !important;
  border-bottom: 3px solid var(--bs-primary);
  color: var(--bs-primary) !important;
}

.nav-link:hover {
  background-color: #fff;
}

/* Buttons - simpler, more 70s style */
.btn {
  border-radius: 0;
  font-weight: 600;
  padding: 0.5rem 1.5rem;
  border-width: 1px;
}

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

.btn-primary:hover {
  background-color: #a66600 !important;
  border-color: #a66600 !important;
}

/* Forms */
.form-control {
  border: 1px solid #777;
  border-radius: 0;
  padding: 0.75rem;
  background-color: white;
}

.form-label {
  font-weight: 600;
}

/* Cards styled like catalog items */
.card {
  border: 1px solid #aaa;
  border-radius: 0;
  margin-bottom: 2rem;
  background-color: white;
}

.card-header {
  background-color: var(--bs-light);
  border-bottom: 1px solid #aaa;
  font-weight: 600;
}

/* Tables - important for catalogs */
.table {
  border: 1px solid #777;
}

.table thead {
  background-color: var(--bs-light);
}

.table th {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.9rem;
  border-bottom: 2px solid #777;
}

.table td {
  border-bottom: 1px solid #ccc;
}

/* Pagination styled like catalog page numbers */
.pagination {
  margin-top: 2rem;
}

.page-link {
  color: var(--bs-dark);
  border: 1px solid #aaa;
  background-color: var(--bs-light);
  margin: 0 0.2rem;
  padding: 0.5rem 1rem;
}

.page-item.active .page-link {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

/* Additional catalog-specific elements */
.catalog-header {
  margin-bottom: 2rem;
  padding: 1rem 0;
  border-bottom: 2px solid var(--bs-primary);
}

.catalog-section {
  margin: 3rem 0;
}

.catalog-section-title {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: var(--bs-light);
  padding: 0.5rem 1rem;
  border-left: 4px solid var(--bs-primary);
  margin-bottom: 1.5rem;
}

.item-number {
  font-family: monospace;
  color: var(--bs-secondary);
}

footer {
  margin-top: 4rem;
  padding: 2rem 0;
  border-top: 2px solid var(--bs-primary);
  background-color: var(--bs-light);
  font-size: 0.9rem;
}
