*
{
	margin: 0;
	padding: 0;
	border: 0;
}

html
{
	margin: 0;
	padding: 0;
}

body
{
	min-width: 320px;
	margin: 0;
	padding: 0;
	color: white;
	background: #2d2d2d;
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 150%;
}

p
{
	margin: 0 0 0.5em 0;
	padding: 0;
}

p .emphasis {
	font-weight: bold;
}

a.emphasis {
	font-weight: bold;
}

h1 span {
	position: absolute;
	left: -999em;
}

#homePage h2, #categoriesPage h2 {
	font-size: 24px;
	margin: 1.5em 0 0 0;
	line-height: 125%;
	text-align: center;
	text-transform: uppercase;
}

#homePage h2 .emphasis {
	color: yellow;
}

h3 {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: normal;
	margin: 2em 0 0.5em 0;
}

h3 .emphasis {
	font-weight: bold;
}

h4 {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 20px;
	margin: 1em 0;
}

h5 {
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 1em 0;
}

img {
	border-style: none;
}

a:link, a:visited
{
	text-decoration: none;
	color: white;
	background-color: transparent;
}

a:hover
{
	color: yellow;
}

.commonBarContainer {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
	display: grid;
	grid-template-columns: auto 1200px auto;
	grid-gap: 0;
	align-content: center;
}
.commonBarSpacer {
	height: 90px;
}

#splashPage .commonBarContainer .commonLogin {
	margin-left: 860px;
}

div.anchor {
	display: block;
	position: relative;
	top: -90px;	/*offset for height of commonBarSpacer*/
	visibility: hidden;
}

.commonBar {
	background: black center no-repeat url('images/site/topbanner/pubbanner.gif');
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-transform: uppercase;
	font-weight: bold;
}

.commonBar div {
	text-align: center;
}

.commonBar a {
	padding-bottom: 2px;
	border-bottom: 1px solid #7a7a7a;
}

.commonBar a.selected {
	border-bottom: 1px solid white;
}

.commonBar a:hover {
	border-bottom: 2px solid yellow;
}

.commonLogo {
	margin: 5px 0 0 10px;
	width: fit-content;
	height: auto;
	justify-self: left;
	justify-content: left;
}

.commonLogo a {
	border-bottom: none;
}

.commonLogo a:hover {
	border-bottom: none;
}

.commonTwitter {
	margin-top: 2px;
	padding-bottom: 0;
	border-bottom: 1px solid #7a7a7a;
}

.commonTwitter span#normal {
	display: block;
}
.commonTwitter span#hover {
	display: none;
}
.commonTwitter:hover span#normal {
	display: none;
}
.commonTwitter:hover span#hover {
	display: block;
}

.commonTwitter:hover {
	border-bottom: 2px solid yellow;
}

.commonSearch input, #contactForm input, #contactForm textarea, #searchForm input {
	background: #1a1a1a;
	color: white;
	overflow: hidden;
	box-shadow: -2px -2px #5d5d5d inset;
}

.commonSearch form.searchText {
	display: block;
}
.commonSearch a.searchIcon {
	display: none;
}

.commonSearch input {
	font-size: 16px;
	padding: 3px 6px;
	background-image: url(../../images/site/magnifying_glass.gif);
	background-position: 97% 50%;
	background-repeat: no-repeat, repeat;
}

.commonJoin a {
	white-space: nowrap;
}
.commonJoin a:link, .commonJoin a:visited {
	color: black;
	background: yellow;
	border-bottom: none;
	padding: 0.5em 40px;
}

.commonJoin a:hover {
	color: yellow;
	background: #4d4d4d;
}

.pageContentContainer {
	display: grid;
	grid-template-columns: auto minmax(0,1200px) auto;
	grid-gap: 0;
	padding: 0;
	border: 0;
	align-content: center;
}

.pageContent {
	background: black;
	margin: 0;
	padding: 90px 32px 0 32px;
	min-height: calc(100vh - 90px);	/*Extend background to bottom of screen*/
}

#splashPage .pageContent {
	padding-top: 0;
}

.pageContent p {
	font-size: 12px;
	line-height: 125%;
}

.divider {
	height: 2px;
	background: #3d3d3d;
	margin: 0;
}

.footerDivider {
	margin-top: 2em;
}

.introContainer {
	display: grid;
	align-items: center;
	justify-items: center;
	justify-content: center;
	grid-template-rows: 181px 62px 181px;
	grid-row-gap: 0;
	grid-column-gap: 10px;
}

.introPicA {
	grid-column: 1;
	grid-row: 1/4;
}

.introPicB {
	grid-column: 2;
	grid-row: 1/4;
}

.introPicC {
	grid-column: 3;
	grid-row: 1;
}

.introText {
	grid-column: 3/5;
	grid-row: 2;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 32px;
}

.introPicD {
	grid-column: 4;
	grid-row: 1;
}

.introPicE {
	grid-column: 3;
	grid-row: 3;
}

.introPicF {
	grid-column: 4;
	grid-row: 3;
}

.categoriesSection {
	margin: 0 0 0 0;
}

.categoriesContainer {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	text-transform: uppercase;
	margin: 0 0 0.5em 0;
}

