@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");
@import "./global.css";
@import "./reset.css";

body {
  font-family: "Manrope", serif;
  background-color: var(--bg);
  font-size: var(--base);
}

:root {
  --h2: 38px;
  --h3: 22px;
  --marginTop: 56px;
  --marginBottom: 32px;
  --title: 38px;
}

/*! -- Общие стили -- !*/
.none {
  display: none !important;
}
.show {
  display: block !important;
}

/* Стили для невалидных полей */
input.invalid,
textarea.invalid {
  border-color: #e74c3c !important;
}

/* Базовые стили для элементов ошибок */
.error-pop {
  color: #e74c3c;
  font-size: 14px;
  margin-top: 6px;
  display: none;
}

.error-icon {
  display: none;
  color: #e74c3c;
  position: absolute;
  right: 15px;
  top: 38px;
}

/* Позиционирование для группы полей */
.form-group {
  position: relative;
}

/* .title {
  font-size: var(--title);
  font-weight: var(--text-SemiBold);
} */

textarea {
  resize: vertical;
  min-height: 60px;
  transition: height 0.2s;
}

.margin {
  margin-top: var(--marginTop);
  margin-bottom: var(--marginBottom);
}

.wrapper {
  display: grid;
  grid-template-areas:
    "header"
    "main"
    "footer";
  grid-template-rows: auto 1fr auto;
  min-height: 100vh;
}

/*! -- Main -- !*/
.main {
  grid-area: main;
  padding-bottom: 91px;
  padding-top: 30px;
}

.container {
  max-width: 1415px;
  margin: 0 auto;
  padding: 0 calc(var(--padding) * 2);
  width: 100%;
  box-sizing: border-box;
}

.main-title {
  font-size: 40px;
  font-weight: var(--text-ExtraBold);
}

.main-content {
  display: flex;
  gap: 31px;
  width: var(--full);
}

/*! -- Content -- !*/
.content {
  width: var(--full);
  margin-top: 44px;
}

/*! -- SideBar -- !*/
.bread-crumbs {
  font-size: var(--sm);
  display: flex;
  align-items: center;
  gap: var(--margin);
  padding-bottom: 23px;
}

.bread-crumbs__link--disable {
  color: var(--disable);
}

/*! -- Mobile None -- !*/
.mobile-header {
  display: none;
}

.mobile-menu {
  display: none;
}

.mobile-bottom-nav {
  display: none;
}

.no-scroll {
  overflow: hidden;
}

/* Responsive adjustments */
@media (max-width: 1239px) {
  .main-content {
    display: block;
  }

  .content {
    margin-top: 20px;
  }

  .title {
    text-align: center;
  }
}

@media (max-width: 1170px) {
  .main {
    margin-top: 55px;
  }

  .mobile-header {
    display: block;
  }

  .mobile-menu {
    display: block;
  }

  .mobile-bottom-nav {
    display: block;
  }
}

@media (max-width: 955px) {
  :root {
    --title: 28px;
    --marginTop: 48px;
    --marginBottom: 32px;
  }
}

@media (max-width: 768px) {
  :root {
    --title: 22px;
  }
  .main-title {
    font-size: 28px;
  }
  .container {
    padding: 0 16px;
  }
}

@media (max-width: 425px) {
  .container {
    padding: 0 8px;
    min-width: 0;
  }
}

@media (max-width: 320px) {
  .container {
    padding: 0 8px;
    min-width: 0;
  }
} 