/* --- begin: root pseudo-class  --- */
/* --- memo: theme colors --- */
:root {
        --white: #FFF;
        --header-bg: #0238771A;
        --menubtn-bg: #023877;
        --gradient-bottom: #023;
        --text-color: #000023;        
         }
/* --- end: root pseudo-class --- */

/* --- begin: body --- */
body {
       margin: 0;
       font-family: "Verdana", sans-serif;
       color: var(--text-color);
       }
/* --- end: body --- */

/* begin: images */
img {
      max-width: 100%;
      }
/* end: images */

/* --- begin: headers --- */
h1, h2, h3, h4, h5 {
                     font-family: "Georgia", serif;
                     }
h2 {
     font-weight: normal;
     color: var(--menubtn-bg);
     text-shadow: 2px 2px 1px var(--header-bg);
     }	

h3 {
     text-align: left;
     color: var(--menubtn-bg);
     text-shadow: 2px 2px 1px var(--header-bg);
}
/* --- end: headers --- */

/* hr-rule */
hr {
    border: none;
    border-top: 3px double #022777;
    text-align: center;
    height: 5px;
}

/* begin: google material icons */
.material-icons {
                  font-size: 24px;
                  vertical-align: middle !important;
                  }
/* end: google material icons */

/* --- begin: hyperlinks --- */
a {
    color: var(--menubtn-bg);
    text-decoration: none;
    }

a:hover, .nav a:hover {
                        color: #022a72;
                        border-color: #aaa;
                        }
/* --- end: hyperlinks --- */

/* begin: quote block */

blockquote {
             margin-left: 0;
             padding-left: 1.5em;
             padding-right: 2em;
             border-left: 4px solid #ddd;
             font-style: italic;
             color: #777;
             }
/* end: quote block */

/*begin: pre, code */
pre, code {
		background: #eee;
		border: 1px solid #ddd;
}

pre {
		font-size: 14px;
		line-height: 1.1em;
		padding: 1em;
		border-left: 4px solid #ddd;
}
/*end: pre, code */

/* begin: navigation */
/* begin: top navigation (ul) in wide layout */

/* begin: sidebar navigation */
.nav {
       list-style-type: none;
       margin: 0;
       padding: 0;
       }

.nav li a { 
            display: block;
            padding: 8px 16px;
            text-decoration: none;
            }

.nav li a:hover {
                  background-color: #022a72;
                  color: #fff;
                  }
/* end: sidebar navigation */

/* begin: news index */
.news {
        list-style-type: none;
        margin: 0;
        padding: 0;
        }

.news h4, h5, h6 {
               margin: 0;
               padding: 0;
               }

.news li {
           display: block;
           }

.news-wrapper {
                display: grid;
                grid-template-columns: 0.5fr 0.5fr;
                grid-template-areas:
                "news-title news-meta"
                "news-body news-body"
                }

.news-title {
              grid-area: news-title;
              text-align: left;
              align-self: center;
              justify-self: start;
              }

.news-meta {
             grid-area: news-meta;
             text-align: right;
              align-self: center;
              justify-self: end;
             }

.news-body {
             grid-area: news-body;
             align-self: center;
             justify-self: start;                          
             text-align: justify;
             }                            
/* end: news index */

/* begin: news pager navigation */
.pager {
        clear: both;
        margin: 1em 0;
}
.pager li {
	display: inline;
	list-style: none;
	margin: 0;
}

.pager li a,
.pager li.pager_separator {
	display: block;
	float: left;
	padding: 0.1em 0.5em;
	color: #022a72;
	margin-right: 0.3em;
	font-size: 0.7em;
	font-weight: bold;
	text-transform: uppercase;
}

.pager li.pager_current a,
.pager li a:hover {
	color: #fff;
	background: #022a72;
	text-decoration: none;
}

.pager li.pager_separator {
	display: inline;
	color: #777;
	background: #174a8c;
	padding-left: 3px;
	padding-right: 3px;
}
/* end: news pager navigation */


/* --- begin: layout --- */

/* --- begin: wrapper --- */
/* --- memo: layout for screen wider than 600px --- */
.wrapper {           
           display: grid;
           grid-template-columns: 2fr 10fr;
           grid-template-rows: auto 1fr auto;
           grid-template-areas:
           "sidebar header"
           "sidebar content"
           "footer footer";
           }
/* --- end: wrapper --- */

/* --- begin: header --- */
.header {
          display: grid;
          grid-area: header;
          grid-template-columns: 1fr auto;
          grid-template-areas: "title menubtn";
          background-color: var(--header-bg);
          }

