/**
$screenExtraSmall: 321px;
$screenSmall: 479px;
$screenMedium: 767px;
$screenLarge: 991px;
$screenExtraLarge: 1200px;
**/
/**$headerHeight: 10vh;
$footerHeight: 5vh;**/
@import url("https://fonts.googleapis.com/css2?family=Rock+Salt&family=Source+Sans+Pro:ital,wght@0,200;0,400;0,700;1,200;1,400;1,700&display=swap");
/*
$neutralLight: #E9EEF4;   // White
$neutralDark: #1F2021;    // Black
$neutralMid: #7D7F82;     // Blue-gray
$neutralGray: #444444;

$primaryLight: #A2ADBC;   // Light gray
$primaryDark: #1F3044;    // Dark blue
$primaryMid: #4A72A1;     // Blue

$secondaryLight: #FB9039;      // Orange
//$colorSky: #79C8FF;         // Sky blue
*/
/***

// Layout
// ---------------------------------------
$fontHeader: $fontSansSerif;
$fontMain: $fontSerif;
$fontFooter: $fontSansSerif;
$fontBreadcrumbs: $fontSansSerif;

// h1 -- h6
$fontHeadline: $fontSansSerif;
$h1size: 2.0rem;
$h2size: 1.5rem;
$h3size: 1.4rem;
$h4size: 1.3rem;
$h5size: 1.2rem;
$h6size: 1.1rem;

// Main and Secondary Navigation
$fontMainNav: $fontSerif;
$fontSecondaryNav: $fontSansSerif;
//$fontPageNav: $fontSansSerif;  not used?


// Cover Pages
$fontCoverHeader: $fontSansSerif;


// Photo Index Page
// The blocky, black-outlined letters (photo index)
$fontPhotoIndex: $fontSansSerif;


// Blog pages
$blogTimeStamp: $fontSansSerif;


// Lightbox
$lightboxCaption: $fontSansSerif;
$lightboxMetadata: $fontSansSerif;






// Layout
// ---------------------------------------
$pageBackground: $primaryLight;
//$headerLight: $neutralLightMid;
//$headerDark: $primaryDark;
$mainText: $neutralDark;
$footerText: $primaryDark;

$borderBreadcrumbs: $neutralLight;


// Nav Menu
$navHamburger: $neutralLight;
$navMenuBackgroundLight: $primaryDarkMid;
$navMenuBorder: $secondaryMid;
$navMenuPrimaryText: $neutralLight;
$navMenuPrimaryTextHover: $neutralLightMid;
$navMenuSecondaryText: $neutralLight;
$navMenuSecondaryTextHover: $secondaryLight;



//  Keep these?
$deEmphasizedTextDark: $primaryDark;
$deEmphasizedTextLight: $primaryLight;


// Cover pages
$coverTitle: $neutralLight;
$coverLinks: $neutralLight;
$coverHeaderBorder: $neutralDark;

// Photography
$coverPhotoTitle: $neutralLight;
$coverPhotoLinks: $neutralLight;
$borderPhotoIndex: $neutralDark;  // used on cover page
$borderImage: $neutralDarkMid;
$boxBackground: rgba(0,0,0,0.4);

$blogIndexBoxBorder: $neutralDarkMid;
$blogIndexBoxBackground: $neutralDark;

$lightboxCaption: $neutralLight;




// Sizes (widths / heights / etc.)
// ========================================

// Layout
// ---------------------------------------

// Nav menu
$hamburgerSize: 57px;

***/
/*
@mixin font-size($font-family) {
	@if($font-family == 'sans') {
		
		$paragraph-size: 1rem;
		body {  font-size: $paragraph-size;  }
		h1 {  font-size: $paragraph-size * 2.75;  }
		h2 {  font-size: $paragraph-size * 2.00;  }
		h3 {  font-size: $paragraph-size * 1.60;  }
		h4 {  font-size: $paragraph-size * 1.40;  }
		h5 {  font-size: $paragraph-size * 1.20;  }
		h6 {  font-size: $paragraph-size * 1.00;  }
		
		//@media print {
		//	h1 {
				//margin-top: 12pt;
		//	}

	}
	@else if($font-family == 'hand') {
		
		$paragraph-size: 1rem;
		body {  font-size: $paragraph-size;  }
		h1 {  font-size: $paragraph-size * 1.70;  }
		h2 {  font-size: $paragraph-size * 1.40;  }
		h3 {  font-size: $paragraph-size * 1.25;  }
		h4 {  font-size: $paragraph-size * 1.10;  }
		h5 {  font-size: $paragraph-size * 1.05;  }
		h6 {  font-size: $paragraph-size * 1.00;  }
	}
	@else {
		
	}
}
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

*,
*:before,
*:after {
  box-sizing: inherit; }

* {
  box-sizing: border-box; }

img, video, embed, object {
  max-width: 100%; }

.clear::after {
  content: " ";
  display: table;
  clear: both; }

i, cite, em {
  font-style: italic; }

b, strong {
  font-weight: 700; }

sup {
  font-size: 0.7rem;
  vertical-align: super;
  line-height: 1; }

sub {
  font-size: 0.7rem;
  vertical-align: sub;
  line-height: 1; }

th {
  font-weight: 700; }

figcaption {
  line-height: 1; }

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================= */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
========================================================================= */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
========================================================================= */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
========================================================================= */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
========================================================================= */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
========================================================================= */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
========================================================================= */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
========================================================================= */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/*
 * grid.scss
 *
 * A scss file for the layout grid.
 * 
 * CREATED: April 2020
 */
.body-grid {
  display: grid;
  grid-template-columns: 1fr;
  padding: 0;
  margin: 0; }
  @media (max-width: 478px) {
    .body-grid {
      grid-gap: 4vh 0; } }
  @media (min-width: 479px) and (max-width: 990px) {
    .body-grid {
      grid-gap: 5vh 0; } }
  @media (min-width: 991px) {
    .body-grid {
      grid-gap: 6vh 0; } }

