/* ========================================================================
   БАЗА — нулиране, контейнер, помощни класове
   ======================================================================== */

*, *::before, *::after { box-sizing: border-box; }

/* Браузърът слага собствени отстъпи и на dl/dt/dd, не само на ul/ol.
   Без това колоната е по-висока от съдържанието си без следа в CSS. */
h1, h2, h3, h4, h5, h6,
p, figure, blockquote,
ul, ol, dl, dt, dd { margin: 0; padding: 0; }

ul, ol { list-style: none; }

/* clip, не hidden — hidden чупи position: sticky */
html, body { overflow-x: clip; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--c-white);
  color: var(--c-ink);
  font-family: var(--ff);
  font-weight: var(--fw-regular);
  font-size: var(--fs-body);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  /* html lang="bg" активира локализираните български форми от Montserrat.
     Не изключваме OpenType locl: кирилицата трябва да е еднаква в content и UI. */
  font-feature-settings: normal;
}

img, svg, video { display: block; max-width: 100%; }
img { height: auto; }

a { color: inherit; text-decoration: none; }

button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; padding: 0; cursor: pointer; }

s { text-decoration: line-through; }

:focus-visible { outline: 2px solid var(--c-accent); outline-offset: 2px; }

/* --- КОНТЕЙНЕР --------------------------------------------------------
   1600px съдържание при 1920 → ляво 160, дясно 160.
   Симетрично по конструкция: margin-inline: auto. */
.container {
  width: min(var(--container), 100% - 2 * var(--gut));
  max-width: none;
  padding-inline: 0;
  margin-inline: auto;
}
/* Изрично нулиране под 1024: ширина през променлива без нулиране изтича
   от 1920 и излиза извън екрана.  npm run sblasak я изкарва. */
@media (max-width: 1024px) {
  .container { width: calc(100% - 2 * var(--gut)); }
}

.visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* opacity: 0 вместо left: -9999px — изнесеният наляво елемент влиза в
   проверката „излиза-вляво“ и в целите за докосване. */
.skip-link {
  position: absolute;
  left: 0; top: 0;
  z-index: 100;
  padding: 12px 20px;
  background: var(--c-white);
  color: var(--c-ink);
  opacity: 0;
  pointer-events: none;
}
.skip-link:focus { opacity: 1; pointer-events: auto; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}

.termsfeed-com---palette-dark .cc-nb-okagree {
  color: #fff !important;
  background-color: #625B5C !important;
}

.termsfeed-com---palette-dark .cc-nb-reject {
  color: #fff !important;
  background-color: #625B5C !important;
}

.call_us {
    position: fixed;
    z-index:999;
    right: 10px;
    bottom: 10px;
	width: 70px;
}
/* Animation property */
.wiggle {
  animation: wiggle 2s linear 6;
  animation-delay: 2s;
}

/* Keyframes */
@keyframes wiggle {
  0%, 7% {
    transform: rotateZ(0);
  }
  15% {
    transform: rotateZ(-15deg);
  }
  20% {
    transform: rotateZ(10deg);
  }
  25% {
    transform: rotateZ(-10deg);
  }
  30% {
    transform: rotateZ(6deg);
  }
  35% {
    transform: rotateZ(-4deg);
  }
  40%, 100% {
    transform: rotateZ(0);
  }
}