.menubtn {
           grid-area: menubtn;
           align-self: center;
           justify-self: start;
           background-color: var(--menubtn-bg);
           box-shadow: 0px 0px 5px var(--menubtn-bg);
           margin-right: 16px;
           }


.menubtn .material-icons {
                           font-size: 48px;
                           vertical-align: middle !important;
                           color: #fff;
                           }                                                 

.title {
         grid-area: title;
         align-self: center;
         justify-self: start;                  
         }

.title h2 {
            font-size: 1.6em;
            font-weight: bold;
            line-height: 1.2em;
            color: var(--menubtn-bg);
            text-align: left;
            text-shadow: 2px 2px 1px var(--header-bg);
            margin-left: 16px;
            }
/* --- end: header --- */

/* --- begin: content --- */
.content {
           display: grid;
           grid-area: content;
           padding: 2%;
           background-color: #f1f1f1;
           grid-template-rows: auto auto 1fr;
           grid-template-areas:
           "path"
           "links"
           "main";
           }

.path {
        grid-area: path;
        /* color: #ababab; */
        }

.path a {
          color: #022a72;
          text-decoration: none;
          }

.main {
        grid-area: main;
        text-align: justify; 
        }

/* video */
.main video {
    max-width: 100%;
    height: auto;
    /* display: block; */
    margin-left: auto;
    margin-right: auto;
}

.imgbox {
    text-align: center;
}

.imgbox img {
    width: 100%;
    max-width: 400px;
    height: auto;
    border: 1px solid #022a72;
}

.imgbox img.single {
    width: 128px;
    border: none;
}

.chart {
    width: 300px;
    height: 300px;
}

.row {
    margin: 0 !important;
}
    
.note {
    margin-bottom: 15px;
    padding: 4px 12px;
}

.note.danger {
    background-color: #ffdddd;
    border-left: 6px solid #f44336;
}

.note.success {
    background-color: #ddffdd;
    border-left: 6px solid #04AA6D;
}

.note.info {
    background-color: #022a7711;
    border-left: 6px solid #022a77;
}

.note.warning {
    background-color: #ffffcc;
    border-left: 6px solid #ffeb3b;
}

/* begin: accordion button */
/* accordion class: button show/hide panel content */
.accordion {
             background-color: #022a72;
             color: #f1f1f1;
             cursor: pointer;
             padding: 18px;
             border: none;
             text-align: left;
             outline: none;
             font-size: 15px;
             transition: 0.4s;
             box-shadow: 2px 2px 3px;
}

.accordion:hover {
    background-color: #023877;
}

/* unicode: plus */
.accordion:after {
                   content: "\002B";
                   color: #f1f1f1;
                   font-weight: bold;
                   float: right;
                   margin-left: 5px;
                   }

/* unicode: minus */
.active:after {
                content: "\2212";
                }

