/*? sameh code  */

@import "controls.css";
@import "treat_kit.css";

/* general */

p {
  -webkit-margin-before: 0px;
  -webkit-margin-after: 0px;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  -moz-margin-end: 0px;
  -moz-margin-start: 0px;
  -moz-padding-end: 0px;
  -moz-padding-start: 0px;
  padding: 0px;
  margin: 0px;
}

img {
  border: 0px;
  image-rendering: crisp-edges;
}
img,
iframe,
video {
  max-width: 100%;
  max-height: 100%;
}

a {
  text-decoration: inherit;
  color: inherit;
  border: 0;
}

body {
  -webkit-text-size-adjust: 100%;
  font-family: "Heebo", "Helvetica Neue";
  font-weight: 400;
  margin: 0px auto;
  padding: 0px;

  height: 100%;
  font-size: 18px;
  color: #043368;

  touch-action: manipulation;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#container {
  visibility: visible;
  overflow-y: scroll;
  /* -webkit-overflow-scrolling: touch; */
  max-width: 1500px;
  margin: 0 auto;

  height: 100%;
}

input {
  border-radius: 0px;
}

#content {
  overflow-x: hidden;
  overflow-y: scroll !important;
  /*jquery fix */
  /* -webkit-overflow-scrolling: touch; */
}

/************** home page ***********/

/* topics menu */

#topic_menu {
  position: absolute;
  top: 0;
  width: calc(98% - 20px);
  max-width: 1500px;
  left: 50%;
  transform: translate(-50%, -70px);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
}

#prev_topic {
  /*   
  position: relative;
  left: 20px; 
  */
}
#next_topic {
  margin-left: auto;
}

#home_articles_grid {
  width: calc(98% - 20px);
  max-width: 950px;
  margin: 40px auto 70px;
  display: grid;
  grid-template-columns: 300px 300px 300px;
  grid-template-rows: 347px 400px;
  column-gap: 15px;
  row-gap: 15px;
  /*   flex-flow: row wrap;
  align-items: center;
  justify-content: space-between; */
}

.home_articles_small {
  /*  width: 300px;
  height: 500px; */

  /* max-width: 30%; */
}

.home_articles_big {
  position: relative;
  grid-column-start: 1;
  grid-column-end: 3;
  overflow: hidden;
  border: 1px solid #043368;
  /*   grid-row-start: 1;
  grid-row-end: 2; */
}

.home_articles_big iframe {
  width: 100%;
  height: 100%;
}

.home_articles_big .home_articles_text_type,
.home_articles_big .home_articles_text_title {
  position: absolute;
  left: 20px;
  color: white;
  background-color: #043368;
  padding: 2px 5px;
  top: 30px;
}
.home_articles_big .home_articles_text_type {
  bottom: 70px;
  padding: 0 5px;
}

/* normal */
.home_articles_text_box {
  text-align: center;
  margin: auto auto 10px;
}

.home_articles_text_type {
  font-size: 14px;
}

.home_articles_text_title {
  font-size: 22px;
  max-width: 82%;
  margin: 0 auto;
}
.home_articles_text_more {
  font-size: 14px;
  margin-top: 15px;
}
.home_articles_text_text {
  font-size: 14px;
  overflow: hidden;
}

/* product */
.product_item {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.product_item .home_articles_text_box {
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  height: calc(100% - 40px);
  padding:10px;
}

.product_item .home_articles_text_title {
}

/* with image */

.article_item_with_img .home_articles_text_text {
  font-size: 14px;
  max-height: 77px;
  
  overflow: hidden;
}

.article_item_with_img .home_articles_text_img {
  margin-bottom: 10px;
  width: 100%;
  height: 45%;
}
.article_item_with_img .home_articles_text_img img {
  width: 100%;
  object-fit: cover;
}
/* with no image */
.article_item_with_no_img {
  background-color: #043368;
  color: whitesmoke;
}

.article_item_with_no_img .home_articles_text_text {
  font-size: 14px;
  max-height: 210px;
  overflow: hidden;
  margin-top: 10px;
}
.article_item_with_no_img .home_articles_text_type {
  margin-top: 15px;
}


/** embed **/
.video_holder
{
	position:relative;
	width: 100%;
    height: 100%;
}
}

	.embed_holder
	{
		width: 100%;
	    height: 100%;
	
		display:inline-block;
		
		position: relative;
		overflow: hidden;
	}
		.embed_holder
		{
			
		    width: 100%;
		    height: 100%;
		}
		
	.video_buttons_holder
	{
		position: absolute;
	    z-index: 100;
	    margin: 10px 0px 5px;
	    right: 0px;
	    top: 0px;
	}
	
	.video_play, .video_pause, .video_mute, .video_unmute
	{
		display:inline-block;
		width:25px;
		height:25px;
		cursor:pointer;
		margin-right:10px;
	}
	.video_text
	{
		width:29%;
		position:absolute;
		right:0px;
		top:0px;
		vertical-align: top;
		margin-top: 0px;
		font-size:1.1em;
		line-height:1.3em;
	}

