/*
Theme Name: Packafoma
Author: Dax Roggio
Author URI: https://www.packafoma.com/
Description: Custom theme for packafoma.com
Version: 6.0
*/

@font-face {
	font-family: 'American Typewriter';
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: local('American Typewriter'), local('AmericanTypewriter'), url('/fonts/american_typewriter/american_typewriter.ttf.gz');
}
@font-face {
	font-family: 'American Typewriter';
	font-weight: bold;
	font-style: normal;
	font-display: swap;
	src: local('American Typewriter Bold'), local('AmericanTypewriter-Bold'), url('/fonts/american_typewriter/american_typewriter_bold.ttf.gz');
}
@font-face {
	font-family: 'American Typewriter';
	font-weight: 300;
	font-style: normal;
	font-display: swap;
	src: local('American Typewriter Light'), local('AmericanTypewriter-Light'), url('/fonts/american_typewriter/american_typewriter_light.ttf.gz');
}
@font-face {
	font-family: Cambria;
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: local('Cambria'), url('/fonts/cambria/cambria.ttf.gz');
}
@font-face {
	font-family: Cambria;
	font-weight: bold;
	font-style: normal;
	font-display: swap;
	src: local('Cambria Bold'), local('Cambria-Bold'), url('/fonts/cambria/cambria_bold.ttf.gz');
}
@font-face {
	font-family: Cambria;
	font-weight: normal;
	font-style: italic;
	font-display: swap;
	src: local('Cambria Italic'), local('Cambria-Italic'), url('/fonts/cambria/cambria_italic.ttf.gz');
}
@font-face {
	font-family: Cambria;
	font-weight: bold;
	font-style: italic;
	font-display: swap;
	src: local('Cambria Bold Italic'), local('Cambria-BoldItalic'), url('/fonts/cambria/cambria_bold_italic.ttf.gz');
}
@font-face {
	font-family: Candara;
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: local('Candara'), url('/fonts/candara/candara.ttf.gz');
}
@font-face {
	font-family: Candara;
	font-weight: bold;
	font-style: normal;
	font-display: swap;
	src: local('Candara Bold'), local('Candara-Bold'), url('/fonts/candara/candara_bold.ttf.gz');
}
@font-face {
	font-family: Candara;
	font-weight: normal;
	font-style: italic;
	font-display: swap;
	src: local('Candara Italic'), local('Candara-Italic'), url('/fonts/candara/candara_italic.ttf.gz');
}
@font-face {
	font-family: Candara;
	font-weight: bold;
	font-style: italic;
	font-display: swap;
	src: local('Candara Bold Italic'), local('Candara-BoldItalic'), url('/fonts/candara/candara_bold_italic.ttf.gz');
}
@font-face {
	font-family: 'Source Code Pro';
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: local('Source Code Pro'), local('SourceCodePro-Regular'), url('/fonts/source_code_pro/source_code_pro.ttf.gz');
}
@font-face {
	font-family: 'Source Code Pro';
	font-weight: bold;
	font-style: normal;
	font-display: swap;
	src: local('Source Code Pro'), local('SourceCodePro-Bold'), url('/fonts/source_code_pro/source_code_pro_bold.ttf.gz');
}

body {
	position: relative;
	height: 100%;
	margin: 0;
	padding: 0;
	background-image: linear-gradient(to bottom, rgba(176, 84, 34, 0) 0%, rgba(176, 84, 34, 0.25) 25%, rgba(176, 84, 34, 0) 50%, rgba(176, 84, 34, 0.25) 75%, rgba(176, 84, 34, 0) 100%);
	background-size: 100% 1080px;
	background-position: center top;
	background-repeat: no-repeat;
	background-color: #000;
	font-family: Candara, 'Trebuchet MS', Helvetica, Arial, sans-serif;
	color: #ddd; /* change .easter-egg color to match if this changes */
	font-size: 17px;
	line-height: 1.5em;
	overscroll-behavior: none;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
body.home {
	background-position: center 105px;
}
a {
	text-decoration: none;
	color: #69c;
	cursor: pointer; /* for "placeholder" anchor tags without href attributes */
}
a:visited {
	color: #69c;
}
a:hover {
	text-decoration: underline;
}
a img {
	border: 0;
}
[id] {
  scroll-margin-top: 95px;
}

:focus {
	outline: none;
}
::-moz-focus-inner {
	border: 0;
}
::selection {
	background-color: #f93;
}
::-moz-selection {
	background-color: #f93;
}

h1 {
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 32px;
	font-weight: normal;
	line-height: 1.35em;
	letter-spacing: 1px;
}
h2 {
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 24px;
	font-weight: normal;
	line-height: 1.35em;
	letter-spacing: 1px;
}
h3 {
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 21px;
	font-weight: normal;
	line-height: 1.35em;
}
h4 {
	margin-top: 2em;
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.35em;
}
h5 {
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif;
	color: #fff;
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0.2em;
	text-indent: 0.1em;
	text-transform: lowercase;
	line-height: normal;
}
img {
	max-width: 100%;
	height: auto;
}
iframe {
	border: 0;
}
figure {
	margin: 0;
}
figure.side-caption {
	display: flex;
	align-items: center;
	margin-top: 3em;
	margin-bottom: 3em;
}
figure.side-caption img {
	display: block;
}
figure.side-caption figcaption {
	margin-left: 1em;
	font-size: 14px;
	line-height: 1.6em;
}
figure.side-caption figcaption .side-caption-name-title {
	font-size: 16px;
	font-weight: bold;
}
.flex-box-hack { /* hack to prevent elements in last row from "growing" to full width of container if there are fewer elements than previous rows; total number of empty tags (e.g. div, figure) should be max number of possible columns minus 1 */
	height: 0;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
table {
	border-spacing: 0;
}
td {
	padding: 0;
}
input[type='text'],
input[type='email'],
input[type='tel'],
input[type='url'],
textarea {
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
	padding-right: 10px;
	border: none;
	border-radius: 5px;
}
.preload {
	display: none;
}
.hide-in-desktop {
	display: none;
}
.alignleft, .aligncenter,
.alignright { /* img tags and caption divs */
	display: block;
	margin-top: 5px;
	margin-bottom: 10px;
}
.alignleft {
	float: left;
	margin-right: 20px;
}
.alignright {
	float: right;
	margin-left: 20px;
}
.aligncenter {
	margin-top: 3em;
	margin-bottom: 3em;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption {
	margin-bottom: 20px;
	font-size: 12px;
	text-align: center;
	line-height: normal;
}
.wp-caption img {
	display: block;
}
.wp-caption-text {
	margin-top: 4px;
	margin-bottom: 0;
}
.ios-app-icon {
	border-radius: 24px;
}

/* REVERSE-STYLE PAGES also use /includes/top.php (i.e. Flight Plan Forms, Safari, Shea Shirts); match adjustments in reverse.css accordingly */
#top {
	position: fixed;
	z-index: 30000;
	width: 100%;
	height: 74px; /* match margin-top of #main with this height + border height (75px) */
	top: 0;
	background-color: rgba(0, 0, 0, 0.85); /* background opacity when @supports backdrop-filter below is false */
	border-bottom: 1px solid #000;
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.6);
}
@supports (backdrop-filter: blur()) or (-webkit-backdrop-filter: blur()) { /* Safari-only at this time; fallback above */
	#top {
		background-color: rgba(0, 0, 0, 0.1);
		-webkit-backdrop-filter: blur(25px);
		backdrop-filter: blur(25px);
	}
}
#logo-main {
	position: absolute;
	z-index: 100;
	top: 19px; /* 24px without .dark-mode text (and in reverse.css) */
	left: 15px;
	line-height: normal;
}
#logo-main img {
	display: block;
}
#logo-main a {
	display: block;
	opacity: 0.6;
	text-decoration: none;
}
#logo-main a:hover {
	opacity: 0.5;
}
#logo-main a.current-page {
	opacity: 0.9;
}
#logo-main a.current-page:hover {
	opacity: 0.9;
}
#logo-main .dark-mode {
	margin-top: 4px;
	margin-bottom: 0;
	margin-left: 0;
	margin-right: 0;
	font-family: -apple-system, BlinkMacSystemFont, 'SFUIText-Light', Candara, 'Trebuchet MS', Helvetica, Arial, sans-serif;
	color: #9a9a9a;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 2px;
	text-align: center;
}
#menu-main {
	display: flex;
	justify-content: space-around;
	box-sizing: border-box;
	margin-top: 13px;
	margin-left: calc(250px + 3vw);
	margin-right: calc(250px + 3vw);
}
#menu-main a {
	position: relative;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 5px;
	padding-right: 5px;
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif;
	color: #fff;
	font-size: 15px;
	font-weight: 300;
	line-height: normal;
	letter-spacing: 2px;
	text-indent: 1px;
	text-transform: lowercase;
	text-decoration: none;
	white-space: nowrap;
}
#menu-main a:hover {
	color: #ccc;
}
#menu-main a.current-page {
	font-weight: 700;
}
#menu-main a.current-page:hover {
	color: #fff;
}
#menu-main .shorten-add {
	display: none;
}
#social-icons { /* match reverse.css */
	position: absolute;
	z-index: 90;
	top: 25px;
	right: 15px;
	font-family: Helvetica, Arial, sans-serif; /* no font characters are actually visible but the font affects spacing between anchors; use browser-safe font rather than @font-face font to prevent horizontal shift after font file loads */
}
#social-icons a {
	display: inline-block;
	margin-right: 10px; /* HORIZONTAL SPACING */ /* MATCH IN reverse.css */
	vertical-align: top;
	opacity: 0.75;
	filter: grayscale(100%);
}
#social-icons a.social-icon-brighter {
	opacity: 1;
}
#social-icons a:first-child {
	margin-left: 0;
}
#social-icons a:last-child {
	margin-right: 0;
}
#social-icons a:hover {
	opacity: 1;
	filter: none;
}
#social-icons img {
	display: block;
}
#social-icons #biden-logo-svg {
	width: 53px;
	height: 22px;
	margin-right: 5px;
}
#social-icons #warren-logo-svg {
	width: 54px;
	height: 22px;
}