.grid,
.sub-grid {
  display: grid;
  padding: 0 2%; }
  @media print {
    .grid,
    .sub-grid {
      padding: 0 0.5in; } }
  @media (max-width: 478px) {
    .grid,
    .sub-grid {
      grid-template-columns: 1fr; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .grid,
    .sub-grid {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 767px) and (max-width: 990px) {
    .grid,
    .sub-grid {
      grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .grid,
    .sub-grid {
      grid-template-columns: repeat(8, 1fr); } }
  @media (min-width: 1200px) {
    .grid,
    .sub-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 478px) {
    .grid,
    .sub-grid {
      grid-gap: 2rem 0;
      grid-gap: 5vh 0; } }
  @media (min-width: 479px) and (max-width: 990px) {
    .grid,
    .sub-grid {
      grid-gap: 2.5rem 1.5rem;
      grid-gap: 6.25vh 3.125vh; } }
  @media (min-width: 991px) {
    .grid,
    .sub-grid {
      grid-gap: 2.75rem 1.75rem;
      grid-gap: 7.5vh 4.5vh; } }

.sub-grid {
  padding: 0; }
  @media (max-width: 478px) {
    .sub-grid {
      grid-gap: 1rem 0; } }
  @media (min-width: 479px) and (max-width: 990px) {
    .sub-grid {
      grid-gap: 1.0rem 1.5rem; } }
  @media (min-width: 991px) {
    .sub-grid {
      grid-gap: 1.25rem 1.75rem; } }

@media (max-width: 478px) {
  .grid-center.whole {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.whole {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.whole {
    grid-column: 1 / span 4; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.whole {
    grid-column: 1 / span 8; } }
@media (min-width: 1200px) {
  .grid-center.whole {
    grid-column: 1 / span 12; } }

@media (max-width: 478px) {
  .grid-center.five-sixths {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 4; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.five-sixths {
    grid-column: 2 / span 6; } }
@media (min-width: 1200px) {
  .grid-center.five-sixths {
    grid-column: 2 / span 10; } }

@media print and (max-width: 478px) {
  .grid-center.five-sixths {
    grid-column: 1; } }
@media print and (min-width: 479px) and (max-width: 766px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 2; } }
@media print and (min-width: 767px) and (max-width: 990px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 4; } }
@media print and (min-width: 991px) and (max-width: 1199px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 8; } }
@media print and (min-width: 1200px) {
  .grid-center.five-sixths {
    grid-column: 1 / span 12; } }

@media (max-width: 478px) {
  .grid-center.two-thirds {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.two-thirds {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.two-thirds {
    grid-column: 2 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.two-thirds {
    grid-column: 3 / span 4; } }
@media (min-width: 1200px) {
  .grid-center.two-thirds {
    grid-column: 3 / span 8; } }

@media (max-width: 478px) {
  .grid-center.half {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.half {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.half {
    grid-column: 2 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.half {
    grid-column: 3 / span 4; } }
@media (min-width: 1200px) {
  .grid-center.half {
    grid-column: 4 / span 6; } }

@media (max-width: 478px) {
  .grid-center.third {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.third {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.third {
    grid-column: 2 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.third {
    grid-column: 4 / span 2; } }
@media (min-width: 1200px) {
  .grid-center.third {
    grid-column: 5 / span 4; } }

@media (max-width: 478px) {
  .grid-center.sixth {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-center.sixth {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-center.sixth {
    grid-column: 2 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-center.sixth {
    grid-column: 4 / span 2; } }
@media (min-width: 1200px) {
  .grid-center.sixth {
    grid-column: 6 / span 2; } }

@media (max-width: 478px) {
  .grid-left.three-quarters {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-left.three-quarters {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-left.three-quarters {
    grid-column: 1 / span 3; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-left.three-quarters {
    grid-column: 1 / span 6; } }
@media (min-width: 1200px) {
  .grid-left.three-quarters {
    grid-column: 1 / span 9; } }

@media (max-width: 478px) {
  .grid-right.three-quarters {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-right.three-quarters {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-right.three-quarters {
    grid-column: 2 / span 3; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-right.three-quarters {
    grid-column: 3 / span 6; } }
@media (min-width: 1200px) {
  .grid-right.three-quarters {
    grid-column: 4 / span 9; } }

@media (max-width: 478px) {
  .grid-left.half {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-left.half {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-left.half {
    grid-column: 1 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-left.half {
    grid-column: 1 / span 4; } }
@media (min-width: 1200px) {
  .grid-left.half {
    grid-column: 1 / span 6; } }

@media (max-width: 478px) {
  .grid-right.half {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-right.half {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-right.half {
    grid-column: 3 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-right.half {
    grid-column: 5 / span 4; } }
@media (min-width: 1200px) {
  .grid-right.half {
    grid-column: 7 / span 6; } }

@media (max-width: 478px) {
  .grid-left.third {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-left.third {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-left.third {
    grid-column: 1 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-left.third {
    grid-column: 1 / span 3; } }
@media (min-width: 1200px) {
  .grid-left.third {
    grid-column: 1 / span 4; } }

@media (max-width: 478px) {
  .grid-right.third {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-right.third {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-right.third {
    grid-column: 3 / span 2; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-right.third {
    grid-column: 6 / span 3; } }
@media (min-width: 1200px) {
  .grid-right.third {
    grid-column: 9 / span 4; } }

@media (max-width: 478px) {
  .grid-left.quarter {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-left.quarter {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-left.quarter {
    grid-column: 1 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-left.quarter {
    grid-column: 1 / span 2; } }
@media (min-width: 1200px) {
  .grid-left.quarter {
    grid-column: 1 / span 3; } }

@media (max-width: 478px) {
  .grid-right.quarter {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-right.quarter {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-right.quarter {
    grid-column: 4 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-right.quarter {
    grid-column: 7 / span 2; } }
@media (min-width: 1200px) {
  .grid-right.quarter {
    grid-column: 10 / span 3; } }

@media (max-width: 478px) {
  .grid-left.sixth {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-left.sixth {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-left.sixth {
    grid-column: 1 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-left.sixth {
    grid-column: 1 / span 1; } }
@media (min-width: 1200px) {
  .grid-left.sixth {
    grid-column: 1 / span 1; } }

@media (max-width: 478px) {
  .grid-right.sixth {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-right.sixth {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-right.sixth {
    grid-column: 4 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-right.sixth {
    grid-column: 8 / span 1; } }
@media (min-width: 1200px) {
  .grid-right.sixth {
    grid-column: 12 / span 1; } }

@media (max-width: 478px) {
  .grid-centered-left.quarter {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-centered-left.quarter {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-centered-left.quarter {
    grid-column: 2 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-centered-left.quarter {
    grid-column: 3 / span 2; } }
@media (min-width: 1200px) {
  .grid-centered-left.quarter {
    grid-column: 4 / span 3; } }

@media (max-width: 478px) {
  .grid-centered-right.quarter {
    grid-column: 1; } }
@media (min-width: 479px) and (max-width: 766px) {
  .grid-centered-right.quarter {
    grid-column: 1 / span 2; } }
@media (min-width: 767px) and (max-width: 990px) {
  .grid-centered-right.quarter {
    grid-column: 3 / span 1; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .grid-centered-right.quarter {
    grid-column: 5 / span 2; } }
@media (min-width: 1200px) {
  .grid-centered-right.quarter {
    grid-column: 7 / span 3; } }

/*
 * photo-grid.scss
 *
 * A scss file for the layout grid.
 * 
 * CREATED: March 2021
 */
.photo-grid {
  display: grid;
  gap: 10px 30px;
  align-items: top;
  justify-items: center;
  justify-content: center;
  align-content: center;
  width: 100%;
  margin: 0; }

p + .photo-grid figure {
  margin-top: 0rem; }

p + .photo-grid {
  margin-top: 3rem; }

p + .sub-grid .photo-grid {
  margin-top: 1rem; }

.photo-grid + p {
  margin-top: 2rem; }

.sub-grid .photo-grid {
  margin-bottom: 2rem; }

.photo-grid.solo {
  grid-template-columns: repeat(1, 1fr);
  text-align: center; }

.photo-grid.solo figcaption {
  text-align: left; }

.photo-grid.duo {
  grid-template-columns: repeat(1, 1fr); }
  @media (min-width: 479px) {
    .photo-grid.duo {
      grid-template-columns: repeat(2, 1fr); } }

.photo-grid.duo.stacked {
  grid-template-columns: repeat(1, 1fr); }

.photo-grid.trio {
  grid-template-columns: repeat(1, 1fr); }
  @media (min-width: 479px) {
    .photo-grid.trio {
      grid-template-columns: repeat(3, 1fr); } }

.photo-grid.quartet {
  grid-template-columns: repeat(1, 1fr); }
  @media (min-width: 321px) and (max-width: 478px) {
    .photo-grid.quartet {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 479px) and (max-width: 766px) {
    .photo-grid.quartet {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 767px) and (max-width: 990px) {
    .photo-grid.quartet {
      grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .photo-grid.quartet {
      grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 1200px) {
    .photo-grid.quartet {
      grid-template-columns: repeat(4, 1fr); } }

.photo-grid.quartet.stacked {
  grid-template-columns: repeat(1, 1fr); }
  @media (min-width: 321px) {
    .photo-grid.quartet.stacked {
      grid-template-columns: repeat(2, 1fr); } }

/*
 * grid.scss
 *
 * A scss file for the layout grid.
 * 
 * CREATED: April 2020
 
 
 	@include respond-below(xs) {
		
	}
	@include respond-between(xs, sm) {
		
	}
	@include respond-between(sm, md) {
		
	}
	@include respond-between(md, lg) {
		
	}
	@include respond-between(lg, xl) {
		
	}
	@include respond-above(xl) {
		
	}
	
 */
@media (max-width: 320px) {
  html {
    font-size: 4vw; } }
  @media (max-width: 320px) and (max-width: 450px) {
    html {
      font-size: 18px; } }
  @media (max-width: 320px) and (min-width: 450px) {
    html {
      font-size: 18px; } }

@media (min-width: 321px) and (max-width: 478px) {
  html {
    font-size: 4vw; } }
  @media (min-width: 321px) and (max-width: 478px) and (max-width: 500px) {
    html {
      font-size: 20px; } }
  @media (min-width: 321px) and (max-width: 478px) and (min-width: 500px) {
    html {
      font-size: 20px; } }

@media (min-width: 479px) and (max-width: 766px) {
  html {
    font-size: 4vw; } }
  @media (min-width: 479px) and (max-width: 766px) and (max-width: 550px) {
    html {
      font-size: 22px; } }
  @media (min-width: 479px) and (max-width: 766px) and (min-width: 550px) {
    html {
      font-size: 22px; } }

@media (min-width: 767px) and (max-width: 990px) {
  html {
    font-size: 4vw; } }
  @media (min-width: 767px) and (max-width: 990px) and (max-width: 600px) {
    html {
      font-size: 24px; } }
  @media (min-width: 767px) and (max-width: 990px) and (min-width: 600px) {
    html {
      font-size: 24px; } }

@media (min-width: 991px) and (max-width: 1199px) {
  html {
    font-size: 6vw; } }
  @media (min-width: 991px) and (max-width: 1199px) and (max-width: 433.3333333333px) {
    html {
      font-size: 26px; } }
  @media (min-width: 991px) and (max-width: 1199px) and (min-width: 433.3333333333px) {
    html {
      font-size: 26px; } }

@media (min-width: 1200px) {
  html {
    font-size: 26px;
    font-size: 2vw; } }
  @media (min-width: 1200px) and (max-width: 1300px) {
    html {
      font-size: 26px; } }
  @media (min-width: 1200px) and (min-width: 1500px) {
    html {
      font-size: 30px; } }

body {
  font-family: "Source Sans Pro", sans-serif;
  line-height: 1.8;
  letter-spacing: 0;
  font-size: 1rem;
  min-height: 100vh;
  color: #1f2121;
  background-color: #a3adbd;
  background-repeat: no-repeat;
  background-image: linear-gradient(#1D2D3D, #3D5666 10vh, #B8C3CC 30vh, #C7CDD1 80vh, #8697A5);
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important; }
  @media print {
    body {
      font-size: 14pt;
      background: white !important;
      color: black; } }

/*
// The FONT divide, which sections get
// handwriting and which are Sans
//
// mixin args: font(font-family, letter-spacing, line-height)
// ---------------------------
.home,
.photo,
//.travel,
.travel figcaption,
//.project.project-family,
.swatches {
	//@include font($fontHand, 0.1rem, 2.0);
	//@include font-size('hand');
	
	
}

.astro,
.travel,
.project,
.contact,
.error,
.swatches {
	//@include font($fontSans, 0.0rem, 1.8);
	//@include font-size('sans');
}
*/
.error main {
  min-height: 70vh; }

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.2; }

h1 {
  font-size: 2.75rem; }

h2 {
  font-size: 2rem; }

h3 {
  font-size: 1.6rem; }

h4 {
  font-size: 1.4rem; }

h5 {
  font-size: 1.2rem; }

h6 {
  font-size: 1rem; }

h1 {
  text-align: center;
  margin: 0;
  /*@include respond-below(sm) {
  	grid-column: 1 / span 1;
  }
  @include respond-between(sm, md) {
  	grid-column: 1 / span 2;
  }
  @include respond-between(md, lg) {
  	grid-column: 1 / span 4;
  }
  @include respond-between(lg, xl) {
  	grid-column: 1 / span 8;
  }
  @include respond-above(xl) {
  	grid-column: 1 / span 12;
  }*/ }

h2,
h3 {
  margin-bottom: 0.5rem; }

h4,
h5,
h6 {
  margin-bottom: 0.25rem; }

a:link {
  color: #0a57b8;
  text-decoration: none; }
  @media print {
    a:link {
      color: black; } }
a:visited {
  color: rgba(120, 79, 230, 0.9); }
  @media print {
    a:visited {
      color: black; } }
a:hover, a:focus {
  color: #b8692e;
  transition: color 0.25s ease;
  opacity: 1; }
a:active {
  color: #8f0000; }

@media print {
  p {
    page-break-inside: avoid;
    line-height: 1.5; } }

main p,
main ul,
main ol,
main dl {
  margin-bottom: 1rem; }

main p:last-child,
main li:last-child,
main dd:last-child {
  margin-bottom: 0; }

.error-page main {
  min-height: 1200px; }

.tagline {
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center; }

.metainfo {
  font-size: 0.9rem;
  color: #3d3d3d;
  margin-left: 1.5rem;
  line-height: 1.4; }
  .metainfo p {
    margin-bottom: 0; }

.stealth {
  display: none; }

/*
.numerator,
.denominator {
	font-size: 0.6rem;
	position: relative;
	left: -0.1rem;
}
.numerator {
	vertical-align: super;
	top: 0rem;
}
.denominator {
	vertical-align: sub;
	bottom: 0.1rem;
}
*/
/*
.footnotes {
	font-size: 0.8rem;
	line-height: 1.4;
	margin: 2rem 2rem;
}

.footnote-mark {
	vertical-align: super;
	font-size: 0.7rem;
	text-decoration: none;
}
*/
.units {
  font-weight: 500;
  font-size: 0.75rem; }

.fileinfo {
  font-size: 0.8rem;
  color: #666669; }

.fileinfo:before {
  content: "("; }

.fileinfo:after {
  content: ")"; }

.indent {
  margin-left: 1.5rem; }

span[lang] {
  font-style: italic; }

.excise {
  text-decoration: line-through; }

li {
  margin-bottom: 1rem; }

ul.bulleted {
  list-style-type: disc;
  margin-left: 2rem; }

.prominent-list {
  margin-left: 1.5rem; }

ol.numbered {
  margin-left: 1.5rem;
  counter-reset: item; }
  ol.numbered li {
    position: relative; }
  ol.numbered li::before {
    font-size: inherit;
    content: counter(item,decimal) ". ";
    counter-increment: item;
    position: absolute;
    left: -1.5rem; }

/*** FIX These styles:
ol.lettered-lowercase {
	margin-left: 2rem;
	counter-reset: item;
}
ol.lettered-lowercase > li {
	position: relative;
    //margin:0 0 6px 2em; // Give each list item a left margin to make room for the numbers 
    //padding:4px 8px; // Add some spacing around the content 
    padding-bottom: 1rem;
}
ol.lettered-lowercase > li::before {
	font-size: 1rem;
	content: counter(item, lower-alpha) ') ';
	counter-increment: item;
	position: absolute;
	//top: -0.5rem;
    left: -1.5rem;
}
*/
dt {
  font-weight: 700;
  margin-top: 1rem; }

dt:first-child {
  margin-top: 0; }

.descriptive {
  margin-left: 2rem;
  color: #666669; }

.descriptive p {
  margin-bottom: 0;
  line-height: 1.4; }

.attention p {
  font-size: 0.9rem;
  line-height: 1.4;
  margin-left: 1.5rem;
  margin-left: 1rem; }

.breadcrumb {
  text-align: right;
  padding-right: 0.5rem;
  margin-bottom: 0;
  line-height: 1; }
  .breadcrumb li {
    display: inline;
    font-family: "Source Sans Pro", sans-serif;
    letter-spacing: 0.15rem;
    line-height: 1;
    font-size: 0.8rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.075rem;
    color: #e6ebf0;
    margin-bottom: 0; }
  .breadcrumb li::after {
    content: "\2002\00BB\2002"; }
  .breadcrumb li:last-child::after {
    content: ""; }

.breadcrumb a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .breadcrumb a:link {
      color: black; } }
.breadcrumb a:visited {
  color: #e6ebf0; }
  @media print {
    .breadcrumb a:visited {
      color: black; } }
.breadcrumb a:hover, .breadcrumb a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.breadcrumb a:active {
  color: #8f0000; }

time {
  display: block;
  font-family: "Source Sans Pro", sans-serif;
  letter-spacing: 0.2rem;
  line-height: 1;
  font-weight: 200;
  letter-spacing: 0.075rem;
  color: #1f2121;
  text-align: right;
  padding-right: 0.5rem;
  margin-bottom: 0.25rem; }
  @media (max-width: 478px) {
    time {
      font-size: 1.75rem; } }
  @media (min-width: 479px) {
    time {
      font-size: 2.25rem; } }

table {
  font-size: 0.8rem;
  margin-bottom: 1rem; }
  @media print {
    table {
      border-bottom: 1px solid black; } }
  table thead {
    text-align: left; }
    @media print {
      table thead {
        border-bottom: 1px solid black; } }
  table th {
    line-height: 1.4; }
  @media (max-width: 766px) {
    table td,
    table th {
      padding: 0.2rem 0.2rem; } }
  @media (min-width: 767px) {
    table td,
    table th {
      padding: 0.2rem 0.5rem; } }

/*
 * header.scss
 *
 * A scss file for the header layout styles in the theme.
 * 
 * CREATED: April 2020
 */
.skip-to-content a:focus {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: top 0.1s ease-in;
  transition: top 0.1s ease-in;
  z-index: 300; }

.skip-to-content a {
  font-size: 0.8rem;
  padding: 0.25rem 0.5rem;
  background: #b0b3b5;
  position: absolute;
  top: -50px;
  left: 0;
  border-right: 2px solid #334f6e;
  border-bottom: 2px solid #334f6e;
  border-bottom-right-radius: 20px;
  -webkit-transition: top 1s ease-out;
  transition: top 1s ease-out;
  z-index: 300; }

@media print {
  .skip-to-content {
    display: none; } }
@media (max-width: 320px) {
  .title-container {
    margin-left: 50px; } }
@media (min-width: 321px) and (max-width: 478px) {
  .title-container {
    margin-left: 55px; } }

.site-title {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0rem;
  line-height: 1.6;
  color: #fa8f38;
  text-align: center;
  margin: 0.5rem 0; }
  @media (max-width: 320px) {
    .site-title {
      font-size: 1.15rem; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .site-title {
      font-size: 1.20rem; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .site-title {
      font-size: 1.1rem; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .site-title {
      font-size: 1.5rem;
      letter-spacing: 0.1rem; } }
  @media (min-width: 991px) {
    .site-title {
      font-size: 1.75rem;
      letter-spacing: 0.1rem; } }

.site-title a:link {
  color: #fa8f38;
  text-decoration: none; }
  @media print {
    .site-title a:link {
      color: black; } }
.site-title a:visited {
  color: #fa8f38; }
  @media print {
    .site-title a:visited {
      color: black; } }
.site-title a:hover, .site-title a:focus {
  color: #b8692e;
  transition: color 0.25s ease;
  opacity: 1; }
.site-title a:active {
  color: #fabf94; }

.background-image .site-header {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 30%, rgba(0, 0, 0, 0)); }

/*
 * footer.scss
 *
 * A scss file for the footer layout styles in the theme.
 * 
 * CREATED: April 2020
 */
.subsite-nav {
  font-size: 1.25rem;
  font-weight: 700; }
  .subsite-nav .grid-left p {
    text-align: left;
    padding-left: 1.5rem; }
  .subsite-nav .grid-right p {
    text-align: right;
    padding-right: 1.5rem; }

.site-footer {
  padding-bottom: 0.75rem;
  text-align: center; }
  .site-footer .copyright {
    font-size: 0.65rem;
    color: #e6ebf0;
    margin-bottom: 0; }
    @media print {
      .site-footer .copyright {
        color: black;
        font-size: 0.7rem; } }

/*
 * cover.scss
 *
 * A scss file for the cover pages.
 * 
 * CREATED: September 2020
 */
/*   Probably getting rid of these White-bloc titles???

// The white, block letter titles
.cover main h1,
.cover-home .home-index h2 {
	letter-spacing: 0.05em;
	text-shadow: $textShadowBlock;
	justify-self: center;
	color: $neutralLight;
	
	@include respond-below(xs) {
		font-size: $h1size * 1;
	}
	@include respond-between(xs, sm) {
		font-size: $h1size * 1.1;
	}
	@include respond-between(sm, md) {
		font-size: $h1size * 1.4;
	}
	@include respond-above(md) {
		font-size: $h1size * 1.75;
	}
}

*/
body.home {
  background-image: url("/media/sitewide/20160329-MS_160329_8015-edit-lg.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover; }

.home .image-credit {
  line-height: 1;
  font-size: 0.6rem;
  color: #b0b3b5;
  position: fixed;
  bottom: 0;
  right: 0;
  margin: 0.5rem; }

.home main {
  min-height: 90vh; }

.home h1 {
  display: none; }

.home-index a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .home-index a:link {
      color: black; } }
.home-index a:visited {
  color: #e6ebf0; }
  @media print {
    .home-index a:visited {
      color: black; } }
.home-index a:hover, .home-index a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.home-index a:active {
  color: #8f0000; }

@media (max-width: 766px) {
  .home ul.home-index {
    text-align: center; } }
@media (min-width: 767px) {
  .home ul.home-index {
    text-align: left; } }
@media (max-width: 320px) {
  .home ul.home-index {
    margin-top: 30vh; } }
@media (min-width: 321px) and (max-width: 478px) {
  .home ul.home-index {
    margin-top: 30vh; } }
@media (min-width: 479px) and (max-width: 766px) {
  .home ul.home-index {
    margin-top: 30vh; } }
@media (min-width: 767px) and (max-width: 990px) {
  .home ul.home-index {
    margin-top: 20vh; } }
@media (min-width: 991px) and (max-width: 1199px) {
  .home ul.home-index {
    margin-top: 15vh; } }
@media (min-width: 1200px) {
  .home ul.home-index {
    margin-top: 15vh; } }

body.home h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.2rem;
  line-height: 2;
  font-size: 1.5rem;
  margin: 0; }

@media (max-width: 766px) {
  ul.home-index li {
    margin-bottom: 2rem; } }
@media (min-width: 767px) {
  ul.home-index li:nth-of-type(1) {
    transform: translate(1.5rem, -1rem) rotate(-4deg); }
  ul.home-index li:nth-of-type(2) {
    transform: translate(3.5rem, -1.5rem) rotate(-8deg); }
  ul.home-index li:nth-of-type(3) {
    transform: translate(5rem, -2rem) rotate(-12deg); }
  ul.home-index li:nth-of-type(4) {
    transform: translate(7.5rem, -3rem) rotate(-16deg); } }

/*
 * astronomy.scss
 *
 * CREATED: April 2020
 */
body.astro.index {
  background-image: url("/media/astronomy/pia23810-crop.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  min-height: 90vh; }

.astro.index a:link {
  color: #fa8f38;
  text-decoration: none; }
  @media print {
    .astro.index a:link {
      color: black; } }
.astro.index a:visited {
  color: #fa8f38; }
  @media print {
    .astro.index a:visited {
      color: black; } }
.astro.index a:hover, .astro.index a:focus {
  color: #fabf94;
  transition: color 0.25s ease;
  opacity: 1; }
.astro.index a:active {
  color: #8f0000; }

body.astro.index h2 {
  font-size: 1.5rem; }

.astro-videos h2 {
  margin-top: 2rem; }

.astro-videos h2:first-child {
  margin-top: 0; }

.astro-videos p {
  font-size: 0.8rem;
  line-height: 1.4;
  margin-bottom: 0.35rem; }

.astro-videos .iframe-container {
  margin-top: 0; }

.astro-cover-container {
  border-radius: 60px;
  color: #e6ebf0;
  padding: 2rem 2.5rem;
  background-image: radial-gradient(farthest-corner at 40px 40px, rgba(1, 0, 0, 0.6) 0%, rgba(1, 0, 0, 0) 100%); }

.astro-shortbio h2 {
  margin-left: 1rem;
  line-height: 1.2;
  margin-bottom: 1rem; }

.astro-videos {
  padding-left: 0.5rem; }
  .astro-videos h2 {
    margin-bottom: 0; }

.cv main {
  line-height: 1.4; }
  @media (min-width: 767px) {
    .cv main {
      padding: 0 10vw; } }

.cv h2 {
  text-align: center;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid #b8692e; }

h2.contact-head {
  text-align: left; }

body.astro.cv h3 {
  margin-bottom: 0rem; }

body.astro.cv h4 {
  font-size: 1.2rem;
  margin-bottom: 0rem; }

.cv li p {
  margin-bottom: 0rem; }

.cv figure {
  margin: 0 auto; }
  @media (max-width: 320px) {
    .cv figure {
      width: 100%; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .cv figure {
      width: 90%; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .cv figure {
      width: 70%; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .cv figure {
      width: 100%; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .cv figure {
      width: 80%; } }
  @media (min-width: 1200px) {
    .cv figure {
      width: 70%; } }

.cv figcaption {
  color: #666669;
  margin-top: 0.15rem; }

.cv address {
  line-height: 1.4; }

.cv .publications h3,
.cv .memberships h3 {
  font-size: 1.2rem; }

.cv .publications p {
  font-size: 0.9rem; }

.cv .memberships li {
  margin-bottom: 0.5rem; }

/*
 * photography.scss
 *
 * A scss file for the Photography section.
 * 
 * CREATED: April 2020
 */
/*
<section class="grid-center whole">
	<h2></h2>
	<div class="sub-grid">
		<div class="grid-left half">
			<div class="photo-grid solo">
				<?php  ?>
			</div>
		</div>
		<div class="grid-right half">
			<div class="photo-grid solo">
				<?php  ?>
			</div>
		</div>
	</div>
</section>
*/
@media (min-width: 991px) {
  .blog.photo .grid-center.whole > p {
    width: 80%;
    margin-left: auto;
    margin-right: auto; } }

.photo figcaption p {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 0.7rem;
  width: 95%;
  margin: 0.25rem auto 0 auto; }

.photo-list {
  display: grid;
  grid-gap: 40px;
  padding: 20px;
  border-radius: 8px;
  border: 1px solid #1f2121;
  box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.3);
  background-color: rgba(31, 33, 33, 0.7);
  margin-bottom: 0; }
  @media (max-width: 320px) {
    .photo-list {
      grid-template-columns: repeat(1, 1fr); } }
  @media (min-width: 321px) and (max-width: 478px) {
    .photo-list {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 479px) and (max-width: 990px) {
    .photo-list {
      grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 991px) {
    .photo-list {
      grid-template-columns: repeat(4, 1fr); } }
  .photo-list li {
    margin: 0; }
  .photo-list img {
    border: 1px solid #666669;
    box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.3);
    display: block; }

body.photo.photo-cover h3 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0;
  line-height: 1;
  font-size: 1rem;
  transform: rotate(-5deg); }

.cover-blog h3 {
  text-align: right;
  margin-top: 2rem;
  margin-bottom: 0; }

.cover-portfolio h3 {
  margin-left: 1rem;
  margin-bottom: 1.25rem; }

@media (max-width: 990px) {
  .photo-cover .photo-list {
    grid-gap: 10px;
    padding: 10px; } }
@media (min-width: 991px) {
  .photo-cover .photo-list {
    grid-gap: 15px;
    padding: 15px; } }

@media (max-width: 320px) {
  .cover-blog .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 321px) and (max-width: 766px) {
  .cover-blog .photo-list {
    grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 767px) {
  .cover-blog .photo-list {
    grid-template-columns: repeat(6, 1fr); } }

@media (max-width: 766px) {
  .cover-portfolio .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 767px) {
  .cover-portfolio .photo-list {
    grid-template-columns: repeat(4, 1fr); } }

.photo.portfolio h2 {
  margin-top: 1rem; }

.photo.portfolio figure {
  margin-top: 0;
  margin-bottom: 0; }

@media (min-width: 767px) {
  .photo-blog-index h1 {
    text-align: left;
    margin-left: 4rem; } }
@media (min-width: 767px) and (max-width: 990px) {
  .photo-blog-index .blog-index-intro p {
    margin-left: 30%; } }
@media (min-width: 991px) {
  .photo-blog-index .blog-index-intro p {
    margin-left: 30%; } }
.photo-blog-index h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0;
  line-height: 1;
  font-size: 1.6rem; }
  @media (max-width: 320px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -0.5rem) rotate(-5deg); } }
  @media (min-width: 321px) and (max-width: 478px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -0.75rem) rotate(-5deg); } }
  @media (min-width: 479px) and (max-width: 766px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -1.25rem) rotate(-5deg); } }
  @media (min-width: 767px) and (max-width: 990px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -1.5rem) rotate(-5deg); } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -1.75rem) rotate(-5deg); } }
  @media (min-width: 1200px) {
    .photo-blog-index h2 {
      transform: translate(1rem, -2rem) rotate(-5deg); } }

.photo-blog-index .photo-list {
  grid-gap: 10px;
  padding: 10px; }
  @media (max-width: 478px) {
    .photo-blog-index .photo-list {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 479px) and (max-width: 766px) {
    .photo-blog-index .photo-list {
      grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 767px) and (max-width: 990px) {
    .photo-blog-index .photo-list {
      grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .photo-blog-index .photo-list {
      grid-template-columns: repeat(5, 1fr); } }
  @media (min-width: 1200px) {
    .photo-blog-index .photo-list {
      grid-template-columns: repeat(6, 1fr); } }

/*
.photo .grid-center.whole figure,
.photo .grid-center.whole .image-overlay figure {
	margin-left: auto;
	margin-right: auto;
}
*/
/*
 * family-photos.scss
 *
 * CREATED: April 2020
 */
.showcase {
  height: 400px;
  border-radius: 10px;
  margin: 1rem; }

body.project.index h2 {
  font-size: 1.6rem;
  line-height: 1.2;
  padding: 0.5rem 1rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 10%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.project.index main a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .project.index main a:link {
      color: black; } }
.project.index main a:visited {
  color: #e6ebf0; }
  @media print {
    .project.index main a:visited {
      color: black; } }
.project.index main a:hover, .project.index main a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.project.index main a:active {
  color: #8f0000; }

.showcase.project-cover-family {
  background: url("/media/projects/19180101-B3-1-Edit-lg.jpg");
  background-repeat: no-repeat;
  background-size: cover; }

.showcase.project-digital-universe {
  background: url("/media/astronomy/20160330-MS_160330_8074-edit-md.jpg");
  background-repeat: no-repeat;
  background-position: 0% 60%;
  background-size: cover; }

.showcase.project-health-tracker {
  background: url("/media/projects/activityCharts-lg.png");
  background-repeat: no-repeat;
  background-size: cover; }

.showcase.project-subway-map {
  background: url("/media/projects/GEdowntown-lg.jpg");
  background-repeat: no-repeat;
  background-size: cover; }

.showcase.project-classical-music {
  background: url("/media/projects/PLClassicalInstruments-lg.png");
  background-repeat: no-repeat;
  background-size: cover; }

body.project-family-cover {
  background-color: #0f120a;
  background-image: none; }

.project-family-cover main {
  background-image: radial-gradient(ellipse at top left, rgba(0, 0, 0, 0.7) 5%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0) 60%), radial-gradient(ellipse at bottom left, rgba(0, 0, 0, 0.7) 5%, rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0) 40%), url("/media/projects/family-albums/19290101-B35-1-Edit-lg.jpg");
  background-position: center 100px;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  min-height: 1000px; }

/*
// A transparent background for those pages with background images
// that are below the site title, like home, astro index, etc.
.project-family-cover.background-image .site-header {
	background-image: linear-gradient(
		to bottom, 
		rgba(0.11, 0.12, 0.09, 0.9) 30%, 
		rgba(0.11, 0.12, 0.09, 0.0)
	);
}
*/
body.project-family-cover * {
  color: #e6ebf0; }

.project-family-cover a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .project-family-cover a:link {
      color: black; } }
.project-family-cover a:visited {
  color: #e6ebf0; }
  @media print {
    .project-family-cover a:visited {
      color: black; } }
.project-family-cover a:hover, .project-family-cover a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.project-family-cover a:active {
  color: #8f0000; }

@media (min-width: 479px) {
  .project-family-cover h1 {
    font-size: 2.5rem;
    text-align: left;
    margin-top: -1.5rem;
    margin-left: 1rem; } }

@media (max-width: 478px) {
  nav.family-albums {
    padding-top: 6rem;
    padding-bottom: 8rem;
    background-image: radial-gradient(ellipse farthest-side, rgba(0, 0, 0, 0.7) 5%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 70%); } }
@media (min-width: 479px) {
  nav.family-albums {
    padding-bottom: 4rem; } }

@media (max-width: 478px) {
  nav.family-albums ul {
    text-align: center; } }
@media (min-width: 479px) {
  nav.family-albums ul {
    text-align: left;
    margin-left: 3rem; } }

nav.family-albums ul li {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1rem; }

/*
.showcase-background.photos-albums {
	background: url('/media/projects/family-albums/B13-2-Edit.jpg');
	background-size: 600px auto;
	@include respond-between(sm, md) {
		background-size: 800px auto;
	}
	@include respond-between(md, xl) {
		background-size: 1200px auto;
	}
	@include respond-above(xl) {
		background-size: 1500px auto;
	}
}

.showcase-background.family-tree {
	background: url('/media/projects/family-albums/1955R01-02-lg.jpg');
	background-size: 500px auto;
	@include respond-between(xs, sm) {
		background-size: 700px auto;
	}
	@include respond-between(sm, md) {
		background-size: 770px auto;
	}
	@include respond-between(md, lg) {
		background-size: 1000px auto;
	}
	@include respond-between(lg, xl) {
		background-size: 1200px auto;
	}
	@include respond-above(xl) {
		background-size: 1400px auto;
	}

}
*/
.album-dates {
  font-weight: 200;
  line-height: 1; }
  @media (max-width: 766px) {
    .album-dates {
      font-size: 1.5rem;
      margin-top: -1.25rem; } }
  @media (min-width: 767px) {
    .album-dates {
      font-size: 2.5rem;
      text-align: right; } }

.album-downloads {
  margin-top: -1rem; }

.album-downloads p {
  margin-bottom: 0;
  margin-left: 1.5rem; }

@media (max-width: 478px) {
  .project-family-photo-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) and (max-width: 990px) {
  .project-family-photo-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 991px) {
  .project-family-photo-index .photo-list {
    grid-template-columns: repeat(3, 1fr); } }

.project-family-photo-index .photo-list li {
  border-radius: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .project-family-photo-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .project-family-photo-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .project-family-photo-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .project-family-photo-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .project-family-photo-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .project-family-photo-index .photo-list li {
      height: 300px; } }

.project-family-photo-index .photo-list h3 {
  font-size: 1.2rem;
  line-height: 1.2;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 40%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.project-family-photo-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .project-family-photo-index .photo-list a:link {
      color: black; } }
.project-family-photo-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .project-family-photo-index .photo-list a:visited {
      color: black; } }
.project-family-photo-index .photo-list a:hover, .project-family-photo-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.project-family-photo-index .photo-list a:active {
  color: #8f0000; }

.project-family-photo-index .schuyler-flatts {
  background-image: url("/media/projects/family-albums/photos/19480101-B2-2-sm.jpg"); }

.project-family-photo-index .watervliet {
  background-image: url("/media/projects/family-albums/photos/20140126-SB8-3-sm.jpg"); }

.project-family-photo-index .troy {
  background-image: url("/media/projects/family-albums/photos/20140710-DSC_5486-sm.jpg"); }

.project-family-photo-index .cemetery {
  background-image: url("/media/projects/family-albums/photos/20130608-DSC_0806-sm.jpg"); }

.classical-music span {
  font-style: italic; }

.classical-music ul.examples {
  margin-left: 1.5rem; }

.classical-music ul.examples > li {
  margin-bottom: 0.5rem;
  line-height: 1.2; }

.classical-music ul.examples > li:last-child {
  margin-bottom: 0; }

.download-container {
  margin-left: 1.5rem; }

.download-container .button {
  margin-left: 1.5rem; }

/*
 * travels.scss
 *
 * A scss file for the cover pages.
 * 
 * CREATED: April 2021
 */
@media (min-width: 991px) {
  .travel .grid-center.whole > p {
    width: 80%;
    margin-left: auto;
    margin-right: auto; } }

.travel figcaption p {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 0.7rem;
  width: 95%;
  margin: 0.25rem auto 0 auto; }

.travel figcaption p {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 0.7rem;
  width: 95%;
  margin: 0.25rem auto 0 auto; }

.travel-toc ol {
  font-size: 1.15rem; }
  @media (max-width: 766px) {
    .travel-toc ol {
      margin: 0 1.5rem; } }
  @media (min-width: 767px) {
    .travel-toc ol {
      margin: 0 3rem; } }

.travel-toc li {
  margin-bottom: 0.35rem; }

.expenses {
  margin-left: auto;
  margin-right: auto; }
  .expenses th {
    text-align: left; }
  .expenses td:first-child {
    padding-left: 2rem; }
  .expenses td:last-child {
    padding-left: 2rem; }
  .expenses .category td {
    padding-left: 5rem; }

@media (max-width: 478px) {
  .travels-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) and (max-width: 990px) {
  .travels-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 991px) {
  .travels-index .photo-list {
    grid-template-columns: repeat(4, 1fr); } }

.travels-index .photo-list li {
  border-radius: 10px;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .travels-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .travels-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .travels-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .travels-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .travels-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .travels-index .photo-list li {
      height: 300px; } }

.travels-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.01rem;
  line-height: 1.4;
  font-size: 0.75rem;
  line-height: 1.8;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.travels-index .photo-list p {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.01rem;
  line-height: 1.4;
  font-size: 0.6rem;
  color: #e6ebf0;
  position: absolute;
  bottom: 0px;
  padding: 0.25rem 0.5rem;
  width: 100%;
  text-align: right;
  border-radius: 10px;
  background-image: radial-gradient(at bottom right, rgba(0, 0, 0, 0.7) 10%, rgba(0, 0, 0, 0) 60%); }

.travels-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .travels-index .photo-list a:link {
      color: black; } }
.travels-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .travels-index .photo-list a:visited {
      color: black; } }
.travels-index .photo-list a:hover, .travels-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.travels-index .photo-list a:active {
  color: #8f0000; }

.travels-index .adirondacks2021 {
  background-image: url("/media/photography/blog/2021/20210722-IMG_5342-sm.jpg"); }

.travels-index .coastal2021 {
  background-image: url("/media/photography/blog/2021/20210118-IMG_4855-sm.jpg"); }

.travels-index .camping2020 {
  background-image: url("/media/photography/blog/2020/20200719-DSC_5362-sm.jpg"); }

.travels-index .hawaii2020 {
  background-image: url("/media/photography/blog/2020/20200110-DSC_4878-sm.jpg"); }

.travels-index .washington2019 {
  background-image: url("/media/photography/blog/2019/20191102-IMG_4103-sm.jpg"); }

.travels-index .camping2019 {
  background-image: url("/media/photography/blog/2019/20190718-_DSC3621-HDR-sm.jpg"); }

.travels-index .germany2019 {
  background-image: url("/media/photography/blog/2019/20190622-_DSC3423-sm.jpg"); }

.travels-index .miami2018 {
  background-image: url("/media/photography/blog/2018/20181027-_DSC2495-HDR-sm.jpg"); }

.travels-index .southwest {
  background-image: url("/media/photography/blog/2018/20180716-_DSC2110-HDR-sm.jpg"); }

.travels-index .hawaii2018 {
  background-image: url("/media/photography/blog/2018/20180210-_DSC0579-sm.jpg"); }

.travels-index .eclipse2017 {
  background-image: url("/media/travels/2017-eclipse-trip/20170817-_DSC9904-sm.jpg"); }

.travels-index .camping2016 {
  background-image: url("/media/photography/blog/2016/20160708-IMG_2074-sm.jpg"); }

.travels-index .adirondacks2015 {
  background-image: url("/media/photography/blog/2015/20150724-IMG_1556-Pano-sm.jpg"); }

.travels-index .paris2015 {
  background-image: url("/media/photography/blog/2015/20150714-DSC_6645-sm.jpg"); }

.travels-index .camping2014 {
  background-image: url("/media/photography/blog/2014/20140815-DSC_5754-sm.jpg"); }

.travels-index .rome2013 {
  background-image: url("/media/photography/blog/2013/20130904-DSC_3784-sm.jpg"); }

.travels-index .uk2013 {
  background-image: url("/media/photography/blog/2013/20130817-DSC_1186-md.jpg"); }

.travels-index .paris2012 {
  background-image: url("/media/photography/blog/2012/20121021-DSC_7391-sm.jpg"); }

.travels-index .sanfran2012 {
  background-image: url("/media/photography/blog/2012/20120824-DSC_4517-sm.jpg"); }

.travels-index .camping2012 {
  background-image: url("/media/photography/blog/2012/20120713-DSC_4140-sm.jpg"); }

.travels-index .southafrica2010 {
  background-image: url("/media/photography/blog/2010/20100329-DSC_4629-sm.jpg"); }

.travels-index .europe2008 {
  background-image: url("/media/travels/2008-europe-with-family/20080522-DSC06933-sm.jpg"); }

.travels-index .greece2007 {
  background-image: url("/media/travels/2007-greece-by-land/20071013-DSC03013-sm.jpg"); }

.travels-index .moving2006 {
  background-image: url("/media/travels/2006-moving-east/20060725-m060-sm.jpg"); }

.travels-index .spain2004 {
  background-image: url("/media/travels/2004-spain-morocco/20040719-ABBOTT0-R3-021-9-sm.jpg"); }

.travels-index .east-west1997 {
  background-image: url("/media/travels/1997-east-meets-west/19970730-1997R01-10-sm.jpg"); }

.travels-index .new-england1996 {
  background-image: url("/media/travels/1996-new-england/19960608-1996R01-21-sm.jpg"); }

.travels-index .new-england1995 {
  background-image: url("/media/travels/1995-boston-maine-canada/19950704-1995R01-23-sm.jpg"); }

.travels-index .amertour1994 {
  background-image: url("/media/travels/1994-my-american-tour/19940805-1994BA-R05-01-sm.jpg"); }

@media (min-width: 767px) {
  .amtour-map {
    float: right;
    shape-outside: url("/media/travels/1994-my-american-tour/1994-my-american-tour.png"); } }

.travel .grid-center.whole > p.amtour-intro {
  width: 100%; }

@media (min-width: 767px) {
  .amtour-intro {
    position: relative;
    top: 3%;
    margin-top: 50%;
    padding-bottom: 2rem; } }

table.stlouis-arch {
  margin-left: auto;
  margin-right: auto; }
  table.stlouis-arch th {
    text-align: left; }

@media (min-width: 767px) {
  .ne-canada-map {
    float: left;
    shape-outside: url("/media/travels/1995-boston-maine-canada/1995-map-2x.png");
    width: 90%; } }

@media (min-width: 767px) {
  .ne-canada-intro {
    position: relative;
    top: 10%;
    margin-top: 40%;
    font-size: 1.2rem; } }

@media (min-width: 767px) {
  .ne96-map {
    float: left;
    shape-outside: url("/media/travels/1995-boston-maine-canada/1995-map-2x.png");
    width: 80%; } }

@media (min-width: 767px) {
  .ne96-intro {
    position: relative;
    top: 5%;
    margin-top: 30%;
    font-size: 1.2rem; } }

.east-meets-west-index .photo-list {
  grid-template-columns: repeat(1, 1fr); }

.east-meets-west-index .photo-list li {
  border-radius: 10px;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .east-meets-west-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .east-meets-west-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .east-meets-west-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .east-meets-west-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .east-meets-west-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .east-meets-west-index .photo-list li {
      height: 300px; } }

.east-meets-west-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 1rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.east-meets-west-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .east-meets-west-index .photo-list a:link {
      color: black; } }
.east-meets-west-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .east-meets-west-index .photo-list a:visited {
      color: black; } }
.east-meets-west-index .photo-list a:hover, .east-meets-west-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.east-meets-west-index .photo-list a:active {
  color: #8f0000; }

.east-meets-west-index .pennsylvania {
  background-image: url("/media/travels/1997-east-meets-west/19970729-1997R01-07-lg.jpg");
  background-position: 0% 80%; }

.east-meets-west-index .new-york {
  background-image: url("/media/travels/1997-east-meets-west/19970802-1997R02-15-Pano-lg.jpg");
  background-position: 0% 20%; }

.east-meets-west-index .kansas {
  background-image: url("/media/travels/1997-east-meets-west/19970806-1997R02-17-lg.jpg");
  background-position: 0% 50%; }

.east-meets-west-index .southern-colorado {
  background-image: url("/media/travels/1997-east-meets-west/19970808-1997R03-06-Edit-lg.jpg");
  background-position: 0% 0%; }

.east-meets-west-index .utah {
  background-image: url("/media/travels/1997-east-meets-west/19970810-1997R04-09-Edit-lg.jpg");
  background-position: 100% 80%; }

.east-meets-west-index .central-colorado {
  background-image: url("/media/travels/1997-east-meets-west/19970811-1997R05-15-lg.jpg");
  background-position: 0% 30%; }

@media (min-width: 767px) {
  .east-west-map {
    float: right;
    shape-outside: url("/media/travels/1997-east-meets-west/1997-east-meets-west.png"); } }

@media (min-width: 767px) {
  .east-west-intro {
    position: relative;
    top: 5%;
    margin-top: 30%; } }

@media (max-width: 478px) {
  .spain-morocco-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) and (max-width: 990px) {
  .spain-morocco-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 991px) {
  .spain-morocco-index .photo-list {
    grid-template-columns: repeat(3, 1fr); } }

.spain-morocco-index .photo-list li {
  border-radius: 10px;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .spain-morocco-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .spain-morocco-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .spain-morocco-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .spain-morocco-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .spain-morocco-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .spain-morocco-index .photo-list li {
      height: 300px; } }

.spain-morocco-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 1rem;
  line-height: 1.8;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.spain-morocco-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .spain-morocco-index .photo-list a:link {
      color: black; } }
.spain-morocco-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .spain-morocco-index .photo-list a:visited {
      color: black; } }
.spain-morocco-index .photo-list a:hover, .spain-morocco-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.spain-morocco-index .photo-list a:active {
  color: #8f0000; }

.spain-morocco-index .valencia {
  background-image: url("/media/travels/2004-spain-morocco/20040708-ABBOTT0-R4-023-10-sm.jpg"); }

.spain-morocco-index .barcelona {
  background-image: url("/media/travels/2004-spain-morocco/20040711-ABBOTT0-R1-023-10-Pano-sm.jpg"); }

.spain-morocco-index .casablanca {
  background-image: url("/media/travels/2004-spain-morocco/20040715-ABBOTT0-R5-031-14-sm.jpg"); }

.spain-morocco-index .marrakech {
  background-image: url("/media/travels/2004-spain-morocco/20040717-ABBOTT0-R5-047-22-sm.jpg"); }

.spain-morocco-index .fes {
  background-image: url("/media/travels/2004-spain-morocco/20040720-ABBOTT0-R6-011-4-sm.jpg"); }

.spain-morocco-index .madrid {
  background-image: url("/media/travels/2004-spain-morocco/20040723-ABBOTT0-R6-019-8-sm.jpg"); }

@media (min-width: 767px) {
  .spain-morocco-map {
    float: right;
    shape-outside: url("/media/travels/2004-spain-morocco/2004-spain-morocco-4x.png"); } }

.travel .grid-center.whole > p.spain-morocco-intro {
  width: 100%; }

@media (min-width: 767px) {
  .spain-morocco-intro {
    margin-top: 12%; } }

.spain-morocco figcaption {
  display: none; }

@media (max-width: 478px) {
  .moving-east-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) and (max-width: 990px) {
  .moving-east-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 991px) {
  .moving-east-index .photo-list {
    grid-template-columns: repeat(4, 1fr); } }

.moving-east-index .photo-list li {
  border-radius: 10px;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .moving-east-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .moving-east-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .moving-east-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .moving-east-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .moving-east-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .moving-east-index .photo-list li {
      height: 300px; } }

.moving-east-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  font-size: 0.75rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.moving-east-index .photo-list p {
  font-size: 0.7rem;
  color: #e6ebf0;
  position: absolute;
  bottom: 0px;
  padding: 0.25rem 0.5rem;
  width: 100%;
  text-align: right;
  border-radius: 10px;
  background-image: radial-gradient(at bottom right, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0) 80%); }

.moving-east-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .moving-east-index .photo-list a:link {
      color: black; } }
.moving-east-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .moving-east-index .photo-list a:visited {
      color: black; } }
.moving-east-index .photo-list a:hover, .moving-east-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.moving-east-index .photo-list a:active {
  color: #8f0000; }

.moving-east-index .crater-lake {
  background-image: url("/media/travels/2006-moving-east/20060716-ABBOTT1-R1-013-5-sm.jpg"); }

.moving-east-index .redwoods {
  background-image: url("/media/travels/2006-moving-east/20060718-ABBOTT1-R2-019-8-sm.jpg"); }

.moving-east-index .donner-pass {
  background-image: url("/media/travels/2006-moving-east/20060717-ABBOTT1-R1-E026-sm.jpg"); }

.moving-east-index .loneliest-road {
  background-image: url("/media/travels/2006-moving-east/20060720-ABBOTT1-R2-035-16-sm.jpg"); }

.moving-east-index .great-basin {
  background-image: url("/media/travels/2006-moving-east/20060721-ABBOTT1-R2-049-23-sm.jpg"); }

.moving-east-index .bryce-canyon {
  background-image: url("/media/travels/2006-moving-east/20060723-ABBOTT1-R4-007-2-sm.jpg"); }

.moving-east-index .grand-staircase {
  background-image: url("/media/travels/2006-moving-east/20060724-m047-sm.jpg"); }

.moving-east-index .capitol-reef {
  background-image: url("/media/travels/2006-moving-east/20060725-m060-sm.jpg"); }

@media (min-width: 767px) {
  .moving-east-map {
    float: right;
    shape-outside: url("/media/travels/2006-moving-east/2006-moving-east.png"); } }

.travel .grid-center.whole > p.moving-east-intro {
  width: 100%; }

@media (min-width: 767px) {
  .moving-east-intro {
    position: relative;
    top: 5%;
    margin-top: 50%; } }

.greece-index h2 {
  font-size: 1.75rem;
  line-height: 1.4;
  margin-left: 2rem;
  text-indent: -2rem; }

.greece-index figure {
  margin: 0; }

.greece-index .date {
  margin-left: 2rem; }

@media (min-width: 767px) {
  .greece-map {
    float: right;
    shape-outside: url("/media/travels/2007-greece-by-land/2007-greece-2x.png"); } }

.travel .grid-center.whole > p.greece-intro {
  width: 100%; }

@media (min-width: 767px) {
  .greece-intro {
    position: relative;
    top: 10%;
    margin-top: 50%; } }

@media (min-width: 767px) {
  .map-overflow {
    padding-top: 10%; } }

.europe08-family-index h2 {
  margin-top: 1rem; }

@media (max-width: 766px) {
  .europe08-family-index p {
    font-size: 1.5rem;
    margin-top: -0.5rem; } }
@media (min-width: 767px) {
  .europe08-family-index p {
    font-size: 1.5rem;
    text-align: right;
    margin-top: -2.8rem;
    margin-bottom: 2rem; } }

.europe08-family-index figure {
  margin: 0; }

.europe08-family-index h3 {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-top: 1rem;
  margin-left: 2rem;
  text-indent: -2rem; }

.europe08-family-index h3:first-child {
  margin-top: 0; }

@media (max-width: 478px) {
  .south-africa-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) and (max-width: 990px) {
  .south-africa-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 991px) {
  .south-africa-index .photo-list {
    grid-template-columns: repeat(3, 1fr); } }

.south-africa-index .photo-list li {
  border-radius: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .south-africa-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .south-africa-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .south-africa-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .south-africa-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .south-africa-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .south-africa-index .photo-list li {
      height: 300px; } }

.south-africa-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  font-size: 0.8rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.south-africa-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .south-africa-index .photo-list a:link {
      color: black; } }
.south-africa-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .south-africa-index .photo-list a:visited {
      color: black; } }
.south-africa-index .photo-list a:hover, .south-africa-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.south-africa-index .photo-list a:active {
  color: #8f0000; }

.south-africa-index .cape-town {
  background-image: url("/media/travels/2010-south-africa/20100318-DSC_2976-sm.jpg"); }

.south-africa-index .overberg {
  background-image: url("/media/travels/2010-south-africa/20100320-DSC_3141-sm.jpg"); }

.south-africa-index .garden-route {
  background-image: url("/media/travels/2010-south-africa/20100322-DSC_3480-sm.jpg"); }

.south-africa-index .addo {
  background-image: url("/media/travels/2010-south-africa/20100323-DSC_3755-sm.jpg"); }

.south-africa-index .wild-coast {
  background-image: url("/media/travels/2010-south-africa/20100325-DSC_4070-sm.jpg"); }

.south-africa-index .zululand {
  background-image: url("/media/travels/2010-south-africa/20100325-DSC_4121-sm.jpg"); }

.south-africa-index .drakensberg {
  background-image: url("/media/travels/2010-south-africa/20100328-DSC_4579-sm.jpg"); }

.south-africa-index .karoo {
  background-image: url("/media/travels/2010-south-africa/20100331-DSC_4799-sm.jpg"); }

.south-africa-index .winelands {
  background-image: url("/media/travels/2010-south-africa/20100331-DSC_4865-sm.jpg"); }

/*.paris2012 {
	background: url('/media/travels/2012-paris-rendezvous/20121021-DSC_7362-lg.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.paris2012-toc {
	background-image: linear-gradient(
		to right, 
		rgba(0, 0, 0, 0.5) 60%, 
		rgba(0, 0, 0, 0.0)
	);
}
.paris2012 ol {
	margin: 2rem;
}
.paris2012 li {
	font-size: 1rem;
	font-weight: 700;
}
*/
@media (max-width: 766px) {
  .paris12-intro {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    position: relative; } }

@media (min-width: 767px) {
  .paris12-intro-tower {
    float: left;
    shape-outside: url("/media/travels/2012-paris-rendezvous/2012-paris-0.5x.png"); } }

.paris12-intro-chapters h2 {
  font-size: 1.25rem;
  font-style: 700; }

@media (max-width: 766px) {
  ol.paris12-intro-chapters {
    position: absolute;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    transform: skew(-5deg, -13deg);
    /*position: relative;
    top: 4rem;
    left: 4rem;
    right: 1rem;*/ } }

@media (max-width: 320px) {
  ol.paris12-intro-chapters {
    top: 3rem; } }
@media (min-width: 321px) and (max-width: 478px) {
  ol.paris12-intro-chapters {
    top: 4rem; } }
@media (min-width: 479px) and (max-width: 766px) {
  ol.paris12-intro-chapters {
    top: 7rem; } }

@media (min-width: 767px) {
  .paris12-intro-chapters li {
    position: relative;
    top: 4rem;
    left: 5rem;
    transform: skew(-8deg, -13deg); } }

@media (max-width: 478px) {
  .uk-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) {
  .uk-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }

.uk-index .photo-list li {
  border-radius: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .uk-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .uk-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .uk-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .uk-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .uk-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .uk-index .photo-list li {
      height: 300px; } }

.uk-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  font-size: 0.8rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.uk-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .uk-index .photo-list a:link {
      color: black; } }
.uk-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .uk-index .photo-list a:visited {
      color: black; } }
.uk-index .photo-list a:hover, .uk-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.uk-index .photo-list a:active {
  color: #8f0000; }

.uk-index .scotland {
  background-image: url("/media/photography/blog/2013/20130817-DSC_0868-md.jpg"); }

.uk-index .lake-district {
  background-image: url("/media/photography/blog/2013/20130819-DSC_1475-md.jpg"); }

.uk-index .wales {
  background-image: url("/media/photography/blog/2013/20130822-DSC_2062-md.jpg"); }

.uk-index .oxford-bath {
  background-image: url("/media/photography/blog/2013/20130825-DSC_2510-md.jpg"); }

.uk-index .london {
  background-image: url("/media/photography/blog/2013/20130827-DSC_3059-md.jpg"); }

.eclipse-trip-index .photo-list {
  grid-template-columns: repeat(1, 1fr); }

.eclipse-trip-index .photo-list li {
  border-radius: 10px;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .eclipse-trip-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .eclipse-trip-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .eclipse-trip-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .eclipse-trip-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .eclipse-trip-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .eclipse-trip-index .photo-list li {
      height: 300px; } }

.eclipse-trip-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  font-size: 1rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.eclipse-trip-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .eclipse-trip-index .photo-list a:link {
      color: black; } }
.eclipse-trip-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .eclipse-trip-index .photo-list a:visited {
      color: black; } }
.eclipse-trip-index .photo-list a:hover, .eclipse-trip-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.eclipse-trip-index .photo-list a:active {
  color: #8f0000; }

.eclipse-trip-index .colorado {
  background-image: url("/media/travels/2017-eclipse-trip/20170814-_DSC9573-Pano-lg.jpg");
  background-position: 0% 80%; }

.eclipse-trip-index .utah {
  background-image: url("/media/travels/2017-eclipse-trip/20170816-_DSC9747-HDR-lg.jpg");
  background-position: 0% 50%; }

.eclipse-trip-index .wyoming {
  background-image: url("/media/travels/2017-eclipse-trip/20170822-_DSC0028-Pano-lg.jpg");
  background-position: 0% 0%; }

@media (max-width: 478px) {
  .southwest-index .photo-list {
    grid-template-columns: repeat(1, 1fr); } }
@media (min-width: 479px) {
  .southwest-index .photo-list {
    grid-template-columns: repeat(2, 1fr); } }

.southwest-index .photo-list li {
  border-radius: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 320px) {
    .southwest-index .photo-list li {
      height: 250px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .southwest-index .photo-list li {
      height: 300px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .southwest-index .photo-list li {
      height: 225px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .southwest-index .photo-list li {
      height: 300px; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .southwest-index .photo-list li {
      height: 250px; } }
  @media (min-width: 1200px) {
    .southwest-index .photo-list li {
      height: 300px; } }

.southwest-index .photo-list h2 {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  font-size: 0.8rem;
  padding: 0.5rem;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0));
  border-radius: 10px 10px 0 0; }

.southwest-index .photo-list a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .southwest-index .photo-list a:link {
      color: black; } }
.southwest-index .photo-list a:visited {
  color: #e6ebf0; }
  @media print {
    .southwest-index .photo-list a:visited {
      color: black; } }
.southwest-index .photo-list a:hover, .southwest-index .photo-list a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.southwest-index .photo-list a:active {
  color: #8f0000; }

.southwest-index .white-sands {
  background-image: url("/media/photography/blog/2018/20180708-_DSC1585-Pano-md.jpg"); }

.southwest-index .sedona {
  background-image: url("/media/photography/blog/2018/20180712-_DSC1795-md.jpg"); }

.southwest-index .lake-powell {
  background-image: url("/media/photography/blog/2018/20180715-_DSC1872-md.jpg"); }

.southwest-index .navajo-nation {
  background-image: url("/media/photography/blog/2018/20180716-_DSC2043-md.jpg"); }

/*
 * cantact.scss
 *
 * A scss file for the contact page.
 * 
 * CREATED: April 2021
 */
.contact form {
  margin: 0 auto; }
  @media (max-width: 766px) {
    .contact form {
      width: 100%; } }
  @media (min-width: 767px) {
    .contact form {
      width: 80%; } }

.contact fieldset {
  margin-bottom: 2em;
  /*.required {
  	background-image: url("/tyson/media/images/sitewide/formRequired.svg");
  	background-repeat: no-repeat;
  	background-size: 30px;
  	background-position: top -15px right;
  }
  
  .required-image {
  	display: inline;
  	position: relative;
  	top: -22px;
  	left: 0.2rem;
  }*/ }
  .contact fieldset legend {
    /*font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;*/ }
  .contact fieldset label {
    display: block;
    margin-bottom: 1.5em; }

/*
.radio-container {
	display: block;
	position: relative;
	padding-left: 1.25rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
*/
/*
.contact .regarding {
	p {
		font-size: 0.7rem;
		margin-left: 3.5em;
		color: $neutralDarkMid;
	}
	
	label {
		margin-bottom: 0em;
	}
}
*/
/*
.contact input,
.contact textarea,
.contact label {
	font-size: 1.0rem;
}
*/
/*
.contact input[type="text"],
.contact input[type="email"],
.contact textarea {
	display: block;
	width: 100%;
	padding: 0.5em;
	background-color: $neutralLight;
	border-style: solid;
	border-width: 2px;
	border-radius: 0.25em;
	
	&:optional {
		border-color: $neutralLightMid;
	}
	&:required:valid {
		border-color: green;
	}
	&:invalid {
		border-color: red;
	}
}


.contact input[type="text"]:focus,
.contact input[type="email"]:focus,
.contact textarea:focus {
	border-color: $primary;
	box-shadow: 0 0 5px rgba(44, 151, 222, 0.2);
}
*/
/*
.contact input[type=radio] {
	-webkit-transform: translate3d(0, -30%, 0);
	-moz-transform: translate3d(0, -30%, 0);
	-ms-transform: translate3d(0, -30%, 0);
	-o-transform: translate3d(0, -30%, 0);
	transform: translate3d(0, -30%, 0);
}
*/
.contact input[type="submit"] {
  float: right; }
  .contact input[type="submit"]:active {
    color: #fabf94; }

.button-contact {
  margin: 1.5rem 0; }

.message-confirmation {
  width: 80%;
  margin: 2rem auto; }

.errortext {
  background: #e03329;
  color: #e6ebf0;
  border-radius: 20px;
  padding: 1.25em; }

.errortext p {
  font-weight: 500;
  margin-bottom: 0; }

.errortext ul {
  margin-left: 3rem; }

/*
 * navmenu.scss
 *
 * A scss file for the navigation menu.
 * Adapted from https://codepen.io/bradtraversy/pen/vMGBjQ
 * 
 * CREATED: September 2020
 */
.site-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200; }
  .site-nav label {
    visibility: hidden; }
  @media print {
    .site-nav {
      display: none; } }

.toggler {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 220;
  cursor: pointer;
  opacity: 0; }
  @media (max-width: 320px) {
    .toggler {
      width: 50px;
      height: 50px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .toggler {
      width: 55px;
      height: 55px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .toggler {
      width: 59px;
      height: 59px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .toggler {
      width: 66px;
      height: 66px; } }
  @media (min-width: 991px) {
    .toggler {
      width: 70px;
      height: 70px; } }

.hamburger {
  position: absolute;
  top: 0px;
  left: 0;
  z-index: 210;
  padding: 0.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  /*
  @include respond-below(xs) {
  	background: red;
  }
  @include respond-between(xs, sm) {
  	background: orange;
  }
  @include respond-between(sm, md) {
  	background: yellow;
  }
  @include respond-between(md, lg) {
  	background: green;
  }
  @include respond-between(lg, xl) {
  	background: blue;
  }
  @include respond-above(xl) {
  	background: violet;
  }
  */ }
  @media (max-width: 320px) {
    .hamburger {
      width: 50px;
      height: 50px; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .hamburger {
      width: 50px;
      height: 50px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .hamburger {
      width: 60px;
      height: 60px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .hamburger {
      width: 75px;
      height: 75px; } }
  @media (min-width: 991px) {
    .hamburger {
      width: 87.5px;
      height: 87.5px; } }

.hamburger div {
  position: relative;
  flex: none;
  height: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
  background: #e6ebf0; }
  @media (max-width: 478px) {
    .hamburger div {
      width: 100%; } }
  @media (min-width: 479px) {
    .hamburger div {
      width: 80%; } }

.hamburger div::before,
.hamburger div::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 3px;
  background: inherit; }
  @media (max-width: 478px) {
    .hamburger div::before,
    .hamburger div::after {
      top: -8px; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .hamburger div::before,
    .hamburger div::after {
      top: -9px; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .hamburger div::before,
    .hamburger div::after {
      top: -12px; } }
  @media (min-width: 991px) {
    .hamburger div::before,
    .hamburger div::after {
      top: -14px; } }

@media (max-width: 478px) {
  .hamburger div::after {
    top: 8px; } }
@media (min-width: 479px) and (max-width: 766px) {
  .hamburger div::after {
    top: 9px; } }
@media (min-width: 767px) and (max-width: 990px) {
  .hamburger div::after {
    top: 12px; } }
@media (min-width: 991px) {
  .hamburger div::after {
    top: 14px; } }

.toggler:checked + .hamburger > div {
  transform: rotate(135deg); }

.toggler:checked + .hamburger > div:before,
.toggler:checked + .hamburger > div:after {
  top: 0;
  transform: rotate(90deg); }

.toggler:checked:hover + .hamburger > div,
.toggler:checked:focus + .hamburger > div {
  transform: rotate(225deg); }

.toggler:checked ~ .menu {
  visibility: visible; }

.toggler:checked ~ .menu > div {
  transform: scale(1);
  transition-duration: 0.75s; }

.toggler:checked ~ .menu > div > div {
  opacity: 1;
  transition: opacity 0.4s ease 0.4s; }

.site-nav .menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center; }

.site-nav .menu > div {
  border-radius: 50%;
  width: 200vw;
  height: 200vw;
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  transform: scale(0);
  transition: all 0.4s ease;
  background-color: #334f6e; }

.menu .nav-wrapper {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.2;
  font-weight: 400;
  color: #e6ebf0;
  position: relative;
  top: 0;
  left: 0;
  width: 30%; }

.site-nav a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .site-nav a:link {
      color: black; } }
.site-nav a:visited {
  color: #e6ebf0; }
  @media print {
    .site-nav a:visited {
      color: black; } }
.site-nav a:hover, .site-nav a:focus {
  color: #fa8f38;
  transition: color 0.25s ease;
  opacity: 1; }
.site-nav a:active {
  color: #8f0000; }

.nav-primary {
  max-width: 100%;
  opacity: 1;
  transition: opacity 0.4s ease;
  border-bottom: 2px solid #fa8f38;
  font-size: 1.0rem; }
  @media (max-width: 478px) {
    .nav-primary {
      text-align: center; } }
  .nav-primary ul {
    display: flex;
    flex-flow: column wrap;
    justify-content: center; }
@media screen and (max-width: 990px) and (orientation: landscape) {
  .nav-primary ul {
    flex-flow: row wrap;
    font-size: 0.7rem; } }

  .nav-primary ul li {
    opacity: 1;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 1.0rem 0; }
    @media screen and (orientation: landscape) {
      .nav-primary ul li {
        margin: 1rem 0.5rem; } }

.nav-secondary {
  opacity: 1;
  transition: opacity 0.4s ease;
  font-size: 0.8rem; }
  .nav-secondary ul {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    margin-top: 0.25rem; }
    @media (max-width: 478px) {
      .nav-secondary ul {
        justify-content: center; } }
    @media (min-width: 479px) {
      .nav-secondary ul {
        justify-content: flex-start; } }
@media screen and (max-width: 990px) and (orientation: landscape) {
  .nav-secondary ul {
    justify-content: center;
    font-size: 0.7rem; } }

  .nav-secondary ul li {
    opacity: 1;
    margin: 0.75rem 1rem 0 1rem; }
    @media screen and (orientation: landscape) {
      .nav-secondary ul li {
        margin: 0.4rem 0.5rem; } }
  @media (min-width: 479px) {
    .nav-secondary ul li:first-child {
      margin-left: 0; } }

/*
// For the icons, if we're above a medium screen, 
// position them to the right of the secondary list.
.nav-secondary ul.icons {
	//display: block;
	@include respond-above(lg) {
		position: absolute;
		top: 0;
		right: 0;
	}
	
	li img {	
		@include respond-below(xs) {
			width: 20px;
		}
		@include respond-above(xs) {
			width: 30px;
			@media screen and (orientation: landscape) {
				width: 25px;
			}
		}
	}
}
*/
/*
 * figures.scss
 *
 * A scss file for Generic figure styles.
 * 
 * CREATED: September 2020
 */
img {
  display: block; }

figure {
  margin-top: 1rem;
  margin-bottom: 1rem; }
  figure img {
    border: 1px solid #666669;
    box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.3); }
  figure figcaption {
    font-size: 0.8rem;
    line-height: 1.5;
    margin-top: 0.2rem; }

img.no-border {
  border: 0;
  box-shadow: none; }

.figure-portrait {
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 320px) {
    .figure-portrait {
      width: 95%; } }
  @media (min-width: 321px) and (max-width: 478px) {
    .figure-portrait {
      width: 90%; } }
  @media (min-width: 479px) and (max-width: 766px) {
    .figure-portrait {
      width: 80%; } }
  @media (min-width: 767px) and (max-width: 990px) {
    .figure-portrait {
      width: 95%; } }
  @media (min-width: 991px) and (max-width: 1199px) {
    .figure-portrait {
      width: 95%; } }
  @media (min-width: 1200px) {
    .figure-portrait {
      width: 70%; } }

@media (max-width: 766px) {
  figure.float {
    display: block;
    margin-left: auto;
    margin-right: auto; } }
@media (min-width: 767px) {
  figure.float {
    display: inline;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    margin-bottom: 0;
    margin-top: 0;
    max-width: 50%; } }
@media (min-width: 767px) {
  figure.float.float-right {
    float: right;
    padding-left: 1rem;
    padding-right: 0; } }
@media (min-width: 767px) {
  figure.float.float-left {
    float: left;
    padding-left: 0;
    padding-right: 1rem; } }
@media (max-width: 766px) {
  figure.float img {
    width: inherit;
    margin-left: auto;
    margin-right: auto; } }

.figure-center img {
  width: inherit;
  margin-left: auto;
  margin-right: auto; }

figcaption.center {
  text-align: center; }

.image-overlay-container {
  position: relative;
  z-index: 1; }

.image-overlay {
  position: absolute;
  z-index: 2;
  top: 0;
  opacity: 0;
  transition: 0.5s ease;
  width: 100%; }

.image-overlay-container:hover .image-overlay {
  opacity: 1; }

.photo .grid-center.whole p.hover-message {
  position: absolute;
  top: 0;
  text-align: right;
  width: 100%;
  margin: 0;
  font-size: 0.65rem;
  line-height: 1.2; }

.hover-message {
  font-family: "Rock Salt", sans-serif;
  letter-spacing: 0.1rem;
  line-height: 1.4; }

@media (max-width: 478px) {
  .hover-message.post2016-04-29 {
    transform: translate(-1rem, -0.5rem) rotate(-8deg); } }
@media (min-width: 479px) and (max-width: 766px) {
  .hover-message.post2016-04-29 {
    transform: translate(-1rem, 0.25rem) rotate(-8deg); } }
@media (min-width: 767px) and (max-width: 990px) {
  .hover-message.post2016-04-29 {
    transform: translate(-1rem, 0.25rem) rotate(-8deg); } }
@media (min-width: 991px) and (max-width: 1199px) {
  .hover-message.post2016-04-29 {
    transform: translate(-5rem, 1rem) rotate(-8deg); } }
@media (min-width: 1200px) {
  .hover-message.post2016-04-29 {
    transform: translate(-10rem, 1.75rem) rotate(-8deg); } }

@media (max-width: 478px) {
  .hover-message.post2019-06-08 {
    transform: translate(0rem, -0.5rem) rotate(-5deg); } }
@media (min-width: 479px) and (max-width: 766px) {
  .hover-message.post2019-06-08 {
    transform: translate(-1rem, -0.5rem) rotate(-5deg); } }
@media (min-width: 767px) and (max-width: 990px) {
  .hover-message.post2019-06-08 {
    transform: translate(0rem, -0.5rem) rotate(-20deg); } }
@media (min-width: 991px) and (max-width: 1199px) {
  .hover-message.post2019-06-08 {
    transform: translate(-1rem, 0rem) rotate(-20deg); } }
@media (min-width: 1200px) {
  .hover-message.post2019-06-08 {
    transform: translate(-2rem, 0.5rem) rotate(-20deg); } }

body.lb-disable-scrolling {
  overflow: hidden; }

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #1f2121;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.9;
  display: none; }

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
  outline: none; }

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;
  /* Image border */
  border: 4px solid #e6ebf0; }

.lightbox a img {
  border: none; }

.lb-outerContainer {
  position: relative;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
  /* Background color behind image.
     This is visible during transitions. */
  background-color: #e6ebf0; }

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0; }

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url("/media/sitewide/lb-loading.gif") no-repeat; }

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10; }

.lb-container > .nav {
  left: 0; }

.lb-nav a {
  outline: none;
  background-image: url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="); }

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block; }

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url("/media/sitewide/lb-prev.png") left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s; }

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url("/media/sitewide/lb-next.png") right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s; }

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 0.25rem;
  *zoom: 1;
  width: 100%; }

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-data {
  color: #e6ebf0; }

.lb-details {
  width: 95%;
  float: left;
  text-align: left; }

.lb-caption {
  line-height: 1.4; }

.lb-caption p.caption {
  font-size: 0.9rem;
  margin-bottom: 0.5rem; }

.lb-caption .byline,
.lb-caption .camera-data,
.lb-caption .photo-location {
  font-size: 0.7rem; }

.lb-caption a:link {
  color: #fa8f38;
  text-decoration: none; }
  @media print {
    .lb-caption a:link {
      color: black; } }
.lb-caption a:visited {
  color: #fa8f38; }
  @media print {
    .lb-caption a:visited {
      color: black; } }
.lb-caption a:hover, .lb-caption a:focus {
  color: #b8692e;
  transition: color 0.25s ease;
  opacity: 1; }
.lb-caption a:active {
  color: #8f0000; }

.lb-caption .camera-data li {
  display: inline; }

.lb-caption .camera-data li::after {
  content: "\00A0\00A0\00A0\00A0\00A0\00A0"; }

.lb-caption .camera-data li:last-child::after {
  content: none; }

.lb-data .lb-number {
  line-height: 1.4;
  letter-spacing: 0.05rem;
  font-size: 0.65rem;
  display: block;
  text-align: right;
  margin-top: 0.5rem; }

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url("/media/sitewide/lb-close.png") top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s; }

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

/*
 * buttons.scss
 *
 * A scss file for buttons used on the site
 * 
 * CREATED: November 2020
 */
.button {
  font-family: "Source Sans Pro", sans-serif;
  letter-spacing: 0.02rem;
  line-height: 1.4;
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  max-width: 250px;
  padding: 0.6rem 1rem;
  margin: 0.5rem 0;
  color: #e6ebf0;
  background-color: #334f6e;
  border: 2px outset #1f3045;
  box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  cursor: pointer;
  transition-property: background-color;
  transition: 0.5s; }
  .button:hover, .button:focus {
    background-color: #fa8f38; }
  @media print {
    .button {
      display: none; } }

.button a:link {
  color: #e6ebf0;
  text-decoration: none; }
  @media print {
    .button a:link {
      color: black; } }
.button a:visited {
  color: #e6ebf0; }
  @media print {
    .button a:visited {
      color: black; } }
.button a:hover, .button a:focus {
  color: #b8692e;
  transition: color 0.25s ease;
  opacity: 1; }
.button a:active {
  color: #fabf94; }

/*
 * forms.scss
 *
 * A scss file for the form element styles.
 * 
 * CREATED: September 2020
 */
input[type=radio] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0; }
  input[type=radio]:checked ~ .checkmark {
    background-color: #a3adbd;
    border: 1px solid #666669; }
  input[type=radio]:checked ~ .checkmark:after {
    display: block; }

.checkmark {
  position: absolute;
  top: 0.27rem;
  left: 0;
  height: 19px;
  width: 19px;
  background-color: #e6ebf0;
  border: 1px solid #666669;
  border-radius: 50%; }
  .checkmark:hover, .checkmark:focus {
    background-color: #b0b3b5; }
  .checkmark:after {
    content: "";
    position: relative;
    top: 5px;
    left: 5px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: white; }

input[type="text"],
input[type="email"],
textarea {
  display: block;
  width: 100%;
  padding: 0.5em;
  background-color: #e6ebf0;
  border-style: solid;
  border-width: 2px;
  border-radius: 20px; }
  input[type="text"]:optional,
  input[type="email"]:optional,
  textarea:optional {
    border-color: #b0b3b5; }
  input[type="text"]:required:valid,
  input[type="email"]:required:valid,
  textarea:required:valid {
    border-color: green; }
  input[type="text"]:invalid,
  input[type="email"]:invalid,
  textarea:invalid {
    border-color: red; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  textarea:focus {
    border-color: #334f6e;
    box-shadow: 0 0 5px rgba(44, 151, 222, 0.2); }

textarea {
  min-height: 200px;
  resize: vertical;
  overflow: auto; }

input::placeholder {
  color: #666669; }

.required-text {
  color: red; }

/*
 * figures.scss
 *
 * A scss file for Generic figure styles.
 * 
 * CREATED: September 2020
 */
.iframe-container {
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
  margin: 1rem auto; }
  @media print {
    .iframe-container {
      position: static;
      padding-top: 0%;
      width: 50%;
      padding: 0.5in;
      border: 1px solid black;
      margin: 0.5in auto;
      text-align: center; } }
  @media print {
    .iframe-container::after {
      content: "[ Video excised for print ]"; } }
  .iframe-container iframe {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border: 0;
    width: 100%;
    height: 100%; }
    @media print {
      .iframe-container iframe {
        display: none;
        width: 0;
        height: 0; } }

/*  //Different paddings for different aspect ratios
padding-top: 56.25%; 	// 16:9 aspect ratio
padding-top: 75%; 		// 4:3 aspect ratio
padding-top: 66.66%; 	// 3:2 aspect ratio
padding-top: 62.5%; 	// 8:5 aspect ratio
padding-top: 100%; 		// 1:1 aspect ratio
*/
/*
 * print.scss
 *
 * A scss file for common print-specific styles, orphaned form the main scss files. In other words, these are prit-specific, or have no counterpart in the base scss files.
 * 
 * CREATED: November 2020
 */
@media print {
  * {
    overflow: visible !important;
    background-color: transparent !important;
    background-image: none !important;
    border-color: black !important; }

  a {
    page-break-inside: avoid; }

  blockquote {
    page-break-inside: avoid; }

  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
    page-break-inside: avoid; }

  img {
    page-break-inside: avoid;
    page-break-after: avoid; }

  table, pre {
    page-break-inside: avoid; }

  ul, ol, dl {
    page-break-before: avoid; }

  abbr[title] {
    text-decoration: none; }

  .cv-toc {
    display: none; } }

/*# sourceMappingURL=styles.css.map */
