@charset "UTF-8";
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: local("Manrope-Regular"), local("Manrope Regular"), url("../font/Manrope-Regular.woff2") format("woff2"), url("../font/Manrope-Regular.woff") format("woff"); }
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  src: local("Manrope Semibold"), local("Manrope-Semibold"), url("../font/Manrope-Semibold.woff2") format("woff2"), url("../font/Manrope-Semibold.woff") format("woff"); }
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  src: local("Manrope Bold"), local("Manrope-Bold"), url("../font/Manrope-Bold.woff2") format("woff2"), url("../font/Manrope-Bold.woff") format("woff"); }
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  src: local("Manrope ExtraBold"), local("Manrope-ExtraBold"), url("../font/Manrope-ExtraBold.woff2") format("woff2"), url("../font/Manrope-ExtraBold.woff") format("woff"); }
@font-face {
  font-family: "Bebas";
  font-style: normal;
  font-weight: 400;
  src: local("Bebas Neue Cyrillic"), local("BebasNeueCyrillic"), url("../font/BebasNeueCyrillic.woff2") format("woff2"), url("../font/BebasNeueCyrillic.woff") format("woff"); }
@font-face {
  font-family: "icofont";
  font-weight: normal;
  font-style: normal;
  font-display: block;
  src: url("../font/icofont.woff") format("woff"), url("../font/icofont.ttf") format("truetype"), url("../font/icofont.svg#icofont") format("svg"); }
@font-face {
  font-family: "icozavod";
  font-weight: normal;
  font-style: normal;
  font-display: block;
  src: url("../font/zavodtrud.woff") format("woff"), url("../font/zavodtrud.ttf") format("truetype"), url("../font/zavodtrud.svg#zavodtrud") format("svg"); }

.wh60 {
  width: 60%;
  margin: 0 auto; }
@media only all and (max-width: 59.99rem) {
  .wh60 {
    width: 100%; } }

.grid {
  display: flex;
  flex-flow: row wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  text-rendering: optimizespeed; }
  .grid.nowrap {
    flex-flow: row; }

.fx {
  display: flex;
  flex-flow: row; }
  .fx.alg_1st {
    align-items: center;
    justify-content: space-between; }

.contain {
  width: 87rem;
  margin: 0 auto;
  padding: 0; }
@media only all and (min-width: 75rem) and (max-width: 86.99rem) {
  .contain {
    width: 75rem; } }
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .contain {
    width: 60rem; } }
@media only all and (min-width: 30.01rem) and (max-width: 59.99rem) {
  .contain {
    width: 30rem; } }
@media only all and (max-width: 30rem) {
  .contain {
    width: 100%;
    padding: 0 1rem; } }
.contain.g-flushed {
  width: 100%; }

.block {
  flex: 1;
  min-width: 0;
  min-height: 0; }
@media only all and (max-width: 59.99rem) {
  .block {
    flex-grow: 0;
    flex-basis: 100%; } }
.block.first {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -ms-flex-order: -1;
  order: -1; }
.block .last {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1; }
.size-12 {
  flex: 0 12%;
  width: 12%; }
.size-20 {
  flex: 0 20%;
  width: 20%; }
.size-25 {
  flex: 0 25%;
  width: 25%; }
.size-30 {
  flex: 0 30%;
  width: 30%; }
.size-45 {
  flex: 0 45%;
  width: 45%; }
.size-50 {
  flex: 0 50%;
  width: 50%; }
.size-70 {
  flex: 0 70%;
  width: 70%; }
.size-75 {
  flex: 0 75%;
  width: 75%; }
.size-80 {
  flex: 0 80%;
  width: 80%; }
.size-100 {
  flex: 0 100%;
  width: 100%; }

.size-33 {
  flex: 0 33.33%;
  width: 33.33%; }

@media only all and (max-width: 59.99rem) {
  body [class*="size-"] {
    flex-grow: 0;
    flex-basis: 100%;
    max-width: 100%; } }

@media only all and (max-width: 59.99rem) {
  @supports not (flex-wrap: wrap) {
    .grid {
      display: block;
      flex-wrap: inherit; }
    .block {
      display: block;
      flex: inherit; } }
  body .mob-40 {
    flex: 0 40%;
    width: 40%; }
  body .mob-60 {
    flex: 0 60%;
    width: 60%; }
  body .mob-50 {
    flex: 0 50%;
    width: 50%; }
  body .mob-33 {
    flex: 0 33.33%;
    width: 33.33%; }
  .mob-no {
    display: none; } }