#main {
	margin-top: 75px; /* match height of #top (including border) */
	padding-top: 25px; /* padding also prevents collapsible margins on tops of child elements */
}

#media-layout {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#main.home #media-layout,
#main.video-single #media-layout {
	display: block;
}
#media-layout-left {
	flex-grow: 1;
	flex-basis: calc(100% - 375px);
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 30px;
}
#main.home #media-layout-left {
	margin-top: 15px;
	margin-left: 0;
	margin-right: 0;
}
#main.video-single #media-layout-left {
	flex-grow: 0;
	flex-basis: auto;
	margin-left: 30px;
	margin-right: 30px;
}
#main.video-single #media-content {
	max-width: 1440px;
	max-height: calc(100vh - 168px); /* 100% vertical viewport minus top, footer, and padding (match .responsive-media-wrapper-16-9) */
	margin-left: auto;
	margin-right: auto;
}
#main.website-design #media-layout-left {
	margin-top: -15px;
	margin-left: 0;
	margin-right: 0;
}
#main.contact #media-layout-left {
	flex-grow: 0;
	flex-basis: auto;
}

#text-layout {
	display: flex;
	flex-wrap: wrap;
}
#text-layout h1 {
	margin-top: 0;
	margin-bottom: 1.5em;
	text-align: center;
}
#text-layout-left {
	flex-grow: 1;
	flex-basis: calc(100% - 375px);
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 30px;
}

#main.home h1 {
	margin-top: 1rem;
	margin-left: 1rem;
	margin-right: 1rem;
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 3px;
	text-align: center;
}
.heading-divider {
	color: rgba(176, 84, 34, 0.5);
	padding-left: 2px;
	padding-right: 2px;
}
#main.home #media-content #home-slider {
	height: calc(100vw * 0.5625); /* prevent layout shift on load by calculating the eventual height of div once slider loads, if viewport width is less than natural width of slider images; 100% viewport * 16:9 aspect ratio of slider images; viewport width includes scrollbar width, which is dumb; so there will still be a jump of a few pixels if scrollbar is always visible */
	max-height: 540px; /* cap height for when viewport is wider than slider */
	max-width: none !important; /* allow room for reflections by negating max-width as set inline by Advanced Slider */
}
#main.home #media-content #home-slider .slide .image {
	border-radius: 13px;
	box-shadow: 0 0 90px 0 #000;
	-webkit-box-reflect: left -200px radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 90%);
	box-reflect: left -200px radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 90%);
}
#main.home #media-content #home-slider .slide .image.reflection-source  {
	-webkit-box-reflect: right -200px radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 90%);
	box-reflect: right -200px radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 90%);
}
/* home slider theme css: /style/advanced-slider/packafoma-home.css */

#main.home #testimonials {
	margin-top: 90px;
	padding-top: 30px;
	background-image:
		url('/images@2x/open-quote.svg'),
		url('/images@2x/close-quote.svg'),
		linear-gradient(45deg, rgba(102, 153, 204, 0) 0%, rgba(102, 153, 204, 0.3) 50%, rgba(102, 153, 204, 0) 100%);
	background-size: 500px, 500px, 100%;
	background-position: left top, right bottom, center center;
	background-repeat: no-repeat, no-repeat, no-repeat;
}
#main.home .testimonial {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 30px;
	padding-left: 60px;
	padding-right: 60px;
	line-height: 1.65em;
	font-size: 18px;
	font-style: italic;
	text-align: center;
}
#main.home .testimonial-author {
	margin-top: 3px;
	font-size: 18px;
	color: #666;
	font-weight: bold;
	font-style: normal;
	line-height: normal;
}
#main.home .testimonial-author .testimonial-title {
	font-size: 15px;
}

#main.video-index #media-content {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	font-size: 14px;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}
#main.video-index #media-content figure {
	flex-basis: 416px;
	box-sizing: border-box;
	margin-top: 30px;
	margin-bottom: 30px;
	margin-left: 15px;
	margin-right: 15px;
	line-height: 1.25em;
}
#main.video-index #media-content figure img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 13px;
}
#main.video-index #media-content figure a:link img {
	opacity: 1;
	-webkit-transition: opacity 1s linear;
	-moz-transition: opacity 1s linear;
	-ms-transition: opacity 1s linear;
	transition: opacity 1s linear;
}
#main.video-index #media-content figure a:hover img {
	opacity: 0.75;
	-webkit-transition: opacity 0.1s linear;
	-moz-transition: opacity 0.1s linear;
	-ms-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}
#main.video-index #media-content figcaption {
	padding-left: 13px;
	padding-right: 13px;
	color: #666; /* "Plays" */
}
#main.video-index #media-content figcaption .plays {
	float: right;
}
#main.video-index #media-content figcaption .plays.fadein {
	opacity: 0; /* jQuery animate */
}
#main.video-index #media-content figcaption .play-count {
	color: #6c6;
}

#video-embed .itemprop {
	display: none;
}
#main.video-single #sidebar .winner {
	color: #f93;
	font-size: 15px;
	font-weight: bold;
}

#main.photography #media-content {
	padding-left: 0;
	padding-right: 0;
}
#main.photography #media-content .collection {
	overflow: hidden;
	border-top-right-radius: 9px;
	border-bottom-right-radius: 9px;
}
#main.photography #media-content img {
	float: left;
	width: 50%;
	height: auto;
}
#main.photography #media-content img.full {
	width: 100%;
}
#main.photography .links-to-other-photographers {
	clear: both;
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
	font-size: 17px;
}

#text-layout #text-content {
	padding-top: 45px;
	padding-bottom: 45px;
	padding-left: 45px;
	padding-right: 45px;
	background-color: #1a1a1a;
	border-top-right-radius: 9px;
	border-bottom-right-radius: 9px;
}
#text-layout #text-content img.rounded,
#text-layout #text-content .rounded img,
#media-layout #media-content img.rounded,
#media-layout #media-content .rounded img {
	border-radius: 9px;
}
#text-layout #sidebar img.rounded,
#text-layout #sidebar .rounded img,
#media-layout #sidebar img.rounded,
#media-layout #sidebar .rounded img {
	border-radius: 7px;
}
#text-layout #text-content .wp-caption {
	max-width: 100%;
}
#text-layout #text-content .wp-caption img {
	border-radius: 7px;
}
#text-layout #text-content time.updated {
	display: none;
}
#text-layout #text-content .more-content-link {
	font-size: 18px;
	text-align: center;
}
body.home #text-layout #text-content {
	border-top-right-radius: 0;
}
body.home #text-content-heading-bar {
	height: 28px;
	background-color: #2a2a2a;
	border-top-right-radius: 9px;
}
body.home #text-content-heading-bar h3 {
	padding-top: 6px;
	padding-right: 12px;
	margin: 0;
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif;
	color: #fff;
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0.2em;
	text-indent: 0.1em;
	text-align: right;
	text-transform: lowercase;
	line-height: normal;
}
body.home #text-layout #text-content h4 {
	margin-bottom: 2px;
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 24px;
	letter-spacing: 1px;
}
body.home #text-content .entry-meta {
	margin-bottom: 1em;
}
#main.blog #text-layout #text-content {
	padding-top: 30px;
}

#main.aerial #text-content #certificates {
	display: flex;
	margin-top: 30px;
	margin-left: -15px;
	margin-right: -15px;
	justify-content: space-around;
	flex-wrap: wrap;
}
#main.aerial #text-content #certificates div {
	margin-left: 15px;
	margin-right: 15px;
}
#main.aerial #text-content #aerial-gallery {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
    margin-left: -15px;
	margin-right: -15px;
}
#main.aerial #text-content #aerial-gallery div {
	flex-basis: 540px;
	margin-top: 30px;
	margin-left: 15px;
	margin-right: 15px;
}
#main.aerial #text-content #aerial-gallery img {
	width: 100%;
	height: auto;
}

#main.apps .app-listing .app-listing-left {
	flex-shrink: 0;
	padding-right: 1.5rem;
}
#main.apps .app-listing .app-listing-left .ios-app-icon {
	margin: 12px;
}
#main.apps .app-listing .app-listing-left .app-price-os {
	margin: 0;
	font-weight: 500;
	text-align: center;
}
#main.apps .app-listing .app-listing-right {
	flex-grow: 1;
}
#main.apps .app-listing a.button {
	display: inline-block;
	padding-top: 13px;
	padding-bottom: 13px;
	padding-left: 40px;
	padding-right: 40px;
	background-color: #b0c;
	border-radius: 7px;
	letter-spacing: 0.1em;
}
#main.apps .app-listing a.button:hover {
	background-color: #c4d;
}

#main.app #text-layout-left {
	overflow: hidden;
}
#main.app #app-store-imitation,
#main.apps .app-listing {
	background-color: #fff;
	border-radius: 9px;
	font-family: system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #000;
	font-size: 15px;
	padding-top: 2.5rem;
	padding-bottom: 2rem;
	padding-left: 4rem;
	padding-right: 4rem;
}
#main.app #app-store-imitation #app-header,
#main.apps .app-listing {
	display: flex;
}
#main.app #app-store-imitation #app-header-left,
#main.apps .app-listing #app-header-left {
	flex-shrink: 0;
	padding-right: 1.5rem;
}
#main.app #app-store-imitation #app-header-right,
#main.apps .app-listing #app-header-right {
	flex-grow: 1;
}
#main.app #app-store-imitation h3.app-title,
#main.apps .app-listing h3.app-title {
	margin-top: 10px;
	margin-bottom: 0;
	font-family: system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 23px;
	font-weight: bold;
	line-height: normal;
}
#main.app #app-store-imitation h3.app-title .app-title-version,
#main.apps .app-listing h3.app-title .app-title-version {
	color: #808080;
	font-size: 13px;
	font-weight: normal;
}
#main.app #app-store-imitation h4.app-subtitle,
#main.apps .app-listing h4.app-subtitle {
	margin-top: 4px;
	margin-bottom: 0;
	font-family: system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #333;
	font-size: 15px;
}
#main.app #app-store-imitation h5 {
	margin-bottom: 1rem;
	font-family: system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #000;
	font-size: 20px;
	font-weight: 500;
	text-indent: 0;
	letter-spacing: normal;
	text-transform: none;
}
#main.app #app-store-imitation .purchase-link-app-store {
	margin-top: 20px;
}
#main.app #app-store-imitation .app-store-price {
	padding-right: 20px;
	color: #3879F6;
	font-size: 36px;
	font-weight: bold;
}
#main.app #app-store-imitation .purchase-link-app-store a {
	display: inline-block;
	padding-top: 10px;
	padding-bottom: 10px;
	vertical-align: middle;
}
#main.app #app-store-imitation .purchase-link-app-store a:hover {
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
}
#main.app #app-store-imitation .purchase-link-app-store img {
	display: block;
}
#main.app #app-store-imitation #purchase-pro button {
	margin: 0;
	border: none;
	color: #fff;
	font-family: system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}
