/* =====================================================
   BASE RESET & GLOBAL STYLES (OPTIMIZED)
===================================================== */

/* -------- CSS RESET -------- */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* -------- ROOT -------- */
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

/* -------- BODY -------- */
body {
  font-family:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    "Helvetica Neue",
    Arial,
    sans-serif;

  font-size: 16px;
  line-height: 1.6;
  color: #111111;
  background-color: #ffffff;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* -------- MEDIA ELEMENTS -------- */
img,
video {
  display: block;
  max-width: 100%;
  height: auto;
}

/* -------- LINKS -------- */
a {
  color: inherit;
  text-decoration: none;
}

a:focus-visible {
  outline: 2px solid var(--primary-color);
  outline-offset: 2px;
}

/* -------- LISTS -------- */
ul,
ol {
  list-style: none;
}

/* -------- FORM ELEMENTS -------- */
button,
input,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

button {
  cursor: pointer;
  background: none;
  border: none;
}

/* Prevent iOS zoom issues */
input,
select,
textarea {
  border-radius: 0;
  background-color: #ffffff;
}

/* Remove number input arrows */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

/* -------- ACCESSIBILITY -------- */
.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* =====================================================
   GLOBAL CSS VARIABLES
===================================================== */
:root {
  --primary-color: #f37422;
  --secondary-color: #e31e24;

  --text-dark: #111111;
  --text-muted: #666666;

  --bg-light: #f6f5f2;
  --bg-white: #ffffff;

  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;

  --transition-fast: 0.2s ease;
  --transition-base: 0.3s ease;
}