/* Elements */
#keypointSlider {
  position: relative;
  display: block;
  overflow-x: hidden; }
  #keypointSlider #keypointSliderTrack {
    height: 100%;
    white-space: nowrap;
    opacity: 0; }
  #keypointSlider #keypointSliderOverview {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap; }
    #keypointSlider #keypointSliderOverview .keypointSliderOverviewItem {
      position: relative;
      cursor: pointer;
      margin: 0 0.4em;
      text-align: center;
      min-height: 2em;
      display: flex;
      align-items: flex-end; }
      #keypointSlider #keypointSliderOverview .keypointSliderOverviewItem::before {
        position: absolute;
        content: '';
        width: 0;
        height: 0.1em;
        background: #008d00;
        bottom: 0.1em;
        left: 0;
        -webkit-transition: width 0.25s;
        -moz-transition: width 0.25s;
        -ms-transition: width 0.25s;
        -o-transition: width 0.25s;
        transition: width 0.25s; }
      #keypointSlider #keypointSliderOverview .keypointSliderOverviewItem:hover::before, #keypointSlider #keypointSliderOverview .keypointSliderOverviewItem.highlight::before {
        width: 100%; }
  #keypointSlider .keypointSliderItem {
    vertical-align: middle;
    white-space: normal;
    display: inline-block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 1px; }
    #keypointSlider .keypointSliderItem .title {
      font-family: "EB Garamond", serif;
      font-size: 3.5em;
      color: #c67900;
      line-height: 0.9;
      padding-top: 0.1em; }
    #keypointSlider .keypointSliderItem .desc {
      margin-top: 0.9em;
      margin-bottom: 2em;
      font-size: 1.5em; }
    #keypointSlider .keypointSliderItem .keypointSliderLink {
      position: relative;
      margin-top: 0.25em;
      padding: 1em;
      text-transform: uppercase;
      background: #008d00;
      display: inline-block;
      color: white;
      cursor: pointer;
      font-size: 1.05em;
      margin-right: 0.2em; }
      #keypointSlider .keypointSliderItem .keypointSliderLink::before {
        content: "";
        width: 0;
        height: 0.1em;
        min-height: 2px;
        background: white;
        position: absolute;
        bottom: 1em;
        -webkit-transition: width 0.25s;
        -moz-transition: width 0.25s;
        -ms-transition: width 0.25s;
        -o-transition: width 0.25s;
        transition: width 0.25s;
        top: unset; }
      #keypointSlider .keypointSliderItem .keypointSliderLink:hover::before {
        width: 1em; }

/* Elements */
.pricelist {
  text-align: center;
  font-size: 1.3em; }
  .pricelist .priceListHeadline {
    font-size: 1.5em;
    color: #008d00;
    margin-top: 2em; }
  .pricelist .itemGroup {
    margin-bottom: 1em; }
    .pricelist .itemGroup .itemGroupTitle {
      font-size: 1.5em;
      color: #008d00;
      text-align: center; }
    .pricelist .itemGroup .item {
      margin-left: 1em; }
    .pricelist .itemGroup.twoCol {
      display: flex;
      margin-top: 1em; }
      .pricelist .itemGroup.twoCol > * {
        padding: 0 5%;
        box-sizing: border-box;
        width: 50%; }
        .pricelist .itemGroup.twoCol > * .item {
          display: inline-block;
          text-align: left;
          margin-left: 0; }
      .pricelist .itemGroup.twoCol > .itemGroup .item {
        width: 100%; }
  .pricelist .item {
    padding: 0.5em 0 1em 0; }
    .pricelist .item .title {
      font-weight: 600; }

.itemGroupInsert {
  position: relative;
  display: inline-block;
  text-align: left; }

h2, h3 {
  margin-top: 1em;
  margin-bottom: 0.5em;
  display: block;
  font-size: 1.3em;
  color: #008d00; }
  h2:first-child, h3:first-child {
    margin-top: 0; }

h2 {
  font-size: 1.2em;
  color: #c67900; }

#introRight #introImgParo {
  object-position: 33% 0; }

#introRight #imgHyg {
  object-position: 45% 0; }

