@font-face {
    font-family: "Josefin Sans";
    src: url(JosefinSans-Regular.ttf);
}

body {
  margin: 0;
  padding: 0;
  font: 18px/1.5 "Josefin Sans",Montserrat,Helvetica,Arial,sans-serif;
  letter-spacing: -0.5px;
  background: #466359 url('https://communitypathwaysunlimited.com/img/beige-tiles.png');
}

footer, .clear { clear: both; }
.hidden { display: none; }
img.slide { display: block; }
a { color: #8b5659; }
h3 a { font-size: 22px; font-family: Montserrat,Helvetica,Arial,sans-serif; letter-spacing: 0; background: #466359; color: #fff; padding: 20px 20px 16px; line-height: 2; text-decoration: none; }
h3 a:hover { background: #8b5659; color: #fff; }
a:hover { color: #466359; }

header, footer {
    border-top: 5px solid #8b5659;
    box-shadow: 0 10px 20px #1a1a1a;
    height: auto;
    background: rgb(238,238,238);
    background: linear-gradient(90deg, rgba(238,238,238,1) 0%, rgba(255,255,255,1) 50%, rgba(221,221,221,1) 100%);
    position: relative;
    z-index: 99;
}

header nav.programs, #menu-toggle { display: none; }

#programs header nav.programs {
    display: block;
    background: #8b5659;
    width: 100%;
}

#programs header nav.programs a {
    color: #fff;
    font-weight: normal;
    font-size: 16px;
    margin: 0 20px;
}

#programs header nav.programs a:hover {
    text-decoration: underline;
}

#programs header nav.programs ul {
    height: auto;
    padding: 25px 0 20px;
}

#page li {
    margin-bottom: 10px;
}

#resources #page a.tel {
    display: block;
    font-weight: bold;
    font-size: 20px;
}

#contact input, #contact textarea {
    width: 100%;
    display: block;
    margin-bottom: 20px;
    font-size: 20px;
    padding: 5px;
}

header section, footer section {
    max-width: 1000px;
    margin: 0 auto;
}

header section h1 {
    margin: 0;
    padding: 10px 35px 0;
    float: left;
}

header section nav {
    margin: 0 auto;
    float: right;
}

header section nav ul {
    height: 100px;
    margin: 0;
    padding-right: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}

header section nav ul li {
    display: inline-block;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
}

footer section ul li {
    list-style-type: none;
}

header section nav ul li a, footer section nav ul li a {
    display: inline-block;
    margin: 0 0 0 50px;
    color: #8b5659;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: -1px;
}

/* active nav */
#about header nav ul li a.about,
#services header nav ul li a.services,
#programs header nav ul li a.programs,
#resources header nav ul li a.resources,
#contact header nav ul li a.contact
{ color: #466359; border-bottom: 4px solid #8b5659; }

footer section nav ul li a {
    font-weight: normal;
}

footer section {
    color: #555;
}

footer div {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

#container {
    max-width: 1000px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 0 200px #1a1a1a;
    clear: both;
    color: #466359;
}

#page {
    margin: 0;
    width: 560px;
    min-height: 200px;
    padding: 35px 50px ;
    float: left;
    background: #fff url('img/circle.png') top left no-repeat;
}

#sidebar {
  width: 280px;
  padding: 25px 30px 50px;
  float: right;
  background: #edf0ef;
  clip-path: polygon(
    0 0, /* left top */
    100% 0, /* right top */
    100% 90%, /* right bottom */
    0 100% /* left bottom */
  );
}

h2 { margin-bottom: 40px; }
h3 { margin-top: 25px; font-size: 25px; font-weight: bold; }
#sidebar h3 { font-weight: normal; }
#page h3 { margin-top: 70px; }
.center { text-align: center; }
hr { border: none; background: #466359; height: 1px; margin: 40px 0; }

/* --- media queries --- */

@media (max-width: 1015px) {
    header h1, header nav, #sidebar, #page { float: none !important; }
    header h1 { text-align: center; }
    header .clear { display: none; }
    header h1 a img { height: auto; width: 60%; max-width: 20vh; padding-top: 20px; }
    header section nav ul li a { margin: 0 20px; }
    .slide { width: 100%; }
    #sidebar, #page { width: auto; }
    footer div { display: block; padding: 0 0 20px; }
    footer div section { margin: 30px auto; text-align: center; }
    footer div section ul { margin: 0; padding: 0; }
    footer div section ul li a { margin: 0 10px; }
}

@media (max-width: 600px) {
    header section nav ul { display: block; height: auto; padding-bottom: 10px; }
    header section nav ul li { margin: 15px 0; height: auto; }
}
