/* avoid browser default inconsistent heading font-sizes */
/* and pre/code too */
h1,h2,h3,h4,h5,h6,pre,code {
	font-size: 1em;
}
/* remove the inconsistent (among browsers) default ul,ol padding or margin  */
/* the default spacing on headings does not match nor align with
   normal interline spacing at all, so let's get rid of it. */
/* zero out the spacing around pre, form, body, html, p, blockquote as well */
/* form elements are oddly inconsistent, and not quite CSS emulatable. */
/*  nonetheless strip their margin and padding as well */
/* ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input { */
h1,h2,h3,h4,h5,h6,pre,form,body,html,p,fieldset,input,figure,figcaption {
	margin: 0;
	padding: 0;
}
figure {
	margin-before: 0;
	margin-after: 0;
	margin-start: 0;
	margin-end: 0;
}
/* whoever thought blue linked image borders were a good idea? */
a img,:link img,:visited img, img {
	border: none;
}
a:hover {
	cursor: pointer;
}
a {
   	outline: none;
}
/* Make HTML 5 elements display block-level for consistent styling */
header, nav, article, main, footer, address, figure, figcaption {
    display: block;
}
html {
	font-size: 62.5%;
    -webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
    scroll-behavior: smooth;
}
/* set a standard bottom margin on common html elements and others */
p, h1, h2, h3, h4, h5, h6,
.galleryParagraph,
.pageNav,
.pageNav1,
.photoCaption,
.photoGals,
.photoRelated {
	margin-bottom: 10px;
}
/* all cleared elements */
.clear,
h1,
footer,
.cartInfo,
.galleryParagraph,
.newsHeader,
.pageNav,
.photoActions,
.submenusIntro {
	clear: both;
}

/* images, figures, and figcaptions */
figure, .img, .imgLarge, #logo img, .main img {
	max-width: 100%;
}
figcaption {
	margin-top: 10px;
}
img {
	/* prevent html5 strict doctype img spaces under images */
 	vertical-align: bottom;
 	height: auto;
}
.img,
.imgLarge,
.content figure img,
.galleryParagraph figure img {
	-moz-box-sizing: border-box;
  	-webkit-box-sizing: border-box;
  	box-sizing: border-box;
}
blockquote,
pre {
	margin-top: 30px;
	margin-bottom: 30px;
}

/* ===================== BLOG =============================== */

.categoriesMenu,
.categoriesSpan {
	white-space: nowrap;
}
.categoriesSelect {
	max-width: 200px;
}
.galNavShell {
	max-width: 800px;
	padding: 10px 0;
	margin-top: 40px;
	clear: both;
}
.galNavLinks {
	width: 100%;
}
.galNavLeft {
	max-width: 48%;
	float: left;
	padding-right: 10px;
}
.galNavRight {
	max-width: 48%;
	float: right;
	text-align: right;
	padding-left: 10px;
}
.journalMenuTiled .captionTeaser,
.thumbText {
	margin-top: 10px;
}
.pageNav1 {
	line-height: 2;
}
.relatedGals {
	margin-top: 100px;
}
.relatedGals h2 {
	margin-bottom: 20px;
}
.relatedGal {
	display: inline-block;
	vertical-align: top;
}
.subtitle {
	margin-top: -4px;
	margin-bottom: 20px;
}
.tagline {
	clear: both;
	margin-top: 60px;
}
.wg-comments {
	clear: both;
	padding-top: 100px;
	margin-bottom: 60px;
}

/* ===================== REDACTOR CONTENT & PHOTOS ============================ */

