/* style.css */
/* main CSS file for snowlands.org website */

*, *::before, *::after {
  box-sizing: border-box;
}
img {
  max-width: 100%;
}

/* global parameters */
html {
  --background-color: #cceeff;
  --nav-background-color: #aaccee;
  --heading-color: #4444ff;
  --highlight-color: #ffccaa;
  --max-width: 800px;
  --blackish-color: #333333;
  --menu-text-size: 0.875rem;
  --body-font-family: Verdana, Arial, Helvetica, sans-serif;
  --body-font-size: 0.75rem;
}

/* element styles */
body {
  font-family: var(--body-font-family);
  font-size: var(--body-font-size);
  background-color: var(--blackish-color);
}
header {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: var(--max-width);
  background-image: url(../assets/backgrounds/backgroundtile.jpg);
}
main {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 1em;
  background-color: var(--background-color);
}
h1, h2, h3, .title, .title_larger, .title-larger, 
.title_smaller, .title-smaller, .subtitle {
  color: var(--heading-color);
  font-weight: 900;
}
h1 {
  /* font-size: 18px; */
  font-size: 2em;
  text-align: center;
}
h2 {
  font-size: 1.33em;  /* 16px */
}
h3 {
  font-size: 1.167em;  /* 14px */
}
h4 {
  font-size: 1em; /* 12px */
}
h5 {
  font-size: 0.9167em; /* 11px */
}
ul { 
  padding-left: 1.25em;
}
li {
  padding: 0;
  margin: 0.5em 0 0 0;
}
blockquote {
  margin: 1em 1em;
}

/* class styles */
.full-line {
  width: 100%;
  size: 0.25px;
  color: #ccc;
}
.logo, .logo-picture {
  max-width: 335px;
  margin: 1em auto;
}
.banner {
  width: 100%;
  background-image: linear-gradient(90deg, white 0%, #e7edf8 100%);
  display: flex;
  justify-content: center;
}
.banner img {
  flex: 0 1 400px;
  max-height: 205px;
}
.title {
  font-size: 1.5em;
}
.title_larger, .title-larger {
  font-size: 2em;
}
.title_smaller, .title-smaller {
  font-size: 1.167em;
}
.subtitle {
  font-size: 1.167em;
  color: var(--blackish-color);
  text-align: center;
}
.big-red {
	font-size: 2em;
	font-weight: bold;
	color: red;
}

/* flexbox styles for switching between rows and columns */
.col-row-800 {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.card {
  padding: 1em;
  width: 90%;
}

/* utility classes (add as needed) */
.row {
  display: flex;
}
.col {
  display: flex;
  flex-direction: column;
}
.grid {
  display: grid;
}
.nomargin {
  margin: 0;
}
.spacer {
  margin: auto;
  width: 1px;
}
.half {
  width: 50%;
}
.full {
  width: 100%;
}
.clearboth {
  clear: both;
}
.center {
	text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
.black {
  color: var(--blackish-color);
}

/* styles for page footer */
.footer {
  padding: 1em;
  max-width: var(--max-width);
  margin: 0 auto;
  background-image: url(../assets/backgrounds/backgroundtile.jpg);
}
.footer-text {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.footer-text p, .footer-text a {
  color: white;
  text-align: center;
}
.footer-text p {
  margin: 0.125em 0;
}

/* styles for navigation bar with drop-down menus */
.drop-menu, .nodrop-menu {
  position: relative;
  display: inline-block;
  text-align: center;
  padding: 0 1em;
}
.drop-menu:hover .drop-menu-items {
  display: block;
  transform: translate(-2em, 0);
}
.nodrop-menu a:hover {
  background-color: var(--highlight-color);
  color: black;
}
.drop-menu a {
  display: block;
  padding: 0;
  text-decoration: none;
  font-size: var(--menu-text-size);
  font-weight: 400;
  color: black;
}
.menu-button, .nodrop-button {
  margin: 0 0 0 0;
  min-height: 3em;
  padding: 0;
  font-size: var(--menu-text-size);
  color: white;
  background-color: transparent;
  border: 0;
}
.nodrop-button a {
  display: block;
  padding: 0.5em;
  text-decoration: none;
  font-size: var(--menu-text-size);
  color: white;
}
.drop-menu-items {
  display: none;
  position: absolute;
  background: var(--nav-background-color);
  min-width: 12em;
  z-index: 2;
}
.drop-menu-items a {
  padding: 0.5em;
}
.drop-menu-items a:hover {
  background-color: var(--highlight-color);
}

/* styles from main.css: */
.warning {
	margin-left: 2em;
	margin-right: 2em;
	border: 2px solid #FF0000;
	padding: 0.5em;
	font-weight: bold;
}
.caption {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color:#000000;
}
/* configure buy tickets button */
.buy_tickets {
	background:#0044FF;
	color: #FFFF00;
	border-radius: 15px;
	border-style:inset;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin: 2em;
	padding: 0.5em;
}
/*
.film_description {
	margin-top: 0.5em;
	margin-left: 1em;
}
*/
#nav_inner .smallbold {
	font-weight:bold; 
	font-size:12px; 
	color:#FFCC00;
}
#subscribe{
  margin-left: 10px;
}
/* end of styles from main.css */

/* styles for tool bar containing donate button (main page only) and navigation bar */
.nav-donate {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 4px;
  /* outline: 1px solid yellow; */
}
#donate-button-container {
  max-width: 120px;
}
#donate-button {
  margin: 4px 0;
  /* border: 1px dashed lightgreen; */
}
#smart-button-select {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 1em;
}
#paypal-button-container {
  margin-top: 1em;
}
.nav {
  display: flex;
  flex-direction: column;
  /* outline: 1px solid red; */
  align-items: center;
}

/* media queries for screen-size customization */
@media (min-width: 250px) {
  .nav {
    display: grid;
    grid-template-columns: repeat( 2, 1fr );
  }
}
@media (min-width: 380px) {
  .nav-donate {
    flex-direction: row;
    justify-content: space-around;
    align-items:flex-start;
  }
  #donate-button {
    position: absolute;
    left: 8px;
    /* border: 1px solid red; */
  }
}
@media (min-width: 500px) {
  .nav {
    grid-template-columns: repeat( 3, 1fr );
  }
  ul {
    padding-left: 2em;
  }
}
@media (min-width: 640px) {
  main {
    padding: 2em;
  }
  blockquote {
    margin: 1em 2em;
  }
  .col-row-800 {
    display: flex;
    flex-direction: row;
  }
}
@media (min-width: 730px) {
  .nav-donate {
    justify-content: space-between;
  }
  #donate-button {
    position: static;
  }
  .nav {
    display: flex;
    flex-direction: row;
  }
}