@media screen and (max-width: 950px) {
  #home_articles_grid {
    width: calc(98% - 20px);
    max-width: 600px;
    margin: 40px auto 70px;
    display: grid;
    grid-template-columns: 300px 300px;
    grid-template-rows: 400px 400px 400px;
    column-gap: 15px;
    row-gap: 15px;
  }
  .home_articles_big {
    border: 1px solid teal;
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
@media screen and (max-width: 650px) {
  #home_articles_grid {
    width: calc(98% - 20px);
    max-width: 400px;
    margin: 40px auto 70px;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 400px 400px 400px 400px 400px;
    column-gap: 15px;
    row-gap: 15px;
  }
  .home_articles_big {
    border: 1px solid teal;
    grid-column-start: 1;
    grid-column-end: 1;
  }
}

/* structre */
#doctors_container {
  padding-top: 40px;
  width: 100%;
  background-color: #cdd6e1;
}

#show_more_doc_list,
div#doctors_search_container,
#doctors_list {
  width: 50%;
  min-width: 300px;
  max-width: 900px;
  margin: auto;
}

#doctors_container #collection_title,
#doctors_container #collection_intro {
  margin-bottom: 30px;
}

/* search field */
div#doctors_search_container {
  position: relative;
  margin-bottom: 50px;
  margin: 0 auto 50px;
  min-width: 300px;
}

input#doctors_search_field {
  width: calc(100% - 10px);
  height: 35px;
  border: 1px solid #043368;
  color: #043368;
  outline: none;
  padding-left: 10px;
  font-size: 16px;
  background-color: white;
  position: relative;
}

input#doctors_search_field::placeholder {
  color: #043368;
  opacity: 0.7;
}

#doctors_search_container::after {
  content: "";
  width: 70px;
  height: 37px;
  position: absolute;
  right: -2px;
  bottom: 1px;
  background-color: #043368;
}

svg#doctors_search_icon {
  width: 65px;
  height: 36px;
  padding: 6px 0;
  box-sizing: border-box;
  position: absolute;
  bottom: 1px;
  right: 0px;
  cursor: pointer;
  z-index: 1;
}
.cls-1 {
  fill: white;
}
.cls-2 {
  fill: none !important;
  stroke: white;
  stroke-miterlimit: 10;
}

#search_loader,
#doctors_search_reset {
  display: none;
  position: absolute;
  right: 80px;
  z-index: 2;
  top: 10px;
  width: 18px;
  cursor: pointer;
}

#search_loader {
  right: 105px;
}
.filter_keywords {
  padding: 2px;
  box-shadow: 0 0 5px #00000070;
  margin: 0 2px;
}

/* map */
#map {
  position: relative;
  width: 100%;
  overflow: hidden;
  max-width: 1500px;
  height: 60vw;
  max-height: 600px;
  margin: 0px auto 100px;
}

.show_on_map {
  position: absolute;
  right: 0;
  bottom: 10px;
  cursor: pointer;
}

#anfrage_senden {
  transition: all 0.2s ease-in-out;
  position: absolute;
  right: 0;
  top: 10px;
  cursor: pointer;
  border: 1px solid #04336861;
  padding: 0px 10px;
  font-size: 14px;
}
#anfrage_senden:hover {
  border: 1px solid #043368bb;
}

/* doctors */
#doctors_list {
  border-top: 2px solid #043368;
  height: 1110px;

  margin: auto;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

#doctors_list.active {
  height: unset;
}
.row_doc_info {
  max-width: calc(100% - 180px);
  min-width: 300px;
}
.doctor_row {
  position: relative;
  padding: 10px 0;
  border-bottom: 1px dotted #043368;
}
.doctor_row {
  font-size: 16px;
  line-height: 28px;
}

#show_more_doc_list {
  font-size: 16px;
  cursor: pointer;
  padding: 20px 0 200px;
  border-top: 1px solid #04336847;
}

.arrow_down {
  border-bottom: 2px solid #043368;
  border-left: 2px solid #043368;
  display: inline-block;
  margin: 0px 10px 0px 7px;
}
/************** knowledge database page ***********/