/* Video embeds:
• Redactor v3: <div class="video-container"><iframe></div>
• Redactor v4: <figure><div class="embed-content embed-responsive"><iframe></div><figcaption></figcaption></figure>
• Redactor v3 -> v4 : <div class="video-container"><figure><div class="embed-content"><iframe></div><figcaption></figcaption></figure></div>
• Redactor v3 -> v4 (responsive checked): <div class="video-container"><figure><div class="embed-content embed-responsive"><iframe></div><figcaption></figcaption></figure></div>
*/
figure:has(.embed-content), /* v4, v3->v4 */
.video-container:not(:has(figure)) { /* <-- v3: .video-container that do not have child figure */
    margin-top: 40px;
    margin-bottom: 40px;
    clear: both;
}
/* the direct parent element to iframe: */
.embed-responsive:has(iframe), /* v4 */
.video-container .embed-content:has(iframe):not(:has(.video-container)), /* v3->v4 (without responsive video checked, but it should already be responsive) */
.video-container:has(iframe):not(:has(figure)) { /* v3: .video-container that do not have child figure */
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
    height: 0;
}
.embed-responsive:has(iframe) iframe, /* v4 */
.video-container .embed-content:has(iframe) iframe, /* v3->v4 (without responsive video checked, but it should already be responsive) */
.video-container > iframe {  /* v3: when iframe is a direct child of .video-container */
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
}
/* fix v4 non-responsive embeds to not break page responsiveness (but v3->v4 embeds must still be fully responsive) */
.embed-content:not(.embed-responsive) iframe {
	max-width: 100%;
	min-height: auto;
}
.content h1,
.linkCat {
	clear: both;
	margin-top: 40px;
}
.content h1:first-of-type,
.linkCat:first-of-type {
	margin-top: 0;
}
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
	clear: none;
	text-align: left;
	margin-top: 20px;
}
.content li {
	text-align: left !important;
}
.content > ol,
.content > ul,
.content div > ol,
.content div > ul {
	padding-left: 1em;
}
.content h1:first-of-type, .linkCat:first-of-type {
	margin-top: 0;
}
.content figure {
	margin-bottom: 20px;
}
.content figcaption {
	font-style: italic;
	margin-top: 10px;
}
.photoCaption figcaption {
	margin-top: 10px;
}
.content figcaption h1,
.content figcaption h2,
.content figcaption h3,
.content figcaption h4,
.content figcaption h5,
.content figcaption h6,
.content figcaption .photoTitle,
.content figcaption .photoLocation  {
	font-style: normal;
}
.content figcaption .photoTitle {
	margin-top: 15px;
}
.content figcaption .photoLocation,
.content figcaption .photoCaption,
.content figcaption .photoCaption p,
.content figcaption .printsLink {
	margin-top: 6px;
	margin-bottom: 6px;
}
.content figcaption .photoCaption:has(+ .printsLink) {
	margin-bottom: -6px;
}
.image-full {
	margin-top: 40px;
	margin-bottom: 40px;
	clear: both;
}
.image-center {
	margin-left: auto;
	margin-right: auto;
}
.image-left,
.float-left {
	float: left;
	max-width: 55%;
	margin: 6px 20px 20px 0 !important;
}
.image-right,
.float-right {
	float: right;
	max-width: 55%;
	margin: 6px 0 20px 20px !important;
}
.image-center img,
.image-left img,
.image-right img,
.float-left img,
.float-right img {
	max-width: 100% !important;
	height: auto !important;
}
.image-resized {
	margin-bottom: 20px;
}
[data-block=layout] {
    display: flex;
    flex-direction: row;
    gap: 40px;
    margin-top: 30px;
    margin-bottom: 30px;
}
[data-block=layout] figure {
	max-width: 100% !important;
	width: 100% !important;
	margin: 0 0 20px 0;
}
[data-block=column] {
	min-width: 1%;
	word-wrap: break-word;
}
[data-block=column] > *:first-child {
	margin-top: 0;
}
[data-block=column] > *:last-child {
	margin-bottom: 0;
}
[data-block=column] p:empty:last-child {
	margin-bottom: -20px;
}
@media screen and (max-width: 600px) {
	[data-block=column] figcaption .photoTitle {
		font-size: 18px !important;
		font-size: 1.8rem !important;
	}
}

/* ========================================================== */