.categoriesContainer div {
	flex-basis: 240px;
	font-size: 24px;
	line-height: 125%;
	font-weight: bold;
	text-align: center;
	margin: 0.5em 1em;
	background: #3d3d3d;
}

.categoriesContainer div a {
	display: block;
	padding: 0.5em 0.5em;
	background: #3d3d3d;
}

.categoriesContainer div a:hover {
	color: black;
	background: yellow;
}

/*.updatesContainer {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 1em -12px 0 -12px;
} 230323 SITE23*/
.updatesContainer {
	margin: 1em -12px 0 -12px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

/*.update {
	background: black;
	margin: 0 10px 20px 10px;
} 230323 SITE23*/
.update {
	margin: 0 10px 20px 10px;
}

.update.fillerUpdate {
	margin: 0;
}

.update img {
	width: 100%;
	height: auto;
}

.update video {
	width: 100%;
	height: auto;
}

.update4KLogo {
	float: right;
}

img.update4KLogo {
	width: 44px;
	height: 27px;
}

.updateTitle {
	text-transform: uppercase;
	font-size: 11px;
	line-height: 100%;
	margin: 0.25em 0 4px 1px;
}

.updateModels {
	font-size: 11px;
	line-height: 100%;
	margin: 0.25em 0 0.25em 1px;
}

.updateModels a:link, .updateModels a:visited {
	color: #ff27ac;
}

.updateModels a:hover {
	color: yellow;
}

.updateCategories {
	text-align: right;
	font-size: 11px;
	line-height: 100%;
	margin: 0.37em 1px 0 0;
}

.updateDate {
	text-align: right;
	font-size: 12px;
	line-height: 100%;
	margin: 0 1px 0.37em 0;
}

.updateDate:before {
	content: "Added:";
}

.mainTrailerContainer {
	position: relative;
	display: inline-block;
	width: 780px;
	height: 439px;
}

.vjs-ended .vjs-poster {
	display: inline-block; /*poster appears after video finishes*/
}

/*.trailerContainer {
	position: relative;
	display: inline-block;
}230323 SITE23*/
.trailerContainer {
	position: relative;
	display: inline-block;
	width: 100%;
	height: auto;
	/*background-color: orange;*/
}

/*.trailerContainerNoVideo {
	position: relative;
	display: inline-block;
	height: 152px;
}230323 SITE23*/
.trailerContainerNoVideo {
	width: 100%;
	height: auto;
}

/*.introContainer .trailerContainer {
	width: 272px;
	height: 181px;
}230323 SITE23*/
/* .introContainer .trailerContainer {
	width: 100%;
	height: auto;
	background-color: purple;
} */

/*.introContainer .trailerContainerNoVideo {
	width: 272px;
	height: 181px;
}230323 SITE23*/
/* .introContainer .trailerContainerNoVideo {
	width: 100%;
	height: auto;
} */

.trailerVideoContainer {
	position: relative;
	aspect-ratio: 16/9;
	z-index: 100;
	left: 0;
	top: 0;
}

.introContainer .trailerVideoContainer {
	top: 16px;
}

.trailerOverlayContainer {
	z-index: 200;
	position: absolute;
	width: 100%;
	top: 0;
}

.trailerOverlay {
	position: relative;
	left: 0;
	top: 0;
}


/* Hide Play button + controls on iOS */
video::-webkit-media-controls {
		display:none !important;
}

.modelsSection {
	margin: 3em 0 0 0;
}

/* .modelsContainer {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 1em -5px 0 -5px;
} 240323 SITE23 */
.modelsContainer {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(214px, 1fr));
	margin-top: 1em;
}

.modelsSection .modelsContainer {
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

/* .modelsContainer div {
	background: #3d3d3d;
	width: 214px;
	margin: 0 7px 1em 7px;
	text-align: right;
	text-transform: uppercase;
} 240323 SITE23*/
.modelsContainer div {
	background: #3d3d3d;
	margin: 0 7px 1em 7px;
	text-align: right;
	text-transform: uppercase;
}

.modelsContainer div a {
	margin: 0 0.25em 0 0;
}

.modelsContainer img {
	border: 1px solid transparent;
}

.modelsContainer img:hover {
	border: 1px solid yellow;
}

/* .modelBox img {
	width: 214px;
	height: 321px;
} 240323 SITE23 */
.modelsContainer .modelBox img {
	width: 100%;
	height: auto;
}

/* #homePage .modelBox img, #modelPage .modelBox img {
	width: 177px;
	height: 266px;
} 240323 SITE23 */

/*#homePage .modelsContainer, #modelPage .modelsContainer {
	display: flex;
	flex-wrap: nowrap;
} 240323 SITE23 */

/* #homePage .modelsContainer, #modelPage .modelsContainer div {
	width: 177px;
} 240323 SITE23 */

.modelDetailPhoto img {
	width: 267px;
	height: 400px;
	border: 1px solid white;
}

.aboutSection {
	margin: 3em 0 0 0;
}

.aboutContainer {
	display: grid;
	grid-template-columns: 400px 1fr 338px;
	grid-template-rows: auto 1fr;
	grid-row-gap: 1em;
	grid-column-gap: 3em;
	font-size: 18px;
	margin: 0;
}

.aboutContainer ul {
	margin: 0 0 0 1em;
}

.aboutContainer li {
	margin: 0.5em 0;
}

.aboutPhoto {
	grid-column: 2/4;
	grid-row: 1/4;
	justify-self: flex-end;
}

.aboutBenefits {
	grid-column: 1/3;
	grid-row: 1;
}

.aboutYouGet {
	grid-column: 1;
	grid-row: 2;
}

.aboutCategories {
	grid-column: 2;
	grid-row: 2/3;
}

.aboutJoinLink {
	margin: 3em 0 0 1em;
}

.aboutJoinLink a {
	color: black;
	background: yellow;
	padding: 0.25em 1.5em;
	font-size: 42px;
	font-weight: bold;
	text-transform: uppercase;
}

.aboutJoinLink a:hover {
	color: yellow;
	background: #4d4d4d;
}

.extraLinkContainer {
	display: flex;
	justify-content: flex-end;
	margin: 1em 0 1em 0;
}

.extraLink {
	font-size: 16px;
	font-weight: bold;
	text-transform: uppercase;
}

.extraLink a {
	padding: 0.5em;
	background: #3d3d3d;
}

.extraLink a:hover {
	color: black;
	background: yellow;
}


.commonFooter {
	margin: 2em 0 1em 0;
}

#splashPage .commonFooter {
	margin: 40px 356px 40px 356px;
}

