/**************************************************/
/*                    general                     */
/**************************************************/


@font-face {
    font-family: OpenSans;
    src: url("../fonts/Open_Sans/static/OpenSans-Medium.ttf");
}

@font-face {
    font-family: Montserrat;
    src: url("../fonts/Montserrat/static/Montserrat-Medium.ttf");
}

@font-face {
    font-family: Roboto;
    src: url("../fonts/Roboto/Roboto-Regular.ttf");
}

*{
    margin: 0;
    padding: 0;
    box-sizing:border-box;
    color:#404040;
    font-family:Roboto, Arial, Helvetica, sans-serif;
}

.img-size-large {
    width:100%;
}

.img-left {
    float:left; 
    margin-right:20px; 
    margin-top:5px;
}
.float-left-160{
    float:left;
    width:160px;
    margin-top:5px;
    margin-right:20px;
}

.float-left-200{
    float:left;
    width:200px;
    margin-top:5px;
    margin-right:20px;
}

figcaption {
    font-size:12px;
    font-style:italic;
    padding-right:10px;
}
.font11{
    font-size:11px;    
}
a {
	color: #007acc;
	-text-decoration: none;
}

a:hover,
a:focus,
a:active {
	color: darkGoldenRod; 
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

h1 {
    line-height: 1.2; 
    margin-bottom:30px;
}
h2 {
    text-transform:uppercase;
    font-size:18px;
    font-family: 'Montserrat', sans-serif;
}
h3 {
    font-size:22px; 
    line-height: 1.4; 
    margin-top:15px; 
    margin-bottom:15px;    
}
h5 {
    font-size:18px; 
    line-height: 1.4; 
    margin-top:50px; 
    margin-bottom:15px;     
}
h6 {
    color:rgb(0, 122, 204);
    font-family: 'Montserrat', sans-serif;
    font-size:20px;
    margin-bottom:30px;
    margin-top:20px;
    font-style:italic;
    display:none;
}

ul {
    list-style-type:disc;
}


/**************************************************/
/*                    header                      */
/**************************************************/
.header-bar {
    background-color:#404040;
    background-color:lightblue;
    background-color:white; /*jc*/
    height:80px;
    width:100%;
    position:relative;
    position:fixed;
    top:0px;
    z-index:10;
}
.header-bar-filler{
    display:block;
    height:80px;
}



.logo-wide {
    display:block;
    margin-top:30px; 
    margin-left:20px; 
    float:left;
    width:250px;
}


/**************************************************/
/*                 menu section                   */
/**************************************************/
.main-menu a {
    font-family: 'Montserrat';
}
@media screen and (min-width: 1020px) {  /* > 1020px */
    .main-menu-wide{
        position:absolute;
        display:block
    }
    .main-menu-small {
        display:none;
    }

    .main-menu {
        -display:block;
        font-family: 'Montserrat', sans-serif;
        bottom:20px;
        right:20px;
        -position:absolute;
    }
    .main-menu a {
        color:white;
        color:black; 
        text-decoration: none;
        cursor:default;
    }
    .main-menu .main-menu-item {
        padding:11px;
        padding-left:12px;
        padding-right:12px;
        background-color:#404040;
        background-color:lightblue;
        background-color:white; /*jc*/
        border:1px solid lightblue;
        border:1px solid white;
    }
    .main-menu .has-sub-menu > a::after { 
        font-size:10px;
        white-space: pre;
        content: "  \25bc";
    }
    .main-menu .main-menu-item:hover{
        background-color:black;
        background-color: rgb(144, 207, 228);
        border:1px solid rgb(144, 207, 228);
    }
    .main-menu li {
        transition: background-color 300ms linear;
    }
    .main-menu ul {
        list-style-type:none;
        font-size:0px; /* remove white-space between inline-block elements */
    }
    .main-menu ul li {
        display:inline-block;
        position:relative;
        font-size:16px;
    }
    .main-menu ul li ul {
        position:absolute;
        top:39px;   /* compensate main-menu-item height */
        right:0px;
        width:200px;
        display:block;
        visibility:hidden;
        opacity: 0;
        transition: opacity 1.0s ease-out;
        -moz-transition: opacity 1.0s ease-out;
        -webkit-transition: opacity 1.0s ease-out;
        -o-transition: opacity 1.0s ease-out;
    }
    .main-menu-item:hover ul {
        opacity: 1;
        visibility:visible;
    }
    .main-menu ul li ul li {
        color:white;
        display:block;
        text-align:left;
        padding:10px;
        background-color:#404040;
    }
    .main-menu ul li ul li:hover {
        background-color:black;
    }
    .main-menu .main-menu-item.main-menu-sel {
        border:1px solid #a0a0a0;
    }
    .header-bar #logotext {
        position:fixed;
        top: 50px;
        left:140px;
        font-size:30px;
        font-weight:700;
        color:#12039e;
        z-index: 10;
    }
    .button-sub-menu-toggle, .button-menu-toggle{
        display:none;
    }
    .menu-bar{
        display:none;
    }

}