#main.app #app-store-imitation #purchase-pro button {
	padding-top: 0.4rem;
	padding-bottom: 0.4rem;
	padding-left: 1.4rem;
	padding-right: 1.4rem;
	background-color: #3879F6;
	border-radius: 18px;
}
#main.app #app-store-imitation #purchase-pro button:hover {
	background-color: #69f;
	cursor: pointer;
}
#main.app #app-store-imitation #purchase-pro button:active {
	filter: brightness(0.85);
}
#main.app #app-store-imitation .plus-tax {
	display: inline-block;
	color: #808080;
	font-size: 12px;	
}
#main.app #app-store-imitation .app-secure-checkout {
	margin-top: 1px;
	color: #808080;
	font-size: 12px;
}
#main.app #app-store-imitation .app-requirements {
	font-size: 13px;
}
#main.app #app-store-imitation .download-file {
	font-size: 13px;
}
#main.app #app-store-imitation #app-overview,
#main.app #app-store-imitation #app-previews,
#main.app #app-store-imitation #app-whats-new,
#main.app #app-store-imitation #app-features,
#main.app #app-store-imitation #purchase-pro,
#main.app #app-store-imitation #app-ratings-reviews,
#main.app #app-store-imitation #app-privacy,
#main.app #app-store-imitation #unfair-app-store-review-rejection,
#main.app #app-store-imitation #app-version-history {
	border-top: 1px solid #e6e6e6;
	padding-bottom: 1rem;
}
#main.app #app-store-imitation #app-overview {
	display: flex;
	margin-top: 1.3rem;
	padding-bottom: 0.5rem;
	justify-content: space-around;
}
#main.app #app-store-imitation #app-overview a {
	text-decoration: none;
}
#main.app #app-store-imitation #app-overview div {
	text-align: center;
}
#main.app #app-store-imitation #app-overview .app-overview-category {
	margin-top: 0.5rem;
	margin-bottom: 0;
	color: #bdbdbd;
	font-size: 11px;
	font-weight: bold;
	text-transform: uppercase;
}
#main.app #app-store-imitation #app-overview .app-overview-value {
	margin: 0;
	font-family: "SFProText-Rounded", ArialRoundedMTBold, system-ui, "SFProText-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #808080;
	font-size: 20px;
	font-weight: bold;
}
#main.app #app-store-imitation #app-overview .app-overview-value.app-overview-developer {
	font-size: 17px;
}
#main.app #app-store-imitation #app-overview .app-overview-unit {
	margin: 0;
	color: #808080;
	font-size: 11px;
	font-weight: 500;
}
#main.app #app-store-imitation #app-previews #app-previews-horizontal-scroll {
	overflow-x: auto;
	white-space: nowrap;
}
#main.app #app-store-imitation #app-previews #app-previews-horizontal-scroll video {
	display: block;
	border: 1px solid #e6e6e6;
	border-radius: 7px;
}
#main.app #app-store-imitation #app-previews .video-container {
	display: inline-block;
	position: relative;
	margin-right: 20px;
	vertical-align: middle;
}
#main.app #app-store-imitation #app-previews video {
	position: relative;
}
#main.app #app-store-imitation #app-previews .play-pause-button {
	position: absolute;
	width: 60px;
	height: 60px;
	top: 50%;
	left: 50%;
	padding: 0;
	transform: translate(-50%, -50%);
	background-color: rgba(255, 255, 255, 0.15);
	border: none;
	border-radius: 50%;
}
#main.app #app-store-imitation #app-previews .play-pause-button > picture {
	position: absolute;
	width: 100% !important;
	height: 100% !important;
	top: 0;
	left: 3px;
	transform: scale(0.4);
	-webkit-mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTFweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTEgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDQzLjEgKDM5MDEyKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5fQXNzZXRzL0lubGluZS9QbGF5PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9Ik1lZGlhLUNvbnRyb2wtU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Il9Bc3NldHMvSW5saW5lL1BsYXkiIGZpbGw9IiMwMDAwMDAiPgogICAgICAgICAgICA8cGF0aCBkPSJNMCwwLjYwNTA2ODY5MiBDMCwwLjA1ODE3MzcxMjEgMC4zODI1MTY0ODgsLTAuMTU2MTA0Nzg5IDAuODY0MTIyNjUsMC4xMzIzMDE4ODcgTDEwLjYzMjU5ODUsNS45ODIwODkyOCBDMTEuMTA5ODQwMyw2LjI2Nzg4MjM3IDExLjExNDIwNDcsNi43Mjg2MTkxMyAxMC42MzI1OTg1LDcuMDE3MDEwOTcgTDAuODY0MTIyNjUsMTIuODY2NDk3NSBDMC4zODY4ODA4ODksMTMuMTUyMjc1OSAwLDEyLjk0MTQxNjYgMCwxMi4zOTM3MDQxIEwwLDAuNjA1MDY4NjkyIFoiIGlkPSJSZWN0YW5nbGUiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==');
	mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTFweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTEgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDQzLjEgKDM5MDEyKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5fQXNzZXRzL0lubGluZS9QbGF5PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9Ik1lZGlhLUNvbnRyb2wtU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Il9Bc3NldHMvSW5saW5lL1BsYXkiIGZpbGw9IiMwMDAwMDAiPgogICAgICAgICAgICA8cGF0aCBkPSJNMCwwLjYwNTA2ODY5MiBDMCwwLjA1ODE3MzcxMjEgMC4zODI1MTY0ODgsLTAuMTU2MTA0Nzg5IDAuODY0MTIyNjUsMC4xMzIzMDE4ODcgTDEwLjYzMjU5ODUsNS45ODIwODkyOCBDMTEuMTA5ODQwMyw2LjI2Nzg4MjM3IDExLjExNDIwNDcsNi43Mjg2MTkxMyAxMC42MzI1OTg1LDcuMDE3MDEwOTcgTDAuODY0MTIyNjUsMTIuODY2NDk3NSBDMC4zODY4ODA4ODksMTMuMTUyMjc1OSAwLDEyLjk0MTQxNjYgMCwxMi4zOTM3MDQxIEwwLDAuNjA1MDY4NjkyIFoiIGlkPSJSZWN0YW5nbGUiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	background-color: rgba(255, 255, 255, 0.75);
	mix-blend-mode: lighter;
}
#main.app #app-store-imitation #app-previews .play-pause-button.playing > picture {
	left: 0;
	transform: scale(0.35);
	-webkit-mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTFweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTEgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDQzLjEgKDM5MDEyKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5fQXNzZXRzL0lubGluZS9QYXVzZTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPjwvZGVmcz4KICAgIDxnIGlkPSJNZWRpYS1Db250cm9sLVN5bWJvbHMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJfQXNzZXRzL0lubGluZS9QYXVzZSIgZmlsbD0iIzAwMDAwMCI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik03LDAuOTk4NTAyMzI5IEM3LDAuNDQ3MDQ0NzIgNy40NDMzNTMxOCwwIDguMDA5MzY4OSwwIEw5Ljk5MDYzMTEsMCBDMTAuNTQ4MDkwMiwwIDExLDAuNDQ3NDg5NDI2IDExLDAuOTk4NTAyMzI5IEwxMSwxMi4wMDE0OTc3IEMxMSwxMi41NTI5NTUzIDEwLjU1NjY0NjgsMTMgOS45OTA2MzExLDEzIEw4LjAwOTM2ODksMTMgQzcuNDUxOTA5ODUsMTMgNywxMi41NTI1MTA2IDcsMTIuMDAxNDk3NyBMNywwLjk5ODUwMjMyOSBaIE0wLDAuOTk4NTAyMzI5IEMwLDAuNDQ3MDQ0NzIgMC40NDMzNTMxNzYsMCAxLjAwOTM2ODksMCBMMi45OTA2MzExLDAgQzMuNTQ4MDkwMTUsMCA0LDAuNDQ3NDg5NDI2IDQsMC45OTg1MDIzMjkgTDQsMTIuMDAxNDk3NyBDNCwxMi41NTI5NTUzIDMuNTU2NjQ2ODIsMTMgMi45OTA2MzExLDEzIEwxLjAwOTM2ODksMTMgQzAuNDUxOTA5ODQ4LDEzIDAsMTIuNTUyNTEwNiAwLDEyLjAwMTQ5NzcgTDAsMC45OTg1MDIzMjkgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=');
	mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTFweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTEgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDQzLjEgKDM5MDEyKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5fQXNzZXRzL0lubGluZS9QYXVzZTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPjwvZGVmcz4KICAgIDxnIGlkPSJNZWRpYS1Db250cm9sLVN5bWJvbHMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJfQXNzZXRzL0lubGluZS9QYXVzZSIgZmlsbD0iIzAwMDAwMCI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik03LDAuOTk4NTAyMzI5IEM3LDAuNDQ3MDQ0NzIgNy40NDMzNTMxOCwwIDguMDA5MzY4OSwwIEw5Ljk5MDYzMTEsMCBDMTAuNTQ4MDkwMiwwIDExLDAuNDQ3NDg5NDI2IDExLDAuOTk4NTAyMzI5IEwxMSwxMi4wMDE0OTc3IEMxMSwxMi41NTI5NTUzIDEwLjU1NjY0NjgsMTMgOS45OTA2MzExLDEzIEw4LjAwOTM2ODksMTMgQzcuNDUxOTA5ODUsMTMgNywxMi41NTI1MTA2IDcsMTIuMDAxNDk3NyBMNywwLjk5ODUwMjMyOSBaIE0wLDAuOTk4NTAyMzI5IEMwLDAuNDQ3MDQ0NzIgMC40NDMzNTMxNzYsMCAxLjAwOTM2ODksMCBMMi45OTA2MzExLDAgQzMuNTQ4MDkwMTUsMCA0LDAuNDQ3NDg5NDI2IDQsMC45OTg1MDIzMjkgTDQsMTIuMDAxNDk3NyBDNCwxMi41NTI5NTUzIDMuNTU2NjQ2ODIsMTMgMi45OTA2MzExLDEzIEwxLjAwOTM2ODksMTMgQzAuNDUxOTA5ODQ4LDEzIDAsMTIuNTUyNTEwNiAwLDEyLjAwMTQ5NzcgTDAsMC45OTg1MDIzMjkgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=');
}
#main.app #app-store-imitation #app-previews .play-pause-button:active > picture {
	transform: scale(0.4) scale(calc(8/9));
}
#main.app #app-store-imitation #app-previews .play-pause-button.playing:active > picture {
	transform: scale(0.35) scale(calc(8/9));
}
#main.app #app-store-imitation #app-previews #app-previews-horizontal-scroll img {
	display: inline-block;
	min-width: 530px;
	margin-right: 20px;
	border-radius: 7px;
	vertical-align: middle;
}
#main.app #app-store-imitation #app-previews #app-previews-horizontal-scroll img:last-child {
	margin-right: 0;
}
#main.app #app-store-imitation #app-description {
	padding-bottom: 1rem;
}
#main.app #app-store-imitation #app-version-history details {
	font-family: 'Courier New', Courier, monospace;
}
#main.app #app-store-imitation #app-version-history details ul {
	margin-top: 0;
}
#main.app #app-store-imitation #app-version-history .app-version-date {
	color: #808080;
	font-size: 13px;
}

