

.schedule_grid .title {
  font-size: 1.1rem;
  line-height: 1.75em;
  margin: 0;
  padding: 0;
}

.schedule_grid  h1{
    padding: 5rem 0 0.5rem 0;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    border-bottom: 6px solid #f6f6f1;
    margin: 0;
    font-weight: bolder;
    font-size: 1.5rem;
}


.back_nav.touch_kiosk_button{
  width: 4rem;
  height: 4rem;
}

.touch_kiosk_button{
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  
  background:var(--button-bg-color);
  border-radius: 50%;
}
.touch_kiosk_button svg{
  width: 75%;
}






.schedule_grid > section, .schedule_grid > .schedule_department_block > section {
    padding: 1.5rem 0 1.5rem 0;
    border-bottom: 1px solid #f3f3f3;
}
.dates_row {    
  display: flex;
  justify-content: flex-end;
  flex-direction: row;
  align-items: center;
}


.button_back {
  margin-right: .5rem;
}

.dates{
  display: grid;
  width: 35rem;
  grid-template-columns: repeat(6, 1fr);
  max-width: 100%;
}
  
.date_cell{
  /*width: 3.5rem;*/
  /*margin: 0 .4rem;*/
}


.date_cell .dow{
  text-transform: capitalize;
}

.dow_1{
  grid-column-start: 1;
}
.dow_2{
  grid-column-start: 2;
}
.dow_3{
  grid-column-start: 3;
}
.dow_4{
  grid-column-start: 4;
}
.dow_5{
  grid-column-start: 5;
}
.dow_6{
  grid-column-start: 6;
}
.dow_7{
  grid-column-start: 7;
}


.schedule_row{
  display: flex;
  justify-content: flex-end;
  flex-direction: row;
  align-items: flex-start;
}


.schedule_row:hover{
  background: #f6f6f1;
}

.schedule_row, .dates_row{
    font-size: 1.2rem;
}

.schedule_row > *{
  flex-shrink: 0;
  flex-grow: 0;
}

.schedule_row .header{
  flex-grow: 1;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  flex-shrink: 1;
}

.schedule_row .avatar{
  width: 6rem;
  height: 6rem;
  background: #f6f6f1;
  border: none;
  border-radius: 50%;
  margin-right: 2rem;
  margin-top: -0.5rem;
}

.schedule_row .specialty{
  text-transform: uppercase;
  letter-spacing: .1em;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 1.3rem;
  line-height: 1.2em;
}

.schedule_row .name{
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: normal;
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.3em; 
}


.schedule_row:hover {
  /*background: yellow;*/
}



/* FOR CURRENT APPOINTMENT */
body.current_appointment {
  margin: 2vh 4vw;

}

body.current_appointment header {
  font-size: 2.8rem;
  margin-left: 0;
  line-height: 1em;
}

.direction_navigation svg {
  width: 4rem;
  height: 4rem;
  
}
.direction_navigation svg path {
  fill: transparent;
  stroke-width: 0.75rem;
  stroke-linecap: round;
  stroke: #d0deca;
}

.direction_navigation.right svg {
  transform: rotate(0deg);
}
.direction_navigation.left svg {
  transform: rotate(180deg);
}
.direction_navigation.top svg {
  transform: rotate(270deg);
}
.direction_navigation.bottom svg {
  transform: rotate(90deg);
}
.direction_navigation.bottom_right svg {
  transform: rotate(45deg);
}
.direction_navigation.bottom_left svg {
  transform: rotate(135deg);
}
.direction_navigation.top_right svg {
  transform: rotate(315deg);
}
.direction_navigation.top_left svg {
  transform: rotate(225deg);
}


.direction_navigation svg path{
  visibility: hidden;
}

 .direction_navigation.right .direction  
,.direction_navigation.left .direction  
,.direction_navigation.top .direction  
,.direction_navigation.bottom .direction  
,.direction_navigation.bottom_right .direction  
,.direction_navigation.bottom_left .direction  
,.direction_navigation.top_right .direction  
,.direction_navigation.top_left .direction {
  visibility: visible;
}

 .direction_navigation.upstairs .stairs 