/* panel class: content for accordion */
.panel {
         padding: 0 18px;
         overflow: hidden;
	 max-height: 0;
	 transition: max-height 0.6s ease-out;
	 background-image: linear-gradient(to bottom, #f1f1f1, #022a7733);
         border: 1px solid #022a72;
         box-shadow: 2px 2px 3px;
         }
/* end: accordion button */

/* begin: ul and ol style in panel inside content */
.content .panel ul.list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.content .panel ul.list li { 
    display: block;
    padding: 8px 16px;
}
/* unicode:  emdash and space */
/* 
.content .panel ul.list li::before {
    content: "\2014\0020";
}
*/
.content .panel ul.list li:hover {
    color: #f1f1f1;
    background-color: #022a72;
}

.content .panel ol.list {
    margin: 0;
    padding: 0;
}

.content .panel ol.list li { 
    display: block;
    padding: 8px 16px;
}

.content .panel ol.list li:hover {
    color: #f1f1f1;
    background-color: #022a72;
}

.content .panel ol.list a:hover {
    color: #f1f1f1;
}

/* end: ul and ol style */
/* --- end: content --- */

/* --- begin: sidebar --- */
.sidebar {
           display: grid;
           grid-area: sidebar;
           background-image: linear-gradient(to bottom, var(--menubtn-bg), var(--gradient-bottom));
           box-shadow: 0px 0px 5px var(--menubtn-bg);
           grid-template-rows: auto auto auto auto 1fr;
           grid-template-areas:
           "logo"
           "week"
           "links"
           "weblinks"
           "padding";           
           }

.logo {
        grid-area: logo;
        align-self: start;
        justify-self: center;
        padding: 10px;
        }

.week {
        grid-area: week;
        align-self: start;
        justify-self: center;
        }

.week p {
          font-size: 0.7em;
          font-style: italic;
          line-height: 1.2em;
          text-shadow: 0px 0px 5px #000000;
          color: #fafafa;
          text-align: center;
          margin-right: 2px;
          }

/* switch: show sidebar navigation links in wide layout */
.links {
         grid-area: links;
         }

/* switch: do not show page navigation links in wide layout */
/*.content .links {
                  display: none;
                  }
*/
.weblinks {
            grid-area: weblinks;
            }

/* padding panel for stretch sidebar to footer */
.padding {
            grid-area: padding;
            }

/* begin: sidebar navigation */
.sidebar .nav {
                list-style-type: none;
                margin: 0;
                padding: 0;
                }

.sidebar .nav li a {
                     color: #f1f1f1;
                     display: block;
                     padding: 8px 16px;
                     text-decoration: none;
                     }

.sidebar .nav li a:hover {
                           background-color: #f1f1f1;
                           color: #022a72;
                           }

.sidebar  h4 {               
               color: #f1f1f1;               
               text-align: center;
               font-family: 'Verdana', sans-serif;                              
               }
/* end: sidebar navigation */
/* end: sidebar */

/* --- begin: footer --- */
.footer {
          display: grid;
          grid-area: footer;
          background-color: var(--header-bg);
          grid-template-columns: auto 1fr auto;
          grid-template-areas:
          "logo info address";
          padding: 0 10px 0 10px;
          }

/* ---  memo: redefine .logo class */
.footer .logo {
                justify-self: start;
                align-self: center;
                }

.footer .info {
                grid-area: info;
                align-self: center;
                justify-self: start;
                text-align: left;
                }

.footer .address {
                   grid-area: address;
                   align-self: center;
                   justify-self: end;
                   text-align: right;
                   }

.footer p {
            font-size: 0.7em;
            line-height: 1.2em;
            padding: 2px;
            }

.footer a {
            text-decoration: none;
            }

.footer hr {
             border-top: 3px double #fafafa;
             }

/* --- memo: switch to hide footer links --- */
.footer .sections {
                    display: none;
                    }
/* --- end: footer --- */
/* --- end: layout --- */


/* --- begin: sidenav --- */
.sidenav {
           height: 100%;
           width: 0;
           font-size: 1.4em;
           position: fixed;
           z-index: 10;
           top: 0;
           left: 0;
           overflow-x: hidden;
           overflow-y: scroll;
           transition: 0.2s;
           padding-top: 60px;         
           }

.sidenav a {
             text-decoration: none;
             }

.sidenav .closebtn {
                     position: absolute;
                     top: 0;
                     right: 25px;
                     font-size: 48px;
                     margin-left: 50px;
                     color: #fff;
                     }

.sidenav .topnav {
                   list-style-type: none;
                   margin: 0;
                   padding: 0;
                   overflow: hidden;
                   }

.sidenav .topnav li a {
                        display: block;
                        color: #fff;
                        text-align: left;
                        padding: 14px 16px;
                        text-decoration: none;
                        text-shadow: 1px 1px 2px #000;
                        }

.sidenav .topnav li a:hover {
                              background-color: #f1f1f1;
                              color: #022a72;
                              text-shadow: none;
                              }

/* --- end: sidenav --- */


/* --- begin: media queries ---*/
/* --- memo: layout for screens wide less or equal 600px --- */
@media screen and (max-width: 600px) {
  
  .wrapper {
             display: grid;
             grid-template-columns: 1fr;
             grid-template-rows: auto auto 1fr auto;
             grid-template-areas:
             "header"
             "sidebar"
             "content"
             "footer";
             }
  
  /* redefine: img */
  .sidebar .logo img {
                       display: block;
                       width: 70%;
                       margin-left: auto;
                       margin-right: auto;                       
                       }
  
  /* switch: do not show sidebar navigation links in this layout */
  .sidebar .links {
                    display: none;
                    }
  /* switch: show page navigation links */
  .content .links {
                   display: block;
                    }
  
  /* switch: hide weblinks */
  .sidebar .weblinks {
                       display: none;
                       }
  /* switch: hide padding panel */
  .sidebar .paddings {
                       display: none;
                       }
  
  .footer {
            grid-template-columns: 1fr;
            grid-template-areas:
            "logo"
            "info"
            "address";
            }
  
  .footer .logo {
                  justify-self: center;
                  }
  
  .footer .info {
                  justify-self: center;
                  text-align: center;
                  }
  
  .footer .address {
                     justify-self: center;
                     text-align: center;
                     }
}
/* --- end: media queries --- */