#main.website-design #media-content {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
#main.website-design #media-content figure {
	display: flex;
	flex-basis: 345px;
	margin-top: 45px;
	margin-bottom: 45px;
	margin-left: 5px;
	margin-right: 5px;
	font-size: 13px;
	line-height: 1.35em
}
#main.website-design #media-content .figblock-thumb {
	width: 140px;
	min-width: 140px;
	line-height: normal;
	text-align: center;
}
#main.website-design #media-content .figblock-thumb img {
	border-radius: 7px;
}
#main.website-design #media-content .figblock-thumb a:link img {
	opacity: 1;
	-webkit-transition: opacity 1s linear;
	-moz-transition: opacity 1s linear;
	-ms-transition: opacity 1s linear;
	transition: opacity 1s linear;
}
#main.website-design #media-content .figblock-thumb a:hover img {
	opacity: 0.75;
	-webkit-transition: opacity 0.1s linear;
	-moz-transition: opacity 0.1s linear;
	-ms-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}
#main.website-design #media-content .figblock-thumb p { /* url */
	margin-top: 2px;
	margin-bottom: 0;
	font-size: 11px;
}
#main.website-design #media-content figcaption p:first-child {
	margin-top: 0;
	font-size: 15px;
}
#main.website-design #media-content figcaption p:last-child {
	margin-bottom: 0;
	font-size: 11px;
}
#main.website-design #media-content figcaption .location {
	color: #b0c;
	font-size: 14px;
	font-weight: bold;
}
.stack-badge {
	width: 230px;
	margin-top: 2em;
	margin-left: auto;
	margin-right: auto;
	background-color: #222;
	border-radius: 7px;
	text-align: center;
}
.stack-badge p {
	margin-bottom: 0;
	line-height: 2em;
}
.stack-badge-image {
	display: inline-block;
	width: 206px;
	height: 56px;
	background-image: url('https://stackoverflow.com/users/flair/1291000.png?theme=dark');
	background-size: 208px 58px;
	background-position: center center;
}

#main.about #text-content h2 {
	margin-top: 0;
}
#main.about #text-content .cousin-bio {
	display: flex;
	margin-bottom: 2em;
}
#main.about #text-content .cousin-bio figure {
	min-width: 120px;
	margin-right: 30px;
	margin-bottom: 1em;
	text-align: center;
}
#main.about #text-content .cousin-bio figure img {
	border-radius: 7px;
}
#main.about #text-content figcaption {
	font-size: 12px;
	text-align: center;
}
#main.about #about-slider {
	margin-top: 30px;
}
#main.about #about-slider .image {
	border-radius: 7px;
}
/* simple slider theme css: /style/advanced-slider/dax-simple.css */
#main.about #philly-sports {
	margin-top: 30px;
	text-align: center;
}
#main.about #philly-sports img {
	padding-left: 10px;
	padding-right: 10px;
	vertical-align: middle;
}
#main.about #linked-in-badge {
	text-align: center;
}
#main.about .LI-profile-badge {
	display: inline-block;
	overflow: hidden;
	margin-top: 30px;
	border-radius: 7px;
}
#main.contact #sidebar #section-logo-block {
	margin-bottom: 2em;
}
#main.contact .contact-social-links a {
	font-weight: bold;
}
#main.contact #sidebar .weatherwidget-io {
	margin-top: 2em;
}

#sidebar {
	flex-basis: 315px;
	flex-grow: 1;
	box-sizing: border-box;
	margin-top: 30px;
	margin-left: 15px;
	margin-right: 15px;
	padding-bottom: 30px;
	font-size: 15px;
}
#sidebar h1,
#sidebar h2 { /* sometimes the sidebar header is h2, sometimes h1 (if the main content area does not have a header) */
	margin-top: 0;
	margin-bottom: 1em;
	font-family: Cambria, Times, Georgia, 'Times New Roman', serif;
	font-size: 21px;
	font-weight: bold;
	text-transform: none;
	line-height: 1.35em;
	text-align: center;
}
#sidebar #section-logo-block {
	text-align: center;
}
#sidebar h2#section-logo,
#sidebar h3#section-logo { /* sometimes the sidebar header is h2, sometimes h1 (if the main content area does not have a header) */
	display: inline-block;
	margin-top: 0;
	margin-bottom: 2em;
	padding-top: 1px;
	padding-bottom: 1px;
	padding-left: 10px;
	padding-right: 10px;
	border: 1px solid #b0c;
	border-radius: 9px;
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif, Helvetica, Arial, sans-serif;
	font-size: 13px;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 5px;
	line-height: 1.65em;
	text-indent: 2px;
	text-align: center;
}
.home .section-logo {
	display: none;
}
#media-layout #sidebar {
	margin-left: 0;
	margin-right: 30px;
}
#main.home #sidebar { /* home "sidebar" is below slider */
	width: auto;
	margin-top: 30px;
	margin-bottom: 60px;
	margin-left: 0;
	margin-right: 0;
}
#main.home #sidebar h1 {
	margin-left: 15px;
	margin-right: 15px;
}
#main.home #sidebar h2#section-logo {
	margin-bottom: 15px;
	border: none;
}
#main.home #sidebar #featured-work {
	display: flex;
	max-width: 1780px;
	margin-left: auto;
	margin-right: auto;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
