* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
  
/*  Basics */
body { 
font-family: 'Verdana', 'Calibri', 'lato', sans-serif;
font-size:10px;
letter-spacing:1px;
text-shadow:0px 0px 1px #bbb;
display: flex; justify-content: center; 
background: #333a3b; 
background-image: url();
text-align:justify;
padding: 20px; 
color: #FF6720;
}
  
  
/*  Links */
a:link,a:visited,a:active {
  color: #FF6720;
  text-decoration: none;
}

a:hover {
  color: #337099;
}
    
 /*Base edits*/
ul li {
  margin-left: 1em;
  font-weight: bold;
}

/*  Scrollbar */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}

::-webkit-scrollbar-track {
background: #c1e2e6;       
border-radius: 10px;
}

::-webkit-scrollbar-thumb {
background: #c1e2e6; 
border-radius: 10px;
border: 3px solid #ffeef2;
}

  
/*  Flex layout */

.container {
display: flex;
flex-direction: row;
min-height: 600px;
width: 100%;
max-width: 700px;
background: #c1e2e6; 
border-radius: 16px;
overflow: hidden;
box-shadow: 0 8px 24px rgba(0,0,0,0.1);
align-items: flex-start;
}

  
/* Sidebar */
.sidebar {
width: 200px;
background: #c1e2e6; 
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 10px;
border-radius: 16px;
flex-shrink: 0;
}

/*  Sidebar Links */
.link {
width: 100%;
cursor: pointer;
padding: 12px;
margin-bottom: 4px;
transition: background 0.3s;
font-weight: bold;
text-align: left;
border: 3px solid #337099;;
border-radius: 4px;
background: #c1e2e6;
}
  
.link:hover {
  background: #c1e2e6;
}

.sub-links {
display: none;
flex-direction: column;
width: 100%;
padding-left: 0px;
margin-bottom: 0px;
}
  
.sub-links a {
color: #FF6720;;
padding: 8px;
text-decoration: none;
border: 3px solid #337099;;
border-radius: 4px;
margin-bottom: 4px;
display: block;
}
  
.sub-links a:hover {
  font-weight:bold;
  color: #337099;
  background: #7bb5dc;
}

.sub-links.open {
  display: flex;
}


/*  Sidebar Boxes */

.sidebar-box {
width: 100%;
background: #c1e2e6; ;
border-radius: 8px;
border: 3px solid #337099;
transition: transform 0.2s;
padding: 10px;
margin: 8px 0 0 0;
font-size:10px;
line-height:1.4;
}
    
.sidebar-box:hover {
  transform: translateY(-3px);
}
  
  
/*  All titles */
.sidetitle { 
margin-bottom: 4px;
font-size: 11px;
font-weight: 400;
color: #FF6720;
border-bottom: 1px solid #ffc0d3;
font-family:'Calibri';
font-weight: bold;
}

.main-title {
  margin-bottom: 4px;
  font: 15px 'Calibri';
  border-bottom: 1px solid #ffc0d3;
  color: #FF6720;
}
  
.box-title {
  margin-bottom: 4px;
  font: 11px 'Calibri';
  color: #FF6720;
  border-bottom: 1px solid #ffc0d3;
  font-weight: bold;
}

  
  
/*  Content section */

.content {
flex: 1;
display: flex;
flex-direction: column;
background: #333a3b;
}
  
/*  Header / Site name section */

header {
background: #c1e2e6;
border-bottom: 1px solid #ffc04c;;
padding: 16px 20px;
font-size: 18px;
font-weight: 600;
display: flex;
flex-direction: column;
gap: 6px;
}

.site-name {
display: flex;
align-items: center;
gap: 8px;
}

.site-name  {
border-radius: 6px;
padding: 4px 8px;
font:bold 16px 'Verdana';
line-height:19px;
letter-spacing:4px;
display: inline-block;
color: #FF6720;
border: 3px solid #337099;
}

.sub-title {
background: #c1e2e6;
border: 3px solid #337099;
border-radius: 6px;
padding: 4px 8px;
font-size: 12px;
width: fit-content;
font-family: 'Calibri';
}
    
    
/*  Banner section */
  
.banner {
grid-column: 1 / -1; 
object-fit: fill;
background: #c1e2e6 url(/img/Banner\ final.png);
border: 3px solid #337099;
border-radius: 8px;
height:200px;
width: auto;
}

.banner-title {
font-size: 14px;
font-weight: 600;
margin-bottom: 8px;
border-bottom: 1px solid #337099;
text-transform: uppercase;
}
  
  
/*  Main section */
  
main {
flex: 1;
padding: 20px;
line-height: 1.4;
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-gap: 16px;
grid-template-rows: auto;
background: #c1e2e6;
}

.main-content {
grid-column: 1 / -1;
background: #c1e2e6;
padding: 16px;
border-radius: 8px;
transition: transform 0.2s;
}
  
.main-content:hover {
  transform: translateY(-3px);
}


/*  Small boxes under main section */

.box {
background: #c1e2e6; 
border: 3px solid #337099;
border-radius: 8px;
padding: 12px;
transition: transform 0.2s;
font-size:10px;
}

.light-text {
background: #c1e2e6; 
padding: 5px;
transition: transform 0.2s;
font-size:10px;
}
  
.box:hover {
  transform: translateY(-3px);
}

.icon {
  width: 15px;
  height: auto;
}
  
/*  This makes site responsive / mobile friendly */

@media (max-width: 768px) {
.container { flex-direction: column; max-width: 100%; }
.content { order: -1; }
.sidebar { width: 100%; flex-direction: column; align-items: left; padding: 20px; flex-wrap: wrap; order: 0; }
.sub-links { padding-left: 0; }
.link, .sub-links a { text-align: left; }
main { grid-template-columns: 1fr; }
}
