:root{
  --color-primary:#1E3A5F;
  --color-secondary:#2D5080;
  --color-accent:#00D9FF;
  --bg-light:#F0FAFF;
  --bg-alt:#E0F5FF;
}

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

body{
  font-family:'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
}

a, button{
  -webkit-tap-highlight-color: transparent;
}

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%;
}

[data-animate]{
  opacity:0;
  transform: scale(0.95);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
  will-change: opacity, transform;
}

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

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

.glass-card{
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(14px);
}

.focus-ring:focus{
  outline: none;
  box-shadow: 0 0 0 4px rgba(0,217,255,.25);
}

.input-base{
  border-radius: 9999px;
}

.input-base:focus{
  outline:none;
  border-color: rgba(0,217,255,.6);
  box-shadow: 0 0 0 4px rgba(0,217,255,.18);
}

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

#cookie-consent a{
  text-underline-offset: 3px;
}