.footerLinksContainer {
	margin: 0;
	display: flex;
	align-items: baseline;
	flex-direction: row;
	text-transform: uppercase;
	font-weight: bold;
}

.footerLinks {
	display: flex;
	flex-direction: row;
	width: 75%;
	justify-content: space-between;
	text-transform: uppercase;
	font-weight: bold;
	align-items: center;
}

.commonBar .shortForm, .footerLinks .shortForm {
	display: none;
}
.commonBar .longForm, .footerLinks .longForm {
	display: inline;
}

.footerLinks a {
	padding-bottom: 2px;
	border-bottom: 1px solid #7a7a7a;
}

.footerLinks a.selected {
	border-bottom: 1px solid white;
}

.footerLinks a:hover {
	border-bottom: 2px solid yellow;
}

.footerLogin {
	width: 25%;
	text-transform: uppercase;
	font-weight: bold;
	text-align: right;
}

.footerLogin a {
	padding: 0.5em;
	background: #3d3d3d;
}

.footerLogin a:hover {
	color: black;
	background: yellow;
}

.commonFooter .complianceStatement {
	margin-top: 2em;
	text-align: right;
	font-size: 11px;
}

.commonFooter .salesAgent {
	margin: 0;
	text-align: right;
	font-size: 11px;
}

.complianceStatement a:link, .complianceStatement a:visited, .salesAgent a:link, .salesAgent a:visited {
	color: #ff27ac;
}

.complianceStatement a:hover, .salesAgent a:hover {
	color: yellow;
}

.commonFooter .copyright {
	margin: 0;
	text-align: right;
	text-transform: uppercase;
	font-size: 11px;
}

.commonBar div {
	text-align: center;
}


.updateGridContainer {
	margin: 1em 0 0 0;
	display: grid;
	grid-template-columns: auto auto;
}

.updateVideoTopContainer {
	grid-column: 1 / 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 358px 1em 0;
}

.updateVideoTitle {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: bold;
	line-height: 100%;
}

.updatePreviewsLeft {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: bold;
	color: yellow;
	line-height: 100%;
}

.updatePreviewsLeft .emphasis {
	color: white;
}

#updateNumberOfPreviewsLeft
{
	display: inline;
	color: white;
}

.updateSidebarContainer {
	margin: 0 0 0 2em;
}

.updateVideoDuration {
	margin-bottom: 0.5em;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 16px;
}

.updateModelsList {
	margin-bottom: 1em;
	font-weight: bold;
	font-size: 16px;
}

.updateModelsList a:link, .updateModelsList a:visited {
	color: #ff27ac;
}

.updateModelsList a:hover {
	color: yellow;
}

.updateCategoriesList {
	line-height: 125%;
	margin-bottom: 2em;
}

.updateCategoriesListHeading {
	font-weight: bold;
	margin-bottom: 0.5em;
}

.updateDescription {
	line-height: 125%;
}

.updateTwitterShare {
	margin-top: 1em;
}

.updateDescriptionHeading {
	font-weight: bold;
	margin-bottom: 0.5em;
}

.updateDescriptionHeading br {
	display: block;
	margin-top: 10px;
	content: "";
}

.updateLowerLeftContainer {
	background: black;
	display: grid;
	grid-template-rows: auto	auto;
}

.updateTitbitsContainer {
	display: flex;
	gap: 10px;
	align-items: baseline;
	justify-content: space-around;
}