/* spacing that might change per user/template */
h1 {
	margin-bottom: 10px;
}
header {
	margin-bottom: 20px;
}
#page2 {
	margin: 20px;
}
.content h1,
.content h2,
.linkCat,
.journalText .price,
.largePhotos {
	margin-top: 40px;
}
.floatLeft {
	text-align: left;
	margin: 0 20px 20px 0;
	float: left;
}
.floatRight {
	float: right;
	margin: 0 0 20px 20px;
}
.galleryParagraph2,
.pageInner-page h2,
.pageInner-page h3,
.printsCategory,
.welcome {
	margin-top: 20px;
}
.pageNav {
	padding-top: 40px;
}
.pageNav2 {
	clear: both;
	margin: 20px 0 10px 0;
}

/* specific styling */
body,
.searchBkg > ul > li > ul > li {
	line-height: 1.5;
}
footer {
	clear: both;
	padding-top: 50px;
}
img[src$=".png"] {
	background-color: transparent !important;
	border: none !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}
nav {
	line-height: 2;
}
nav ul, .nav2 ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
nav ul li, .nav2 ul li {
	display: inline;
}
nav ul li a, .nav2 ul li a {
	text-decoration: none;
	padding: 0 1em 0 0;
	white-space: nowrap;
}
nav ul ul, .nav2 ul ul {
	display: none;
}
.agreement {
	clear: both;
	padding: 10px;
	max-width: 300px;
	margin-top: 20px;
	margin-bottom: 20px;
	line-height: 1.5;
}
.captionDate {
	margin-top: 4px;
}
.captionTitle,
.largePhotos .photoTitle {
	font-style: normal;
}
.captionTitle,
.captionLocation,
.thumbLinkSub {
	line-height: 1;
}
.captionLocation {
	margin-top: 4px;
}
.captionTeaser {
	margin-top: 12px;
}
.captionTeaser ul,
.printsCategory ul {
	list-style-position: inside;
	padding-left: 0;
}
.center, .center h1 {
	text-align: center;
}
.copyright {
	font-size: 10px;
	font-size: 1rem;
	margin-top: 8px;
}
.error,
.vacation {
	color: #FF0000;
}
.googleSearch {
	text-align: left;
}
.hidden {
	display: none;
}
.imgNoBorder {
	margin: 4px 20px 10px 0;
	float: left;
}
.input {
	width: 360px;
	max-width: 100%;
}
.input2 {
	width: 150px;
	max-width: 100%;
}
.input3 {
	width: 200px;
	max-width: 100%;
}
.journalMenuTiled figcaption {
	padding: 20px;
	margin-top: 0;
}
.journalMenuTiled .captionTitle {
	line-height: 1.2;
	margin-top: 0;
}
.left, .left h2, .left h3, .left p {
	text-align: left;
}
.linkSection {
	margin-bottom: 40px;
}
.loader img {
	background-color: transparent !important;
}
.menu {
	margin-top: 20px;
}
.menuItem {
	clear: both;
	overflow: hidden;
	width: 100%;
}
.newsHeader {
	clear: both;
	text-align: left !important;
	margin: 40px 0 15px 0;
}
.newsItem {
	margin-bottom: 20px;
	clear: both;
}
.newsPic {
	float: left;
	margin: 0 20px 20px 0;
	max-width: 50%;
	height: auto;
}
.newsText, .newsText p {
	text-align: left;
}
.newsThumbs {
	float: left;
}
.newsTitle {
	text-align: left;
	margin-bottom: 10px;
}
.noBorder {
	border: none;
}
.notice,
.vacation {
	color: #00ccff;
	font-size: 1.1em;
	font-weight: bold;
}
.padding-none {
	padding: 0;
}
.pageColumn1 {
	float: left;
}
.pageInner-photo .photoTitle {
	margin-top: 20px;
	margin-bottom: 5px;
}
.pageInner-photo .photoCaption {
	margin-top: 20px;
}
.pageNav {
	word-wrap: break-word;
}
.pageNumbers,
.pageNumbers1 {
	word-wrap: normal;
}
.pageTitle h1 {
	max-width: 100% !important;
}
.pagePhoto .image-full {
	margin-top: 0;
}
.peeps {
	visibility: hidden;
	display: none;
}
.photoActions {
	font-weight: bold;
	margin: 20px 0;
}
.photoArrows {
	float: right;
	margin-bottom: -23px;
  	margin-top: -2px;
}
.photoArrows svg {
	vertical-align: middle;
	margin-left: 6px;
}
.photoNav-cart {
	margin-left: 4px;
}
.photoLocation {
	padding: 0;
	text-transform: none;
	font-variant: normal;
	font-weight: normal;
	letter-spacing: 0;
}
.photoNav {
	margin: 40px 0;
}
.photoNav a {
	text-decoration: none;
}
.photo1 .photoTitle {
	margin-right: 100px;
}
.photoTitle a:link,
.photoTitle a:visited,
.photoTitle a:hover {
	text-decoration: none;
}
.printsCategory {
	padding: 20px;
	display: block;
	clear: both;
	text-align: left;
}
.printsCategory h3, .printsInfo h3 {
	padding: 0;
	margin: 0 0 10px 0;
}
.printsInfo {
	margin-top: 40px;
}
.printsInfo p {
	text-align: left;
}
.printThumb {
	margin-top: 20px;
	margin-bottom: 40px;
}
.price {
	line-height: 2;
}
.price-select {
	line-height: 2;
	margin-top: 20px;
}
.printForm h3 {
	margin-bottom: 0;
}
.right {
	text-align: right;
}

