/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

.container {
    max-width: 1440px;
}
.cams {
	padding: 0 10px;
	max-width: 1440px;
    margin: 2px auto;
}

.tagsgroup .tag{
	border:1.5px solid black!important
}
.cams h4, .cams h1, .cams-related h2 {
    grid-column: 1/-1;
    font-size: 20px;
    color: white;
    background: #3b3b3b;
    padding:0 5px;
    border: 1px solid #000;
    border-radius: 3px;
    text-shadow: 2px 1px black;
    text-transform: capitalize;
}
.models-list{
	display:flex;
	flex-wrap:wrap;
	list-style:none;
	margin:0 auto;
}

.models-list li {
	border:0px solid #ccc;
	flex-basis:16.5%;
	flex-grow:0;
	margin-left:1px;
	overflow:hidden;
}

.element a {
	text-decoration:none !important;
}
li .image {
	background-color: #202020;
	height:10em;
}
li .image img {
    width: 100%;
    height: inherit;
	object-fit:cover;
	object-position: center;

   -webkit-filter: contrast(160%); 
    filter: contrast(160%);
    -webkit-filter: saturate(170%); 
    filter: saturate(170%);

}
.details {
	word-break: break-word;
}

.element .username {
	border-top: 0px solid #000;
	text-shadow: 2px 1px black;
	background: rgba(3,3,3,0.5);
	overflow: hidden;
    max-height: 26px;
	padding-bottom: 5px;
	
}
.element .username , .subject{
	position: relative;
	bottom:26px;
}
.element .username , .tags{
	position: relative;
	bottom:26px;
	max-height:30px;
}
.element h6, .element span {
    color: #fff;
    padding: 0 7px;
	margin-bottom:0;
	text-transform: uppercase;
	font-size:0.8em;
	font-weight:600;
}
.element p {
	font-size: 0.7em;
    padding: 5px 3px 0;
    min-height: 30px;
	margin-bottom:-20px;
	word-break:break-word;
}
nav.pagination {
    margin: 20px auto;
	text-align: center;
    grid-column:1/-1;
}
nav a.page-numbers {
    padding: 0 10px 0;
	margin: 0 5px 0;
    color: #043257;
	text-shadow:1px 0 0 #043257;
	border: 1px solid #555558;
    border-radius: 3px;
	text-decoration:none !important;
}
nav .page-numbers.current {
	text-decoration: underline;
	margin: 0 10px 0;
}
.cam-wrapper {
    max-width: inherit;
    margin: 0 auto;
	width:100%;
}
.nv-single-post-wrap {
    margin-bottom: 10px;
}
.heading {
    width:100%;
    background: #3b3b3b;
	box-shadow: 1px 2px 3px #ccc;
    color: #fff;
    padding: 5px 10px;
    margin: 0 0 10px;
}
.heading h1 {
    font-size: 1.3em;
    margin: 0;
	color:#FFFFFF;
	text-transform:capitalize;
}
.heading a span {
    border: 2px solid #ffffff;
    padding: 3px 8px;
    border-radius: 5px;
    font-weight: 900;
    color: #fff;
    background:indianred;
}
.heading a:hover span {
	background:orangered;
}
#cam {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width:1400px;
	margin: 0 auto;
}
.top-cta button {
    width: 100%;
    font-size: 1.2rem;
    font-weight: 700;
}
button.login-link, .top-cta button {
    background: #83af23;
}
.video, .after-video {
	grid-column: 1/-1;
	display: grid;
	grid-template-columns: 73% auto;
	box-shadow: 1px 5px 6px #ccc;
	grid-template-rows: auto;
	height:auto;
 	background:#f4f4f5;
}
.mobile .video {
	padding:0;
}
#player-container{
	aspect-ratio: 16/9;
	width:100%;
	max-width: 960px;
    margin: 0 auto;
}

.mobile #player-container {
    border-bottom: 3px solid ;
}