,.direction_navigation.downstairs .stairs {
  visibility: visible;
}

.direction_navigation.downstairs svg {
  transform: scaleX(-1);
}




.schedule_grid.xl .avatar {
  width: 7rem;
  height: 7rem;
  margin-right: 2rem;
}
.schedule_grid.xl .specialty {
  font-size: 1.8rem;
}
.schedule_grid.xl .name {
  font-size: 1.8rem;
  font-weight: 300;
}
.schedule_grid.xl .schedule_row .header .title > *{
  margin-bottom: 0.3rem;
}
.schedule_grid.xl .details {
  font-size: 1.7rem;
  font-weight: 300;
}
.schedule_grid.xl .direction_navigation svg {
    width: 6rem;
    height: 6rem;
}
.schedule_grid.xl > section {
    margin: 4rem 0;
}



.schedule_grid.l .avatar {
  width: 7rem;
  height: 7rem;
  margin-right: 2rem;
}
.schedule_grid.l .specialty {
  font-size: 1.8rem;
}
.schedule_grid.l .name {
  font-size: 1.8rem;
  font-weight: 300;
}
.schedule_grid.l .schedule_row .header .title > *{
  margin-bottom: 0.3rem;
}
.schedule_grid.l .details {
  font-size: 1.7rem;
  font-weight: 300;
}
.schedule_grid.l .direction_navigation svg {
    width: 6rem;
    height: 6rem;
}
.schedule_grid.l > section {
    margin: 2rem 0;
}


.schedule_grid.m .avatar {
  width: 5rem;
  height: 5rem;
  margin-right: 1rem;
}
.schedule_grid.m .specialty {
  font-size: 1.4rem;
}
.schedule_grid.m .name {
  font-size: 1.5rem;
  font-weight: 300;
}
.schedule_grid.m .schedule_row .header .title > *{
  margin-bottom: 0.3rem;
}
.schedule_grid.m .details {
  font-size: 1.5rem;
  font-weight: 300;
}
.schedule_grid.m .direction_navigation svg {
    width: 6rem;
    height: 6rem;
}
.schedule_grid.m > section {
    margin: 2rem 0;
}



.schedule_row .title{
  flex-grow: 1;
}

.current_appointment .details {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: baseline;
}
.current_appointment .details .time{
  align-self: flex-start;
}
.current_appointment .details .position_section{
  align-self: flex-end;
}
.current_appointment .details .floor{
  margin-right: 2rem;
}



.direction_navigation {
  
  margin-left: 2rem;
}
/* / FOR CURRENT APPOINTMENT */








.cabinet .department_address {
  margin-left: 2em;
  color: #8c8c8c;
}
.cabinet .title, .floor .title {
  color: #8c8c8c;
}


.appointment_time{
  margin: 0.5rem 0;
}

.dow{
  letter-spacing: 0.1em;
}

.schedule_row .dow{
  color: #8c8c8c;
  font-size: 0.8rem;
}


.active_dow{
  font-weight: bold;
}


section.filter{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.anchor_link{
  justify-content: center;
  text-decoration: none;
  color: #000;
  font-size: 1rem;
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  display: inline-block;
  padding: 1rem 3rem;
    margin-right: 1rem;
  background: whitesmoke;
  border-radius: 1rem;
}


.current_appointment .schedule_row .specialty{
    font-weight: bold;
} 








.dates_row {    
  position: sticky;
  top: 0;
  background: #ffffff;
  border-bottom: 3px solid #f6f6f1;
}
  
  
  
@media (max-width: 576px) {

}

@media (max-width: 768px) {

}

@media (max-width: 992px) {

  
  .schedule_row {
    flex-wrap: wrap;
  }
  .schedule_row .dates{
     margin-top: 1rem;
  }
  
  .schedule_grid > section, .schedule_grid > .schedule_department_block > section {
    padding-bottom: 2rem;
    padding-top: 2rem;
  }
}

@media (max-width: 1200px) {

    
}





























   
