/* =============================================================================
   Fonts
   ========================================================================== */


/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html {
    box-sizing: border-box;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}
html, button, input, select, textarea { font-family: 'Open Sans', sans-serif; color: #222; }
body { margin: 0; font-size: 18px; line-height: 1.4; color: #7e7979; font-family: 'Open Sans', Helvetica, Arial, sans-serif }

a { color: rgb(126, 121, 121); }
a:visited { color: rgb(126, 121, 121); }
a:hover { color: rgb(0,0,0); }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
em { font-style: normal; color: #86ca79; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

*, *:before, *:after {
    box-sizing: inherit;
}

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }



/* ==========================================================================
   Author: Johan Coppieters
   ==========================================================================
 *
   bg color: rgb(77,156,155) - 60acac
   bg color donker: rgb(64, 140, 140) of #4f9c9c
   bg color geel: rgb(251,249,206) - fcfad8
   color geel hover: f7f3b2
   font color: rgb(126, 121, 121) - 2b3632
   font color licht: 9d9d9c
   font color licht zeegroen: rgb(145,201,199)

   font wit: #2b3632   16px.
   font donker: #2b3236   16px.
   lijntjes: #80bdbd
   donkere bg: #4f9c9c
 */

body { }

h1, h2, em, b, .main a, .steps, .afspraakTable th, .time,
#calendar .confirm, .bezoekmoment th, .day, #slidetabs a
  { font-weight: normal; font-family: 'Open Sans', sans-serif; }
h1 { margin: 16px 0 30px; font-size: 28px; font-family: 'Open Sans', sans-serif; font-weight: bold }
h2 { margin: 24px 0 10px; font-size: 18px; }
p { margin: 0 0 10px; font-size: 16px }


input[type="password"],
input[type="text"],
input[type="email"] {
    display: inline-block;
    width: 100%;
    height: 36px;
    margin-bottom: 14px;
    padding: 4px;
    border: 1px solid darkgrey;
    background-color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    color: #7e7979;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
form .error { border-color: #b94a48; color: #b94a48; }
label.error { display: inline-block; *display: inline; *zoom: 1; }


#login .action_buttons { margin-top: 10px }


a.maakAfspraak { font-family: 'Open Sans', sans-serif; font-weight: 700; font-size: 16px;
                box-shadow: 0 2px 0 rgb(60,137,135); padding: 12px 20px 12px 20px; background-color: #fff; text-transform: uppercase;
                color: rgb(64, 140, 140); text-shadow: none; text-decoration: none;
                -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }
a.maakAfspraak:visited { color: rgb(64, 140, 140) }


/* global layout */
#wrapper > div > section,
#wrapper > header > section,
#wrapper > footer > section {
    max-width: 1060px;
    margin: 0 auto;
    padding: 0 10px;
}

#content {
    padding: 15px 0 0;
    background: url(../images/bg.png);
}
#content section {  }
#content h1 { color: white; }

header {
    position: relative;
    background-color: rgb(255,255,255);
}
header section {  }

footer { margin-bottom: 12px; padding-bottom: 10px;
         border-top: 1px solid #80bdbd; background: url(../images/bg.png) }
footer section#footerWrap { margin-top: 15px }
footer section p { font-size: 16px; font-weight: normal; color: #2b3236 }

#slidewrapper {  }
#slidewrapper section {  }

.button { -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }
.contentImg { margin-bottom: 20px; }

nav a { text-decoration: none; color: #9d9d9c; font-size: 16px; font-weight: bold; font-family: 'Open Sans', sans-serif; }
nav .active a, nav a:hover { color: #2b3632 }


#logo { margin: 10px 0; }

#contactData {
    margin: 0 -10px 10px;
    background-color: #fcfad8;
    font-size: 14px;
    font-weight: bolder;
    color: rgb(80,157,155);
}
#contactData a {
    color: rgb(80,157,155);
}
header #contactData .contact {
    margin: 0 0 0 10px;
    padding: 7px 10px 7px 25px;
}
header #contactData .tel {  display: inline-block; background: url(../images/icon_tel_blue.png) no-repeat left center; }
header #contactData .address {  display: inline-block; background: url(../images/icon_location_blue.png) no-repeat left center; }

#mainNav {
    margin-bottom: 10px;
}
#mainNav li {
    display: inline-block;
}
#mainNav a {
    display: block;
    padding: 7px 14px 7px 0;
    text-transform: uppercase;
}

@media only screen and (min-width: 414px) {
    #mainNav {
        margin-bottom: 0;
    }
    #mainNav .active {
        background: url(../images/menu_active.png) no-repeat center bottom;
    }
    #mainNav li {
        height: 46px;
        margin-right: 10px;
    }
    #mainNav a {
        height: 24px;
        padding: 0;
    }
}
@media only screen and (min-width: 768px) {
    header {
        height: 100px;
    }
    nav {
        margin-top: -25px;
    }
    #logo {
        margin: 30px 0 0;
    }
    #contactData {
        float: right;
        width: 450px;
        margin: 0;
    }
    header #contactData .contact {
        margin: 0 0 0 30px;
    }
    #mainNav {
        text-align: right;
    }
    #mainNav li {
        margin: 0 0 0 14px;
    }
}

