@media (min-width: 768px) {
  body {
    overflow-y: hidden;
  }
  .wrapper {
    display: inline-flex;
    height: 100%;
  }
  .taf-logo {
    height: 100%;
  }
  .header.grid.eight {
    grid-template-columns: 1fr 0 1fr 1fr 1fr 1fr 0 auto;
  }
  .image-hover img {
    top: 1.25em;
    left: 0;
  }
  .en #home .lead,
  .fr #home .lead {
    font-size: 3vw;
  }
  #home .logos {
    bottom: 0;
  }
  #home .logos small {
    margin-bottom: 0.3rem;
  }
  #home .logos .grid {
    height: calc(100% - 1em);
  }
  #home .logos img:nth-last-child(2) {
    height: calc(100% + 2em);
    margin-top: -1em;
  }
  #team {
    display: grid;
  }
  #team .lead p,
  #partners .lead p {
    margin: 0.5em 0;
    font-size: 1.666667rem;
    line-height: 1.2em;
  }
  #team .lead p + p,
  #partners .lead p + p {
    font-size: 2rem;
  }
  #team .members {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    flex-flow: wrap;
    margin-left: calc(100vw /12 * 3 - 1rem);
    writing-mode: vertical-lr;
  }
  #team .members::after {
    content: '';
    width: 0;
    height: calc((100vw - 5rem) / 6 / 0.716);
    margin: 0.5rem;
  }
  #team .member {
    width: 40vh;
    height: calc(100% / 2.2 - 1rem);
    writing-mode: horizontal-tb;
    margin-right: 1rem;
  }
  #team .member .photo {
    width: auto;
    height: 100%;
  }
  #team .member .photo img {
    max-height: 100%;
  }
  #team .member .name {
    margin-bottom: 0.25em;
  }


  #services {
    display: flex;
    padding-top: 1rem;
  }
  #services .lead {
    width: 305px;
  }
  #services .lead::before {
    left: -1.1rem;
  }
  #services .lead-space {
    position: absolute;
    top: 0;
    left: 1rem;
    padding: 0;
    width: 100vw;
    height: 509px;
  }
  #services .info.grid {
    grid-template-rows: 51% calc(49% - 1rem);
    width: 100vw;
    height: 100%;
    margin-right: calc(100vw / 8);
  }
  #services .info img {
    width: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center center;
  }
  #services .info .info-item:hover .inner {
    display: block;
  }
  #services .info .inner {
    display: none;
    position: absolute;
    width: 66%;
  }
  #services .info .inner::before {
    content: '';
    position: absolute;
    background: white;
  }
  #services .info .inner .text {
    white-space: pre-line;
  }
  #services .info1 .inner {
    right: 0;
  }
  #services .info1 .inner::before {
    width: 1px;
    height: 40%;
    left: -0.5rem;
  }
  #services .info1 {
    grid-column: 3 / span 3;
  }
  #services .info2 {
    grid-column: 1 / span 3;
    align-self: end;
  }
  #services .info2 .inner {
    left: calc(100% + 1rem);
    top: 0;
  }
  #services .info2 .inner::before {
    top: 0;
    left: -1rem;
    width: 25%;
    height: 1px;
  }
  #services .info3 {
    grid-column: 6 / span 3;
    grid-row: 1 / span 2;
    align-self: end;
    left: calc(100vw / 16 - 0.5rem);
  }
  #services .info3 .inner {
    right: calc(100% + 1rem);
    top: calc(51% + 1rem);
    text-align: right;
  }
  #services .info3 .inner::before {
    top: 0;
    right: -1rem;
    width: 30%;
    height: 1px;
  }
  #services .truck {
    margin-left: 23vw;
  }
  #services .truck .hotspot:hover::before,
  #services .truck .hotspot:focus::before,
  #services .truck .hotspot:active::before {
    display: none;
  }
  #services .truck .hotspot2 .typologies {
    max-height: 296px;
    margin: 2rem -1rem 0rem;
    writing-mode: vertical-lr;
  }
  #services .truck .hotspot2 .typologies > li {
    width: 216px;
    max-height: 142px;
    margin: 0 1rem;
    writing-mode: horizontal-tb;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }



  #partners .grid.eight {
    position: absolute;
    top: 0;
    left: 1rem;
    width: 100vw;
    height: 100%;
  }
  #partners .grid .lead {
    grid-column: 1 / span 2;
  }
  #partners .partners {
    padding: 0 0.5rem;
    display: flex;
    height: 100%;
    margin-left: calc(100vw /8 * 2.5 - 1rem);
  }
  #partners .partner {
    width: calc((100vw - 2rem) / 3);
    margin: 0 0.5rem;
  }
  #contacts {
    max-width: calc(100vw / 4 + 1rem);
    padding-top: 2rem;
  }
}

@media (min-width: 768px) and (max-height: 750px) {
  #team .member {
    width: 42vh;
    height: calc(100% / 2 - 1rem);
  }
}
@media (min-width: 768px) and (max-width: 992px) {
  .header {
    font-size: 0.8em;
  }
}