.updateThumbnailsContainer {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.updateTitbit {
	font-size: 13px;
	margin-bottom: 1em;
}

.updateTitbit img.updateTitbit4K {
	position: relative;
  top: 8px;
	margin: 0 0.5em 0 0;
}

.updateTitbit img.updateTitbitPhotos {
	position: relative;
  top: 8px;
	margin: 0 0.5em 0 0;
}

.updateTitbit .emphasis {
	color: yellow;
}

.updateTitbit a:hover {
	color: yellow;
}

.updateLowerRightContainer {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-left: 32px;
}

.updateJoinButton a, .updateBuyButton a {
	color: black;
}

.updateJoinButton a:link, .updateJoinButton a:visited, .updateJoinLink a:link, .updateJoinLink a:visited {
	display: block;
	color: white;
	background: #3d3d3d;
	font-size: 24px;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	padding: 0.5em 0;
}

.updateBuyButton a:link, .updateBuyButton a:visited {
	display: block;
	color: white;
	background: #3d3d3d;
	font-size: 18px;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 1em;
	padding: 0.33em 0;
}

.updateJoinButton a:hover, .updateBuyButton a:hover {
	color: black;
	background: yellow;
}

.modelDetailContainer {
	display: flex;
	align-items: flex-start;
	gap: 100px;
	margin: 2em 0 0.5em 0;
}

.modelDetailText p {
	padding-right: 100px;
	margin: 0;
	font-size: 12px;
	line-height: 150%;
}

.modelDetailText h1 {
	font-size: 36px;
	margin: 0 0 0.5em 0;
}

.modelDetailText .signupMessage {
	margin-top: 40px;
}

.modelDetailText .signupMessage a:link, .modelDetailText .signupMessage a:visited {
	color: #ff27ac;
}

.modelDetailText .signupMessage a:hover {
	color: yellow;
}

.modelJoinButton {
	color: black;
}

.modelJoinButton a:link, .modelJoinButton a:visited {
	display: block;
	background: #3d3d3d;
	font-size: 24px;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	margin: 36px 8em 0 8em;
	padding: 0.5em 0;
}

.modelJoinButton a:hover {
	color: black;
	background: yellow;
}

#welcomePage p {
	margin: 1em 0;
}

#welcomePage a {
	text-transform: uppercase;
}

#termsAndConditionsPage h3 {
	font-weight: bold;
	margin: 2em 0 0 0;
}

#termsAndConditionsPage h4 {
	font-size: 12px;
	margin: 1.5em 0 0.25em 0;
}

#termsAndConditionsPage p {
	margin-bottom: 0.5em;
}

#termsAndConditionsPage p a:link, #termsAndConditionsPage p a:visited {
	color: #ff27ac;
}

#termsAndConditionsPage p a:hover {
	color: yellow;
}


#termsAndConditionsPage .divider {
	margin: 0 0 1em 0;
}

#termsAndConditionsPage .footerDivider {
	margin: 2em 0 0 0;
}

.updateFilter {
	display: flex;
	justify-content: space-between;
	margin: 1.25em 300px;
	font-size: 14px;
}

#categoryPage .updateFilter, #searchPage .updateFilter {
	justify-content: center;
}

.frmPerPage select, .frmCategory select {
	background: #2d2d2d;
	color: white;
	box-shadow: -2px -2px #5d5d5d inset;
	margin: 0 0 0 0.25em;
}

.categorySelector {
	margin: 1.25em 300px;
	text-align: center;
}

.categorySelector .frmCategory select {
	font-size: 18px;
}

.categorySelector .frmCategory input {
	color: white;
	background: #3d3d3d;
	box-shadow: 2px 2px #5d5d5d inset;
	font-size: 18px;
	text-transform: uppercase;
	padding: 4px 12px 0 12px;
}

.categorySelector .frmCategory input:hover {
	color: black;
	background: yellow;
}

#categoryPage h1 {
	font-size: 36px;
	margin: 32px 0 0.5em 0;
}

.pageLinksHolder {
	text-align: center;
	color: #606060;
}

.pageLinksHolder span {
	margin: 0.33em;
}

.pageLinksHolder .pageNumberDivider {
	margin: 0.33em 0;
}

.pageLinksHolder .visibleOnNarrow {
	display: none;
}

.pageLinksHolder .visibleOnWide {
	display: inline;
}

.pageLinksHolder .nextPreviouspageLinkDisabled {
	color: #808080;
}

.pageLinksHolder .selected {
	color: white;
	border-bottom: 1px solid white;
}

#categoryPage .pageLinksHolder {
	margin-bottom: -1em;
}

.optionsList {
	list-style: square;
	margin: 1em 0;
	padding: 0 0 0 20px;
}

.optionsList ul {
	margin: 0;
	padding-left: 0;
}

.optionsList li {
	font-size: 12px;
	margin: 0 0 1em 0;
}

.optionsList li a:link, .optionsList li a:visited {
	color:  #ff27ac;
	text-transform: uppercase;
	font-weight: bold;
}

.optionsList li a:hover {
	color:  yellow;
}

.contactFormFieldContainer {
	display: grid;
	grid-template-columns: 200px 800px;
	grid-gap: 1em 0.5em;
	margin: 1em 0 0 0;
}

.searchFormFieldContainer {
	display: grid;
	grid-template-columns: 400px 400px;
	grid-gap: 1em 0.5em;
	margin: 1em 0 0 0;
}

.formHeading {
	text-align: right;
	font-size: 12px;
	padding: 2px 0 0 0;
}

.formHeadingError {
	background: red;
	text-align: right;
	font-size: 12px;
	padding: 2px 0.5em 0 0;
}

.errorsInFormWarning {
	margin: 1em 0;
	padding: 0.1em;
	text-transform: uppercase;
	color: white;
	background: red;
	font-weight: bold;
	font-size: 14px;
	text-align: center;
	display: none;
}

.formSubmit {
	grid-column: 2;
}