/* homepage with sliders */
#home #wrapper { background: none; }
#home footer { background: none; padding-bottom: 10px }
#home footer p  { color: rgb(126, 121, 121) }
#home #content { padding-top: 0px }


#slidewrapper {
    position: relative;
    max-width: 960px;
    width: 100%;
    height: 490px;
}
#sliderwrapper #content { padding-top: 0 }

#slides {
    position: relative;
    width: 100%;
    height: 490px;
    overflow: hidden;
}
#slides .slide {
    position: absolute;
    top:0;
    left: 0;
    z-index: 5;
    display: none;
    max-width: 1060px;
    width: 100%;
    height: 490px;
    padding: 0px 30px;
    text-shadow: none;
    color: #fff;
}
#slides h1 { margin: 10px 0 15px 0; text-transform: uppercase; font-size: 34px; }
#slides .dokter {
    display: none;
}
#slides .slidecontent {
    max-width: 650px;
    margin: 0 auto;
    margin-right: 10px;
    padding: 30px 10px 0;
}
#slides .maakAfspraak {
    display: inline-block;
    margin-top: 20px;
}

#slidetabs {
    display: none;
    width: 100%;
    max-width: 1060px;
    margin: 0 auto 40px;
}
#wrapper div#slidetabs section {
    display: table-row;
    margin-top: 40px;
    padding: 0;
}
#slidetabs a {
    display: table-cell;
    margin: 0;
    padding: 0 3px;
    text-decoration: none;
    text-align: center;
    background: white;
}
#slidetabs a span {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 0 0 20px;
    border-bottom: 5px solid rgb(210,210,210);
    font-size: 12px;
    font-weight: bold;
    color: rgb(0,0,0);
}

#slidetabs a:hover span,
#slidetabs a.current span {
    border-color: rgb(86,150,147);
    /*background: rgb(77,156,155);*/
}

.forward, .backward { position: absolute; top: 226px; z-index: 20; display: block; width: 38px; height: 38px; cursor: pointer; text-indent: -9999em; }
.forward {
    right: 5px;
    background: url(../images/arrow_right.png) no-repeat;
}
.backward {
    left: 5px;
    background: url(../images/arrow_left.png) no-repeat;
}

@media only screen and (min-width: 768px) {
    #slidetabs {
        display: table;
    }
    .forward {
        right: 10px;
    }
    .backward {
        left: 10px;
    }
}
@media only screen and (min-width: 1024px) {
    #slides .dokter {
        float: left;
        display: block;
    }
    #slides .slidecontent {
        float: right;
        margin: 0;
        padding: 30px 0 0;
    }
    #slides .maakAfspraak {
        position: absolute;
        left: 530px;
        bottom: 100px;
    }
}

/* afspraken page - algemeen */

.afspraak {
    padding: 20px 0;
}
.afspraak header {
    height: auto;
}
.afspraak .steps {
    padding: 10px 20px;
    background-color: #4f9c9c;
}
.afspraak header span {
    display: block;
    color: rgb(145,201,199);
    font-size: 15px;
}
.afspraak header span.active { color: white }
.afspraak header span:nth-child(even) {
    display: none;
}

.error p { display: block }
.error p.herkies { margin-top: 20px; margin-right: 40px; padding: 12px 20px; border: 0; background: rgb(64, 140, 140);
           font-size: 16px; text-transform: uppercase; float: none;  display: inline-block }
.error p.herkies a { color: white; text-decoration: none }
.error p.herkies a.visited { color: white }
#content div.error { border-bottom: none; padding-bottom: 15px }

@media only screen and (min-width: 768px) {
    .afspraak header span {
        display: inline-block;
        margin-left: 30px;
    }
    .afspraak header span:nth-child(even) {
        display: inline-block;
    }
}

/* afpsraken page - step 1 */

.weekNav {
    padding: 10px 20px;
    text-align: right;
    background: #5faba9;
}
.weekNav a {
    padding: 6px 0px 6px 30px;
    text-decoration: underline;
    color: white;
    font-size: 14px;
}

