:root {
    --owen-red: #b20606;
    --menu-txt-color: #3f4552;
    --menu-bg-color: transparent;
    --menu-bg-hover: var(--owen-red);
    --parent-submenu-text-hover: white;
    --submenu-txt-color: var(--menu-txt-color);
    --submenu-bg-color: #f9f9f9;
    --submenu-bg-hover: #d6d6d6;
    --submenu-txt-hover: black;
    --max-width: 1200px;
}
html, body {
    margin: 0;
    padding: 0;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    text-align: left;
    height: 100%;
    background-color: transparent;
}
body {
    background-image: url(images/framework/bg-tlc.jpg);
    background-color: #dadadc;
    background-repeat: repeat-x;
    background-position: top left;
}

.main-panel h1,
.main-panel h2,
.main-panel h3,
.main-panel h4,
.main-panel h5,
.main-panel h6, 
.main-panel p {
    margin: 0;
    margin-top: 20px;
    padding: 0;
    line-height: normal;
}
.main-panel h1:first-child,
.main-panel h2:first-child,
.main-panel h3:first-child,
.main-panel h4:first-child,
.main-panel h5:first-child,
.main-panel h6:first-child, 
.main-panel p {
    margin-top: 0px;
}
.main-panel ul h1,
.main-panel ul h2,
.main-panel ul h3,
.main-panel ul h4,
.main-panel ul h5,
.main-panel ul h6, 
.main-panel ul p {
    margin-left: -38px;
}

.main-panel h1 {
    font-size: 2rem;
    column-span: all;
    padding: 5px 15px;
    color: white;
    border-radius: 8px;
    margin-bottom: 26px !important;
    text-transform: uppercase;

    background: var(--owen-red); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(178, 6, 6, 1) 0%, rgba(143,2,34,1) 70%, rgba(109,0,25,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(178, 6, 6, 1) 0%,rgba(143,2,34,1) 70%,rgba(109,0,25,1) 100%);
    background: linear-gradient(to bottom,  rgba(178, 6, 6, 1) 0%,rgba(143,2,34,1) 70%,rgba(109,0,25,1) 100%);
}        
.main-panel h2 {
    font-size: 1.6rem;
    border-bottom: 3px solid var(--owen-red);            
    margin-bottom: 18px;
}      
.main-panel h3 {
    font-size: 1.5rem;
    padding: 4px 16px !important;
    background: #dfe6f0;
    margin-bottom: 10px;
}        
.main-panel h4 {
    font-size: 1.4rem;
    margin-bottom: 10px;    
}        
.main-panel h5 {
    font-size: 1.3rem;
}        
.main-panel h6 {
    font-size: 1.2rem;
}
p {
    font-size: 1.1rem;
}
    



img {
    margin-bottom: -4px;
    margin-left: -4px;
}
header {
    grid-area: header;
}
aside {
    grid-area: aside;
}
main {
    background-image: url(images/framework/content-panel-top-left-side.jpg);
    background-image: 
        url(images/framework/content-panel-top-left-side.jpg),
        url(images/framework/content-panel-top-left-corner-shadow.jpg),
        url(images/framework/content-panel-top-right.jpg),
        url(images/framework/content-pane-bottom-left-corner.jpg),
        url(images/framework/content-panel-left.jpg),
        url(images/framework/content-panel-top.jpg);
    background-repeat: 
        no-repeat, 
        no-repeat, 
        no-repeat, 
        no-repeat, 
        repeat-y,
        repeat-x;
    background-position: 
        0px 37px, 
        top left, 
        top right, 
        bottom left, 
        left, 
        top;
    background-color: green;
    min-height: 550px;
    margin-right: 12px;

}
footer {
    grid-area: footer;
    font-size: 12px;
    padding-left: 28px;
    padding-top: 8px;
    text-align: center;
    margin-bottom: 100px;
}
footer div a,
footer div .copyright {
    padding: 1px 10px 1px 6px;
    border-right: 1px solid gray;
}
footer div a:last-child,
footer div .copyright {
    border-right: 0px solid gray;
}
.grid-container {
    /* Structure */
    display: grid;
    max-width: var(--max-width);
    margin: 0 auto 8px auto;
    grid-template-areas: 
        'header header'
        'aside main'
        'aside footer';
    grid-template-columns: 221px 1fr;
    grid-gap: 0;
    padding: 0;
    border: 0;
    background-color: transparent;
}

.grid-container > * {
    background-color: transparent;
    border: 0px dashed gray;
}
header div.logo-container {
    position: absolute;
    text-align: center;
    background-color: var(--submenu-bg-hover);
    width: 100%;
    height: 50px;
    padding-top: 12px;
    display: none;
}
header div.logo-container img.logo {
    position: relative;
    width: 150px;
    margin: auto;
}

header section,
header nav {
    display: inline-block;
    height: 104px;            
}
header section {
    width: 388px;
}
.hide-on-mobile {
    display: inline-block;
}
        