/* ***************************************************************** */

@media screen and (max-width: 1019px) {  /* < 1020px */
    .main-menu-wide{
        position:absolute;
        display:none;
    }
    .main-menu-small {
        display:block;
    }

    .main-menu {
        display:block;
        font-family: 'Montserrat', sans-serif;
        top:125px;
        top:155px;
        -position:absolute;
        width:100%;
    }

    .main-menu li{
        overflow:hidden;
        cursor:default;
    }
    .main-menu li a {
        background-color: white;/* #dddddd;*/
        padding-left:20px;
        height:28px;
        padding-top:5px;
    }

    .main-menu ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
    }
    .main-menu .has-sub-menu {
        position:relative;
    }

    .main-menu a {
        display: block;
        text-decoration: none;
        color:black;
        cursor:default;
    }
    .main-menu .sub-menu-item a {
        padding-left:40px;
    }

    .main-menu .main-menu-item:hover a{
        background-color:#f0f0f0 ; 
    }

    .main-menu .sub-menu-item:hover a{
        background-color:gray;
        color:white;
    }

    .main-menu .no-sub-menu:hover a{
        background-color:gray;
        color:white;
    }
    
    .main-menu-item:hover ul { /* submenu ul */
        -display:inline;
    }
    .button-sub-menu-toggle {
        position:absolute;
        top:0px;
        right:0px;
        width:30px;
        height:28px;
        margin-right:10px;
        border:0px solid #c0c0c0;
        border-left:1px;
        font-size:20px;
    }
    .main-menu .hide-sub-menu .sub-menu{
        display:none;
    }

    .main-menu li {
        border-bottom: 1px solid #c0c0c0;
    }
    .main-menu li li {
        border-bottom: 0px solid #c0c0c0;
        border-top: 1px solid #c0c0c0;
    }
    .menu-bar {
        position:absolute;
        background-color:white;
        height: 42px;
        bottom:0px;
        width:100%;
    }
    .button-menu-toggle{
        float:right;
        margin-top:6px;
        height:36px;
        width:50px;
        margin-right:10px;
        border:1px solid lightgray;
        background-color:white;
        font-size:25px;
    }
    .main-menu.hide-main-menu {
        display:none;
    }
    .logo-wide {
        margin-top:20px; 
        width:200px;
    }
    .header-bar, .header-bar-filler{
        height:80px;
    }

}

@media screen and (max-width: 1100px) {  /* < 1100px */
    .header-bar-filler{
        height:190px;
    }
}

/**************************************************/
/*             content lay-out section            */
/**************************************************/
.grid2-container {
    display: grid;
    grid-template-columns: auto auto;
}
.grid-item {
    text-align: left;
}