#introReviews {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 70%;
  margin-top: 2em; }
  #introReviews .review {
    padding-top: 1em;
    border-top: 2px solid #c67900; }
    #introReviews .review::after {
      content: '';
      display: block;
      clear: both; }
  #introReviews .author {
    margin-top: .5em;
    float: right;
    margin-right: 0.5em;
    font-style: italic; }
    #introReviews .author::before {
      content: '- '; }

#fieldMembers {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  z-index: 2;
  min-height: 70%;
  align-content: center; }
  #fieldMembers .teamMemberBadge {
    position: relative;
    background: #f5f5f5;
    border-radius: 1em;
    width: calc(50% - 1em);
    box-sizing: border-box;
    box-shadow: 0 0.5em 1em -0.25em rgba(0, 0, 0, 0.2);
    padding: 2em 1em;
    text-align: center;
    margin: 0.5em;
    display: flex;
    flex-direction: column; }
    #fieldMembers .teamMemberBadge .memberBadgeImg {
      left: 50%;
      transform: translateX(-50%);
      width: 70%;
      text-align: center;
      display: block;
      position: relative;
      flex-shrink: 0;
      border-radius: 50%;
      overflow: hidden; }
      #fieldMembers .teamMemberBadge .memberBadgeImg::before {
        content: ' ';
        display: block;
        padding-bottom: 100%;
        width: 100%; }
    #fieldMembers .teamMemberBadge .memberImg, #fieldMembers .teamMemberBadge .memberImgAlt {
      position: absolute;
      width: 150%;
      top: -15%;
      left: -30%;
      text-align: center;
      display: block;
      transform: scaleX(-1); }
    #fieldMembers .teamMemberBadge .memberImgAlt {
      -webkit-transition: opacity 0.25s;
      -moz-transition: opacity 0.25s;
      -ms-transition: opacity 0.25s;
      -o-transition: opacity 0.25s;
      transition: opacity 0.25s;
      opacity: 0; }
    #fieldMembers .teamMemberBadge:hover .memberImgAlt {
      opacity: 1; }
    #fieldMembers .teamMemberBadge .memberInfo {
      display: inline-flex;
      flex-direction: column;
      width: 100%;
      vertical-align: top;
      box-sizing: border-box;
      padding-top: 0.5em;
      justify-content: space-between;
      flex-grow: 1; }
    #fieldMembers .teamMemberBadge .name {
      margin-top: 0.5em;
      text-align: center;
      white-space: normal; }
      #fieldMembers .teamMemberBadge .name .prefix {
        display: inline-block; }
      #fieldMembers .teamMemberBadge .name .prefix, #fieldMembers .teamMemberBadge .name .postfix {
        font-weight: bold;
        font-size: 1em; }
    #fieldMembers .teamMemberBadge .nameItself {
      display: inline-block;
      font-size: 1.5em;
      line-height: 1;
      white-space: normal;
      color: #008d00; }
    #fieldMembers .teamMemberBadge .field {
      margin-top: 0.5em;
      color: #c67900; }
    #fieldMembers .teamMemberBadge:first-child:last-child {
      margin: 0 5em;
      max-width: 80%;
      width: 50%; }
      #fieldMembers .teamMemberBadge:first-child:last-child .memberBadgeImg {
        width: 70%; }
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(3),
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(3) ~ .teamMemberBadge, #fieldMembers .teamMemberBadge:first-child:nth-last-child(4),
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(4) ~ .teamMemberBadge {
      width: calc(50% - 1em); }
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(3) .memberBadgeImg,
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(3) ~ .teamMemberBadge .memberBadgeImg, #fieldMembers .teamMemberBadge:first-child:nth-last-child(4) .memberBadgeImg,
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(4) ~ .teamMemberBadge .memberBadgeImg {
        width: 50%; }
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(5),
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(5) ~ .teamMemberBadge, #fieldMembers .teamMemberBadge:first-child:nth-last-child(6),
    #fieldMembers .teamMemberBadge:first-child:nth-last-child(6) ~ .teamMemberBadge {
      width: calc(33% - 1em); }
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(5) .memberBadgeImg,
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(5) ~ .teamMemberBadge .memberBadgeImg, #fieldMembers .teamMemberBadge:first-child:nth-last-child(6) .memberBadgeImg,
      #fieldMembers .teamMemberBadge:first-child:nth-last-child(6) ~ .teamMemberBadge .memberBadgeImg {
        width: 70%; }
    #fieldMembers .teamMemberBadge .moreInfo {
      margin-top: 1em; }