.errorSendingMessage {
	font-weight: bold;
	font-size: 14px;
	text-align: center;
}

.errorSendingMessageTitle {
	margin: 1em 0;
	padding: 0.1em;
	text-transform: uppercase;
	color: white;
	background: red;
	font-weight: bold;
	font-size: 14px;
	text-align: center;
}

.errorSendingMessageInstructions {
	margin: 1em 0;
	padding: 0.1em;
	text-align: center;
}

#contactForm input, #contactForm textarea, #searchForm input, #login input {
	line-height: 125%;
	font-size: 14px;
	padding: 3px 6px;
}

#contactForm textarea {
	font-family: Arial, Verdana, Helvetica, sans-serif;
	line-height: 125%;
}

#contactForm .g-recaptcha {
	grid-column: 2;
}

#contactForm input.submitButton, #searchForm input.submitButton, #login input.submitButton {
	color: white;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: normal;
	background: #3d3d3d;
	box-shadow: none;
}

#login input.submitButton {
	color: black;
	background: yellow;
	font-weight: bold;
}

#contactForm input:hover.submitButton, #searchForm input:hover.submitButton {
	color: black;
	background: yellow;
}

#login input:hover.submitButton {
	color: yellow;
	background: #3d3d3d;
}

#contactSubmittedPage p {
	margin: 1em 0 0 0;
}

.contactSentContainer {
	margin: 0 100px;
	font-size: 12px;
}

.contactSentContainer div {
	margin: 0.5em 0;
}

.contactSentHeading {
	margin: 1em 0 0 0;
	font-size: 12px;
}

.searchResultsQuery {
	margin-top: 1em;
}

.joinContentContainer {
	display: grid;
	background: black no-repeat center;
	grid-template-columns: 730px 470px;
	grid-gap: 0;
	align-content: flex-start;
	align-items: stretch;
	height: 833px;
}

.joinLeftContainer {
	margin: 700px 0 0 32px;
	font-size: 16px;
	font-weight: bold;
}
.joinLeftContainer li {
	margin: 0.3em 0;
	padding: 0;
}

.joinRightContainer {
	margin: 2em 52px 0 0;
}

.joinOptionsPanel {
	background: #3e3e3ec0;
	padding: 10px 0;
}

.joinOptionsPanel h2 {
	background: #535353;
	font-size: 24px;
	margin: 0.5em 0 1em 0;
	padding: 0.33em 0;
	line-height: 125%;
	text-align: center;
}

.joinOptionsPanel #sliderContainer {
	display: none;
}

.joinOptionsPanel #sliderContainer {
	position: relative;
}
.joinOptionsPanel img#sliderPlaceholder {
	position: relative;
	width: 100%;
	opacity: 0;
}
.joinOptionsPanel #slider {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}
.joinOptionsPanel #slider img {
		transition: opacity 1.5s;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		width: 100%;
}
.joinOptionsPanel #slider img.fadeIn {
		opacity:1;
}

.joinOption {
	display: grid;
	grid-template-columns: 80% 20%;
	grid-template-rows: 1.5em 2em 2em;
	grid-gap: 0;
	margin: 10px 20px;
	align-items: stretch;
}

.joinOptionHeading {
	grid-row: 1;
	grid-column: 1;
	color: black;
	background: #dbf570;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	padding-left: 20px;
	clip-path: polygon(0 0, 0 100%, 100% 100%, 95% 0);
	align-self: stretch;
}

.joinOptionSummary {
	grid-row: 2;
	grid-column: 1;
	padding: 5px 0 0 20px;
	font-size: 14px;
	font-weight: bold;
	background: black;
}

.joinOptionDetail {
	grid-row: 3;
	grid-column: 1;
	padding-left: 20px;
	font-size: 14px;
	background: black;
}

.joinOptionPrice {
	grid-row: 2/4;
	grid-column: 2;
	font-size: 28px;
	text-align: right;
	padding: 0 10px 0 0;
	background: black;
	display: grid;
	align-content: center;
}

.cents {
	vertical-align: super;
	font-size: 12px;
}

a:hover .joinOption {
	color: white;
}

a:hover .joinOptionHeading {
	background: #32ff34;
}

.joinSSL {
	font-size: 10px;
	font-weight: bold;
	line-height: 125%;
	margin: 3em 0 2em 0;
	display: grid;
	grid-template-columns: 100px auto;
	grid-template-rows: auto auto auto;
}

.joinSSLCentre {
	grid-row: 2;
	grid-column: 1/3;
	background: #535353;
	justify-self: stretch;
	align-self: stretch;
}

.joinSSLPadlock {
	grid-row: 1/4;
	grid-column: 1;
	padding: 0 0 0 40px;
}

.joinSSLText {
	grid-row: 2;
	grid-column: 2;
	padding: 0.5em 0;
}

.joinSalesAgent {
	font-size: 10px;
	text-align: right;
	line-height: 125%;
	margin: 0 20px 0 0;
}

.joinSalesAgent a:link, .joinSalesAgent a:visited {
	color: red;
}

.joinSalesAgent a:hover {
	color: white;
}

.joinCardsAcceptedPanel {
	margin: 3em 0 0 0;
	text-align: center;
}

.joinDebitCardProhibited {
	font-size: 12px;
	font-weight: bold;
	line-height: 125%;
	margin: 1em 10px 0 10px;
}