#main.home #sidebar #featured-work .featured-box {
	flex-basis: 416px;
	box-sizing: border-box;
	margin-top: 30px;
	margin-left: 15px;
	margin-right: 15px;
	padding-top: 1em;
	background-color: rgba(0,0,0,0.3);
	border-radius: 13px;
	text-align: center;
}
#main.home #sidebar #featured-work h3,
#main.home #sidebar #featured-work p {
	padding-left: 10px;
	padding-right: 10px;
}
#main.home #sidebar #featured-work h3 { /* links */
	margin-top: 0;
	font-size: 19px;
	font-weight: normal;
	line-height: normal;
}
#main.home #sidebar #featured-work p {
	font-size: 14px;
	line-height: 1.35em;
}
#main.home #sidebar #featured-work .new {
	margin-right: 4px;
	padding-left: 3px;
	padding-right: 3px;
	padding-top: 1px;
	padding-bottom: 1px;
	background-color: #f60;
	border-radius: 3px;
	font-family: Verdana, Geneva, sans-serif;
	color: #000;
	font-size: 9px;
	font-weight: bold;
	vertical-align: 2px;
	line-height: 15px;
	text-transform: uppercase;
}
#main.home #sidebar #featured-work .featured-box img {
	display: block;
	width: 100%;
	height: auto;
	min-height: 234px; /* prevent layout shift on load (overridden in phone media query to allow flex-shrink) */
}
#main.home #sidebar #featured-work .featured-box .featured-box-credit {
	font-size: 13px;
}
#main.home .more-videos {
	margin-top: 4rem;
	text-align: center;
}
#main.home .more-videos a {
	display: inline-block;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	padding-left: 3rem;
	padding-right: 3rem;
	background-color: rgba(102, 153, 204, 0.25);
	border-radius: 13px;
	text-decoration: none;
	font-size: 21px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 10px;
}
#main.home .more-videos a:hover {
	background-color: #69c;
	color: #fff;
}
#main.video-single #sidebar { /* video "sidebar" is below embedded video */
	margin-top: 45px;
	margin-bottom: 90px;
	margin-right: 0;
	padding-left: 30px;
	padding-right: 30px;
	font-size: 15px;
	line-height: 1.35em;
}
#main.video-single #sidebar-content .entry-content {
	clear: both;
}
#main.video-single #sidebar #sidebar-content {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
}
#main.video-single #sidebar h1 {
	margin-bottom: 0;
}
#main.video-single #sidebar .content-warning,
#main.video-single #sidebar .resolution {
	padding-top: 1px;
	padding-bottom: 1px;
	padding-left: 6px;
	padding-right: 6px;
	border-radius: 3px;
	font-family: Verdana, Geneva, sans-serif;
	color: #000;
	font-size: 11px;
	font-weight: bold;
	text-transform: uppercase;
}
#main.video-single #sidebar .content-warning {
	background-color: #da0000;
}
#main.video-single #sidebar .resolution {
	background-color: #f90;
	line-height: 2.75em;
}
#main.video-single #sidebar .stats {
	height: 60px;
	font-family: Verdana, Geneva, sans-serif;
	color: #666;
	font-size: 11px;
	font-weight: bold;
}
#main.video-single #sidebar .date-duration {
	float: left;
}
#main.video-single #sidebar .date-stamp {
	text-transform: uppercase;
}
#main.video-single #sidebar .plays {
	float: right;
	text-align: right;
	text-transform: uppercase;
}
#main.video-single #sidebar .plays.fadein {
	opacity: 0; /* jQuery animate */
}
.play-count { /* match .view-count */
	color: #6c6;
}
#main.video-single #sidebar .play-count {
	color: #6c6;
	font-size: 13px;
}
#main.video-single #sidebar .description {
	text-align: justify;
}
#main.video-single #sidebar .credits {
	text-align: center;
}
#main.video-single #sidebar .lower-credits {
	font-size: 13px;
	text-align: center;
}
#main.video-single #sidebar .easter-egg a {
	color: #ddd; /* match body */
	text-decoration: none;
}
#main.video-single #sidebar .winner {
	color: #f93;
	font-size: 15px;
	line-height: 1.5em;
	font-weight: bold;
}
#main.video-single table.itunes-link {
	margin-left: auto;
	margin-right: auto;
	padding-top: 5px;
	font-family: Helvetica, Arial, sans-serif;
	font-size: 11px;
	text-align: center;
	line-height: 1.3em;
}
#main.video-single table.itunes-link td {
	padding-left: 3px;
	padding-right: 3px;
}
#main.video-single table.itunes-link a {
	font-style: italic;
}
#main.video-single table.swim-team-copyright {
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
	font-size: 12px;
	line-height: normal;
}
#main.video-single table.swim-team-copyright img {
	display: block;
	margin-right: 5px;
	border-radius: 3px;
}
vtable.swim-team-copyright .reg {
	font-size: 11px;
}

/* fade in/out of #dax-roggio-photography/#shea-roggio-photography controlled by inline CSS, PHP, jQuery */
#main.photography #sidebar a.show-photos {
	display: inline-block;
	margin-left: 12px;
	margin-right: 12px;
	padding-bottom: 4px;
	border-bottom: 4px solid transparent;
	color: #69c;
	text-transform: uppercase;
	text-decoration: none;
}
#main.photography #sidebar a.show-photos:hover {
	border-bottom: 4px solid rgba(102, 153, 204, 0.5); /* #69c */
}
#main.photography #sidebar a.show-photos.current-photographer { /* underline currently displayed photographer */
	color: #69c;
	border-bottom: 4px solid #69c;
}
#main.photography #sidebar ul {
	list-style-type: none;
	padding: 0;
}

#main.contact #sidebar {
	max-width: 480px;
	margin-left: 30px;
	margin-bottom: 15px;
}

#main.blog #sidebar .sidebar-primary {
	font-size: 13px;
	text-align: justify;
}
#sidebar .search-box {
	position: absolute;
	top: 60px;
	right: 15px;
}
#sidebar .search-box ::-webkit-input-placeholder,
#sidebar .search-box ::-moz-placeholder,
#sidebar .search-box ::-ms-input-placeholder,
#sidebar .search-box ::placeholder {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 13px;
	color: #777;
	font-weight: bold;
	letter-spacing: 0.1em;
}
#sidebar .search-box input.s {
	width: 0;
	height: 27px;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 25px;
	padding-right: 0;
	background-image: url('/images@2x/blog/search-magnifying-glass.png');
	background-size: 12px 15px;
	background-position: 10px 6px;
	background-repeat: no-repeat;
	background-color: transparent;
	border: none;
	font-size: 13px;
	color: #333;
	font-weight: bold;
	cursor: pointer;
	-webkit-transition: 0.4s linear;
	-moz-transition: 0.4s linear;
	-ms-transition: 0.4s linear;
	transition: 0.4s linear;
}
#sidebar .search-box input.s:focus {
	width: 256px;
	background-color: #aaa;
	padding-left: 30px;
	padding-right: 30px;
	background-image: url('/images@2x/blog/search-magnifying-glass-focus.png');
	background-size: 12px 15px;
	background-position: 10px 6px;
	cursor: text;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
#sidebar .search-box .search-submit {
	display: none;
}

.sidebar-secondary {
	margin-top: 30px;
	font-size: 13px;
	line-height: 1.25;
}
body.home .sidebar-secondary {
	flex-grow: 1;
	flex-basis: 315px;
	box-sizing: border-box;
	margin-top: 0;
	margin-left: 15px;
	margin-right: 15px;
}
.sidebar-secondary ul {
	list-style-type: none;
	margin: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
}
.sidebar-secondary li {
	margin-top: 15px;
	margin-bottom: 15px;
}
.sidebar-secondary li:first-child {
	margin-top: 0;
}
.sidebar-secondary li:last-child {
	margin-bottom: 0;
}
.sidebar-secondary .decent-comments {
	color: #777;
}
.sidebar-secondary .decent-comments .comment-excerpt::before {
    content: ': ';
    white-space: pre;
}
.sidebar-secondary .widget_categories li {
	margin-top: 0.2em;
	margin-bottom: 0.2em;
}
.sidebar-secondary .privacy-link {
	font-size: 13px;
	text-align: center;
}
.sidebar-secondary .privacy-link p {
	margin-bottom: 0;
}

.link-widget {
	overflow: hidden;
	margin-top: 15px;
	border-bottom-left-radius: 9px;
}
#footer-widgets .link-widget {
	margin-top: 0;
}
.link-widget ul {
	background-color: #1a1a1a;
}
.sidebar-secondary div:first-child.link-widget {
	margin-top: 0;
}
.link-widget-heading {
	height: 28px;
	margin-top: 0;
	margin-bottom: 0;
	background-color: #2a2a2a;
	border-top-left-radius: 9px;
}
#footer-widgets .link-widget-heading {
	height: 28px;
	margin-top: 0;
	margin-bottom: 0;
	background-color: #2a2a2a;
	border-top-left-radius: 0;
	border-top-right-radius: 9px;
}
.link-widget h5 {
	padding-top: 6px;
	padding-left: 12px;
	margin: 0;
}
#footer-widgets .link-widget h5 {
	padding-left: 0;
	padding-right: 12px;
	text-align: right;
}
.link-block { /* styling impacts sidebar (with gray background), link-block style widgets in footer, as well as web design sidebar */
	padding-top: 20px;
	padding-bottom: 20px; /* match #footer-widgets ul */
	padding-left: 10px;
	padding-right: 10px;
	background-color: #1a1a1a;
	border-radius: 7px;
	color: #666;
	font-size: 14px;
	text-transform: uppercase;
	line-height: 14px;
}
#main.website-design .link-block {
	display: inline-block;
	margin-top: 1.65em;
	margin-bottom: 2em;
	padding-left: 20px;
	padding-right: 20px;
}
#main.website-design .link-block p {
	text-align: left;
}
.link-block a {
	display: block;
}
.link-block a.external-link {
	/* no real need to warn about external links since we don't force a new tab/window */
	/*
	padding-right: 13px;
	background-position: center right;
	background-repeat: no-repeat;
	background-image: url('/images@2x/external-link.png');
	background-size: 10px 10px;
	*/
}
.link-block a.external-link:visited {
	/* it is not possible to use a different background image with a visited pseudo-class selector in most browsers for security reasons: https://hacks.mozilla.org/2010/03/privacy-related-changes-coming-to-css-vistited/ */
}
.link-block p {
	margin: 0;
	padding-top: 12px;
	padding-bottom: 12px;
}
.link-block p:first-child {
	padding-top: 0;
}
.link-block p:last-child {
	padding-bottom: 0;
}
.link-block-small {
	font-size: 10px;
}
.link-block img {
	margin-top: -3px;
}
.link-block-icon-left {
	float: left;
	margin-right: 5px;
	border-radius: 5px;
}
.link-block-icon-right {
	float: right;
	border-radius: 5px;
}


#main.blog h1 {
	margin-bottom: 1.5em;
}
#main.blog-index h1 {
	margin-top: 0;
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif, Helvetica, Arial, sans-serif;
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 5px;
	text-indent: 2px;
	text-transform: uppercase;
	line-height: normal;
}
#main.blog-index #text-content h2 {
	margin-bottom: 2px;
}

#blog-announcement {
	display: flex;
	justify-content: center;
	margin-top: 10px;
	margin-bottom: 40px;
	margin-left: auto;
	margin-right: auto;
	font-size: 14px;
}
#blog-announcement div {
	padding-left: 5px;
	padding-right: 5px;
}
#blog-announcement a {
	color: #6c6;
	font-weight: bold;
}