.afspraaktableWrap {
    overflow: scroll;
    overflow-y: hidden;
}
.afspraakTable {
    width: 100%;
    margin-bottom: 20px;
}
.afspraakTable td { width: 20%; border-right: 2px solid #60acac; border-bottom: 1px solid #c6e1e1; background: #fff; font-size: 13px; color: #60acac }
.afspraakTable td.last { border-right: none }
.afspraakTable th { width: 20%; ; border-right: 2px solid #60acac; border-bottom: 1px solid #c6e1e1; background: #fff; font-size: 13px;
                    padding: 10px 10px 10px 10px; text-align: center; text-transform: uppercase }

.gesloten { color: lightgrey; }
.afspraakTable a { display: block; padding: 7px 10px; text-decoration: none; }
.afspraakTable .time { color: rgb(80,157,155); }
.afspraakTable a:hover .time { color: rgb(126, 121, 121) }
.afspraakTable .dr { padding-left: 0; background: none; color: rgb(126, 121, 121) }

/* afpsraken page - step 2 */
.selectedDate {
    padding: 24px 10px 10px;
    border-bottom: 2px solid #60acac;
    background-color: white;
}
.selectedDate p { margin-bottom: 10px; }
.selectedDate p.otherTime a { font-size: 14px; }
.afspraakForm {
    padding: 0 10px 20px 10px;
    background-color: #e7e9e7;
}
.afspraakForm h2 { font-weight: bold }
.afspraakForm fieldset {
    display: inline-block;
    max-width: 500px;
    padding-bottom: 10px;
}
.afspraakForm aside {
    display: inline-block;
    max-width: 400px;
    margin-bottom: 20px;
    font-size: 15px;
}
.afspraakForm label { display: block; }
.afspraakForm .error {
    margin-bottom: 14px;
    font-size: 14px;
}

@media only screen and (min-width: 768px) {
    .selectedDate {
        padding: 24px 24px 10px;
    }
    .selectedDate p {
        float: left;
    }
    .selectedDate p.otherTime {
        float: right;
    }
    .afspraakForm {
        padding: 0 24px 20px 24px;
    }
    .afspraakForm fieldset {
        margin-right: 75px;
    }
}

/* afpsraken page - step 3 */
.afspraakBevestiging { padding: 30px 24px 10px 24px; background-color: #fff; }

.otherTime a,
.required { font-size: 13px; font-family: 'Open Sans', sans-serif; padding: 15px 0; }
#calendar h2 { float: none; margin-bottom: 20px; color: #7e7979; }

#calendar .confirm { float: left; margin-right: 40px; padding: 12px 20px; border: 0; background: rgb(64, 140, 140);
                     font-size: 16px; text-transform: uppercase; color: white; }
.radios { margin-bottom: 14px; }
.radios label { display: inline-block; *display: inline; *zoom: 1; padding: 0 25px 0 5px;  }


p.notification { clear: both; margin: 5px 0 5px 0; padding: 10px 10px 10px 36px; border: 1px solid; background-position: 10px 11px !important; background-repeat: no-repeat !important; }
p.success { border-color: #9adf8f; background: #d5ffce url(../images/icon_tick_circle.png); color: #556652; }
p.error { border-color: #df8f8f; background: #ffcece url(../images/icon_cross_circle.png); color: #665252; }


/* content page */
#content div.main p { display: block; color: white; margin: 20px 20px 10px 20px }
#content div.main img { max-width: 920px }
#content.withNav div.main p { color: black }

#content.withNav section { padding-bottom: 20px; }
#content.withNav .main {
    margin-top: 20px;
    padding: 15px;
    background-color: white;
}

#index div#wrapper { background: url(../images/bg.png) }

.subNav li { border-bottom: 1px solid #80bdbd }
.subNav li:first-child { border-top: 1px solid #80bdbd }
.subNav li:last-child {  }
.subNav a { display: block; padding: 10px 17px; font-size: 16px; color: #2b3632 }
.subNav .active a { color: white; }

@media only screen and (min-width: 768px) {
    #content.withNav h1 {
        padding-left: 280px;
    }
    #content.withNav .main {
        margin: 50px 0 0 280px;
    }
    .subNav {
        float: left;
        width: 230px;
        margin: 20px 30px 0 0;
    }
}


/* contact page */
#contactPage aside {
    margin-bottom: 40px;
    color: white;
}
#contactPage aside strong a {
    color: white;
}
#contactPage .contactInfo {
    padding: 20px;
    background-color: white;
}
#contactPage .maakAfspraak {
    display: inline-block;
}

#contactPage aside .contact { margin-bottom: 30px; padding-left: 32px; font-size: 16px }
#contactPage aside .tel { background: url(../images/icon_tel_white.png) no-repeat left top; }
#contactPage aside .address { background: url(../images/icon_location_white.png) no-repeat left top; }

@media only screen and (min-width: 768px) {
    #contactPage aside {
        float: left;
        width: 280px;
    }
    #contactPage .contactInfo {
        margin-left: 280px;
    }
}

/* consultaties */
.bezoekmoment { width: 960px; margin: 0px 0px 20px 0px; }

div.title { background: #4f9c9c; color: white; padding-bottom: 30px }

.bezoekmoment tr { background: white }
.bezoekmoment .even { background: #f3f4f3; }
.bezoekmoment td,
.bezoekmoment th { padding: 14px 20px; border-right: 2px solid #60acac;
                   border-bottom: 1px solid #c6e1e1; color: #2b3632;
                   text-shadow: none; text-align: left; font-size: 16px }
.bezoekmoment th { text-transform: uppercase; }
.bezoekmoment th:last-child,
.bezoekmoment td:last-child { border-right: 0; }
.bezoekmoment th span { text-shadow: none; font-family: 'Open Sans', sans-serif; color: #60acac }
.bezoekmoment .dr { display: block }
.bezoekmoment .day { color: #60acac }

/* login page */
#login #content section { background-color: white; padding: 20px; }
#login label { width: 156px; display: inline-block;}

/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/* =============================================================================
   Print Styles
   ========================================================================== */

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
