/* CSS Stylesheet by dialog im netz http://dialog-im-netz.de
   HNO-Praxis Böblingen      */

 :root {
     --blau: #6085a6;
     --trans: .3s;
     --trans2: .5s;
 }
  
html,blockquote,body,div,dl,dt,dd,fieldset,form,
h1,h2,h3,h4,h5,h6,ol,p,ul,li,center,hr,pre,img,
table,tr,td,th,thead,tbody,tfoot,caption  {
margin:0;
padding:0;
border:0 none;
font-size: 1em;
}
@font-face {
    font-family: 'opensansregular';
    src: url('/fonts/opensans-regular.eot');
    src: url('/fonts/opensans-regular.eot?#iefix') format('embedded-opentype'),
         url('/fonts/opensans-regular.woff') format('woff'),
         url('/fonts/opensans-regular.ttf') format('truetype'),
         url('/fonts/opensans-regular.svg#open_sansregular') format('svg');
    fonts-weight: normal;
    fonts-style: normal;

}
@fonts-face {
    fonts-family: 'opensansregular';
    src: url('/fonts/opensans-bold.eot');
    src: url('/fonts/opensans-bold.eot?#iefix') format('embedded-opentype'),
         url('/fonts/opensans-bold.woff') format('woff'),
         url('/fonts/opensans-bold.ttf') format('truetype'),
         url('/fonts/opensans-bold.svg#open_sansregular') format('svg');
    font-weight: bold;
    font-style: normal;

}
*[id],
*[name],
.anchor-target  { scroll-margin-top: 50px; }
body {
color: #3c3d3f;
background-color: white;
font-family:opensansregular,Arial, Helvetica, sans-serif;
font-size: 14px;
overflow: scroll;
line-height: 140%
}
div {
 position: relative;
 box-sizing: border-box;
 display: block;
}
a {
color: #3C3D3F;
border:none;
outline: none;
}
a:hover {
 outline: none;
}
a:focus {
outline: 2px dotted black;
}
td {
vertical-align:top
}
h1{
font-size:30px;
letter-spacing: .15em;
line-height: 120%;
text-transform: uppercase;
font-weight: normal;
margin-bottom: 10px;
min-height: 142px;
hyphens: auto
}
p,ul,ol,h2,h3,iframe {
margin: 0 0 1em 0;
line-height: 140%
}
/*  :first-of-type */
h2 {
font-size: 17px;
letter-spacing: .17em;
text-transform: uppercase;
}
h3 {
font-size: 0,1em;
letter-spacing: .17em;
text-transform: uppercase;
font-weight: lighter;
line-height: 120%
}
h4 {
font-size: 1em;
letter-spacing: .17em;
text-transform: uppercase;
font-weight: lighter;
line-height: 45%
}
h5 {
font-size: 5px;
letter-spacing: .17em;
text-transform: uppercase;
font-weight: lighter;
line-height: 20%;
}
h6 {
font-size: 5px;
letter-spacing: .17em;
text-transform: uppercase;
font-weight: lighter;
line-height: 325%;
}

table {
border-collapse: collapse
}
.tc {
text-align: center
}
.tr {
text-align: right
}
ol {
margin-left: 24px
}
ol li {
padding-left: 4px;
margin-bottom: .5em;

}
#head {
 display: flow-root;
 border-bottom: 10px solid white;
}

#left {
 clear: both;
}

#content ul li {
vertical-align:middle;
list-style: none;
margin-bottom: .5em;
background: transparent url(/img/textbutton-big.png) 0px 7px no-repeat;
background-size: 8px auto; 
padding-left: 18px;
}
#content ul ul {
margin: 1em 0;
}
#content ul ul li {
padding-left: 16px;
background: transparent url(/img/textbutton-small.png) 0 7px no-repeat;
}
.hide, .h0, .formprotect {
display:none
}
img{
display: block;
border: none;
height: auto;
 -ms-interpolation-mode: bicubic; 
}

sub {
position: relative; 
font-size: 9px; 
bottom: -4px;
font-weight: normal;
}
sup {
position: relative; 
font-size: 9px; 
top: -2px;
font-weight: normal;
}
.clear {
clear: both
}

.bildlinks,
.floatleft {
display: block;
float: left;
margin: 0 10px 5px 0
}
.bildrechts,
.floatright {
display: block;
float: right;
margin: 0 0 5px 10px
}
.klein{
font-size:11px;
}
.rot,
.red {
color: red
}
div,
nav,
main,
section,
header,
article,
footer {
display: block;
position: relative;
box-sizing: border-box;
-moz-box-sizing: border-box;
}

/* DIVS */ 
#wrapper {
margin: 0 auto;
width:100%;
max-width:1000px;
padding: 10px 10px 0;
height:auto;

}
main{
 display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;
/* flex-end center space-between space-around space-evenly */
align-items: stretch; 
/* flex-start flex-end center baseline */
align-content: stretch; 
/* flex-start flex-end center space-between space-around */

width:100%;
}
#left{
width: 380px;
float: left;
height: auto;
margin-bottom: 10px;
background-color: #6085a6;
}
#drlist {
}
.blau,
.grau {
float: left;
padding: 5px;
width:190px;
font-size: 10px;
text-align: center;
line-height: 105%
}
.blau{
color: white
}
.grau{
background-color: #f1ead8;
}
.blau p,
.grau p{
margin: 0 0 .25em 0
}
.blau p {
 font-size: 16px;
 line-height: 150%;
 white-space: nowrap;
 margin-bottom: 0;
 padding: 10px 0
}
.grau p {
 font-size: 10px;
 margin-bottom: 0;
}
.grau p.h1 {
 font-weight: bold;
 font-size: 12px;
 line-height: 110%;
padding: 6px 0 0 0
}
.half {
 float: left;
 width: 50%;
}
.rahmen {
 padding: 20px;
 outline: 1px solid black;
}#eekasten {
 width: 150px;
 float: right;
 padding: 10px;
 cursor: pointer;
 background-color: white
}
#eekasten a {
 font-weight: bold;
}
#eekasten div {
 display: none;
 position: absolute; 
 right: 0;
 padding: 10px;
 width: 550px;
 max-width: 100vw;
 background-color: white
}
#eekasten div a.floatright {
 padding: 10px
}