#collection_holder {
  font-family: "open_sansregular", sans-serif;
  width: 95%;
  margin: 200px auto 0;
  max-width: 2000px;
  position: relative;
}

#collection_title {
  font-size: 45px;
  margin-bottom: 40px;
  text-align: center;
}

#collection_intro {
  max-width: 840px;
  margin: 0 auto 50px;
  line-height: 1.5em;
  max-width: 90%;
  text-align: center;
}

div#collection_search_container {
  position: relative;
  margin-bottom: 50px;
  width: 60%;
  margin: 0 auto 50px;
  min-width: 300px;
  max-width: 90vw;
}

input#collection_search_field {
  width: calc(100% - 10px);
  height: 35px;
  border: 1px solid #043368;
  color: #043368;
  outline: none;
  padding-left: 10px;
  font-size: 16px;
  background-color: white;
  position: relative;
}

input#collection_search_field::placeholder {
  color: #043368;
}

#collection_search_container::after {
  content: "";
  width: 70px;
  height: 37px;
  position: absolute;
  right: -2px;
  bottom: 1px;
  background-color: #043368;
}

svg#collection_search_icon {
  width: 65px;
  height: 36px;
  padding: 6px 0;
  box-sizing: border-box;
  position: absolute;
  bottom: 1px;
  right: 0px;
  cursor: pointer;
  z-index: 1;
}
.cls-1 {
  fill: white;
}
.cls-2 {
  fill: none !important;
  stroke: white;
  stroke-miterlimit: 10;
}
.filter_controler {
  margin-top: 0;
}

.arrow_down {
  margin-left: 20px;
  margin-bottom: 2px;
  display: inline-block;
  width: 10px;
  height: 10px;
  border-bottom: 2px solid #043368;
  border-left: 2px solid #043368;
  transform: rotate(-45deg);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.filter_controler.active .arrow_down {
  transform: rotate(134deg) translate(5px, -5px);
}

.tags_container {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding-bottom: 30px;
  margin-bottom: 35px;
  border-bottom: 1px solid #043368;
}

.tag,
.p_tag,
.agent_tag,
.hashtag_tag {
  border: 1px solid #043368;
  padding: 7px 12px;
  font-size: 16px;
  margin-right: 15px;
  margin-bottom: 15px;
  transition: all 0.2s;
}

.tag_count {
  position: relative;
  right: -7px;
}

.tag.active,
.p_tag.active,
.agent_tag.active,
.hashtag_tag.active {
  color: white;
  background: #043368;
}

.tag:hover,
.p_tag:hover,
.agent_tag:hover,
.hashtag_tag:hover {
  color: white;
  background: #043368;
}

/* date */
#date_filter_container .date_input_container {
  margin-right: 30px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
}

#date_filter_container .date_input_container span {
  margin-right: 10px;
}

#date_filter_container .date_input_container input {
  font-size: inherit;
  outline: none;
  width: 99px;
  border: 0;
  border-bottom: 1px solid;
  text-align: center;
}

.date_btn {
  cursor: pointer;
  margin-right: 20px;
  border: 1px solid #043368;
  padding: 0px 8px;
  font-size: 16px;

  transition: all 0.2s;
}

.date_btn:hover {
  color: white;
  background-color: #043368;
  border: 1px solid #043368;
}

/********** Articles  ***********/

#collection_items_holder,
#related_articles {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  width: 100%;
  padding-top: 20px;
  border-top: 1px solid;
  margin: auto;
  margin-bottom: 80px;
}

#related_articles {
  justify-content: flex-start;
  margin-top: 100px;
}

#related_articles .article {
  margin: 15px 20px 15px 0;
}

.related_title {
  width: 100%;
  margin: 5px 0 20px;
}

#grid_top_row {
  width: 100%;
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
}
#sorting_container {
  margin-left: auto;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: flex-end;
  width: 400px;
}

.sort_title {
  font-size: 14px;
}
.sort_select select {
  font-size: 14px;
  margin-right: 20px;
  display: block;
  padding: 2px 20px 2px 0;
  margin: 0 0px 0 20px;
  box-sizing: border-box;
  border: none;
  border-bottom: 1px solid #043368;
  color: #043368;
  border-radius: 0px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23043368%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E),
    linear-gradient(to bottom, transparent 0%, transparent 100%);
  background-repeat: no-repeat, repeat;
  background-position: right 0em top 50%, 0 0;
  background-size: 0.65em auto, 100%;
  outline: none;
  cursor: pointer;
}

.article {
  width: calc(33% - 30px);
  min-width: 350px;
  margin: 15px 0px;
  display: flex;
  flex-flow: column nowrap;
  height: 710px;
  background-color: white;
  text-align: center;
}