.box-imgtext{
    position:relative;
    overflow:auto;
}
.text-box-imgtext {
    position:absolute;
    bottom:0px;
    left:140px;
}

.content-container {
    width:100%;
    margin:0px;
    display:block;
}
.content {
    -font-family:  'Merriweather', Georgia, serif;
}

.content-middle {
    width:100%;
}

/* Clear floats after the columns */
.content-container:after {
    content: "";
    display: table;
    clear: both;
}

.pagecontent {
    padding:10px;
    max-width:700px;
    margin:auto;
}

.pagecontent .person {
    width:auto;
}

.pagecontent .fig-1{
    margin-top:20px;
    margin-bottom:20px;
    display:block;
    max-width:600px;
}
.pagecontent .fig-2 {
    margin-top:20px;
    margin-bottom:20px;
    display:block;
}
.pagecontent .img2{
    max-width:95%;
}

.pagecontent .img3{
    max-width:95%;
    max-height:350px;
}
.pagecontent h1 {
   margin-top:40px; 
}
.pagecontent p {
    padding-top:10px;
}
.pagecontent ul {
    margin-left: 30px;
    padding:10px;
}

.pagecontent ul li {
    padding:3px;
}

.footercontent {
    margin:auto;
    max-width:300px;
    background-color:#00AAE2;
    height:80px;
    text-align: center;
}

.footercontent ul {
    margin-left: 30px;
    padding:10px;    
}

.footercontent li, .footercontent a {
    color:white;
    padding:3px;
    text-decoration:none;
    list-style-type: none;
}
.footercontent li:hover, .footercontent a:hover{
    font-weight:700; 
}
.arrow-text-div {
    display:grid;
    grid-template-columns: 60px auto;
}
.arrow-text{
    align-self: center;
  justify-self: left;
}
.arrow-right {
    width:50px;
}

.h2 {
    font-size:20px;
    font-weight:bold;
    margin-top:40px;
}

.img-vrijw {
    width:273px;
    height:183px;
    object-fit: cover;
}
/**************************************************/
/*                   tables                       */
/**************************************************/
table, td, th {    
    border: 1px solid #ccc;
    text-align: left;
}
table {
    border-collapse: collapse;
    width: 100%;
}

th, td {
    padding: 15px;
}

.table-sortable th {
    cursor: pointer;
    background:#f8f8f8;
}

.table-sortable .th-sort-asc::after {
content: "\25b4";
}

.table-sortable .th-sort-desc::after {
content: "\25be";
}

.table-sortable .th-sort-asc::after,
.table-sortable .th-sort-desc::after {
margin-left: 5px;
}

.table-sortable .th-sort-asc,
.table-sortable .th-sort-desc {
background: #f0f0f0;
}

.datatable {
    max-height:400px;
    overflow:auto;
    margin:1px;
    border:1px solid lightgray;
    border-left:0px;
    border-right:0px;
    width:fit-content;
    max-width:100%;
    clear:both;
    margin-bottom:25px;
}

/************************************************/
/*               hypotheekwijzer                */
/************************************************/

     .icon-bar {
        display: block;
        margin:5px;
        -width: 100%;
        height: 4px;
        background-color:gray;
        border-radius: 1px;
    }

    .instellen {
        background-color:#ffffff;
        padding:5px;
        user-select: none;
    }

    /* HTML: <div class="loader"></div> */
    .loader {
        display:none;
        width: 50px;
        padding: 8px;
        aspect-ratio: 1;
        border-radius: 50%;
        background:#25b09b;
        background:#00AAE2; 
        --_m: 
            conic-gradient(#0000 10%,#000),
            linear-gradient(#000 0 0) content-box;
        -webkit-mask: var(--_m);
                mask: var(--_m);
        -webkit-mask-composite: source-out;
                mask-composite: subtract;
        animation: l3 1s infinite linear;
        }
        @keyframes l3 {to{transform: rotate(1turn)}
    }