.joinDebitCardProhibited .emphasis {
	text-transform: uppercase;
	text-decoration: underline;
}

#loginPage p {
	margin-top: 1em;
}

#loginForm {
	margin: 2em 300px 2em 0;
	display: grid;
	grid-template-columns: 25% 75%;
	grid-gap: 1em;
	font-size: 12px;
}

.loginButtonContainer {
	grid-column: 2;
}

.loginLabel {
	padding: 0.1em 0;
	text-align: right;
}

.loginTuring {
	grid-column: 2;
}

#loginForm input {
	line-height: 125%;
	font-size: 12px;
	padding: 0.2em 0.2em;
	overflow: hidden;
}

#loginForm .loginButtonContainer input {
	font-size: 14px;
	padding: 0.1em 1em;
}

#blanket {
	background-color:#111;
	opacity: 0.65;
	position:absolute;
	z-index: 9001;
	top:0px;
	left:0px;
	width:100%;
}
#popUpDiv {
	position: fixed;
	left: 50%;
	top: 50%;
	background: #383838;
	border: 1px solid silver;
	color: white;
	width: 300px;
	height: auto;
	z-index: 9002;
	margin: -80px 0 0 -170px;
	padding: 1em 1em 1em 1em;
	text-align: center;
}
#popUpDiv h2 {
	margin-top: 0;
}
#popUpDiv p {
	margin: 0.5em 0 0.5em 0;
}
#popUpDiv a {
	font-weight: bold;
}
.popUpCloseIcon {
	margin: -1em -1em 0 0;
	float: right;
	padding: 2px 2px 0 0;
	cursor: pointer;
}

#splashPage .pageContent {
	background-size: contain;
	background-repeat: no-repeat;
	min-height: 100vh;
}

#splashPage .logoContainer {
	text-align: center;
	margin: 90px 0 60px 0;
}

#splashPage h1 {
	text-align: center;
	font-size: 32px;
	font-weight: bold;
	margin: 0 0 20px 0;
}

#splashPage h2 {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 60px 0;
}

#splashPage .entryButton {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	margin: 0 0 20px 0;
}

#splashPage .entryButton a:link, #splashPage .entryButton a:visited {
	color: black;
	background: yellow;
	border-bottom: none;
	padding: 12px 40px;
}

#splashPage .entryButton a:hover {
	color: yellow;
	background: #4d4d4d;
}

#splashPage .leaveLink {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 136px;
}

#splashPage .leaveLink a:link, #splashPage .leaveLink a:visited {
	color: yellow;
}

#splashPage .leaveLink a:hover {
	color: white;
}

#splashPage .lowerContent {
	margin: 0 -32px 0 -32px;
	background-color:#000000a0;
	padding: 6px 0 0 0;
}

#splashPage .contentWarning {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	line-height: 175%;
	margin: 0 0 20px 0;
}

#splashPage .strapline {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	line-height: 125%;
	margin: 0 0 20px 0;
}

#splashPage .description {
	color: #606060;
	text-align: center;
	font-size: 11px;
	line-height: 125%;
	margin: 0 40px 12px 40px;
}

#splashPage .copyright {
	text-align: center;
	font-size: 14px;
	margin: 0 0 12px 0;
}

#splashPage .nannyLinksContainer {
	display: flex;
	justify-content: space-between;
	margin: 0 400px 20px 400px;
	font-size: 12px;
}

#splashPage .externalLinksHeading {
	text-align: center;
	font-size: 14px;
	margin: 0 0 0 0;
}

#splashPage .externalLinksContainer {
	display: flex;
	justify-content: space-evenly;
	margin: 0 440px 20px 480px;
	font-size: 12px;
}

#loginPage h3 {
	font-weight: bold;
}

#loginPage form {
	background-color: black;
	border: none;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	padding: 0;
	width: auto;
}

#loginPage table {
    	background-color: black;
	border-collapse: separate;
	border-spacing: 0;
	border: none;
}

#loginPage input {
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

#loginPage #turingimage {
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
}

#loginPage .submit1 {
	font-weight: bold;
	font-size: 11px;
	border-radius: 0;
	display: inline;
	margin: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	text-shadow: none;
}

.updateThumbnailsContainer {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	column-gap: 1%;
}
.updateThumbnail img {
	width: 100%;
	height: auto;
}

#splashPage .footerLinks {
	width: 100%;
}

.linkToOldMobileSite {
	margin: 1em 0 2em 0;
	text-align: right;
	font-size: 12px;
}
.linkToOldMobileSite a {
	color: #ff27ac;
}

/*SITE23 COLOUR HACKS FOR TESTING*/
body
{
/*	background: cyan;*/
}
.update {
/*	background: green;*/
}
.commonSearch input {
		/* background: red; */
}
.modelsContainer {
/*	background-color: purple;*/
}
/*END OF COLOUR HACKS*/