#main.blog .post-nav {
	position: relative;
	font-size: 13px;
	text-align: center;
	text-transform: uppercase;
	line-height: normal;
}
#main.blog .above-post-nav {
	margin-bottom: 60px;
}
body:not(.paged) #main.blog-index .above-post-nav .page-numbers {
	display: none;
}
#main.blog .below-post-nav {
	margin-top: 45px;
}
#main.blog .blog-index-pagination-links .prev,
#main.blog .post-nav-links .next {
	position: absolute;
	left: 0;
}
#main.blog .blog-index-pagination-links .next,
#main.blog .post-nav-links .prev {
	position: absolute;
	right: 0;
}
#main.blog .page-numbers:not(.next):not(.prev) {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 14px;
	margin-left: 5px;
	margin-right: 5px;
}
.entry-title .protected,
.entry-title .private {
	padding-top: 1px;
	padding-bottom: 1px;
	padding-left: 6px;
	padding-right: 6px;
	background-color: #da0000;
	border-radius: 3px;
	font-family: Verdana, Geneva, sans-serif;
	color: #000;
	font-size: 9px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: normal;
}
.entry-title .protected .colon-space,
.entry-title .private .colon-space {
	display: none;
}
#text-content .entry-content.post-password-required {
	padding-bottom: 7em;
}
.entry-title a:hover span {
	text-decoration: none;
	cursor: default;
}
.entry-meta {
	margin-bottom: 4em;
	color: #666;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
	line-height: 1.7em;
}
#main.blog-index .entry-meta {
	margin-top: 0.3em;
	margin-bottom: 2em;
	color: #666;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
}
#main.blog-single .entry-meta {
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 12px;
	padding-right: 12px;
	background-color: #222;
	border-radius: 7px;
}
#main.blog-single .entry-footer.entry-meta {
	margin-top: 3em;
	margin-bottom: 6em;
	padding: 0;
	background-color: transparent;
}
#main.blog .entry-footer {
	clear: both;
	text-align: center;
}
#main.blog .entry-footer .meta-title,
.entry-meta .author a,
.entry-meta .entry-date {
	color: #aaa;
}
.view-count { /* match .play-count */
	color: #6c6;
}
.entry-summary {
	margin-bottom: 60px;
	line-height: 1.65em; /* matches .entry-content */
}
a.read-more {
	font-weight: bold;
	text-transform: uppercase;
}

#main.blog-single #text-content {
	line-height: 1.75em;
}
#main.blog-single #text-content #share-buttons {
	float: right;
	height: 23px; /* prevent layout shift on load */
}
#main.blog-single #text-content #share-buttons div {
	display: inline-block;
	width: 60px; /* prevent layout shift on load */
	margin-right: 29px;
	vertical-align: top;
	line-height: normal;
}
#main.blog-single #text-content #share-buttons div:last-of-type {
	margin-right: 0;
}
#main.blog-single #text-content #share-buttons div.li-share-button {
	margin-right: 18px;
}
#main.blog-single #text-content #share-buttons a.twitter-share-button { /* class required for Twitter script */
}
#main.blog-single #text-content #share-buttons div.fb-share-button { /* class required for Facebook script */
}

.google-ad-post {
	overflow: hidden;
	margin-top: 2em;
	margin-bottom: 2em;
	text-align: center;
}

.update-box {
	margin-top: 40px;
	margin-bottom: 40px;
	padding-top: 15px;
	padding-bottom: 12px;
	padding-left: 30px;
	padding-right: 30px;
	background-color: #222;
	border-radius: 7px;
	line-height: 1.5em;
	font-size: 14px;
}
.update-box p {
	margin-top: 0.75em;
	margin-bottom: 0.75em;
}
.update-box h3 {
	margin-top: 0;
	color: #f93;
	font-weight: normal;
}
.update-box-date {
	margin-left: 6px;
	font-size: 11px;
	color: #aaa;
	text-transform: uppercase;
	font-weight: bold;
}

.divSlide-list li {
	margin-top: 1em;
	margin-bottom: 1em;
	color: #aaa;
	font-size: 12px;
}
.divSlide-list h4.list-item {
	margin-bottom: 0;
}
img.toggle-divSlide {
	margin-left: 3px;
	vertical-align: middle;
}
.divSlide {
	display: none; /* slide-down divs start out hidden */
	padding-right: 37px;
	font-size: 14px;
	line-height: 1.5em;
}
.divSlide p {
	margin-bottom: 0.8em;
}
.divSlide-list .update {
	font-size: 14px;
	line-height: 1.5em;
}
.divSlide-list .update strong {
	text-transform: uppercase;
}
.list-mark {
	position: absolute;
	margin-left: -43px;
	margin-top: 2px;
}
.list-mark-pair {
	position: absolute;
	margin-left: -61px;
	margin-top: 2px;
}

.rounded-numeral {
	display: inline-block;
	width: 30px;
	margin-top: 2em;
	margin-right: 5px;
	background-color: #06c;
	border-radius: 6px;
	font-family: Verdana, Geneva, sans-serif;
	color: #ddd;
	font-size: 13px;
	text-align: center;
}

ol.big-number-list li { /* the number */
	font-size: 24px;
	color: #06c;
	font-weight: bold;
}
ol.big-number-list p.li-heading {
	margin-top: 1.75em;
	margin-bottom: 0;
	font-size: 18px;
	color: #ddd;
	letter-spacing: normal;
	text-transform: none;
}
ol.big-number-list p {
	font-size: 14px;
	color: #ddd;
	font-weight: normal;
}
ol.big-number-list .update {
	color: #f93;
	font-weight: bold;
	text-transform: uppercase;
}

h3.scroll-to-anchor {
	padding-top: 1em;
}
.system-menu-item {
	font-family: -apple-system, BlinkMacSystemFont, 'SFUIText-Light', Candara, 'Trebuchet MS', Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: bold;
}
code.command-line {
	background-color: #000;
	padding: 1em;
	font-family: 'Source Code Pro', Consolas, Monaco, monospace;
	color: #46fc34;
	font-size: 12px;
}

.syntaxhighlighter-code-block {
	margin-left: 4em;
	font-family: 'Source Code Pro', Consolas, Monaco, monospace;
	color: #46fc34;
	font-size: 14px;
	line-height: 1.8em;
}
.comment-content pre {
	margin-left: 3em;
	font-family: 'Source Code Pro', Consolas, Monaco, monospace;
	color: #007F00;
	line-height: 1.7em;
}

.app-notice {
	float: right;
	height: 250px;
	width: 250px;
	margin-top: 15px;
	margin-bottom: 15px;
	margin-left: 15px;
	background-color: #222;
	border-radius: 125px;
	line-height: normal;
}
.app-notice-content {
	display: table-cell;
	height: 230px;
	width: 250px;
	text-align: center;
	vertical-align: middle;
}
.app-notice h3 {
	margin-top: 2px;
	margin-bottom: 4px;
	font-family: 'Avenir Next', Candara, 'Trebuchet MS', Helvetica, Arial, sans-serif;
	font-weight: normal;
}
.app-notice h4 {
	margin-top: 4px;
	margin-bottom: 16px;
	font-family: 'Avenir Next', Candara, 'Trebuchet MS', Helvetica, Arial, sans-serif;
	font-size: 12px;
}
.app-update-box h4 {
	font-size: 21px;
}
.app-update-box ul {
	line-height: 1.9em;
}
.app-screenshots img {
	width: 100%;
	height: auto;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
.app-support-link {
	margin-top: 2em;
	margin-bottom: 2em;
	color: #ff00b2;
	font-weight: bold;
}

.responsive-media-wrapper-16-9 {
	position: relative;
	height: 0;
	padding-bottom: 56.25%; /* 16:9 */
	margin-top: 3em;
	margin-bottom: 3em;
}
.responsive-media-wrapper-16-9 img,
.responsive-media-wrapper-16-9 iframe,
.responsive-media-wrapper-16-9 video {
	position: absolute; /* doesn't appear to be necessary in Safari but in other browsers height will shrink to 0 without this */
	width: 100%;
	height: 100%;
	max-height: calc(100vh - 168px); /* 100% vertical viewport minus top, footer, and padding (match #media-content) */
	top: 0;
	left: 0;
}
.responsive-media-wrapper-17-9 {
	position: relative;
	height: 0;
	padding-bottom: 52.94%; /* 17:9 */
	margin-top: 3em;
	margin-bottom: 3em;
}
.responsive-media-wrapper-17-9 img,
.responsive-media-wrapper-17-9 iframe,
.responsive-media-wrapper-17-9 video {
	position: absolute; /* doesn't appear to be necessary in Safari but in other browsers height will shrink to 0 without this */
	width: 100%;
	height: 100%;
	max-height: calc(100vh - 168px); /* 100% vertical viewport minus top, footer, and padding (match #media-content) */
	top: 0;
	left: 0;
}

#main.blog-single #media-content .entry-footer {
	clear: both;
	padding-top: 15px;
	text-align: center;
}

/* comments formatting in /styles/comments.css */

#main.search-results #media-content #no-search-results {
	text-align: center;
}
#main.search-results #media-content #no-search-results h3 {
	margin-bottom: 40px;
}
#main.search-results #media-content .search-box ::-webkit-input-placeholder,
#main.search-results #media-content .search-box ::-moz-placeholder,
#main.search-results #media-content .search-box ::-ms-input-placeholder,
#main.search-results #media-content .search-box ::placeholder {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 13px;
	color: #aaa; /* hidden in webkit by using same color as background */
	font-weight: bold;
	letter-spacing: 0.1em;
}
#main.search-results #media-content .search-box input.s {
	width: 180px;
	height: 27px;
	margin-top: 40px;
	margin-bottom: 40px;
	padding-left: 10px;
	padding-right: 10px;
	background-color: #aaa;
	border: none;
	font-size: 13px;
	color: #333;
	font-weight: bold;
}

#main.author #text-content .author-bio {
	display: flex;
	margin-top: 15px;
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 2px solid #333;
}
#main.author #text-content .author-bio .bio-pic {
	min-width: 120px;
	margin-right: 30px;
}
#main.author #text-content h2 {
	margin-top: 0;
	line-height: normal;
}
#main.author #text-content #addendum {
	margin-top: 40px;
	padding-top: 25px;
	border-top: 2px solid #333;
	text-align: center;
}
#main.author #text-content p.quotation {
	margin-top: 40px;
	margin-bottom: 0;
	line-height: 1.5em;
	font-size: 21px;
	font-style: italic;
}
#main.author #text-content p.attribution {
	margin-top: 3px;
	font-size: 14px;
	color: #666;
	font-weight: bold;
}
#main.author #text-content #five-of-us {
	margin-top: 60px;
	margin-left: -15px;
	margin-right: -15px;
}
#main.author #text-content #five-of-us img {
	max-width: calc(100% - 30px);
	margin-right: 15px;
	margin-left: 15px;
}