/* ===================== SEARCH ============================ */

.searchBkg {
	margin-top: 40px;
}
.searchBkg ul,
.searchBkg li {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}
.searchBkg ul {
	margin: 0 40px 40px 0;
	float: left;
}
.searchBkg li ul {
	margin: 0;
	float: none;
}
.searchBkg li li {
	padding-left: 20px;
	padding-top: 10px;
	margin-top: 10px;
}
.searchBkg li li li {
	border: none;
	padding-top: 0;
	margin: 0;
}
.searchBkg > ul > li > ul > li {
	text-transform: none;
	font-variant: normal;
}

/* ========================================================== */

.selectPrints {
	width: 100%;
	max-width: 300px;
}
.selectShipping {
	max-width: 150px;
}
.siteTitle a:link,
.siteTitle a:visited,
.siteTitle a:hover,
.siteTitle a:focus {
	text-decoration: none;
}
.sliderContainer {
	margin-bottom: 20px;
}
.subgallery, .subgalleryTease {
	clear: both;
	padding-top: 20px;
}
.subgalleryTease {
	clear: both;
	padding-top: 20px;
}
.subgalleryThumbs h1 {
	clear: both;
	margin-top: 60px;
}
.submenusTiled figcaption {
	pointer-events: none;
}
.text-center {
	text-align: center !important;
}
.text-left {
	text-align: left !important;
}
.text-right {
	text-align: right !important;
}
.thumbButton {
	margin-bottom: 20px;
}
.thumbLink, .submenusIntro {
	margin-top: 10px;
}
.thumbLinkSub, .galleriesLink3 {
	margin-top: 10px;
}
.thumbNumber {
	font-size: 10px;
	font-size: 1rem;
	margin-top: 4px;
}
.tinyText {
	font-size: 10px;
	font-size: 1rem;
}
.total {
	font-weight: bold;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.5;
}

/* logo/title/nav tweaks and media queries */
#logo {
	float: right;
	max-width: 75px;
}
.siteTitle {
	float: left;
	margin-top: -4px;
}
header {
	margin-bottom: 0;
}
nav {
	clear: both;
	position: relative;
	top: -10px;
	margin-bottom: 0;
}

@media screen and (min-width: 960px) {

	html {
    	position: relative;
   		min-height: 100%;
   	}
	header {
		position: absolute;
		top: 0;
		left: 0;
		max-width: 175px;
		height: 100%;
		overflow: hidden;
		padding: 0 20px;
	}
	footer {
		margin: 0 0 0 195px;
	}
	main {
		margin: 0 0 0 195px;
	}
	nav {
		margin: 40px 0;
		text-align: center;
	}
	nav ul li {
		display: list-item;
	}
	nav ul li a, .nav2 ul li a {
		padding: 0;
	}
	#logo {
		float: none;
		max-width: 175px;
		margin-top: 20px;
	}
	.siteTitle {
		float: none;
		margin-left: 0;
		margin-top: 20px;
	}
}