@media screen and (max-width: 1220px) {
	.commonSearch input {
		/* background: darkblue; */
	}
	.commonBarContainer {
		grid-template-columns: auto minmax(0,1010px) auto;
	}
	.commonBar {
		background-image: none !important;
	}
	.commonBar .commonAuxillary {
		margin-left: 10px;
	}

	.pageContentContainer {
		grid-template-columns: auto minmax(0,1010px) auto;
	}
	.pageContent {
		padding-left: 18px;
		padding-right: 18px;
	}

	.introContainer {
		display: none;
	}

	.footerLinks .separator {
		display: none;
	}
	.commonBar .shortForm, .footerLinks .shortForm {
		display: inline;
	}
	.commonBar .longForm, .footerLinks .longForm {
		display: none;
	}
	.aboutContainer {
		display: block;
		position: relative;
		font-size: 18px;
		background: url('images/site/intro/about-background/bondage_bdsm_lesbian_videos.jpg') no-repeat center;
		background-size: 100%;
	}
	.aboutPhoto {
		display: none;
	}
	.aboutYouGet {
		margin-top: 1em;
	}
	.aboutCategories {
		display: none;
	}
	.aboutJoinLink {
		margin: 2em 0 0 0;
	}
	.aboutJoinLink a {
		font-size: 24px;
		padding: 0.25em 0.5em;
	}

	.modelsContainer {
		grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	}
	.modelsContainer {
		row-gap: 1em;
		column-gap: 10px;
	}
	.modelsContainer div {
		margin: 0;
	}

	.modelDetailText p {
		padding-right: 0;
	}
	.modelDetailContainer {
		gap: 2%;
		line-height: normal;
	}

	.categorySelector {
		margin-left: 0;
		margin-right: 0;
	}

	.updateGridContainer {
		/* margin: 1em 0 0 0;
		display: grid;
		grid-template-columns: auto auto; */
		display: block;
	}
	.updateVideoTopContainer {
		/* grid-column: 1 / 3;
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin: 0 358px 1em 0; */
		margin-right: 0;
	}

	.updateSidebarContainer {
		margin: 0.5em 0 0 0;
	}
	.updateLowerRightContainer {
		margin-left: 0;
	}
	.videoPlayerContainer {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}
	.videoPlayerContainer img {
		width: 100%;
		height: auto;
	}

	.mainTrailerContainer {
		width: 100%;
		height: auto;
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}
	.trailerVideoContainer video {
		width: 100%;
		height: auto;
		object-fit: fill;
	}

	.joinContentContainer {
		display: grid;
		background: black no-repeat top left;
		grid-template-columns: auto;
		grid-template-rows: auto auto;
		height: auto;
	}
	.joinRightContainer {
		grid-row: 1;
		margin-right: 0;
		position: relative;
		display: grid;
		grid-template-rows: auto auto;
		width: 100%;
		justify-items: right;
	}
	.joinLeftContainer {
		margin: 80px 0 24px 32px;
		grid-row: 2;
	}
	.joinOptionsPanel {
		width: 416px;
		grid-row: 1;
	}
	.joinCardsAcceptedPanel {
		grid-row: 2;
	}

	#splashPage .pageContent {
		background-size: contain;
		background-position: center top;
	}

	.updateFilter {
		margin: 1.25em 0;
		justify-content: center;
		gap: 5%;
	}

	.modelJoinButton a:link, .modelJoinButton a:visited {
		display: block;
		background: #3d3d3d;
		font-size: 18px;
		text-align: center;
		text-transform: uppercase;
		font-weight: bold;
		margin: 2em 0 0 0;
		padding: 0.5em 5px;
	}

	#categoryPage .pageLinksHolder {
		margin-bottom: 0;
	}

	#splashPage .commonBarContainer .commonLogin {
		margin: 0 64px 0 0;
	}
	#splashPage .commonBar {
		justify-content: right;
	}
	#splashPage h1 {
		line-height: 100%;
	}
	#splashPage h2 {
		font-size: 14px;
	}
	#splashPage .leaveLink {
		margin-bottom: 50px;
	}
	#splashPage .strapline {
		font-size: 12px;
		margin: 0 20px 20px 20px;
	}
	#splashPage .commonFooter {
		margin: 40px 20% 40px 20%;
	}
	#splashPage .footerLinksContainer {
		justify-content: center;
	}
	#splashPage .copyright {
		margin: 0 20px 12px 0;
	}
	#splashPage .nannyLinksContainer {
		margin: 0 20% 20px 20%;
	}
	#splashPage .externalLinksContainer {
		margin: 0 20% 20px 20%;
	}
	#splashPage .externalLinksHeading {
		display: none;
	}
} /* max-width: 1220px */

@media screen and (max-width: 1026px) {
	.commonBar .commonLogin {
		/* background-color: blue; */
	}
	.commonBar {
		padding-right: 10px;
	}
	.commonSearch form.searchText {
		display: none;
	}
	.commonSearch a.searchIcon {
		display: block;
	}
	.commonJoin a:link, .commonJoin a:visited {
		padding: 0.5em 10px;
	}
	.footerLogin {
		display: none;
	}
	.footerLinks {
		width: 100%;
	}

	.modelDetailContainer {
		margin-top: 1em;
		flex-wrap: wrap-reverse;
	}
	.modelDetailText h1 {
		margin: 0.25em 0 0.25em 0;
		font-size: 28px;
	}
	.modelDetailText .signupMessage {
		margin-top: 1.5em;
	}
	.modelJoinButton a:link, .modelJoinButton a:visited {
		margin: 1.5em 0 0 0;
	}

	#splashPage .leaveLink {
		margin-bottom: 20px;
	}
}	/* max-width: 1026px */