#main.error404 #media-content {
	display: block;
}
#main.error404 #media-content h1 {
	margin: 0;
	padding-top: 30px;
	padding-bottom: 30px;
	font-size: 42px;
	font-style: italic;
	text-align: center;
}
body.error404 #media-content p {
	font-size: 28px;
	line-height: 1.5em;
}


/* Photo Gallery plugin */
span[class^='bwg_standart_thumb_0'] { /* thumbnail vertical spacing */
	margin-top: 0 !important;
	margin-bottom: 48px !important;
}
span[class^='bwg_title_spun'] { /* thumbnail title */
	padding: 0 !important;
	font-family: Monaco, 'Source Code Pro', Consolas, monospace !important;
	color: #666 !important;
	font-size: 10px !important;
	font-weight: normal !important;
	text-shadow: none !important;
	letter-spacing: 1px !important;
	line-height: 1.5em !important;
	text-align: left !important;
}
.bwg_image_info { /* image title background */
	position: absolute !important;
	z-index: 20000 !important;
	width: auto !important;	
	bottom: 12px !important; /* match .bwg_image_count_container.bwg_ctrl_btn */
	right: 10px !important; /* match .bwg_image_count_container.bwg_ctrl_btn */
	padding: 0 !important;
	background: none !important;
}
.bwg_image_title { /* image title text */
	opacity: 0.5 !important;
	font-family: Monaco, 'Source Code Pro', Consolas, monospace !important;
	font-size: 10px !important;
	font-weight: normal !important;
	letter-spacing: 1px !important;
	line-height: 1.5em !important;
	-webkit-user-select: auto !important;
	-moz-user-select: auto !important;
	-ms-user-select: auto !important;
	user-select: auto !important;
}
#spider_popup_left-ico { /* prev background */
	left: 0 !important;
	opacity: 1 !important;
	background-color: rgba(0, 0, 0, 0.25) !important;
	border-radius: 0 !important;
	border-top-right-radius: 5px !important;
	border-bottom-right-radius: 5px !important;
}
#spider_popup_right-ico { /* next background */
	right: 0 !important;
	opacity: 1 !important;
	background-color: rgba(0, 0, 0, 0.25) !important;
	border-radius: 0 !important;
	border-top-left-radius: 5px !important;
	border-bottom-left-radius: 5px !important;
}
.bwg_prev_btn,
.bwg_next_btn { /* prev/next text */
	color: rgba(255, 255, 255, 0.5) !important;
	line-height: 1.5em !important;
}
#spider_popup_left:hover .bwg_prev_btn,
#spider_popup_right:hover .bwg_next_btn { /* prev/next arrow hover */
	color: rgba(255, 255, 255, 1.0) !important;
}
.bwg_image_count_container.bwg_ctrl_btn { /* image counter container/text */
	width: auto !important;
	bottom: 12px !important; /* match .bwg_image_info */
	left: 10px !important; /* match .bwg_image_info */
	margin: 0 !important;
	opacity: 0.5 !important;
	font-family: Monaco, 'Source Code Pro', Consolas, monospace !important;
	color: #fff !important;
	font-size: 10px !important;
	font-weight: normal !important;
	line-height: 1.5em !important;
}
.bwg_image_count_container.bwg_ctrl_btn:hover { /* image counter container/text hover */
	opacity: 0.5 !important;
	width: auto !important;
	margin: 0 !important;
	color: #fff !important;
	cursor: default !important;
}
.bwg_toggle_container { /* toggle slide controls container */
	opacity: 1.0 !important;
	background-color: rgba(0, 0, 0, 0.75) !important;
	color: #fff !important;
}
.bwg_toggle_btn { /* toggle slide controls text */
	color: rgba(255, 255, 255, 0.5) !important;
}
.bwg_toggle_container:hover .bwg_toggle_btn { /* toggle slide controls text hover */
	color: rgba(255, 255, 255, 1.0) !important;
}
.bwg_ctrl_btn_container { /* slide controls container */
	background-color: rgba(0, 0, 0, 0.75) !important;
}
.bwg_ctrl_btn { /* slide controls */
	width: 20px !important;
	margin-top: 10px !important;
	margin-left: 5px !important;
	margin-right: 5px !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.5) !important;
	line-height: 1.5em !important;
}
.bwg_ctrl_btn:hover { /* slide controls */
	width: 20px !important;
	margin-top: 10px !important;
	margin-left: 5px !important;
	margin-right: 5px !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 1.0) !important;
}
a.spider_popup_close_fullscreen { /* close button background */
	top: 5px !important;
	right: 5px !important;
	margin: 0 !important;
	padding-top: 4px !important;
	padding-bottom: 4px !important;
	padding-left: 5px !important;
	padding-right: 5px !important;
	background-color: rgba(0, 0, 0, 0.5) !important;
	border-radius: 0 !important;
	border-bottom-left-radius: 5px !important;
}
a.spider_popup_close_fullscreen:hover { /* close button background hover */
	margin: 0 !important;
	padding-top: 4px !important;
	padding-bottom: 4px !important;
	padding-left: 5px !important;
	padding-right: 5px !important;
}
.bwg_close_btn { /* close button text */
	font-size: 20px !important;
	line-height: 1.5em !important;
}


#footer-widgets {
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
	margin-right: 345px;
	font-size: 12px;
}
body.page-template-template-contact #footer-widgets {
	display: none;
}
#footer-widgets div.link-widget {
	flex-basis: 315px;
	box-sizing: border-box;
	margin-left: 15px;
	margin-right: 15px;
}
#footer-widgets ul {
	list-style-type: none;
	margin: 0;
	padding-top: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
	background: none;
}
#footer-widgets li {
	line-height: 1.5em;
}

#footer-main {
	display: flex;
	justify-content: space-between;
	/* moved to #footer-shadow-fix because of new Safari bug that breaks blur when there is a shadow on the same div if div positioned from bottom
		position: fixed;
		z-index: 30050;
		box-sizing: border-box;
		width: 100%;
		bottom: 0;
		box-shadow: 0 -4px 20px 15px rgba(0, 0, 0, 0.75);
	*/
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: rgba(0, 0, 0, 0.85); /* background opacity when @supports backdrop-filter below is false */
	border-top: 1px solid #000;
	font-size: 11px;
	color: #fff;
	line-height: normal;
}
@supports (backdrop-filter: blur()) or (-webkit-backdrop-filter: blur()) { /* fallback above */
	#footer-main {
		background-color: rgba(0, 0, 0, 0.1);
		-webkit-backdrop-filter: blur(25px);
		backdrop-filter: blur(25px);
	}
}
#footer-blur-with-shadow-fix { /* moved from footer-main because of new Safari bug that breaks blur when there is a shadow on the same div if div positioned from bottom */
	position: fixed;
	z-index: 30050;
	box-sizing: border-box;
	width: 100%;
	bottom: 0;
	box-shadow: 0 -4px 20px 15px rgba(0, 0, 0, 0.75);
}
#footer-main div {
	padding-left: 15px;
	padding-right: 15px;
}
#footer-main div#footer-left {
	white-space: nowrap;
}
#footer-main div#footer-center {
	text-align: center;
}
#footer-main div#footer-right {
	text-align: right;
	white-space: nowrap;
}
#footer-main p {
	margin: 0;
}
#footer-main a {
	color: #fff;
	text-decoration: none;
}
#footer-main a:visited {
	color: #fff;
}
#footer-main a:hover {
	color: #fff;
}

a.spin {
	cursor: progress;
}
a.spin:hover {
	text-decoration: none;
}
a.keep-out {
	cursor: not-allowed;
}
a.prohibited:hover {
	text-decoration: none;
}
a.kind {
	color: #999; /* match .big-quote h1/h2 !!! */
}
body.wide {
	background-image: none;
}
#main.wide #media-layout {
	display: block;
}
#main.wide .big-quote {
	position: relative;
	width: 1200px;
	height: 300px;
	margin-top: 100px;
	margin-left: auto;
	margin-right: auto;
	background-image: url('/images@2x/cats-cradle-bg.jpg');
	background-size: 800px 300px;
	background-repeat: no-repeat;
	background-position: top center;
}
#main.wide .big-quote h2 {
	margin: 0;
	padding-top: 115px;
	font-family: 'American Typewriter', Cambria, Times, Georgia, 'Times New Roman', serif, Helvetica, Arial, sans-serif;
	letter-spacing: 0.1em;
	color: #999; /* match .kind */
	font-size: 28px;
	font-weight: normal;
	text-align: center;
	line-height: 1.5em;
}
#main.wide .vonnegut #word {
	position: absolute;
	top: 114px;
	left: 752px;
/*	background-color: rgba(255, 0, 0, 0.5); /* for placement testing */
}
#main.wide .vonnegut #word a,
#main.wide .vonnegut #word a:visited,
#main.wide .vonnegut #word a:hover {
	color: #999;
	text-decoration: none;
}


.center {
	text-align: center !important; /* !important is necessary to override justification in right-column header */
}
.uppercase {
	text-transform: uppercase;
}
.lowercase {
	text-transform: lowercase;
}
.capitalize {
	text-transform: capitalize;
}
.highlight {
	color: #f93;
}
ul.square-list {
	list-style-type: square;
}
.nobreak {
	white-space: nowrap;
}
.top-margin-defeat {
	margin-top: 0;
}
.feature-link {
	font-size: 16px;
	font-weight: bold;
}
a.big-link,
.big-link a {
	font-size: 21px;
}

#wp-admin-logged-in-indicator {
	position: fixed; /* position absolute can't break out of position relative body */
	z-index: 30100;
	top: 0;
	right: 1px;
	color: #da0000;
	font-size: 9px;
	line-height: 1em;
}
body.logged-in #wp-admin-logged-in-indicator {
	color: #6c6;
}