.pageSectionOptions {
  display: flex;
  justify-content: space-evenly;
  margin-bottom: 2em;
  margin-top: 1em; }

#ukazka .text, #estetika .text {
  display: flex;
  flex-direction: column;
  justify-content: center; }
  #ukazka .text .headline, #estetika .text .headline {
    width: 80%; }

.pageSectionContent .review {
  display: inline-block;
  width: calc(30% - 2em);
  margin: 0 2em;
  padding-bottom: 1em;
  border-bottom: 2px solid #c67900;
  vertical-align: top; }
  .pageSectionContent .review .reviewAuthorCont {
    display: block;
    text-align: right; }
  .pageSectionContent .review .reviewAuthor {
    position: relative;
    right: 0;
    margin-top: 0.5em; }

#braneHero {
  max-height: unset; }

.pageSection .pageSectionContent.illustratedText.implType .text {
  width: 70%; }

.pageSection .pageSectionContent.illustratedText.implType .illustrativeImgs {
  width: 30%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }

#implType1 {
  background-image: url("/images/impl/Straumann_Implant_Solutions_small_lowres.jpg"); }

#implDentis {
  background-image: url("/images/impl/implantat_dentis.jpg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }

#implType2 {
  background-image: url("/images/impl/implant-5.jpg"); }

#implType3 {
  background-image: url("/images/impl/implant-2.jpg"); }

#implType4 {
  background-image: url("/images/impl/implant-3.jpg"); }

#imgRecRoom {
  background: url("/images/office/surgery/0121_LukasRadekCz_2719.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-x: 40%;
  filter: brightness(1.1); }

#imgRecRoom2 {
  background: url("/images/office/surgery/0117_LukasRadekCz_2703.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-y: 74%;
  background-position-x: 60%;
  filter: brightness(1.05); }

#imgImpWhy {
  transform: scaleX(-1);
  background: url("/images/impl/implant-4.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-x: 70%;
  background-position-y: 70%; }

#imgPrevent {
  background: url("/images/office/purple/0217_LukasRadekCz_3360.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-y: 30%;
  background-position-x: 50%; }

#imgSurgSpectrum {
  background: url("/images/ops/0688_LukasRadekCz_2436_edit.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-x: 90%; }

#imgGeneral {
  background: url("/images/office/gold/0236_LukasRadekCz_3063.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-x: 80%;
  transform: scaleX(-1); }

#imgSurgEquip {
  filter: brightness(1.05);
  object-fit: cover;
  height: 100%;
  width: 100%; }

#imgBlahakova {
  position: relative;
  background: url("/images/tym/sq/blahakovad_0.jpg") 0 0 no-repeat;
  background-size: cover;
  transform: scaleX(-0.9) scaleY(0.9);
  background-position-y: 25%;
  border-radius: 50%; }
  #imgBlahakova::before {
    content: '';
    display: block;
    padding-bottom: 100%; }

#imgVersah {
  position: relative;
  background: url("/images/ops/0736_LukasRadekCz_2484.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-x: 65%; }
  #imgVersah::before {
    content: '';
    display: block;
    padding-bottom: 100%; }

#imgKriva {
  position: relative;
  background: url("/images/tym/sq/kriva_1.jpg") 0 0 no-repeat;
  background-size: cover;
  transform: scaleX(0.7) scaleY(0.7);
  background-position-y: 25%;
  border-radius: 50%; }
  #imgKriva::before {
    content: '';
    display: block;
    padding-bottom: 100%; }

#imgHygStock {
  background: url("/images/services/hyg/0111_LukasRadekCz_2586.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-y: 35%;
  background-position-x: center; }