@media screen and (max-width: 800px) {
	.commonBar .commonLogin {
		/* background-color: green; */
	}
	.commonBar {
		font-size: 12px;
	}
	.commonFooter .categoriesLink {
		display: none;
	}
	.commonFooter .categoriesLink + div {
		display: none;
	}
	.commonFooter .modelsLink {
		display: none;
	}
	.commonFooter .modelsLink + div {
		display: none;
	}
	#splashPage .leaveLink {
		margin-bottom: 20px;
	}

	#categoriesPage h2 {
		margin: 0;
		font-size: 18px;
	}
	.categoriesContainer {
		padding: 1em 0;
		gap: 20px;
	}
	.categoriesContainer div {
		flex-basis: 45%;
		font-size: 18px;
		margin: 0;
	}

	.contactFormFieldContainer {
		grid-template-columns: 20% 80%;
	}
	#contactForm input, #contactForm textarea {
		max-width: 95%;
	}
	.g-recaptcha {
		transform:scale(0.77);
		transform-origin:0 0;
	}
	#contactForm .formSubmit {
		margin-top: -20px;	/* to keep submit button close to recaptcha */
	}

	.searchFormFieldContainer {
		grid-template-columns: 50% 50%;
	}
	#searchForm input {
		max-width: 95%;
	}

}	/* max-width: 800px */

@media screen and (max-width: 600px) {
	.commonBar .commonLogin {
		/* background-color: orange; */
	}
	.commonBar .commonLogo img {
		width: 60px;
		height: auto;
	}
	.commonBar .commonTwitter, .commonBar .commonSearch {
		display: none;
	}

	#homePage h3:first-of-type {
		margin-top: 0;
	}
	#homePage .categoriesSection h3 {
		margin-top: 2em;
	}
	#modelsPage h3:first-of-type {
		margin-top: 0;
	}
	#modelPage h3:first-of-type {
		margin-top: 0;
	}
	#termsAndConditionsPage h3:first-of-type {
		margin-top: 0;
	}
	#contactPage h3:first-of-type {
		margin-top: 0;
	}
	#searchPage h3:first-of-type {
		margin-top: 0;
	}
	#allUpdatesPage h3:first-of-type {
		margin-top: 0;
	}
	#categoryPage h1 {
		margin-top: 12px;
	}

	.joinContentContainer {
		background-image: none !important;
	}
	.joinRightContainer {
		margin: 0;
	}
	.joinLeftContainer {
		margin: 1em 0 0 14px;
		font-size: 12px;
	}
	.joinOptionsPanel {
		width: 100%;
	}
	.joinOptionsPanel #sliderContainer {
		display: block;
	}
	.joinCardsAcceptedPanel {
		margin: 1em 0 0 0;
	}

	.aboutContainer {
		background-image: none;
		font-size: 14px;
	}
	.aboutContainer h5 {
		margin-bottom: 0.5em;
	}

	.updateTitbitsContainer {
		display: none;
	}
	.updateThumbnailsContainer {
		column-gap: 6px;
		row-gap: 0;
		grid-template-rows: auto auto;
		grid-template-columns: auto auto auto;
	}

	.frmPerPage {
		display: none;
	}

	#categoryPage .updateFilter {
		display: none;
	}

	#splashPage .pageContent {
		background-image: none !important;
	}
	#splashPage .logoContainer {
		margin: 0;
	}
	#splashPage .commonFooter {
		margin: 40px 10px 40px 10px;
	}
	#splashPage .commonFooter .commonTwitter {
		display: none;
	}
	#splashPage .lowerContent {
		margin: 0 0 0 0;
		padding: 6px 0 0 0;
	}
	#splashPage .lowerContent .description {
		margin: 0 0 1em 0;
	}
	#splashPage .copyright {
		margin: 0 0 1em 0;
	}

	#splashPage .lowerContent .nannyLinksContainer,	#splashPage .lowerContent .externalLinksContainer
	{
		display: none;
	}

	.pageLinksHolder
	{
		font-size: 16px;
	}

	.pageLinksHolder .visibleOnNarrow {
		display: inline;
	}

	.pageLinksHolder .visibleOnWide {
		display: none;
	}
}	/* max-width: 600px */

@media screen and (max-width: 450px) {
	.commonBar .commonLogin {
		/* background-color: red; */
	}
	.joinLeftContainer {
		margin: 1em 0 0 14px;
		font-size: 10px;
		font-weight: normal;
	}
	.joinOptionSummary {
		font-size: 12px;
	}
	.joinOptionDetail {
		font-size: 12px;
		line-height: 100%
	}
	.joinOptionPrice {
		font-size: 18px;
	}

	.commonFooter .complianceStatement {
		font-size: 10px;
	}
	.commonFooter .salesAgent {
		font-size: 10px;
	}
	.commonFooter .copyright {
		font-size: 10px;
		line-height: 125%;
		margin-top: 0.5em;
	}

	#categoriesPage h2 {
		font-size: 16px;
	}
	.categoriesContainer div {
		font-size: 16px;
		margin: 0;
	}

	.linkToOldMobileSite p {
		font-size: 10px;
	}

	#splashPage .commonFooter
	{
		display: none;
	}
}	/* max-width: 400px */