.swift-control-widgets {
	opacity: 0.15 !important;
	left: 20px !important;
}
.swift-control-widgets:hover,
.swift-control-widgets.is-expanded {
	opacity: 1 !important;
}
.swift-control-widget-setting .swift-control-widget-link { /* Better Admin Bar plugin quick access button */
	border-radius: 55px; /* circle */
	transition: 0.5s;
}
.is-expanded .swift-control-widget-setting .swift-control-widget-link { /* Better Admin Bar plugin quick access button */
	border-radius: 0;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
}
.is-expanded li:last-child.swift-control-widget-item .swift-control-widget-link { /* Better Admin Bar plugin quick access button */
	border-bottom-left-radius: 15px;
	border-bottom-right-radius: 15px;
}

@media only screen and (max-width: 1424px) { /* TYPICAL DESKTOP/LAPTOP (i.e. narrower than widescreen desktop): desktop/laptop browser narrower than 1424 physical pixels (arbitrarily based on width of maximized Safari browser window 15" MacBook Pro 2013); tablet viewport narrower than 1424 CSS pixels (regardless of orientation) */
	#logo-main img {
		height: 22px;
		width: auto;
		top: 22px;
	}
	#menu-main { /* match reverse.css */
		margin-left: calc(205px + 1vw);
		margin-right: calc(205px + 1vw);
	}
	#menu-main a {
		letter-spacing: 1px;
	}
	#social-icons img {
		height: 19px;
		width: auto;
	}
	#social-icons #biden-logo-svg {
		width: 46px;
		height: 19px;
	}
	#social-icons #warren-logo-svg {
		width: 48px;
		height: 19px;
	}
	#social-icons a {
		margin-right: 5px; /* HORIZONTAL SPACING */ /* MATCH IN reverse.css */
	}
	#main.video-index #media-content figure {
		flex-basis: 320px;
		flex-grow: 1;
		max-width: 416px;
	}
	#main.blog .post-nav {
		text-align: center;
		line-height: 1.35em;
	}
	#main.blog .above-post-nav .post-nav-links {
		margin-top: -10px;
	}
	#main.blog .post-nav-links a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	#main.blog .post-nav-links .next,
	#main.blog .post-nav-links .prev {
		display: block;
		position: static;
	}
	#main.blog-single #text-content #share-buttons {
		float: none;
		margin-top: 8px;
	}
	figure.side-caption {
		display: block;
	}
	figure.side-caption figcaption {
		max-width: 750px; /* "medium" photo size */
		margin-left: 0;
	}
}
@media only screen and (max-width: 1079px) { /* TABLET, NARROW DESKTOP/LAPTOP: desktop/laptop browser narrower than 1079 physical pixels; tablet viewport narrower than 1079 CSS pixels (regardless of orientation) */

	/* REVERSE-STYLE PAGES also use /includes/top.php (i.e. Flight Plan Forms, Safari, Shea Shirts); match adjustments in reverse.css accordingly */
	#top {
		height: 99px;
		text-align: center;
	}
	#logo-main {
		top: 19px;
	}
	#logo-main .dark-mode {
		display: none;
	}
	#menu-main {
		margin-top: 48px;
		margin-left: 0;
		margin-right: 0;
	}
	#menu-main a {
		font-weight: normal;
	}
	#social-icons {
		top: 21px;
	}

	#main {
		margin-top: 100px; /* #top height with border */
	}
	#main.home #media-content .reflection-source-left {
		-webkit-box-reflect: none;
		-moz-box-reflect: none;
		-ms-box-reflect: none;
		box-reflect: none;
	}
	#main.home #media-content .reflection-source-right {
		-webkit-box-reflect: none;
		-moz-box-reflect: none;
		-ms-box-reflect: none;
		box-reflect: none;
	}
	#main.video-index #media-content figure {
		flex-basis: 416px;
		max-width: 100%;
	}
	#main.photography #media-content {
		margin-top: 0;
		margin-left: 0;
		margin-right: 0;
	}
	#main.website-design #media-layout {
		display: block;
	}
	#main.website-design #media-layout-left {
		margin-left: 0;
		margin-right: 0;
	}
	#text-layout {
		display: block;
	}
	#main.blog #comments-header-message {
		display: none;
	}
	.sidebar-secondary {
		margin-bottom: 30px;
	}
	#sidebar .search-box {
		top: 30px;
	}
	#sidebar .search-box input.s:focus {
		width: 215px; /* 100% width of text-layout on iPhone SE */
	}
	#footer-widgets {
		margin-right: 0;
	}
}
@media only screen and (max-width: 767px) { /* PHONE: viewport narrower than 768 CSS pixels, which is the viewport width of smallest iPad in portrait orientation */
	#menu-main a {
		font-size: 13px;
		font-weight: normal;
	}
	#menu-main .shorten {
		display: none;
	}
	#menu-main .shorten-add {
		display: inline;
	}
	#menu-main a#move-contact {
		position: absolute;
		top: 20px;
		right: 15px;
		padding-top: 2px;
		padding-bottom: 2px;
		padding-left: 12px;
		padding-right: 13px;
		background-color: #b0c;
		border-radius: 3px;
		letter-spacing: 2px;
		text-indent: 1px;
	}
	#menu-main a#move-contact:hover {
		color: #fff;
		background-color: rgba(187, 0, 204, 0.8); /* #b0c 80% */
	}
	#social-icons {
		display: none;
	}
	#main {
		padding-top: 5px;
	}
	#main.video-single .responsive-media-wrapper-16-9 {
		margin-top: 0;
		margin-bottom: 0;
	}
	#media-layout {
		display: block;
	}
	#main.contact #media-layout {
		display: flex;
	}
	#main.home #media-layout-left,
	#main.video-single #media-layout-left,
	#main.photography #media-layout-left {
		margin-left: 0;
		margin-right: 0;
	}
	#text-layout-left { /* home blog excerpts */
		min-width: 0;
	}
	#main.home #media-content #home-slider .slide .image {
		border-radius: 0;
	}
	#main.home #sidebar h2#section-logo {
		margin-bottom: 0;
		letter-spacing: 2px;
	}
	#main.home .testimonial {
		padding-left: 30px;
		padding-right: 30px;
		font-size: 16px;
	}
	#text-layout #text-content {
		padding-top: 15px;
		padding-left: 15px;
		padding-right: 15px;
	}
	#main.video-index #media-content {
		margin-top: 0;
	}
	#main.video-index #media-content figure {
		margin-left: 0;
		margin-right: 0;
	}
	#main.app #app-store-imitation,
	#main.apps .app-listing {
		padding-left: 0.5rem;
		padding-right: 1rem;
	}
	#main.app #app-store-imitation #app-header-left,
	#main.apps .app-listing .app-listing-left {
		width: 80px;
		padding-right: 0.5rem;
	}
	#main.apps .app-listing .app-listing-left .ios-app-icon {
		max-width: 82%;
		margin: 7px;
		border-radius: 18px;
	}
	#main.apps .app-listing .app-listing-left .app-os {
		font-size: 12px;
	}
	#main.app #app-store-imitation #app-overview {
		transform: scale(0.7, 0.8);
	}
	#main.app #app-store-imitation #app-body-content {
		padding-left: 1rem;
	}
	#main.about #text-content .cousin-bio {
		display: block;
	}
	#main.about #text-content .cousin-bio figure {
		margin-top: 4em;
		margin-right: 0;
	}
	#main.author #text-content .author-bio {
		display: block;
	}
	#main.author #text-content .author-bio .bio-pic {
		float: left;
		margin-right: 15px;
	}
	#main.blog #text-layout #text-content {
		padding-bottom: 15px;
	}
	body:not(.paged) #main.blog .above-post-nav {
		margin-bottom: 30px;
	}
	#main.blog .below-post-nav {
		margin-bottom: 15px;
	}
	.app-notice {
		float: none;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
	#sidebar,
	#media-layout #sidebar,
	#main.video-single #media-layout #sidebar {
		margin-bottom: 60px;
		margin-left: 15px;
		margin-right: 15px;
	}
	#main.home #sidebar {
		margin-top: 15px;
		margin-bottom: 30px;
	}
	#main.home #sidebar #featured-work .featured-box img {
		min-height: 0; /* allow shrinkage */
	}
	#main.video-single #sidebar {
		margin-top: 30px;
		padding-left: 0;
		padding-right: 0;
	}
	#main.video-single #sidebar .description {
		text-align: left;
	}
	#main.photography #sidebar {
		display: none;
	}
	.sidebar-secondary,
	#footer-widgets {
		display: none;
	}
	#footer-main {
		margin-top: 30px;
		background-color: #000;
		-webkit-backdrop-filter: none;
		-moz-backdrop-filter: none;
		-ms-backdrop-filter: none;
		backdrop-filter: none;
	}
	#footer-blur-with-shadow-fix { /* moved from footer-main because of new Safari bug that breaks blur when there is a shadow on the same div if div positioned from bottom */
		position: static;
	}
	#footer-main #footer-center {
		display: none;
	}
}
@media only screen and (orientation: landscape) and (max-width: 1024px) { /* PHONE IN LANDSCAPE: viewport narrower than 1024 CSS pixels, which is the viewport width of smallest iPad in landscape orientation */
	#main.video-single #media-layout {
		margin-top: 0;
	}	
	#main.home #media-layout-left {
		margin-left: 0;
		margin-right: 0;
	}
	#main.video-single #media-content {
		max-width: 1440px;
		max-height: calc(100vh - 100px); /* 100% vertical viewport minus top (match .responsive-media-wrapper-16-9) */
		margin-left: auto;
		margin-right: auto;
	}
	#main.video-single #sidebar {
		margin-top: 30px;
	}
	#main.video-single .responsive-media-wrapper-16-9 {
		margin-top: 0;
		margin-bottom: 0;
	}
	.responsive-media-wrapper-16-9 img,
	.responsive-media-wrapper-16-9 iframe,
	.responsive-media-wrapper-16-9 video {
		max-height: calc(100vh - 100px); /* 100% vertical viewport minus top (match #media-content) */
	}
}