#hm,
#hm .blau,
#hm .grau {
text-transform: uppercase;
font-size: 22px
}

#content {
float: right;
width: calc(100% - 390px);
min-height: calc(100vh - 150px);
margin:0 0 10px 10px;
padding: 25px 20px 20px;
hyphens: auto;
background-color: #f1ead8;
}
#content p,
#content ul {
padding-right: 15px
}
#content img {
height: auto;
margin-bottom: .5em
}
#content .clear img {
margin: 0 auto .5em
}
#content img.bildlinks,
#content img.floatleft,
#content img.bildrechts,
#content img.floatright,
#content img.clear {
width: auto;
} 
#content td,
#content td p {
font-size: 12px;
line-height: normal
}
#right {
display: none
}
#footer {
clear:both;
background-color: transparent;
text-transform: uppercase;
} 
div.addr {
width:100%;
font-weight: normal;
font-size: 20px;
letter-spacing: normal;
padding: 4px 10px;
text-align: justify;
-moz-text-align-last: justify;
-webkit-text-align-last: justify;
text-align-last: justify;
background-color: #f1ead8;
}
div.addr span {
letter-spacing: .19em;
white-space: nowrap;
}
#fu {
background-color: #6085a6;
color: white;
letter-spacing: .2em;
padding: 2px 4px
}
#copy {
float: right;
padding: 4px 20px 0 20px;
font-size: 13px

}
/* FORMULAR */
form {
background-color: #f1ead8;
padding: 10px;
}
#contactform {

}
label, input, textarea, select,button {
box-sizing: border-box;
moz-box-sizing: border-box;
margin:0 0 10px 0  ;
}
input, textarea,select {
border-width: 1px; 
padding: 2px 4px;
width: calc( 100% - 130px);
min-width: 200px;
}
input[type="checkbox"] {
width: 20px; 
background-color: transparent;
float:left;
margin: 3px 10px 10px 0;
display: inline-block;
min-width: 20px;

}
label {
float: left;
min-width: 120px;
display: block;
clear: left;
}
form div {
clear: both;
}

input.short,
input.cancel {
width: 80px;
}
input.cancel {
    float: right;
}
input:hover,
textarea:hover,
select:hover {
background-color: #ffffff;
}
input.button {

}
#ima,
#imk {
    display: block;
    height:0; 
    transition: .3s;
    overflow: hidden;
    padding: 0;
    background-color: rgba(255,255,255,.5)
}
#noim {
 
}
.meldung,
.meldungok {
    display: block;
    position: fixed;
    top: 10px;
    left: 20px;
    right: 20px;
    bottom: auto;
    height: auto;
    background-color: white;
    padding: 20px;
    border: 2px solid #555;
    box-shadow: 2px 4px 15px rgba(0,0,0, .3);
font-weight: bold;
font-size: 1.3em;
text-align:left
}
.meldungok {
    color: green;
    margin-bottom: 2em;
}

@media screen and (max-width: 945px) {
div.addr span{
letter-spacing: .1em;
}
}
@media screen and (max-width: 880px) {
    
#ima label,
#imk label {
   max-width: 80px;
   min-width: 80px
}
}
@media screen and (max-width: 820px) {
#left,
#content,
#maincontent,
#copy {
margin: 0 0 10px 0
}
div.addr {
font-size: 18px;
text-align: left;
-moz-text-align-last: left;
-webkit-text-align-last: left;
text-align-last: left;
}
#left {
 width: 40%;
}
#content {
 width: 60%;
}

#content img {
 max-width: 100%;
}
h1#cont {
 letter-spacing: 10%
}
.grau,
.blau {
 float: none;
 width: 100%;
font-size: 12px
}
.grau p,
.grau p.h1,
.blau p {
font-size: 15px
}
}

@media screen and (max-width: 590px) {
main {
 display: block;
}
#left,
#content {
width: 100%;
min-height: fit-content
}
h1 {
font-size: 25px;
letter-spacing: normal;
min-height: fit-content;
hyphens: auto
}
#chlang {
margin: 0 0 20px  20px;
}
div.addr {
padding-left: 20px
}
div.addr span span {
display: none;
}
#left {
 width: 100%
}
#chlang{
float: none;
width: 100%;
clear: both;
margin:0;
padding: 0 0 1em;
background-size: contain; 
}
.chde a {
    
}
.chen a{
    
}
#content img.bildlinks,
#content img.floatleft,
#content img.bildrechts,
#content img.floatright,
#content .clear img,
#content img{
float:none;
width: auto;
margin:0 0 1em
}
div.addr {
   padding: 10px
 }
#fu ul {
 display: flow-root;
}
#copy {
 float: none;
}
}
@media screen AND (max-width: 400px) {
.half {
 float: none; 
 width: 100%;
}
}
@media print {

} 