:root{
  --color-primary:#3D2914;
  --color-secondary:#5C4020;
  --color-accent:#FF8C00;
  --bg-light:#FFFBF0;
  --bg-alt:#FEF0C7;
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:5rem;
}

body{
  font-family:'Nunito Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

::selection{
  background:rgba(255,140,0,.25);
}

button, .btn, [class*="btn-"], a[href="#order_form"]{
  white-space:nowrap;
  min-width:fit-content;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
}

form button[type="submit"]{
  white-space:normal;
  width:100%;
}

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:2px solid rgba(255,140,0,.55);
  outline-offset:3px;
}

[data-animate]{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .6s ease-out, transform .6s ease-out;
  will-change:opacity, transform;
}

[data-animate].is-visible{
  opacity:1;
  transform:translateY(0);
}

.rotate-180{
  transform:rotate(180deg);
}

.glass{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
}

.soft-card{
  background:rgba(255,255,255,.9);
  border:1px solid rgba(17,24,39,.08);
  box-shadow:0 16px 44px rgba(17,24,39,.08);
}

.badge-accent{
  background:rgba(255,140,0,.12);
  color:rgba(124,45,18,1);
  border:1px solid rgba(255,140,0,.22);
}

input[type="text"], input[type="tel"], input[type="email"], textarea, select{
  -webkit-appearance:none;
  appearance:none;
}

input::-ms-reveal, input::-ms-clear{ display:none; }

.no-scroll{
  overflow:hidden;
}

#mobile-menu a{
  -webkit-tap-highlight-color:transparent;
}