.article .row_image {
  height: 40%;
  width: 100%;
}

.article .row_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article .row_title {
  font-size: 28px;
  text-align: center;
  margin: 10px auto 10px;
  width: 95%;
}

.article .row_desc {
  font-size: 16px;
  text-align: center;

  max-height: 250px;
  overflow: scroll;
}

.article .row_mehr {
  font-size: 16px;
  margin: 10px auto 10px;
}
.arrow_right {
  transition: all 0.3s ease-in-out;
  width: 8px;
  height: 8px;
  border-right: 3px solid #043368;
  border-bottom: 3px solid #043368;
  display: inline-block;
  transform: rotate(-45deg);
  margin-left: 5px;
}
.article:hover .arrow_right {
  transform: rotate(-45deg) translate(5px, 5px);
}

/******* Log in  ******/
/* #show_log_in {
  position: absolute;
  top: -35px;
  right: 0;
  border: 1px solid;
  display: inline-block;
  margin-left: auto;
  padding: 3px 10px 5px;
  cursor: pointer;
}

#show_log_in:hover {
  color: #cdd6e1;
  background-color: #043368;
} */
#full_background {
  display: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: black;
  opacity: 0.6;
}

#log_in_container {
  display: flex;
  display: none;
  position: fixed;
  width: 450px;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  padding: 55px 10px;
  background: white;
  top: 30vh;
  left: 50%;
  transform: translate(-50%, 0px);
  z-index: 3;
}

#welcome {
  text-align: center;
  font-size: 2em;
  margin-bottom: 30px;
  opacity: 0;
  animation: fade_in_scale 3s 1s forwards;
}

@keyframes fade_in_scale {
  0% {
    opacity: 0;
    transform: scale(1);
  }

  100% {
    opacity: 1;
    transform: scale(1.2);
  }
}

@keyframes fade_in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

#log_in_input_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row nowrap;
  /* opacity: 0; */
  animation: rotate_width 5s forwards;
}

@keyframes rotate_width {
  0% {
    border: 1px solid;
    width: 25px;
    overflow: hidden;
    border-radius: 10px;
    transform: rotate(720deg);
  }
  80% {
    border: 1px solid;
    width: 25px;
    overflow: hidden;
    border-radius: 10px;
    transform: rotate(0deg);
  }
  85% {
    border: 1px transparent;
  }

  100% {
    border: 0px solid;
    width: 300px;
    overflow: visible;
    border-radius: 0px;
    transform: rotate(0deg);
  }
}

#log_in_email {
  color: #043368;
  border: 1px solid #043368;
  height: 30px;
  margin-right: 5px;
  font-size: 0.7em;
  padding: 0px 5px;
  width: 220px;
  outline: none;
}

#log_in_email::placeholder {
  color: #043368;
}

#log_in_btn {
  cursor: pointer;
  border: 1px solid #043368;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
}
#log_in_btn:hover {
  background-color: #043368;
  color: white;
}

/* detail pages */
#back_btn {
  font-size: 14px;
  margin: 50px auto;
  max-width: 800px;
}
.arrow_left {
  width: 8px;
  height: 8px;
  border-left: 3px solid #043368;
  border-top: 3px solid #043368;
  display: inline-block;
  transform: rotate(-45deg);
  margin-right: 5px;
}

@media screen and (min-width: 1050px) {
  #back_btn {
    position: absolute;
    left: 50px;
    top: 10px;
    margin: 0px;
  }
}

#col_container {
  width: 100%;
  max-width: 800px;
}

.detail_top_part {
  width: 80%;
  margin: 0 auto 30px;
}

#detail_intro_title {
  font-size: 45px;
  margin-bottom: 30px;
}

.detail_intro {
  font-size: 20px;
}

#detail_tags {
  margin-top: 20px;
}
.detail_tag {
  display: inline;
  font-size: 16px;
  text-decoration: underline;
  margin-right: 8px;
}

.module {
  width: 80%;
  margin: 0 auto 30px;
}

.module.module_start {
  text-align: center;
  width: 100%;
  margin: 0;
  margin-bottom: 30px;
}

.module_image img {
  width: 80%;
  margin: auto;
  display: block;
}

@media screen and (max-width: 1000px) {
  
  #anfrage_senden
  {
  	position:relative;
  	width:130px;
  }
  
  .row_doc_info
  {
  	min-width: auto;
  	max-width: 100%;
  }
  .doctor_row
  {
  	padding:25px 0px;
  }
  
}


/* ToDo    Add media queries for font sizes on small screens for the titles */
