:root {
  --accent: #d3542a;
  --accent-hover: #b94420;
  --dark: #0b1220;
  --text-dark: #1f2933;
  --text-muted: #6b7280;
  --light-bg: #f8f6f2;
  --border-soft: rgba(0, 0, 0, 0.08);
}

/* Global reset/helpers */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--text-dark);
  background: #fff;
  overflow-x: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

/* Links */
a {
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease,
    opacity 0.2s ease;
}

/* Buttons */
.btn-accent {
  background: var(--accent);
  color: #fff;
  border: 1px solid var(--accent);
  border-radius: 0.75rem;
  padding: 0.6rem 1rem;
  font-weight: 700;
}

.btn-accent:hover,
.btn-accent:focus {
  background: var(--accent-hover);
  border-color: var(--accent-hover);
  color: #fff;
}

/* Useful helper */
.text-accent {
  color: var(--accent) !important;
}

.bg-dark-custom {
  background: var(--dark) !important;
}

/* Better keyboard accessibility */
a:focus-visible,
button:focus-visible,
.btn:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible {
  outline: 3px solid rgba(211, 84, 42, 0.35);
  outline-offset: 2px;
}

/* Bootstrap form focus override */
.form-control:focus,
.form-select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 0.25rem rgba(211, 84, 42, 0.18);
}
/* Square-corner visual system */
*,
*::before,
*::after {
  border-radius: 0 !important;
}