*, div {
  box-sizing: border-box; }

img {
  max-width: 100%;
  display: block; }

input[type="text"] {
  line-height: normal;
  border: 1px solid #e2e2e2;
  width: 100%;
  padding: 1rem;
  outline: none;
  display: inline-block;
  font-size: 1.3rem;
  vertical-align: middle;
  border-radius: 0.4rem; }
  input[type="text"]::placeholder {
    text-transform: uppercase; }
  input[type="text"]:focus {
    border: 1px solid #e31e24; }
    input[type="text"]:focus::placeholder {
      opacity: 0;
      transition: opacity 0.3s ease; }
    input[type="text"]:focus::-webkit-input-placeholder {
      opacity: 0;
      transition: opacity 0.3s ease; }
    input[type="text"]:focus::-moz-placeholder {
      opacity: 0;
      transition: opacity 0.3s ease; }
    input[type="text"]:focus:-moz-placeholder {
      opacity: 0;
      transition: opacity 0.3s ease; }
    input[type="text"]:focus:-ms-input-placeholder {
      opacity: 0;
      transition: opacity 0.3s ease; }
  input[type="text"]:focus-visible {
    border: 1px solid #e31e24; }
  .line input[type="text"] {
    border: none;
    border-bottom: 1px solid #424242;
    background: none;
    border-radius: 0;
    padding: 0.5rem 0.2rem 0.1rem; }

input.name {
  display: none; }

.snap {
  display: inline-block;
  background-color: #e31e24;
  color: #ffffff;
  border: none;
  font-size: 1rem;
  padding: 0.6rem 1.5rem;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  line-height: 1;
  border-radius: 0.15rem;
  transition: 0.5s; }
  .snap.icon {
    padding: 0.6rem; }
  .snap + .snap {
    margin-left: 0.7rem; }
  .snap .ico {
    font-size: 1.5rem; }
    .snap .ico + .sign {
      margin-left: 1rem; }
  .snap .sign {
    display: inline-block;
    vertical-align: super; }
  .snap.md {
    padding: 0.8rem 1.5rem; }
    .snap.md .sign {
      font-size: 1.2rem; }
    .snap.md .ico {
      font-size: 2rem; }
    .snap.md.icon {
      padding: 0.8rem; }
  .snap._light {
    background-color: #ffffff;
    color: #e31e24; }
  .snap._pure {
    background: rgba(255, 255, 255, 0.05);
    box-shadow: inset 0px 0px 4px rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); }
  .snap._lg {
    padding: 2rem 4rem;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase; }
  .snap.fullw {
    width: 100%;
    padding: 1.3rem;
    font-size: 1.2rem;
    font-weight: 700; }
  .snap:hover {
    background-color: #da251c; }
    ._light.snap:hover {
      background-color: #b7171c;
      color: #ffffff; }
    ._pure.snap:hover {
      background-color: #ffffff;
      color: #e31e24; }
  @media only all and (max-width: 59.99rem) {
    .snap._lg {
      padding: 1.5rem 2rem;
      font-size: 1.2rem;
      width: 100%; }
    .snap.md {
      padding: 0.6rem 1rem; }
      .snap.md .ico {
        font-size: 1.3rem; } }

.ico {
  display: inline-block;
  line-height: 1;
  speak: never;
  font-family: "icozavod" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .ico:before {
    display: block; }
  .ico._phone:before {
    content: ""; }
  .ico._vk:before {
    content: ""; }
  .ico._ytbe:before {
    content: ""; }
  .ico._card:before {
    content: ""; }
  .ico._bag:before {
    content: ""; }
  .ico._menu:before {
    content: ""; }
  .ico._user:before {
    content: ""; }
  .ico._search:before {
    content: ""; }
  .ico._map:before {
    content: ""; }

body {
  margin: 0;
  font-family: "Manrope";
  font-size: 1rem;
  line-height: 1.5;
  color: #424242;
  padding-right: 0; }

a {
  text-decoration: none;
  color: #da251c; }

header {
  color: #ffffff;
  background-image: url("/images/tpl/bcgr/bcgr_underlay_top.webp");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 0 50%;
  position: relative;
  z-index: 120; }
  header:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: rgba(150, 32, 36, 0.5); }
  header .heading {
    color: #ffffff; }
  .itemid-101 header {
    height: 100vh;
    min-height: 40rem; }
  header .contain {
    display: grid;
    grid-template-rows: auto auto 1fr;
    height: 100%;
    align-items: center; }
  header .content {
    padding: 3rem 0; }
  @media only all and (max-width: 59.99rem) {
    header {
      height: inherit; }
      header .contain {
        display: flex;
        flex-flow: column; }
      header .content {
        padding: 3rem 0; }
      .itemid-101 header {
        height: auto;
        min-height: inherit; } }

.top {
  position: relative;
  z-index: 100;
  background-color: #e31e24;
  padding: 1rem 4rem; }
@media only all and (max-width: 59.99rem) {
  .top {
    display: none; } }

nav.navmain {
  position: relative;
  z-index: 10;
  margin-top: -0.5rem; }
  nav.navmain .corps {
    padding: 1.5rem 4rem 1rem;
    position: relative;
    background: rgba(255, 255, 255, 0.05);
    box-shadow: inset 0px 0px 4px rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); }
  @media only all and (max-width: 59.99rem) {
    nav.navmain {
      margin: 0 -1rem;
      z-index: 50; }
      nav.navmain .corps {
        box-shadow: none;
        backdrop-filter: none;
        background-color: #e31e24;
        padding: 1.5rem 2rem; } }

.show {
  padding: 6rem 0; }
@media only all and (max-width: 59.99rem) {
  .show {
    padding: 4rem 0; } }

.over {
  padding: 6rem 0;
  background-color: #e31e24; }
@media only all and (max-width: 59.99rem) {
  .over {
    padding: 4rem 0; } }

main {
  padding: 5rem 0; }
@media only all and (max-width: 59.99rem) {
  main {
    padding: 4rem 0; } }

footer > div {
  padding: 3rem 0; }

.bottom .contain {
  display: flex; }
  .bottom .contain > div {
    width: 32%; }
    .bottom .contain > div + div {
      margin-left: 2%; }
@media only all and (max-width: 59.99rem) {
  .bottom .contain {
    flex-flow: column-reverse; }
    .bottom .contain > div {
      width: 100%; }
      .bottom .contain > div + div {
        margin: 0 0 3rem; } }

.right {
  background-color: #f4f4f4; }
  .right .contain {
    display: flex;
    align-items: center; }
    .right .contain > div {
      width: 50%; }
      .right .contain > div + div {
        margin-left: 2%; }
  @media only all and (max-width: 59.99rem) {
    .right .contain {
      flex-flow: column-reverse; }
      .right .contain > div {
        width: 100%; }
        .right .contain > div + div {
          margin: 0 0 3rem; } }

h1, h2, h3, h4 {
  margin: 0 0 1.5rem; }

p {
  margin: 0 0 1rem; }

ul {
  padding-left: 1.5rem;
  list-style: circle;
  margin: 0 0 1rem; }

.contain > .heading {
  text-align: center;
  margin-bottom: 2.5rem; }

.clr {
  display: block;
  clear: both; }

h1, .heading, .headbox, .title {
  font-family: "Bebas";
  font-weight: 400;
  font-size: 2.2rem;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.05rem;
  line-height: 1;
  color: #e31e24;
  margin-bottom: 1.5rem; }

.title {
  font-size: 1.75rem; }

.fs.lg {
  font-size: 6rem; }
.fs.md {
  font-size: 1.5rem; }
.fs.cr {
  text-align: center; }
@media only all and (max-width: 59.99rem) {
  .fs.lg {
    font-size: 2.5rem; } }

.menu-toggle {
  font-size: 2rem;
  display: none; }
  .menu-toggle a {
    color: #e31e24; }
    .menu-toggle a:after {
      font-family: "icozavod";
      content: "";
      margin-left: 0.5rem;
      color: #ffffff; }
  @media only all and (max-width: 59.99rem) {
    .menu-toggle {
      display: block; } }

.awesomplete > ul {
  z-index: 100;
  color: #000000; }

nav .logo {
  flex-grow: 0;
  flex-shrink: 1;
  padding-right: 2rem; }
nav .menu {
  flex-grow: 2; }

.nav-main {
  display: flex;
  flex-flow: row;
  list-style: none;
  margin: 0;
  padding: 0;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  text-transform: uppercase; }
  .nav-main > li {
    text-align: center;
    line-height: 1; }
    .nav-main .active a {
      color: #ffffff; }
  .nav-main a {
    padding: 0.6rem 0.5rem;
    display: block;
    white-space: nowrap;
    color: #ffffff; }
    .nav-main a:hover {
      color: #e31e24;
      background-color: #ffffff;
      border-radius: 0.15rem; }
    .active .nav-main a {
      color: #ffffff; }
  @media only all and (max-width: 59.99rem) {
    .nav-main {
      display: block;
      height: 0;
      z-index: 1;
      transition: 0.2s;
      overflow-y: hidden;
      position: absolute;
      left: 0;
      width: 100%;
      background-color: #e31e24;
      font-size: 1.3rem; }
      .nav-main > li {
        padding-top: 0.5rem; }
        .nav-main > li:first-child {
          padding-top: 1rem; } }

header .content {
  position: relative;
  z-index: 20;
  text-align: center; }
  header .content .note {
    font-size: 2rem;
    font-weight: 500; }
  header .content .ctrl {
    margin-top: 2rem; }
    header .content .ctrl .snap + .snap {
      margin-left: 4rem; }
@media only all and (max-width: 59.99rem) {
  header .content .note {
    font-size: 1.3rem; }
    header .content .ctrl .snap + .snap {
      margin: 2rem 0 0; } }

.top .contact {
  flex-grow: 0; }
  .top .contact .sign {
    font-weight: 700; }
.top .search {
  flex-grow: 2;
  padding-right: 15%; }
  .top .search .sign {
    flex-grow: 0;
    color: #ffffff;
    padding-right: 3rem;
    font-weight: 700;
    font-size: 1.5rem; }
  .top .search .awesomplete {
    flex-grow: 2; }
  .top .search span.ico {
    font-size: 2rem;
    margin-right: 1rem; }
  .top .search input[type="text"] {
    padding: 0.7rem 1rem;
    font-size: 1rem; }
.top .phones {
  color: #e31e24;
  font-weight: 600;
  font-size: 1.125rem; }
.top .ctrl {
  height: 100%;
  padding: 0; }
  .top .ctrl a {
    display: block;
    background-color: #e31e24;
    color: #ffffff;
    font-weight: 500;
    line-height: 1;
    padding: 1rem;
    text-align: center;
    /*
      &:before {
        content: "\e935";
        color: #ffffff;
        top: 1rem;
        left: 1.5rem;
      }
      */ }
    .top .ctrl a:hover {
      background-color: #da251c; }

.partner .heading {
  font-size: 5rem;
  text-align: center;
  margin-bottom: 3rem;
  padding: 0 5rem; }
.partner .descr {
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 3rem;
  color: #e31e24; }
.partner .casebox {
  display: flex; }
  .partner .casebox .unitbox {
    flex: 1;
    padding: 2rem;
    background-color: #e31e24;
    color: #ffffff;
    justify-items: center; }
    .partner .casebox .unitbox + .unitbox {
      margin-left: 2rem; }
  .partner .casebox .headbox {
    color: #ffffff;
    margin: 1.5rem 0 0; }
.partner p {
  margin-bottom: 0; }
@media only all and (max-width: 59.99rem) {
  .partner .heading {
    font-size: 2.5rem;
    padding: 0; }
  .partner .descr {
    font-size: 1rem; }
  .partner .casebox {
    flex-flow: column; }
    .partner .casebox .unitbox {
      padding: 1rem; }
      .partner .casebox .unitbox + .unitbox {
        margin: 2rem 0 0; }
    .partner .casebox .img {
      margin: -1rem -1rem 2rem; } }

.catalog .casebox {
  display: flex;
  flex-flow: row wrap; }
  .catalog .casebox .unitbox {
    width: 32%;
    /* padding: $gap-bs; */
    border: 1px solid #e31e24;
    background-color: #e31e24;
    overflow: hidden;
    border-radius: 0.3rem;
    color: #ffffff;
    margin-bottom: 2rem;
    display: flex;
    flex-flow: column;
    justify-content: space-between; }
    .catalog .casebox .unitbox + .unitbox {
      margin-left: 2%; }
    .catalog .casebox .unitbox:nth-child(3n+1) {
      margin-left: 0; }
  .catalog .casebox .headbox {
    color: #ffffff;
    padding: 2rem 2rem 0; }
  .catalog .casebox .note {
    padding: 0 2rem;
    margin-bottom: 2rem; }
    .catalog .casebox .note p {
      margin: 0; }
  .catalog .casebox .img {
    overflow: hidden;
    padding: 0.5rem;
    height: 17rem;
    background-color: #ffffff;
    text-align: center; }
    .catalog .casebox .img img {
      max-height: 100%;
      display: inline-block; }
  .catalog .casebox .content a {
    color: #ffffff; }
    .catalog .casebox .content a:hover {
      text-decoration: underline; }
  .catalog .casebox.product .snap {
    background-color: #b7171c;
    border-radius: 0.3rem; }
    .catalog .casebox.product .snap:hover {
      background-color: #e94b50; }
.catalog .casebox.category .ctrl {
  padding: 0; }
.catalog .casebox.category .img {
  border-radius: 0.4rem;
  margin-bottom: 2rem;
  height: 166px; }
.catalog .casebox.category .unitbox {
  padding: 2rem; }
.catalog .casebox.category .headbox {
  padding: 0; }
.catalog.page-content {
  display: grid;
  grid-template-columns: 40% 1fr;
  grid-template-rows: auto 1fr auto;
  gap: 2rem; }
  .catalog.page-content .img {
    grid-row-start: 1;
    grid-row-end: 3;
    padding: 0 3rem; }
  .catalog.page-content .prop {
    grid-column: span 2; }
    .catalog.page-content .prop table {
      width: 100%;
      border-spacing: 0;
      margin-bottom: 2rem;
      font-weight: 500; }
      .catalog.page-content .prop table p {
        margin: 0; }
    .catalog.page-content .prop td {
      padding: 0.5rem; }
    .catalog.page-content .prop tr:nth-child(odd) {
      background: #dedddd; }
    .catalog.page-content .prop tr:first-child {
      background: #d57e43;
      color: #ffffff; }
  .catalog.page-content h1 {
    text-align: left;
    margin: 0; }
  .catalog.page-content .heading {
    margin: 0;
    line-height: 1; }
@media only all and (max-width: 59.99rem) {
  .catalog .casebox {
    flex-flow: column; }
    .catalog .casebox .unitbox {
      width: 100%;
      padding: 1rem; }
      .catalog .casebox .unitbox + .unitbox {
        margin-left: 0; } }

.news .heading {
  font-size: 5rem;
  text-align: center;
  margin-bottom: 3rem;
  color: #ffffff; }
.news > .ctrl {
  margin-top: 4rem;
  text-align: center; }
  .news > .ctrl .snap {
    width: 32%; }
.news .casebox {
  display: flex;
  flex-flow: row wrap; }
  .news .casebox .unitbox {
    width: 32%;
    background-color: #f4f4f4;
    width: 32%;
    padding: 2rem;
    color: #ffffff;
    margin-bottom: 2rem;
    display: flex;
    flex-flow: column;
    justify-content: space-between; }
    .news .casebox .unitbox .img {
      position: relative;
      margin: -2rem -2rem 2rem;
      height: 18rem;
      overflow: hidden;
      background-color: #d4deeb; }
      .news .casebox .unitbox .img img {
        height: 100%;
        width: auto;
        min-width: 100%;
        max-width: none; }
      .news .casebox .unitbox .img .date {
        position: absolute;
        top: 0;
        left: 0;
        text-align: center;
        background: url("/images/tpl/bcgr/bcgr_date2.svg") 100% 100% no-repeat;
        line-height: 3rem;
        padding: 0 4rem 0 2rem;
        font-size: 1.3rem;
        font-weight: 700;
        color: #e31e24; }
    .news .casebox .unitbox .note {
      color: #e31e24; }
    .news .casebox .unitbox + .unitbox {
      margin-left: 2%; }
    .news .casebox .unitbox:nth-child(3n+1) {
      margin-left: 0; }
@media only all and (max-width: 59.99rem) {
  .news .casebox {
    flex-flow: column; }
    .news .casebox .unitbox {
      width: 100%;
      padding: 1rem; }
      .news .casebox .unitbox .img {
        margin: -1rem -1rem 2rem; }
  .news .heading {
    font-size: 4rem;
    margin-bottom: 9rem; }
    .news > .ctrl .snap {
      width: 100%; } }

.item-page .contact {
  margin-bottom: 3rem;
  display: flex; }
  .item-page .contact > div {
    flex: 1; }
  .item-page .contact .note {
    padding-left: 3rem; }
  @media only all and (max-width: 59.99rem) {
    .item-page .contact {
      flex-flow: column-reverse; }
      .item-page .contact .note {
        margin: 0 0 2rem;
        padding: 0; } }
.item-page .phones {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.5rem; }

.pagination {
  display: flex;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 2rem 0 0;
  padding: 0; }
  .pagination .page-item a {
    border: 1px solid #e31e24;
    line-height: 2.8rem;
    width: 2.8rem;
    height: 2.8rem;
    display: block;
    text-align: center;
    border-radius: 0.15rem;
    font-weight: 600;
    font-size: 1.3rem;
    color: #e31e24; }
    .pagination .page-item a:hover {
      background-color: #e31e24;
      color: #ffffff; }
  .pagination .page-item.active a {
    background-color: #e31e24;
    color: #ffffff; }
  .pagination .page-item + .page-item {
    margin-left: 0.5rem; }
  .pagination a.page-link span {
    display: block;
    font-size: 2rem;
    line-height: 2.4rem;
    letter-spacing: -0.9rem;
    margin-right: 0.9rem; }
    .pagination a.page-link span.icon-angle-right:before {
      content: ">"; }
    .pagination a.page-link span.icon-angle-double-right:before {
      content: ">>"; }
    .pagination a.page-link span.icon-angle-left:before {
      content: "<"; }
    .pagination a.page-link span.icon-angle-double-left:before {
      content: "<<"; }
  @media only all and (max-width: 59.99rem) {
    .pagination {
      flex-flow: row wrap; }
      .pagination .page-item {
        margin: 0.2rem; }
        .pagination .page-item + .page-item {
          margin: 0.2rem; }
        .pagination .page-item.disabled {
          display: none; } }

.under {
  background-color: #f4f4f4;
  padding: 6rem 0; }
@media only all and (max-width: 59.99rem) {
  .under {
    padding: 4rem 0; } }

.bottom {
  background-color: #e31e24;
  color: #ffffff;
  font-size: 1.2rem;
  text-transform: uppercase; }
  .bottom .title {
    font-family: "Manrope";
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    text-align: left; }
  .bottom p {
    margin: 0; }
  .bottom ul {
    list-style: none;
    padding: 0;
    margin: 0; }
  .bottom .box + .box {
    margin-top: 2rem; }
  .bottom a {
    color: #ffffff; }
    .bottom a:hover {
      text-decoration: underline; }
  .itemid-101 .bottom {
    background-color: #ffffff;
    color: #e31e24; }
    .itemid-101 .bottom a, .itemid-101 .bottom .title {
      color: #e31e24; }
  @media only all and (max-width: 59.99rem) {
    .bottom .content {
      font-size: 1.2rem; } }

.right {
  color: #e31e24; }
  .right .contact {
    justify-content: right; }

.mod-breadcrumbs {
  margin: 0 0 2rem;
  font-size: 0.9rem;
  padding: 0;
  overflow: hidden;
  list-style: none; }
  .mod-breadcrumbs > li {
    display: inline;
    padding-right: 0.5rem; }
    .mod-breadcrumbs > li:after {
      content: ">";
      color: #da251c;
      margin-left: 0.5rem; }
      .mod-breadcrumbs > li.active:after, .mod-breadcrumbs > li.mod-breadcrumbs__here:after {
        content: "";
        margin: 0; }

.cafe-gallery {
  justify-content: space-between; }
  .cafe-gallery img {
    cursor: pointer; }

.cafe-modal {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
  /* rgba(0,0,0,0.7); */
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  animation-name: zoom;
  -webkit-animation-name: zoom;
  animation-duration: 0.4s;
  -webkit-animation-duration: 0.4s; }
  .cafe-modal .boxed {
    background-color: #ffffff;
    padding: 3rem;
    box-sizing: border-box;
    max-width: 1000px;
    max-height: 100%; }
    .cafe-modal .boxed img {
      width: 100%;
      height: auto; }
  .cafe-modal .close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s; }
    .cafe-modal .close:hover, .cafe-modal .close:focus {
      color: #bbb;
      text-decoration: none;
      cursor: pointer; }
  .cafe-modal .headbox {
    font-size: 3rem;
    text-align: center; }

@-webkit-keyframes zoom {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes zoom {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.cafeForm {
  width: 100%; }
  .cafeForm .err input {
    border-color: #d70000; }
  .cafeForm .err span {
    color: #d70000; }
  .cafeForm .luck {
    font-size: 1.5rem;
    color: #008000; }
  .cafeForm .input {
    margin-bottom: 1rem; }
    .cafeForm .input span {
      font-weight: 600; }
  .cafeForm .ctrl {
    padding-top: 1rem; }

@media only all and (min-width: 60rem) {
  header.fixed .navmain {
    position: fixed;
    top: 0;
    z-index: 120;
    width: 1392px; }
    header.fixed .navmain .corps {
      background-color: rgba(227, 30, 36, 0.65);
      box-shadow: none; }
  header.fixed .top {
    margin-bottom: 100px; }
  header.fixed .contain {
    grid-template-rows: auto 1fr; } }

.top .snap._light {
  background-color: inherit;
  color: #ffffff; }

footer .snap {
  background-color: inherit;
  color: #e31e24; }
  footer .snap:hover {
    background-color: inherit;
    color: #da251c; }

.characteristics {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem; }
  .characteristics td {
    border: 1px solid #e31e24;
    padding: 0.2rem 0.8rem; }
  .characteristics tr:first-child {
    font-weight: 600; }

.snap.catalog {
  padding: 1.2rem 2.2rem;
  font-weight: 600;
  margin-bottom: 2rem; }

/*! Flickity v3.0.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
  touch-action: pan-y; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0; }

.flickity-rtl .flickity-slider {
  left: unset;
  right: 0; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: grabbing; }

/* ---- flickity-cell ---- */
.flickity-cell {
  position: absolute;
  left: 0; }

.flickity-rtl .flickity-cell {
  left: unset;
  right: 0; }

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: transparent;
  border: none;
  color: #ffffff;
  padding: 0; }

.flickity-button:hover {
  color: #da251c;
  cursor: pointer; }

/* .flickity-button:focus {} */
.flickity-button:active {
  opacity: 0.6; }

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none; }

.flickity-button-icon {
  fill: currentColor; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  height: 5rem;
  transform: translateY(-50%); }
  .flickity-prev-next-button.previous {
    left: -4rem; }
  .flickity-prev-next-button.next {
    right: -4rem; }
  @media only all and (max-width: 59.99rem) {
    .flickity-prev-next-button {
      top: -5rem; }
      .flickity-prev-next-button.next {
        right: inherit;
        left: calc(50% + 1.5rem); }
      .flickity-prev-next-button.previous {
        left: calc(50% - 4rem); } }

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button .flickity-button-icon {
  height: 100%; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dot {
  display: block;
  width: 10px;
  height: 10px;
  padding: 0;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  cursor: pointer;
  appearance: none;
  border: none;
  text-indent: -9999px;
  overflow: hidden; }

.flickity-rtl .flickity-page-dot {
  text-indent: 9999px; }

.flickity-page-dot:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F; }

.flickity-page-dot.is-selected {
  background: #333; }

.flickity-slider {
  display: flex; }

.carousel-cell {
  width: 32%;
  background-color: #ffffff;
  margin-left: 2%; }
  .carousel-cell .corps {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    height: 100%;
    padding: 2rem; }
  .carousel-cell .img {
    position: relative;
    margin: -2rem -2rem 2rem;
    height: 18rem;
    overflow: hidden;
    background-color: #f4f4f4; }
    .carousel-cell .img img {
      height: 100%;
      width: auto;
      min-width: 100%;
      max-width: none; }
    .carousel-cell .img .date {
      position: absolute;
      top: 0;
      left: 0;
      text-align: center;
      /* background: url('/images/tpl/bcgr/bcgr_date.svg') 100% 100% no-repeat; */
      line-height: 3rem;
      padding: 0 4rem 0 2rem;
      font-size: 1.3rem;
      font-weight: 700;
      color: #e31e24; }
  .carousel-cell .note {
    color: #e31e24; }
  .fullw .carousel-cell {
    height: 100%; }
  @media only all and (max-width: 59.99rem) {
    .carousel-cell {
      width: 100%; }
      .carousel-cell .corps {
        padding: 1rem; }
      .carousel-cell .img {
        margin: -1rem -1rem 2rem; } }