header nav {
    padding-top: 68px;
    padding-left: 6px;
    background-image: url(images/framework/bg-tm-01.jpg), url(images/framework/nav-main-bg.jpg);
    background-repeat: repeat-x;
    background-position: top left, bottom;
    width: calc(100% - 398px);
    margin-left: -4px;
    box-sizing: border-box;
}
ul.owen-nav {
    font-family: sans-serif;
    font-size: 14px; 
}
ul.owen-nav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: var(--menu-bg-color);
}

ul.owen-nav li {
    float: left;
}
ul.owen-nav > li {
    border-right: 1px solid var(--menu-txt-color);
}
ul.owen-nav > li:last-child {
    border-right-width: 0px;
}

ul.owen-nav > li > a,
ul.owen-nav > li.dropdown > a.dropbtn,
ul.owen-nav .dropbtn {
    display: inline-block;
    color: var(--menu-txt-color);
    text-align: center;
    padding: 8px 16px;
    text-decoration: none;
    /*border-top-left-radius: 10px;*/            
}
ul.owen-nav {
    font-family: sans-serif;
    font-size: 14px; 
}

ul.owen-nav > li a:hover,
ul.owen-nav .dropdown:hover > .dropbtn,
ul.owen-nav .dropdown > .dropdown-content .submenu a.dropbtn:hover, 
ul.owen-nav .dropdown > .dropdown-content .submenu:hover a.dropbtn {
    color: var(--parent-submenu-text-hover);
    background-color: var(--menu-bg-hover);
}

ul.owen-nav li.dropdown {
    display: inline-block;
}

ul.owen-nav .dropdown-content {
    display: none;
    position: absolute;
    background-color: var(--submenu-bg-color);
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
}

ul.owen-nav .dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

ul.owen-nav > li.dropdown a {
    color: var(--submenu-txt-color);
}

ul.owen-nav .dropdown-content a:hover {
    background-color:var(--submenu-bg-hover);
    color: var(--submenu-txt-hover);
}

ul.owen-nav .dropdown > .dropdown-content a.dropbtn + div.dropdown-content {
    float: right;
}

ul.owen-nav .dropdown:hover > .dropdown-content {
    display: block;
}

ul.owen-nav .dropdown > .dropdown-content a.dropbtn:hover + div.dropdown-content,
ul.owen-nav .dropdown > .dropdown-content a.dropbtn + div.dropdown-content:hover {
    display: block;
}
ul.owen-nav .submenu {
    position: relative;
}
ul.owen-nav .submenu > div.dropdown-content {
    position: absolute;
    white-space: nowrap;
    top: 0;
    left: 160px;
}    

/* Main Panel Grids */
.main-panel {
    display: grid;
    grid-gap: 32px;
    border: 2px solid gray;
    background-color: white;
    margin-top: 37px;
    margin-left: 28px;
    padding: 40px;
    min-height: 550px;
}

.main-panel.text-columns {
    display: block;
    columns: 2 300px;
    column-gap: 32px;
}
.main-panel.text-columns.single {
    display: block;
    columns: 1;
}
.main-panel.text-columns.logos img {
    max-width: 250px;
}
.main-panel.text-columns.three-col {
    columns: 3 220px;
}
.main-panel.text-columns > * {
    margin-bottom: 10px;
}

.main-panel.grid-1-half {
    grid-template-columns: 1fr 1fr;
}
.main-panel.grid-2-thirds {
    grid-template-columns: 1fr 250px;
}
.main-panel img {
    width: 100%;
    margin-bottom: 10px;
}
.main-panel img:last-child {
    margin-bottom: 0;
}

.main-panel ul,
.main-panel .keep-together {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}

/* Links */
.copyright,
.linksOwen,
.linksOwen:link,
.linksOwen:active, 
.linksOwen:visited {
	font-size: 12px;
	color:#58585a;
	text-decoration: none;
}

.linksOwen:hover {
	color: #cf3232;
	text-decoration: underline;
}

/* Helper Classes */
.span-col {
    column-span: all;
}
.text-center {
    text-align: center;
}

@media only screen and (max-width: 996px) {
    .grid-container {
        grid-template-areas: 
            'header'
            'main'
            'footer'
            'aside';
        grid-template-columns: 1fr;
    }
    aside {
        display: none;
    }
    nav {
        padding: 0;
        background-image: url(), url();
        margin: 0;
        background: pink;
    }
    nav ul.owen-nav {
        width: 100%;
    }
    nav ul.owen-nav li {
        width: 16%;                
        text-align: center;
    }
    nav ul.owen-nav li a.icon {
        padding: 6px 8px;
    }
    nav ul.owen-nav li a.icon i {
        font-size: 20px;
        display: inline-block;
    }
    header nav {
        width: 100%;
        margin-left: 0;
    }
    .hide-on-mobile {
        display: none;
    }
    header div.logo-container {
        display: block;
    }
}    
@media only screen and (max-width: 768px) {
    .main-panel {
        grid-template-columns: 1fr;
    }
    ul.owen-nav > li > a,
    ul.owen-nav > li.dropdown > a.dropbtn,
    ul.owen-nav .dropbtn {
        padding: 8px 10px;
    }
    ul.owen-nav {
        font-size: 12px; 
    }
}

.hide {
    display: none;
}
