/* Mobile version */
html {
  font-size: 13px;
  line-height: 1.45;
}

.desktop, .menu .menu__item.desktop { display: none }
.mobile, .menu .menu__item.mobile, .content .mobile { display: block; } 

body { 
  opacity: 0; transition: 0.15s all;
}

body.is-loaded {
  opacity: 1;
}

.full-width {
  max-width: none; padding: 0;
}

/* Header */
.language .language__item {
  margin-top: 26px;
}

/* General */

  .scroll-up {
    width: 56px;
    height: 61px;
    display: block;
    background: url('../images/mobile-scroll-up.svg') 50% 50% no-repeat;
    margin-left: 0;
  }
  
  /* Squares */
  .square {
    width: 100%; padding-top: 80%; border: 1px solid; float: none;
    background: transparent;
  }


  /* Header */
  .page-header {
    height: 252px; background: black;
  }
    
  .page-header__column {
    width: 100%; display: none;
  }

  .page-header__column--2 {
    display: block; border: none; 
  }

  .page-header__column .logo__image {
    background-size: 199px auto;
  }

  .page--area .page-header__image {
    left: 0; right: 0; width: auto;
  }

/* Recognition */
.page--recognition .page-header__image {
  display: none;
}

.ranking-logo, .ranking__content {
  width: auto; float: none; max-width: none;
  margin: 0 15px;
}

.rankings {
  margin-top: 46px;
}

.ranking__logo {
  margin-bottom: 35px; height: auto;
}

.ranking {
  margin-bottom: 75px;
}

.ranking:last-child {
  margin-bottom: 0;
}

.ranking-logo img {
  margin: 0; max-height: 94px;
}

.page__content h3 {
  font-size: 0.9rem; margin-bottom: 4px;
}

/* Areas */
.area__content, .area__nav-wrapper, .area__nav { 
  width: auto; float: none; margin: 0  15px; max-width: none;
}

.area__content, .page__content {
  letter-spacing: 0.065em; font-size: 1rem; line-height: 2.25; color: #666; padding-right: 0;
}


.area__nav {
  margin: 0;
}

.area {
  margin-top: 34px;
}

.page__content .area__link {
  letter-spacing: 0.23em; line-height: 1.74;
}

.area__link.area__link--current {
  font-size: 1.76rem; letter-spacing: 0.19em;
  line-height: 1.5;
}

.page__content .area__link--home {
  margin-top: 30px; margin-bottom: 27px;
}

/* About */
.about-sidebar,
.about-sidebar.is-down {
  position: relative; top: 0; width: auto; overflow: hidden; z-index: 1;
}

.admin-bar .about-sidebar {
  top: 0;
}

html #wpadminbar {
  position: fixed;
}

.about-sidebar__logo {
  height: 248px;
}

.about .logo__image { 
  background-size: 200px auto;
}

.about__text, .about__text > * {
  margin: 0; min-height: 0 !important; height: auto;
}

.about__text .middle__inner {
  vertical-align: top;
}

.about__text .middle__inner p:first-child {
  margin-top: 35px;
}

.about__text .middle__inner p:last-child {
  margin-bottom: 35px;
} 

.about__text {
  font-size: 1rem; line-height: 2.1;
  padding: 0 30px;
}

.about__text p {
  margin-bottom: 9px;
}

.about__text .scroll-up {
  background-image: url('../images/mobile-scroll-up-white.svg');
  margin-left: -18px; margin-top: -25px; margin-bottom: 13px;
}

/* Contact */
.page--contact .page-header__image--1 {
  display: none;
}

.contact__column {
  display: block; width: auto;
  padding: 30px 15px
}

.contact__column.column--2 {
  order: 1;
}

.contact__column.column--3 {
  padding-top: 0px; margin-top: -1px; padding-bottom: 9px;
}

.contact__content {
  display: flex; flex-direction: column;
}

.contact__title {
  font-size: 1.34rem; padding-bottom: 5px; margin-bottom: 13px;
}

.contact__column .phones {
  line-height: 2;
}

.contact__address {
  padding: 14px 20px 15px 8px;
}

.contact__column .contact-icons__icon {
  padding: 0; height: 33px;
}

.contact__column .contact-icons {
  float: none;
}

.gfield {
  margin-bottom: 15px;
}

.cv-upload {
  bottom: -99px;
  left: 70px;
  width: auto;
  max-width: 270px;
  padding-right: 0;
  right: -10px;
}

/* Lawyers */
.lawyers__logo {
  position: relative; height: 253px;
  background: black;
}

.lawyers__logo .logo__image {
  background-size: 200px auto;
}

.square, .squares--top .square {
  float: none; width: 100%; padding-top: 80%;
  border: none; border-top: 3px solid white;
}

.is-lawyer-hover .square {
  opacity: 1;
}

.lawyer__links, .squares--top {
  float: none; width: auto; float: none;
}

.lawyers__top {
  display: block;
}

.lawyer__links {
  border-bottom: none;
  border-top: 3px solid white;
  border-right: 0; border-left: 0;
}

.lawyer__links > .fill {
  position: static; padding: 65px 0;
}

.square--title {
  display: none;
}

.lawyer-thumb__name {
  font-size: 0.85rem; letter-spacing: 0.23em;
}

.lawyer__link {
  font-size: 1rem; margin-bottom: 25px;
  letter-spacing: 0.3em;
}

.lawyer__links li:last-child .lawyer__link {
  margin-bottom: 8px;
}

.square.square--filler {
  display: none;
}

/* Single lawyer */
.lawyer {
  padding: 25px 15px;
}

.lawyer__meta, .lawyer__content {
  display: block; width: auto; padding-bottom: 0;
  padding-top: 0;
}

.lawyer__meta .inner {
  max-width: none;
}

.lawyer__content .inner {
  max-width: none; padding-right: 0;
}

.lawyer__icon {
  margin-top: 24px;
}

.lawyer__cv {
  margin-top: 20px;
}


.cv-item__title {
  margin-bottom: 3px;
}

.cv-item {
  margin-bottom: 17px; padding-bottom: 11px;
  font-size: 0.9rem; font-weight: normal; color: #666;
}

.cv-item:last-child {
  border-bottom: 1px solid #8f8f8f;
}

.info-line {
  font-size: 0.85rem; line-height: 3;
}  
 
/* Homepage */
.square .logo__image {
  background-size: 200px auto;
}

.homepage .square {
  border-top: 2px solid white;
}

.page__title .title-wrapper {
  font-size: 1.3rem; letter-spacing: 0.22em;
}

.hp-link__subtitle {
  letter-spacing: 0.05em; font-size: 0.95rem;
  line-height: 1.6;
}

.quote__content {
  max-width: 300px; margin: 0 auto;
  font-size: 1.15rem
}

/* Default */
.page--default .page__content {
  margin-top: 50px; margin-left: 15px; margin-right: 15px;
  max-width: none; margin-bottom: 50px;
}

.page-header__image--2 {
  width: 100%;
}