.is-mobile-stream #player-container {
	min-height:60vh;
}
.video.is-mobile-stream {
    grid-template-rows: 540px;
}
.is-mobile-stream video {
    height: 60vh !important;
	background:rgba(0,0,0,0.8);
}
#player-container h1.head {
	color: #eeeeee;
}
#player-container *::after {
	background:#000000;
}
#chat-container{
	max-height:65vw;
	overflow:hidden;
}
.is-default-stream, .is-mobile-stream {
    background: #2A2A2A;
}
.mobile .is-default-stream #chat-container{
	max-height:45vh;
	overflow:hidden;
}
.video-side {
    display: flex;
    flex-direction: column;
    align-content: space-between;
    justify-content: space-between;
    align-items: stretch;
    background: #696969!important;
}
.video-side .model-buttons {
    margin-top: 20px;
}
.model-buttons button {
	margin:10px 15px;
	width:92%;
	text-shadow: 1px 0px 3px black;
}
.model-buttons a {
    color: white;
    font-size: 16px;
    font-weight: 500;
} 
.model-buttons span {
	text-transform:uppercase;
	font-size:0.9em;
}
button.register-link {
    background: crimson;
}
button.login-link {
    background: #83af23;
}
.after-video {
	grid-template-columns: 40% 1fr;
	align-self: center;
	grid-template-rows: auto;
	background:#f4f4f5;
	min-height:200px;
}
.video-side .full-image {
	text-align:center;
	position:relative;
	margin:0 2px;
}
.full-image img {
    width: 100%;
    height: auto;
	max-height:300px;
    object-fit: cover;
	object-position: center;
}

.full-image .model-links {
    position: absolute;
	top:0;
    height: 100%;
    background: rgba(0,0,0,0.5);
    width: 100%;
}
.model-links a {
    position: relative;
    top: 45%;
    width: 100%;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    text-shadow: 0 1px 2px #000;
	background:rgba(237,20,61,0.5);
	color:#ffffff;
	padding:8px 10px;
	box-shadow:0 1px 2px #555;
	border-radius:3px;
	text-transform:uppercase;
	text-decoration: none !important;
}
.model-links a:hover,.model-buttons a:hover {
	color:#fafafa;
}
.model-links a span {
}
.model-data {
	display:flex;
	align-content: space-around;
    justify-content: flex-start;
}
.model-data .avatar , .model-info, .model-description {
    margin: 20px 15px 0;
}
.model-data .avatar img::before {
    content: "\003F";
    color: darkgrey;
    font-size: 80px;
    position: absolute;
    width: auto;
    margin: 0 0.5em;
}
.model-data .model-info {
	flex-grow:1;
	width: 150px;
}
.model-data .model-info h2{
	font-style:italic;
	font-size:1.6em;
}
.model-info p, .model-description p{
	margin-bottom:0;
}
.model-description{
	display:flex;
	align-items: flex-start;
    justify-content: space-around;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: space-around;
}
.cams-related {
    grid-column: 1/-1;
    margin: 10px 0;
    background: #ffffff;
}

@media screen and (max-width:1024px) {
.container {
	padding-right: 3px;
    padding-left: 3px;
}
.cams {
	grid-template-columns: repeat(auto-fill,minmax(165px, 1fr));
	}
.models-list li {
	flex-basis:24.8%;
	}
.video , .after-iframe{
	grid-template-rows: auto;
	grid-template-columns:auto;
	height:100%;
}
.subject-heading {

}
player-container {
	padding-bottom: 56.25%;
    position: relative;
	grid-column:1/-1;
	}
player-container video {
	border: 0;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;	
}
.text.subject {
	padding:0 5px;
	margin:0;
}
nav a.page-numbers {
	padding: 2px 10px 4px;
	}
}
@media screen and (max-width:640px) {
.models-list li {
	flex-basis:32%
}
@media screen and (max-width:530px) {
.cams {
	padding:0;
	column-gap:0;
	}
.models-list li {
	flex-basis:49%;
	}
.username h6 {
	font-size:12px;
	}
.after-iframe {
	grid-template-columns: repeat(3,1fr);	
}
.subject-heading {
	grid-column: 1/-1;
	grid-row:auto;
	margin-top: 10px;
	}
.after-video {
	grid-template-columns:auto;		
	}
}