#imgHygOffice {
  background: url("/images/services/hyg/0215_LukasRadekCz_3124.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-y: 35%;
  background-position-x: center; }

#imgHygBrushes {
  background: url("/images/services/hyg/0217_LukasRadekCz_3360.jpg") 0 0 no-repeat;
  background-size: cover;
  background-position-y: 35%; }

@media (pointer: coarse) {
  #fieldMembers.scroll {
    overflow-x: auto; }
    #fieldMembers.scroll::before {
      width: 5%; } }

.text li {
  margin-left: 2em; }

.text ul {
  margin-bottom: 0.3em; }

#vaccinationManagement {
  margin-top: 1.5em;
  display: flex;
  justify-content: space-evenly; }
  #vaccinationManagement h4 {
    font-weight: bold; }
  #vaccinationManagement table.vaccinationPlan {
    border-collapse: collapse; }
    #vaccinationManagement table.vaccinationPlan td {
      text-align: center;
      padding: 0.125em 0.5em;
      border: 1px solid #008d00; }
    #vaccinationManagement table.vaccinationPlan tr td:nth-child(2), #vaccinationManagement table.vaccinationPlan tr td:nth-child(5), #vaccinationManagement table.vaccinationPlan tr td:nth-child(6) {
      background: rgba(252, 236, 227, 0.7); }
    #vaccinationManagement table.vaccinationPlan tr td:first-child {
      text-align: left;
      padding-left: 0; }
    #vaccinationManagement table.vaccinationPlan td:first-child {
      border-left: 0; }
    #vaccinationManagement table.vaccinationPlan tr:first-child td {
      border-top: 0; }
    #vaccinationManagement table.vaccinationPlan td:last-child {
      border-right: 0; }
    #vaccinationManagement table.vaccinationPlan tr:last-child td {
      border-bottom: 0; }

@media all and (min-width: 965px) {
  #imgBlahakova {
    margin-top: -10%; }
  #imgKriva {
    margin-top: -10%; }
  #fieldMembers.scroll {
    overflow-x: hidden;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: flex-start;
    position: absolute;
    top: 50% !important;
    transform: translate(-50%, -50%);
    min-height: unset;
    align-content: initial; }
    #fieldMembers.scroll::after, #fieldMembers.scroll::before {
      display: block;
      content: '';
      width: 15%;
      flex-shrink: 0; }
    #fieldMembers.scroll::before {
      width: 5%; }
    #fieldMembers.scroll .teamMemberBadge {
      flex-shrink: 0;
      min-width: 40% !important; } }

@media all and (max-width: 964px) {
  #intro {
    height: unset;
    min-height: 91%; }
  #introImgCont {
    flex-shrink: 0;
    min-height: 40vh;
    flex-basis: 40vh; }
  #fieldMembers {
    overflow-x: auto;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: flex-start;
    position: absolute;
    top: 50% !important;
    transform: translate(-50%, -50%);
    min-height: unset;
    align-content: initial; }
    #fieldMembers::after, #fieldMembers::before {
      display: block;
      content: '';
      width: 10%;
      flex-shrink: 0;
      flex-grow: 1; }
  .teamMemberBadge {
    flex-shrink: 0;
    min-width: 40% !important; }
  .pageSectionContent .review {
    margin-bottom: 4em;
    display: block;
    width: 80%;
    margin-left: 10%;
    padding-bottom: 1em;
    border-bottom: 2px solid #c67900; }
    .pageSectionContent .review .reviewAuthorCont {
      display: block;
      text-align: right; }
    .pageSectionContent .review .reviewAuthor {
      position: relative;
      right: 0;
      margin-top: 0.5em; }
  .pageSection .pageSectionContent.illustratedText.implType .illustrativeImgs {
    width: 100%; }
  .pageSection .pageSectionContent.illustratedText.implType .text {
    width: 100%; }
  #vaccinationManagement {
    flex-direction: column;
    align-items: flex-start; }
    #vaccinationManagement > div {
      margin-bottom: 1.5em; } }
