@font-face {
  font-family: 'LatoLatinHeavy';
  src: url(/media/font/LatoLatin-Heavy.otf); }

@font-face {
  font-family: 'LatoLatinLight';
  src: url(/media/font/LatoLatin-Light.otf); }

@font-face {
  font-family: 'LatoLatinMedium';
  src: url(/media/font/LatoLatin-Medium.otf); }

@font-face {
  font-family: 'LatoLatinRegular';
  src: url(/media/font/LatoLatin-Regular.otf); }

::-webkit-scrollbar {
  width: 10px;
  border-radius: 10px; }

::-webkit-scrollbar-thumb {
  background: #fff;
  border-radius: 10px; }

::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, .1);
  border-radius: 10px; }

::selection {
  background: #b3d4fc;
  text-shadow: none;
  /* --------------------- typo and other basic stuffs --------------------- */ }

*:focus {
  outline: none; }

html, body, .main {
  overflow-x: hidden; }

legend {
  display: none; }

p {
  line-height: 1.5; }

a {
  text-decoration: underline;
  color: inherit;
  transition: all 0.3s; }
  a:hover {
    text-decoration: none;
    color: #ed2939; }
  ul {
    color: #3e5667; }

strong {
  font-family: 'LatoLatinHeavy'; }

.title {
  position: relative;
  font-size: 32px;
  font-family: LatoLatinLight;
  color: #3e5667; }

.title_bi {
  position: relative;
  font-size: 32px;
  font-family: LatoLatinLight;
  text-transform: uppercase;
  color: #3e5667;
  max-width: 300px;
  background: linear-gradient(90deg, #ff2f19, #8e50a8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
  .title_bi.double {
    position: absolute;
    -webkit-text-fill-color: #3e5667;
    top: -34px;
    padding: 5px 0 0 5px; }

.title-gradient {
  font-size: 32px;
  font-family: LatoLatinLight;
  font-weight: 100;
  color: #3e5667;
  max-width: fit-content;
  background: linear-gradient(90deg, #ff2f19, #8e50a8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 40px;
  /* --------------------- Lists --------------------- */ }
  .title-gradient .red {
    font-weight: bold; }

ul li {
  list-style: none; }

.items {
  display: flex;
  padding: 0; }
  .items.vertical {
    flex-direction: column; }
  .items.horizontal {
    flex-direction: row; }
  .items.pub-detail {
    width: fit-content;
    margin: 65px 0 0; }
    .items.pub-detail .item {
      margin-right: 120px;
      margin-bottom: 40px; }
  .items .item {
    margin-right: 20px; }

.grey.pub-detail {
  background-color: #d7dadc;
  width: 100vw;
  padding: 20px 0; }
  .grey.pub-detail .text {
    width: 668px;
    margin: 30px 0 50px calc(50vw - 690px); }

.2cols {
  margin: 0 auto; }

.two-cols-container {
  display: flex;
  flex-direction: row;
  width: 100vw;
  margin-bottom: 60px; }
  .two-cols-container .image-container {
    height: 35vw;
    width: 35vw; }
  .two-cols-container .image-container.roto {
    width: auto; }
  .two-cols-container .image-container.top {
    margin-top: -60px;
    background-size: 100%; }
  .two-cols-container .image-container.big {
    margin-left: 4vw;
    width: 100%;
    height: fit-content; }
  .two-cols-container .image-container.small {
    height: fit-content;
    width: calc(100% - 12vw); }
  .two-cols-container .image-container.fixed {
    height: fit-content;
    width: 500px;
    margin-top: 115px; }
  .two-cols-container .image-container.img {
    object-fit: contain;
    object-position: bottom;
    height: auto; }
    .two-cols-container .image-container.img + i {
      width: 100%;
      display: block;
      margin-top: 10px; }
  .two-cols-container.scnd {
    margin-top: 70px; }
  .two-cols-container.scnd .left .author {
    margin: 40px 0 0 10vw; }
    .two-cols-container.scnd .left .image-container.small {
      margin-top: 34px;
      margin-left: 10vw;
      width: calc(100% - 12vw); }
  .two-cols-container.scnd .right .image-container {
    margin-top: 25px;
    background-color: initial; }
    .two-cols-container.scnd .right .image-container.small {
      max-width: 500px;
      margin-left: 4vw; }
  .two-cols-container .email, .two-cols-container .phone, .two-cols-container .facebook, .two-cols-container .fax {
    font-family: 'LatoLatinHeavy';
    color: #405966;
    text-decoration: none;
    margin-top: 0px;
    margin-bottom: 8px;
    transition: all 0.3s;
    white-space: nowrap; }
  .two-cols-container .email:before, .two-cols-container .phone:before, .two-cols-container .facebook:before, .two-cols-container .fax:before {
    content: url(/media/image/520171b3ff6626996549c0f8fa74119d7960d5a6.svg);
    height: 34px;
    width: 34px;
    position: relative;
    top: 13px;
    margin-right: 15px; }
  .two-cols-container .phone::before {
    content: url(/media/image/d9cc47a8888c383d4b10dcfe14bc4de9a6daeb27.svg); }
  .two-cols-container .fax::before {
    content: url(/media/image/5f3bc72bd349b3251a4fccee3c3937618518394f.svg); }
  .two-cols-container .facebook::before {
    content: url(/media/image/4ed231f33200b75fbe64d7cc0053bf800c83f59c.svg); }

.author {
  display: flex;
  flex-direction: column;
  margin: 40px 0 0 4vw;
  width: 260px;
  /* --------------------- big stuffs --------------------- */ }
  .author .name {
    color: #405966;
    font-family: 'LatoLatinHeavy'; }
  .author .position {
    color: #90a3b1;
    font-family: 'LatoLatinMedium';
    margin-top: -8px; }

html {
  margin: 0; }
  html body {
    font-family: LatoLatinLight;
    font-display: fallback;
    margin: 0;
    background-color: #f2f2f2;
    overflow-x: hidden; }
  html body .main {
    position: relative;
    display: block;
    margin-top: 225px;
    width: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 5; }
    html body .main .main-wrapper .outer-breadcrumb-container.special-breadcrumb {
      margin-top: 30px; }
    html body .main .main-wrapper .maintext {
      position: relative;
      font-size: 24px;
      font-weight: 400;
      color: #fff;
      width: 830px;
      margin: 0 auto;
      text-align: center;
      line-height: 1.46;
      top: -40px;
      opacity: 0; }
    html body .main .main-wrapper .outer-block-general {
      margin-top: 120px;
      margin-left: auto; }
      html body .main .main-wrapper .outer-block-general:last-of-type {
        margin-bottom: 120px; }
    html body .main .main-wrapper .small-top {
      margin-top: 60px; }
    html body .main .main-wrapper .outer-subsection-block .outer-block-general:last-of-type {
      padding-bottom: 0; }

input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0px 1000px white inset !important; }

select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus, select:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0px 1000px white inset !important;
  /* =============================================================== RESPONSIVE =================================================================*/ }

@media (max-width: 1400px) {
  .grey.pub-detail .text {
    width: 668px;
    margin: 30px 0 50px 20px; } }

@media (max-width: 960px) {
  html.open {
    overflow-y: hidden;
    height: 100%; }

  .two-cols-container {
    flex-direction: column; }
    .two-cols-container.scnd {
      margin: 0; }
      .two-cols-container.scnd:last-child {
        margin-bottom: 50px; }
      .two-cols-container.scnd .left .image-container.small {
        margin: 0; }
      .two-cols-container.scnd .right .image-container.small {
        margin-left: 0; }
    .two-cols-container .image-container {
      width: 100vw;
      height: 100vw; }
      .two-cols-container .image-container.big {
        margin-left: 0;
        margin-top: 0; }
      .two-cols-container .image-container.top {
        margin: 0; }

  .outer-switcher.artists {
    position: initial; }
    .outer-switcher.artists .switcher {
      bottom: 180px;
      top: auto;
      left: 10vw; }

  .author {
    margin-left: 10vw; }

  .items.pub-detail {
    margin-left: 20px; }
    .items.pub-detail .item {
      width: 100vw; }

  .grey.pub-detail .text {
    width: calc(100vw - 40px);
    margin-left: 20px; } }

@media (max-width: 480px) {
  .two-cols-container .image-container.top {
    background-size: calc(100% - 40px); } }

@media print {
  .item {
    font-family: 'LatoLatinMedium';
    font-size: 120%;
    color: red;
    margin: 10vw; } }
