/************************ reset *******************************/
:link,:visited { text-decoration:none; }
a:hover { text-decoration: underline; }
h1,h2,span,h3,h4,h5,h6,pre,code { font-size:1em; }
ul,ol { list-style: none; }
ul,ol,li,h1,h2,span,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input { margin:0; padding:0; }
input { background-color: #fff; }
.row
{
      display: flex; /* equal height of the children */
      flex-wrap: wrap; /* wrap if don't fit */
}

/********************* common for every page *****************/
:root {
  --darkpurple: #410c41;
  --lavender: #af9baf;
  --darklavender: #8d6691;
  --darkgray: #736b68;
  --orange: #f56d12;
  --pinkpurple: #c90d7b;
}
body, p { font-family: Arial; }
a { color: #8e098e; }
a.vizilink { text-decoration: underline; font-weight:bold; }
p { margin-bottom:1em; }
h2 { font-family: 'PT Sans', sans-serif; font-weight:bold; font-size:180%; }
h3 { font-family: 'PT Sans', sans-serif; font-weight:bold; font-size:230%; margin-bottom:0.5em; }
.img_left { float:left; margin-right: 2em; margin-bottom: 1em; }
.img_right { float:right; margin-left: 2em; margin-bottom: 1em; }
#main_part_nonindex { background:#fff; padding:2em 6em 4em 6em; }
#main_part_nonindex p { font-size:1.3em; margin-bottom:1em;}
#main_part_nonindex p.disclaimer { font-size:80%; }
#main_part_nonindex h1 { font-family: 'PT Sans', sans-serif; font-size:200%; color:var(--orange); margin-bottom:1em; text-align:center; }

#topnav { overflow: hidden; background-color: #000; background: rgba(0,0,0,0.7); display: flex; justify-content: space-between; align-items: center; }

#logo { float:left; margin:0.8em 0.8em 0.5em 0.8em; text-align:left; padding:0px 0px; }
#logo a { padding:0px 0px; text-align: left; }
#logo a:hover { background: rgba(0,0,0,0.3); }
#logo img { max-height:70px; }
#logo h1 { color:#fff; font-size:110%; }
#navlinks { margin:auto; margin-bottom:10px; }
#navlinks a { white-space:nowrap; }

#topnav a { font-family: 'PT Sans', sans-serif; font-size:1.2em; color: #fff; text-align: center; padding: 14px 16px; text-decoration: none; }
#topnav a:hover { background-color: #ddd; color: black; }
#topnav a.active { color: white; }
#topnav #menu_clicker { display: none; }
.nav_tall a { float: none; display: block; }
#topnav #navlinks.nav_tall { display:block; text-align: left; margin-top: 30px; background-color: #ccc; }

/* behavior of top nav */
@media screen and (max-width: 600px)
{
      #topnav #navlinks.nav_wide { display: none; }
      #topnav #menu_clicker { float: right; display: block; position: absolute; right: 0; top: 0; }
      #navlinks a.nav_tall {position: relative;}
}
@media screen and (max-width: 400px)
{
      #logo img {width:70%; }
}
/* end behavior of top nav */

#main-screen
{
      background-image: url("img/main_photo.jpg"); background-color: #cccccc; background-repeat: no-repeat; height:auto; width:100%;
      background-size: cover;
}

/******************** join form ************************/
#signup_form_block { background: var(--darkpurple); width:20em; margin:40px 40px 60px 40px; float:right; color:#fff; padding:0.8em 2em; }
#signup_form_wrapper { padding:20px; }
label.error { color:#ed5656; display:block; margin-bottom:9px; }
#signup_form td.label, span.label { color:#fff; font-family: 'PT Sans', sans-serif; font-size:110%; font-weight:bold; }
#signup_form table { margin-top:1.3em; }
#signup_form table td { vertical-align: top; }
#signup_form ul li { font-size:95%; margin-top:20px; font-family: 'PT Sans', sans-serif; font-weight:100; }
input[type=text] { outline:none; background-color: #af9baf; border:1px solid #af9baf; font-size: 140%; width:12.5em; margin-bottom:0.5em; }
input[type=text]:focus { background-color: #fff; }
input:focus { outline: 2px solid royalblue; box-shadow: 1px 1px 8px 1px orange; }
#first { width:5em; }
#last { width:7em; }
#post_sign_up { display:none; margin-top: 1em; font-size: 1.5em; background:#fff; padding:0.6em; }
#post_sign_up p { margin-bottom:1em; color:#000; }
p.disclaimer { font-size:70%; color:#fff; margin-top:1em; }
.signup_btn { background:#fff; color:var(--darkpurple); text-shadow: #444444 0px 1px; padding:0.3em 1em; font-weight:bold; font-size:160%; border:none; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; cursor:pointer; font-family: 'PT Sans', sans-serif; margin-top:0.6em; float:right; }
#small_screen_btn { display: none; width:100%; float:none; text-align: center; width:95%; margin-top:1em; }
#small_screen_btn a { color:var(--darkpurple); }

#closing-screen { background-image: url("/img/last_photo.jpg"); background-color: #cccccc; background-repeat: no-repeat; height:auto; width:100%; background-size: cover; min-height:550px; display: flex; align-items: flex-end; }
#footer { background-color: #000; background: rgba(0,0,0,0.7); width:100%; }
#footer.row { justify-content: space-between; }
#footer div.footer_section { flex-grow:0; flex-wrap: wrap; padding:0.3em 2em;}
#footer div, #footer div a { color:#fff; font-family: 'PT Sans', sans-serif; font-size:1.2em; }
#footer #contact img { margin-right:0.3em; height:1.5em; }

/*
#contact ul li.fb:before { content:url("/img/cc.fb.gif") "\0020\0020"; width:10px;}
#contact ul li.twitter:before { content:url("/img/cc.twitter.gif") "\0020\0020"; width:10px;}
#contact ul li.email:before { content:url("/img/cc.mail.gif") "\0020\0020"; margin-top:10px;}
*/
.copyright { color:#fff; font-size: 0.8em; margin-top:1em; }

#main_events { display:flex; justify-content: space-between; margin-bottom: 2em; flex-wrap: wrap; }
#main_events .one_event { display:flex; flex-direction: row; flex: 1 15%; padding: 5px 5px; width:100%; background-color: #fff; justify-content: flex-start; font-family: 'PT Sans', sans-serif; font-weight: bold; box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2), 0 4px 10px 0 rgba(0, 0, 0, 0.19); margin: 3px; position: relative; }
#main_events .one_event img { max-height:60px; margin-right: 0.5em; border-radius: 20%; border:1px solid purple; }
#main_events h4 { margin-bottom:1.5em; }
.one_event p.rsvp { position:absolute; bottom: 0; right: 0;  padding: 5px; margin: 0px; }

#after_main_section { margin: 5px 0px 0px 0px; border:1px solid #000; }
#secondary_sections { margin-left:8%; margin-right:8%; }
#secondary_sections p { font-family: Arial; font-size:130%; }
/* #welcome_video { margin-right:5%; margin-bottom:3%; } #welcome_photo { width:400px; } */
div.section { margin-bottom:2em; }

@media (max-width: 1000px)
{
      #main_events .one_event { flex: 1 20%; }
}
@media (max-width: 900px)
{
	#main_part_nonindex { padding:1.2em 1.2em 4em 1.2em; }
      #signup_form_block { margin:1% 1% 2% 1%; }
	#footer div.footer_section { margin:0.6em; }
      #main_events .one_event { flex: 1 30%; }
}
@media (max-width: 700px)
{
      #signup_form_block { padding:0px; }
}
@media (max-width: 450px)
{
      #signup_form_block { width:100%; float:none; margin:0px; padding:0px; }
}
@media (min-width: 900px)
{
	#footer div.footer_section { margin:0.4em; }
}
@media (min-width: 1200px)
{
	#main_part_nonindex h1 {font-size:260%; }
}

/* ===== All memo-specific styles are prefixed with memo- ===== */

.memo-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 1.5em 1.2em 3em 1.2em;
  box-sizing: border-box;
}

.memo-hero {
  text-align: center;
  margin-bottom: 2em;
}

.memo-hero-title {
  font-family: 'PT Sans', sans-serif;
  font-size: 2rem;
  color: #28a8e0;
  font-weight: 700;
  line-height: 1.3;
}

.memo-hero-subtitle {
  font-size: 1.1rem;
  font-style: italic;
  color: #555;
  margin-top: 0.3em;
}

.memo-section-header {
  font-family: 'PT Sans', sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  text-align: center;
  color: #3aaee0;
  margin: 2.5em 0 1.2em 0;
}

.memo-section {
  margin-bottom: 2em;
}

.memo-content p {
  font-size: 1.05rem;
  line-height: 1.6;
  margin-bottom: 0.9em;
}

.memo-content ul {
  margin: 0 0 1.2em 1.4em;
  padding: 0;
}

.memo-content li {
  font-size: 1.05rem;
  line-height: 1.6;
  margin-bottom: 0.6em;
}

/* images inside memo */
.memo-image {
  margin: 0 auto 1em auto;
  text-align: center;
}

.memo-image img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* buttons */
.memo-button-row {
  text-align: center;
  margin: 1.2em 0 1.8em 0;
}

.memo-btn {
  display: inline-block;
  background-color: #1781fa;
  color: #ffffff !important;
  padding: 0.7em 1.4em;
  border-radius: 4px;
  font-family: 'PT Sans', sans-serif;
  font-weight: 700;
  font-size: 1.05rem;
  text-decoration: none;
}

.memo-btn:hover {
  opacity: 0.95;
  text-decoration: none;
}

/* dividers */
.memo-divider {
  border: 0;
  border-top: 1px solid #BBBBBB;
  margin: 2em 0;
}

/* small note text */
.memo-small {
  font-size: 0.9rem;
  color: #555;
}

/* previous memo link */
.memo-previous-link {
  margin-top: 3em;
  text-align: center;
  font-size: 1rem;
}

.memo-previous-link a {
  font-weight: bold;
}

/* closing/summary block */
.memo-summary-block {
  font-size: 0.98rem;
  text-align: center;
  margin-top: 1.5em;
}

/* responsive tweaks */
@media (max-width: 800px) {
  .memo-container {
    padding: 1.2em 1em 2.5em 1em;
  }
  .memo-hero-title {
    font-size: 1.7rem;
  }
}

/* ensure newsletter images scale properly and never overflow */
.news-image {
  max-width: 100%;
  width: 100%;        /* guarantees it fits inside the memo-container */
  height: auto;
  display: block;
  margin: 0 auto 1em auto;
}

.memo-topspace {
  margin-top: 0.7em;
}
