:root {
	--pl-ink: #282933;
	--pl-muted: #4b4c51;
	--pl-border: #ded9ca;
	--pl-surface: #ffffff;
	--pl-soft: #f6f5f1;
	--pl-accent: #d6ab28;
	--pl-accent-light: #e7c252;
	--pl-accent-dark: #8d6b0f;
	--pl-green: #177451;
	--pl-focus: #1473e6;
	--pl-display: "Cormorant Garamond", Georgia, serif;
	--pl-body: "Mulish", "Muli", "Roboto", Arial, sans-serif;
}

.pl-page {
	background: var(--pl-soft);
	min-height: 70vh;
	padding: 32px 0 56px;
}

.pl-shell {
	box-sizing: border-box;
	color: var(--pl-ink);
	font-family: var(--pl-body);
	margin: 0 auto;
	max-width: 1180px;
	padding: 24px;
	width: 100%;
}

.pl-shell--narrow {
	max-width: 620px;
}

.pl-shell *,
.pl-shell *::before,
.pl-shell *::after {
	box-sizing: border-box;
	letter-spacing: 0;
}

.pl-heading {
	margin-bottom: 28px;
}

.pl-heading h1,
.pl-girl h1,
.pl-profile-head h1 {
	color: var(--pl-ink);
	font-family: var(--pl-display);
	font-size: 48px;
	font-weight: 600;
	line-height: 1.08;
	margin: 0 0 10px;
}

.pl-heading p,
.pl-profile-head p {
	color: var(--pl-muted);
	font-size: 17px;
	margin: 0;
}

.pl-kicker {
	color: var(--pl-accent) !important;
	font-size: 13px !important;
	font-weight: 800;
	margin: 0 0 8px !important;
	text-transform: uppercase;
}

.pl-form,
.pl-form-section,
.pl-filters,
.pl-girl-details {
	background: var(--pl-surface);
	border: 1px solid var(--pl-border);
	border-radius: 6px;
	padding: 24px;
}

.pl-form-section {
	border: 0;
	border-bottom: 1px solid var(--pl-border);
	border-radius: 0;
	margin: 0 -24px 24px;
	padding: 0 24px 24px;
}

.pl-form-section h2,
.pl-girl-details h2 {
	font-size: 22px;
	margin: 0 0 16px;
}

.pl-grid {
	display: grid;
	gap: 18px;
}

.pl-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pl-field {
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
}

.pl-field--full {
	grid-column: 1 / -1;
}

.pl-field > span {
	color: #38434e;
	font-size: 14px;
	font-weight: 700;
}

.pl-field input,
.pl-field select,
.pl-field textarea,
.pl-shell #loginform input[type="text"],
.pl-shell #loginform input[type="password"] {
	background: #fff;
	border: 1px solid #aeb7bf;
	border-radius: 4px;
	color: var(--pl-ink);
	font-size: 16px;
	line-height: 1.4;
	min-height: 48px;
	padding: 11px 12px;
	width: 100%;
}

.pl-field textarea {
	min-height: 110px;
	resize: vertical;
}

.pl-field input:focus,
.pl-field select:focus,
.pl-field textarea:focus {
	border-color: var(--pl-focus);
	box-shadow: 0 0 0 3px rgba(20, 115, 230, .16);
	outline: 0;
}

.pl-password-control {
	display: block;
	position: relative;
	width: 100%;
}

.pl-field .pl-password-control input {
	padding-right: 52px;
}

.pl-password-toggle {
	align-items: center;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 4px;
	color: #57636f;
	cursor: pointer;
	display: inline-flex;
	height: 40px;
	justify-content: center;
	padding: 0;
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
}

.pl-password-toggle:hover {
	color: var(--pl-ink);
}

.pl-password-toggle:focus-visible {
	box-shadow: 0 0 0 3px rgba(20, 115, 230, .18);
	outline: 0;
}

.pl-password-eye {
	display: inline-flex;
	height: 22px;
	width: 22px;
}

.pl-password-eye svg {
	fill: none;
	height: 100%;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
	width: 100%;
}

.pl-password-eye--hide,
.pl-password-toggle[aria-pressed="true"] .pl-password-eye--show {
	display: none;
}

.pl-password-toggle[aria-pressed="true"] .pl-password-eye--hide {
	display: inline-flex;
}

.pl-check {
	align-items: flex-start;
	display: flex;
	font-size: 15px;
	gap: 10px;
	margin: 18px 0;
}

.pl-check input {
	height: 22px;
	margin: 0;
	width: 22px;
}

.pl-check small {
	color: #686b68;
	display: block;
	font-size: 13px;
	line-height: 1.45;
	margin-top: 5px;
}

.pl-check small strong {
	color: #8b5a18;
}

.pl-button,
.pl-shell #wp-submit {
	appearance: none;
	background: var(--pl-accent);
	border: 1px solid var(--pl-accent);
	border-radius: 30px;
	color: var(--pl-ink) !important;
	cursor: pointer;
	display: inline-flex;
	font-size: 16px;
	font-weight: 800;
	justify-content: center;
	line-height: 1.2;
	min-height: 48px;
	padding: 13px 20px;
	text-align: center;
	text-decoration: none !important;
}

.pl-button:hover,
.pl-shell #wp-submit:hover {
	background: var(--pl-accent-dark);
	border-color: var(--pl-accent-dark);
	color: #fff !important;
}

.pl-button:disabled {
	cursor: wait;
	opacity: .65;
}

.pl-button--wide {
	margin-top: 20px;
	width: 100%;
}

.pl-button--ghost {
	background: transparent;
	color: var(--pl-accent) !important;
}

.pl-button--compact {
	min-height: 40px;
	padding: 10px 18px;
}

.pl-registration {
	padding-bottom: 44px;
	padding-top: 38px;
}

.pl-registration .pl-heading {
	margin-bottom: 24px;
	padding: 0 6px;
}

.pl-registration-form {
	border-color: #e2dbc9;
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(40, 41, 51, .08);
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 30px;
}

.pl-registration-form .pl-grid {
	gap: 16px;
}

.pl-registration-form .pl-field,
.pl-registration-form .pl-check {
	margin: 0;
}

.pl-registration-form .pl-field input,
.pl-registration-form .pl-field select,
.pl-registration-form .pl-birthdate input,
.pl-registration-form .pl-birthdate select {
	background: #fbfaf7 !important;
	border: 1px solid #c9c3b5 !important;
	border-radius: 7px !important;
	box-shadow: none !important;
	color: var(--pl-ink) !important;
	font-family: var(--pl-body);
	font-size: 16px !important;
	min-height: 52px;
	padding: 12px 14px !important;
}

.pl-registration-form .pl-field input:focus,
.pl-registration-form .pl-field select:focus,
.pl-registration-form .pl-birthdate input:focus,
.pl-registration-form .pl-birthdate select:focus {
	background: #fff !important;
	border-color: #a8841d !important;
	box-shadow: 0 0 0 3px rgba(214, 171, 40, .2) !important;
	outline: 0;
}

.pl-registration-form .pl-field > span,
.pl-birthdate legend,
.pl-birthdate label > span {
	color: #343b3a;
	font-size: 14px;
	font-weight: 800;
}

.pl-birthdate {
	border: 0;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.pl-birthdate legend {
	margin-bottom: 8px;
	padding: 0;
}

.pl-birthdate-fields {
	display: grid;
	gap: 12px;
	grid-template-columns: .75fr 1.35fr 1fr;
}

.pl-birthdate label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.pl-birthdate small {
	color: #686b68;
	display: block;
	font-size: 13px;
	margin-top: 7px;
}

.pl-registration-form .pl-check {
	align-items: flex-start;
	background: #f7f5ef;
	border-radius: 6px;
	min-height: 48px;
	padding: 11px 13px;
}

.pl-registration-form .pl-check input {
	accent-color: var(--pl-green);
	flex: 0 0 22px;
}

.pl-registration-form .pl-check a {
	color: #775c0d;
	font-weight: 700;
}

.pl-registration .pl-button.pl-button--wide {
	background: var(--pl-accent) !important;
	border: 1px solid var(--pl-accent) !important;
	border-radius: 28px !important;
	color: var(--pl-ink) !important;
	margin-top: 4px;
	min-height: 54px;
	width: 100%;
}

.pl-registration .pl-button.pl-button--wide:hover,
.pl-registration .pl-button.pl-button--wide:focus-visible {
	background: var(--pl-accent-dark) !important;
	border-color: var(--pl-accent-dark) !important;
	color: #fff !important;
	outline: 0;
}

.pl-login-form {
	gap: 18px;
}

.pl-login-form .pl-check {
	margin-top: -2px;
}

.pl-login-forgot {
	color: #775c0d !important;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.pl-login-forgot:hover,
.pl-login-forgot:focus-visible {
	color: var(--pl-accent-dark) !important;
	outline: 0;
}

.pl-login-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 18px 0 0;
}

.pl-profile-shell {
	max-width: 100%;
	min-width: 0;
	padding-bottom: 56px;
	padding-top: 38px;
}

.pl-profile-form {
	border-color: #e2dbc9;
	border-radius: 8px;
	box-shadow: 0 20px 50px rgba(40, 41, 51, .08);
	display: flex;
	flex-direction: column;
	gap: 30px;
	max-width: 100%;
	min-width: 0;
	padding: 32px;
	width: 100%;
}

.pl-profile-photo-card,
.pl-profile-gallery-card {
	background: #fff;
	border: 1px solid #e2dbc9;
	border-radius: 8px;
	box-shadow: 0 18px 44px rgba(40, 41, 51, .07);
	margin: 0 0 24px;
	max-width: 100%;
	padding: 24px;
	width: 100%;
}

.pl-profile-gallery-card {
	display: block;
}

.pl-profile-photo-layout {
	align-items: center;
	display: grid;
	gap: 24px;
	grid-template-columns: auto minmax(0, 1fr);
}

.pl-profile-photo-copy h2 {
	font-size: 24px;
	margin: 0 0 8px;
}

.pl-profile-gallery-head {
	align-items: start;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 18px;
}

.pl-profile-gallery-head h2 {
	font-size: 24px;
	margin: 0 0 8px;
}

.pl-profile-photo-card .pl-section-intro,
.pl-profile-gallery-card .pl-section-intro {
	color: #656861;
	font-size: 14px;
}

.pl-profile-gallery-head .pl-section-intro {
	margin-bottom: 0;
}

.pl-profile-gallery-head > span {
	background: #f4efe3;
	border-radius: 999px;
	color: #775c0d;
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 800;
	padding: 7px 11px;
}

.pl-profile-photo-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 18px;
}

.pl-profile-photo-save[hidden] {
	display: none !important;
}

.pl-profile-photo-card [data-pathlove-photo-status] {
	min-height: 1.4em;
}

.pl-profile-photo-card .pl-button,
.pl-profile-photo-card .pl-file-button,
.pl-profile-gallery-card .pl-button,
.pl-profile-gallery-card .pl-file-button,
.pl-forgot-form .pl-button {
	background: var(--pl-accent) !important;
	border: 1px solid var(--pl-accent) !important;
	border-radius: 28px !important;
	color: var(--pl-ink) !important;
	min-height: 52px;
	padding: 14px 20px;
}

.pl-profile-photo-card .pl-button:hover,
.pl-profile-photo-card .pl-button:focus-visible,
.pl-profile-photo-card .pl-file-button:hover,
.pl-profile-photo-card .pl-file-button:focus-visible,
.pl-profile-gallery-card .pl-button:hover,
.pl-profile-gallery-card .pl-button:focus-visible,
.pl-profile-gallery-card .pl-file-button:hover,
.pl-profile-gallery-card .pl-file-button:focus-visible,
.pl-forgot-form .pl-button:hover,
.pl-forgot-form .pl-button:focus-visible {
	background: var(--pl-accent-dark) !important;
	border-color: var(--pl-accent-dark) !important;
	color: #fff !important;
	outline: 0;
}

.pl-profile-gallery-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 18px;
}

.pl-gallery-selected {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
	margin: 16px 0 0;
}

.pl-gallery-selected[hidden] {
	display: none;
}

.pl-gallery-selected > div {
	background: #f8f6f0;
	border: 1px solid #e1dacb;
	border-radius: 8px;
	min-width: 0;
	overflow: hidden;
	padding: 7px;
}

.pl-gallery-selected span {
	align-items: center;
	aspect-ratio: 1;
	background: #fff;
	border-radius: 6px;
	color: #756f63;
	display: flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	overflow: hidden;
	text-align: center;
}

.pl-gallery-selected img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.pl-gallery-selected small {
	color: #656861;
	display: block;
	font-size: 11px;
	font-weight: 700;
	margin-top: 6px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pl-gallery-status {
	color: #28553c;
	font-size: 13px;
	font-weight: 800;
	margin: 12px 0 0;
}

.pl-profile-gallery-card .pl-help {
	margin: 14px 0 0;
}

.pl-photo-preview--avatar {
	background: #f7f5ef;
	border: 3px solid #fff;
	border-radius: 50%;
	box-shadow: 0 0 0 1px #d8cfbd, 0 14px 30px rgba(40, 41, 51, .14);
	height: 164px;
	width: 164px;
}

.pl-photo-preview--avatar span {
	font-size: 13px;
	padding: 12px;
	text-align: center;
}

.pl-profile-form .pl-form-section {
	border: 0;
	border-bottom: 1px solid #e7e1d3;
	margin: 0;
	padding: 0 0 30px;
}

.pl-profile-form .pl-form-section--gallery {
	border-bottom: 0;
	padding-bottom: 0;
}

.pl-profile-form .pl-form-section h2 {
	color: var(--pl-ink);
	font-family: var(--pl-display);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.1;
	margin: 0 0 7px;
}

.pl-profile-form .pl-section-intro {
	color: #656861;
	font-size: 14px;
	margin: 0 0 20px;
}

.pl-profile-form .pl-grid {
	gap: 18px;
	max-width: 100%;
	min-width: 0;
	width: 100%;
}

.pl-profile-form .pl-grid > * {
	max-width: 100%;
	min-width: 0;
}

.pl-profile-form .pl-field input,
.pl-profile-form .pl-field select,
.pl-profile-form .pl-field textarea,
.pl-profile-form .pl-birthdate input,
.pl-profile-form .pl-birthdate select {
	background: #fbfaf7 !important;
	border: 1px solid #c9c3b5 !important;
	border-radius: 7px !important;
	box-shadow: none !important;
	color: var(--pl-ink) !important;
	font-family: var(--pl-body);
	font-size: 16px !important;
	min-height: 52px;
	padding: 12px 14px !important;
}

.pl-profile-form .pl-field textarea {
	min-height: 128px;
}

.pl-profile-form .pl-field input:focus,
.pl-profile-form .pl-field select:focus,
.pl-profile-form .pl-field textarea:focus,
.pl-profile-form .pl-birthdate input:focus,
.pl-profile-form .pl-birthdate select:focus {
	background: #fff !important;
	border-color: #a8841d !important;
	box-shadow: 0 0 0 3px rgba(214, 171, 40, .2) !important;
	outline: 0;
}

.pl-profile-form .pl-form-section--photo {
	background: #f7f5ef;
	border: 1px solid #e3ddcf;
	border-radius: 8px;
	padding: 22px;
}

.pl-profile-form .pl-photo-preview {
	background: #fff;
	border: 1px solid #d7d0bf;
	border-radius: 8px;
	height: 180px;
	width: 160px;
}

.pl-profile-form .pl-file-button {
	background: #fff !important;
	border: 1px solid #b18a18 !important;
	border-radius: 24px;
	color: #6e550d;
	min-height: 48px;
	padding: 13px 18px;
}

.pl-profile-form > .pl-button.pl-button--wide {
	background: var(--pl-accent) !important;
	border: 1px solid var(--pl-accent) !important;
	border-radius: 28px !important;
	color: var(--pl-ink) !important;
	margin-top: 0;
	min-height: 56px;
}

.pl-profile-form > .pl-button.pl-button--wide:hover,
.pl-profile-form > .pl-button.pl-button--wide:focus-visible {
	background: var(--pl-accent-dark) !important;
	border-color: var(--pl-accent-dark) !important;
	color: #fff !important;
}

.pl-trap {
	height: 1px !important;
	left: -10000px !important;
	opacity: 0 !important;
	position: absolute !important;
	width: 1px !important;
}

.pl-notice {
	background: #fff8e7;
	border: 1px solid #ead69c;
	border-left: 6px solid var(--pl-accent);
	border-radius: 8px;
	box-sizing: border-box;
	box-shadow: 0 12px 30px rgba(80, 61, 20, .1);
	clear: both;
	color: #3f3320;
	font-weight: 700;
	line-height: 1.45;
	margin: 0 0 20px;
	max-width: 100%;
	padding: 15px 18px;
	width: 100%;
}

.pl-notice--error {
	background: #fff4f2;
	border-color: #f0b9af;
	border-left-color: #b42318;
	color: #3d1f1b;
}

.pl-notice--success {
	background: #eef8f1;
	border-color: var(--pl-green);
	color: #1f5033;
}

.pl-notice--info {
	background: #f7f3e8;
	border-color: #d9c893;
	color: #4e4328;
}

.pl-login .pl-notice {
	margin: -4px 0 18px;
}

.pl-preview-mode {
	opacity: .72;
	pointer-events: none;
	user-select: none;
}

.pl-help {
	color: var(--pl-muted);
	font-size: 14px;
}

.pl-legacy-value {
	background: #fff8e5;
	border-left: 3px solid #dba617;
	color: #5f4b13;
	display: block;
	font-size: 13px;
	line-height: 1.4;
	padding: 8px 10px;
}

.pl-legacy-value code {
	background: rgba(255, 255, 255, .75);
	color: var(--pl-ink);
	white-space: normal;
}

.pl-photo-input {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

.pl-photo-preview {
	align-items: center;
	background: var(--pl-soft);
	border: 1px solid var(--pl-border);
	display: flex;
	height: 150px;
	justify-content: center;
	overflow: hidden;
	width: 150px;
}

.pl-photo-preview img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.pl-file-button {
	background: #fff;
	border: 1px solid var(--pl-accent);
	border-radius: 4px;
	color: var(--pl-accent);
	cursor: pointer;
	font-weight: 800;
	padding: 12px 16px;
}

.pl-file-button input {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.pl-gallery-editor {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
	margin-bottom: 18px;
}

.pl-profile-requests {
	background: #fff;
	border: 1px solid #e2dbc9;
	border-radius: 8px;
	box-shadow: 0 18px 44px rgba(40, 41, 51, .07);
	margin-top: 24px;
	padding: 28px;
}

.pl-profile-requests__head {
	margin-bottom: 18px;
}

.pl-profile-requests__head h2 {
	font-size: 24px;
	margin: 0 0 6px;
}

.pl-profile-requests__head p,
.pl-request-card p {
	color: var(--pl-muted);
	margin: 0;
}

.pl-empty-state {
	background: #f7f5ef;
	border: 1px solid #e5ddcc;
	border-radius: 8px;
	color: var(--pl-muted);
	padding: 18px;
}

.pl-request-list {
	display: grid;
	gap: 12px;
}

.pl-request-card {
	align-items: center;
	border: 1px solid #e5ddcc;
	border-radius: 8px;
	display: grid;
	gap: 16px;
	grid-template-columns: 86px minmax(0, 1fr) auto;
	padding: 12px;
}

.pl-request-card__photo {
	align-items: center;
	aspect-ratio: 1;
	background: #f7f5ef;
	border-radius: 7px;
	color: var(--pl-muted);
	display: flex;
	font-size: 13px;
	font-weight: 700;
	justify-content: center;
	overflow: hidden;
	text-decoration: none !important;
}

.pl-request-card__photo img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.pl-request-card__body {
	min-width: 0;
}

.pl-request-card h3 {
	font-size: 20px;
	margin: 6px 0 4px;
}

.pl-request-status {
	background: #f4efe3;
	border-radius: 999px;
	color: #775c0d;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	padding: 6px 10px;
}

.pl-request-status--approvata,
.pl-request-status--contacted {
	background: #edf7f0;
	color: #176843;
}

.pl-request-status--non_approvata,
.pl-request-status--closed {
	background: #f4f1ef;
	color: #7d3636;
}

.pl-request-card__link {
	min-height: 42px;
	white-space: nowrap;
}

.pl-gallery-editor label {
	border: 1px solid var(--pl-border);
	display: flex;
	flex-direction: column;
	padding: 6px;
}

.pl-gallery-editor img {
	aspect-ratio: 1;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.pl-gallery-editor span {
	font-size: 13px;
	padding-top: 6px;
}

.pl-profile-head {
	align-items: center;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: 22px;
}

.pl-profile-actions {
	align-items: flex-end;
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	gap: 12px;
}

.pl-progress {
	flex: 0 0 200px;
	width: 200px;
}

.pl-progress strong {
	display: block;
	font-size: 28px;
	text-align: right;
}

.pl-progress span {
	background: #dfe3e6;
	display: block;
	height: 10px;
	margin-top: 8px;
	overflow: hidden;
}

.pl-progress i {
	background: var(--pl-green);
	display: block;
	height: 100%;
}

.pl-missing {
	background: #fffaf0;
	border: 1px solid #e5cf8a;
	border-radius: 8px;
	box-shadow: 0 12px 30px rgba(67, 61, 48, .06);
	margin-bottom: 24px;
	padding: 18px;
}

.pl-missing__head {
	align-items: start;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 14px;
}

.pl-missing__head strong {
	color: #6d581d;
	font-size: 16px;
	font-weight: 900;
	white-space: nowrap;
}

.pl-missing__head span {
	color: #5f5b52;
	font-size: 14px;
	line-height: 1.45;
	text-align: right;
}

.pl-missing__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.pl-missing__list span {
	background: #fff;
	border: 1px solid #e0cf99;
	border-radius: 999px;
	color: #4f493d;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	padding: 8px 11px;
}

.pl-filters {
	background: transparent;
	border: 0;
	border-radius: 0;
	display: block;
	margin: 18px 0 16px;
	padding: 0;
}

.pl-filter-primary {
	align-items: end;
	background: #fff;
	border: 1px solid #e4dccb;
	border-radius: 8px;
	box-shadow: 0 12px 32px rgba(67, 61, 48, .1);
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(220px, 1fr) auto auto;
	padding: 12px;
}

.pl-filter-primary .pl-field {
	gap: 0;
	position: relative;
}

.pl-filter-primary .pl-field > span {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.pl-filter-primary .pl-field input {
	background: #f8f6f0;
	border: 1px solid #e1dacb !important;
	border-radius: 6px;
	color: #30332f;
	min-width: 0;
	min-height: 52px;
	padding: 12px 17px;
}

.pl-filter-primary .pl-field input:focus {
	border-color: #b9952c !important;
	box-shadow: 0 0 0 3px rgba(185, 149, 44, .18) !important;
	outline: 0;
}

.pl-filter-primary button,
.pl-filter-apply {
	appearance: none;
	border-radius: 28px;
	cursor: pointer;
	font-family: var(--pl-body);
	font-size: 14px;
	font-weight: 800;
	min-height: 52px;
	padding: 12px 21px;
}

.pl-filter-search-button,
.pl-filter-apply {
	background: #d8ae2c !important;
	border: 1px solid #d8ae2c !important;
	color: #252a27 !important;
}

.pl-filter-search-button:hover,
.pl-filter-search-button:focus-visible,
.pl-filter-apply:hover,
.pl-filter-apply:focus-visible {
	background: #bf951c !important;
	border-color: #bf951c !important;
	color: #202521 !important;
	outline: 0;
}

.pl-filter-toggle {
	align-items: center;
	background: #eef4ef !important;
	border: 1px solid #cad9cc !important;
	color: #28553c !important;
	display: inline-flex;
	gap: 8px;
	justify-content: center;
}

.pl-filter-toggle:hover,
.pl-filter-toggle:focus-visible,
.pl-filter-toggle[aria-expanded="true"] {
	background: #dfece2 !important;
	border-color: #aac2af !important;
	color: #204a33 !important;
	outline: 0;
}

.pl-filter-toggle small {
	align-items: center;
	background: #d8ae2c;
	border-radius: 50%;
	color: var(--pl-ink);
	display: inline-flex;
	font-size: 11px;
	height: 20px;
	justify-content: center;
	line-height: 1;
	width: 20px;
}

.pl-filter-toggle small[hidden] {
	display: none;
}

.pl-filter-advanced {
	background: #fffdf8;
	border: 1px solid #e7dfcf;
	border-radius: 8px;
	box-shadow: 0 12px 32px rgba(67, 61, 48, .08);
	display: none;
	margin-top: 10px;
	padding: 20px;
}

.pl-filter-advanced.is-open {
	display: block;
}

.pl-filter-advanced-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.pl-filter-advanced-head strong {
	color: var(--pl-ink);
	font-family: var(--pl-display);
	font-size: 22px;
	font-weight: 600;
}

.pl-filter-advanced-head button {
	background: #f4efe2 !important;
	border: 1px solid #d9cba9 !important;
	border-radius: 18px;
	color: #6d581d !important;
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
	min-height: 34px;
	padding: 6px 13px;
}

.pl-filter-advanced-head button:hover,
.pl-filter-advanced-head button:focus-visible {
	background: #eadfbe !important;
	border-color: #b99a42 !important;
	outline: 0;
}

.pl-filter-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(180px, 1fr) minmax(110px, .7fr) minmax(110px, .7fr) auto;
}

.pl-filter-grid .pl-field > span {
	color: #6a665e;
	font-size: 11px;
	text-transform: uppercase;
}

.pl-filter-grid .pl-field input,
.pl-filter-grid .pl-field select {
	background: #fff;
	border-color: #ddd4c2 !important;
	border-radius: 6px;
	color: #30332f;
	min-height: 46px;
}

.pl-filter-grid .pl-field input:focus,
.pl-filter-grid .pl-field select:focus {
	border-color: #b9952c !important;
	box-shadow: 0 0 0 3px rgba(185, 149, 44, .15) !important;
	outline: 0;
}

.pl-filter-apply {
	align-self: end;
	margin: 0;
	min-height: 46px;
	white-space: nowrap;
}

.pl-results-count {
	color: #706b61;
	font-size: 13px;
	font-weight: 700;
	margin: 18px 0 12px;
	text-transform: uppercase;
}

.pl-girls-grid {
	display: grid;
	gap: 24px 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pl-girl-card {
	background: #fff;
	border: 1px solid var(--pl-border);
	border-radius: 6px;
	box-shadow: 0 10px 28px rgba(40, 41, 51, .06);
	min-width: 0;
	overflow: hidden;
	transition: box-shadow .22s ease, transform .22s ease;
}

.pl-girl-card:hover,
.pl-girl-card:focus-within {
	box-shadow: 0 16px 36px rgba(40, 41, 51, .13);
	transform: translateY(-3px);
}

.pl-girl-card a {
	color: inherit;
	display: block;
	text-decoration: none;
}

.pl-girl-card__photo {
	aspect-ratio: 4 / 5;
	background: #e9ecee;
	position: relative;
}

.pl-girl-card__photo > img {
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
	width: 100%;
}

.pl-girl-card:hover .pl-girl-card__photo > img {
	transform: scale(1.025);
}

.pl-girl-card__photo > span {
	align-items: center;
	color: var(--pl-muted);
	display: flex;
	height: 100%;
	justify-content: center;
}

.pl-girl-card__body {
	padding: 15px;
}

.pl-girl-card h2 {
	font-size: 21px;
	margin: 0 0 5px;
}

.pl-girl-card p {
	color: var(--pl-muted);
	margin: 0;
}

.pl-loader {
	padding: 28px;
	text-align: center;
}

.pl-girls-page {
	background: #f6f5f1;
	min-height: 70vh;
	padding-bottom: 64px;
	padding-top: 46px;
}

.pl-heading--girls {
	border-bottom: 1px solid var(--pl-border);
	margin-bottom: 0;
	padding-bottom: 26px;
}

.pl-heading--girls h1 {
	font-size: 72px;
	margin-bottom: 0;
}

.pl-back {
	color: var(--pl-accent-dark);
	display: inline-block;
	font-size: 13px;
	font-weight: 800;
	margin-bottom: 24px;
	text-decoration: none;
	text-transform: uppercase;
}

.pl-back span {
	font-size: 22px;
	line-height: 0;
	margin-right: 5px;
	vertical-align: -2px;
}

.pl-girl-page {
	background: #fbfaf8;
	padding: 34px 0 70px;
}

.pl-girl {
	max-width: 1280px;
}

.pl-girl-hero {
	align-items: center;
	display: grid;
	gap: 48px;
	grid-template-columns: minmax(0, 1.02fr) minmax(380px, .98fr);
	margin-bottom: 76px;
	min-height: 560px;
}

.pl-girl-gallery {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 18px 48px rgba(40, 41, 51, .1);
	min-width: 0;
	padding: 10px;
}

.pl-girl-main {
	align-items: center;
	background: #efeee9;
	border-radius: 6px;
	display: flex;
	height: min(68vh, 650px);
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.pl-girl-main img {
	height: 100%;
	object-fit: cover;
	object-position: center 22%;
	width: 100%;
}

.pl-main-photo-button {
	background: transparent;
	border: 0 !important;
	border-radius: 6px;
	box-shadow: none !important;
	cursor: zoom-in;
	height: 100%;
	outline: 0 !important;
	padding: 0;
	position: relative;
	width: 100%;
}

.pl-girl-main,
.pl-girl-main:hover,
.pl-girl-main:focus-within,
.pl-main-photo-button:hover,
.pl-main-photo-button:focus,
.pl-main-photo-button:focus-visible,
.pl-main-photo-button img,
.pl-main-photo-button:hover img,
.pl-main-photo-button:focus img {
	border-color: transparent !important;
	outline: 0 !important;
}

.pl-main-photo-button:focus-visible {
	box-shadow: inset 0 0 0 2px rgba(185, 149, 44, .55) !important;
}

.pl-open-hint {
	background: rgba(255, 255, 255, .94);
	bottom: 16px;
	border-radius: 24px;
	color: var(--pl-ink);
	font-size: 12px;
	font-weight: 800;
	left: 16px;
	padding: 8px 14px;
	position: absolute;
	text-transform: uppercase;
}

.pl-photo-count {
	background: rgba(40, 41, 51, .82);
	bottom: 16px;
	border-radius: 24px;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 8px 13px;
	position: absolute;
	right: 16px;
}

.pl-thumbs {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(6, 1fr);
	margin: 12px 2px 2px;
}

.pl-thumbs button {
	aspect-ratio: 1;
	background: none !important;
	border: 0 !important;
	border-radius: 6px;
	box-shadow: none;
	cursor: pointer;
	outline: 0 !important;
	overflow: hidden;
	padding: 0;
	transition: box-shadow .2s ease, opacity .2s ease, transform .2s ease;
}

.pl-thumbs button.is-active,
.pl-thumbs button:focus-visible {
	box-shadow: 0 0 0 2px #c49b24 !important;
	opacity: 1;
	transform: translateY(-2px);
}

.pl-thumbs img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.pl-lightbox[hidden] {
	display: none;
}

.pl-lightbox button[hidden] {
	display: none;
}

.pl-lightbox {
	align-items: center;
	background: rgba(18, 19, 22, .96);
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 52px 76px;
	position: fixed;
	z-index: 999999;
}

.pl-lightbox figure {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	margin: 0;
	max-width: min(1100px, 86vw);
	position: relative;
	width: 100%;
}

.pl-lightbox img {
	max-height: calc(100vh - 104px);
	max-width: 100%;
	object-fit: contain;
}

.pl-lightbox figcaption {
	background: rgba(18, 19, 22, .72);
	bottom: 8px;
	color: #fff;
	font-size: 13px;
	padding: 7px 12px;
	position: absolute;
}

.pl-lightbox button {
	align-items: center;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .28);
	color: #fff;
	cursor: pointer;
	display: flex;
	justify-content: center;
}

.pl-lightbox button:hover,
.pl-lightbox button:focus {
	background: #fff;
	color: #282933;
	outline: 2px solid var(--pl-accent);
}

.pl-lightbox-close {
	font-size: 34px;
	height: 46px;
	position: absolute;
	right: 18px;
	top: 18px;
	width: 46px;
	z-index: 2;
}

.pl-lightbox-nav {
	font-size: 46px;
	height: 58px;
	position: absolute;
	top: calc(50% - 29px);
	width: 48px;
	z-index: 2;
}

.pl-lightbox-prev {
	left: 18px;
}

.pl-lightbox-next {
	right: 18px;
}

body.pl-lightbox-open {
	overflow: hidden;
}

.pl-girl-summary {
	align-self: stretch;
	background: transparent;
	border: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 46px 18px 46px 4px;
}

.pl-girl-eyebrow {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 18px;
}

.pl-girl-eyebrow .pl-kicker {
	margin: 0 !important;
}

.pl-girl-summary h1 {
	font-size: 62px;
	line-height: 1;
	margin-bottom: 20px;
}

.pl-girl-lead {
	color: #64656b;
	font-family: "Abhaya Libre", Georgia, serif;
	font-size: 21px;
	line-height: 1.45;
	margin: 0 0 26px;
	max-width: 520px;
}

.pl-girl-facts {
	background: #fff;
	border: 0;
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(40, 41, 51, .065);
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 22px;
	padding: 18px 20px;
}

.pl-girl-facts > div {
	border: 0;
	min-width: 0;
	padding: 0;
}

.pl-girl-facts > div + div {
	padding-left: 0;
}

.pl-girl-facts span {
	color: #777064;
	display: block;
	font-size: 10px;
	font-weight: 800;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.pl-girl-facts strong {
	display: block;
	font-family: var(--pl-display);
	font-size: 19px;
	font-weight: 600;
	line-height: 1.1;
	overflow-wrap: anywhere;
}

.pl-contact-panel {
	background: #fff;
	border: 1px solid #e2dac9;
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(67, 61, 48, .1);
	color: var(--pl-ink);
	margin-top: 0;
	overflow: hidden;
	padding: 24px 26px 25px;
	position: relative;
}

.pl-contact-panel::before {
	background: var(--pl-accent);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.pl-contact-panel strong {
	color: var(--pl-ink);
	font-family: var(--pl-display);
	font-size: 24px;
	font-weight: 600;
}

.pl-contact-panel p {
	color: #5d5d59;
	line-height: 1.5;
	margin: 7px 0 16px;
}

.pl-contact-panel--pre-media {
	display: none;
}

.pl-contact-panel--blocked {
	background: #fffaf0;
	border-color: #d2a629;
}

.pl-contact-panel--archive {
	margin: 0 0 18px;
}

.pl-contact-panel--archive-inline {
	grid-column: 1 / -1;
	margin: 6px 0;
}

.pl-contact-alert__heading {
	align-items: flex-start;
	display: flex;
	gap: 13px;
}

.pl-contact-alert__heading p {
	margin-bottom: 14px;
}

.pl-contact-alert__icon {
	align-items: center;
	background: var(--pl-accent);
	border-radius: 50%;
	box-shadow: 0 0 0 5px rgba(196, 155, 36, .16);
	color: var(--pl-ink);
	display: inline-flex;
	flex: 0 0 36px;
	font-size: 23px;
	font-weight: 900;
	height: 36px;
	justify-content: center;
	line-height: 1;
}

.pl-contact-progress {
	align-items: center;
	display: grid;
	gap: 11px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin: 3px 0 18px;
}

.pl-contact-progress > span {
	background: #e7deca;
	border-radius: 999px;
	display: block;
	height: 13px;
	overflow: hidden;
}

.pl-contact-progress i {
	background: linear-gradient(90deg, #a97d0c 0%, var(--pl-accent) 72%, #f0d77e 100%);
	border-radius: inherit;
	display: block;
	height: 100%;
	min-width: 4px;
}

.pl-contact-progress strong {
	font-family: var(--pl-body);
	font-size: 18px;
	font-weight: 900;
}

.pl-contact-panel .pl-contact-action {
	align-items: center;
	appearance: none;
	background: var(--pl-accent) !important;
	border: 1px solid var(--pl-accent) !important;
	border-radius: 28px !important;
	box-shadow: 0 8px 18px rgba(141, 107, 15, .18) !important;
	color: var(--pl-ink) !important;
	cursor: pointer;
	display: inline-flex !important;
	font-family: var(--pl-body) !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	justify-content: center;
	line-height: 1.2 !important;
	margin: 0 !important;
	min-height: 52px;
	padding: 14px 24px !important;
	text-align: center;
	text-decoration: none !important;
	transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
	width: 100%;
}

.pl-contact-panel .pl-contact-action:hover,
.pl-contact-panel .pl-contact-action:focus-visible {
	background: var(--pl-accent-dark) !important;
	border-color: var(--pl-accent-dark) !important;
	box-shadow: 0 10px 22px rgba(89, 69, 14, .24) !important;
	color: #fff !important;
	outline: 0;
	transform: translateY(-1px);
}

.pl-contact-panel .pl-contact-action:active {
	box-shadow: 0 4px 10px rgba(89, 69, 14, .2) !important;
	transform: translateY(0);
}

.pl-contact-panel .pl-contact-action:disabled {
	cursor: wait;
	opacity: .65;
	transform: none;
}

.pl-girl-sections {
	border-top: 1px solid var(--pl-border);
}

.pl-girl-details {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--pl-border);
	border-radius: 0;
	display: grid;
	gap: 56px;
	grid-template-columns: minmax(220px, .34fr) minmax(0, .66fr);
	padding: 46px 0;
}

.pl-girl-details h2 {
	font-family: var(--pl-display);
	font-size: 36px;
	font-weight: 600;
	line-height: 1;
	margin: 0;
}

.pl-girl-details dl {
	display: grid;
	gap: 0 34px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
}

.pl-girl-details dl > div {
	border-top: 1px solid var(--pl-border);
	padding: 14px 0 18px;
}

.pl-girl-details .pl-detail-wide {
	grid-column: 1 / -1;
}

.pl-girl-details dt {
	color: #8d6b0f;
	font-size: 11px;
	font-weight: 800;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.pl-girl-details dd {
	color: var(--pl-muted);
	font-family: "Abhaya Libre", Georgia, serif;
	font-size: 19px;
	line-height: 1.45;
	margin: 0;
}

@media (max-width: 980px) {
	.pl-filter-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pl-filter-apply {
		grid-column: 1 / -1;
	}

	.pl-girls-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pl-girl-summary {
		padding: 36px 10px 36px 0;
	}

	.pl-girl-summary h1 {
		font-size: 52px;
	}

	.pl-girl-hero {
		gap: 30px;
	}
}

@media (max-width: 900px) {
	.pl-profile-head {
		align-items: stretch;
		flex-direction: column;
		gap: 18px;
	}

	.pl-profile-form .pl-grid--2 {
		grid-template-columns: minmax(0, 1fr);
	}

	.pl-profile-form .pl-field--full {
		grid-column: auto;
	}

	.pl-progress {
		flex-basis: auto;
		width: 100%;
	}

	.pl-progress strong {
		text-align: left;
	}

	.pl-missing__head {
		flex-direction: column;
		gap: 6px;
	}

	.pl-missing__head span {
		text-align: left;
	}
}

@media (max-width: 720px) {
	.pl-page {
		padding-top: 8px;
	}

	.pl-shell {
		padding: 16px;
	}

	.pl-heading h1,
	.pl-profile-head h1 {
		font-size: 36px;
	}

	.pl-heading--girls h1 {
		font-size: 42px;
	}

	.pl-grid--2,
	.pl-girl-hero,
	.pl-girl-details dl {
		grid-template-columns: 1fr;
	}

	.pl-filter-primary {
		gap: 7px;
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 8px;
	}

	.pl-filter-primary .pl-field--search {
		grid-column: 1 / -1;
	}

	.pl-filter-primary .pl-field input,
	.pl-filter-primary button {
		font-size: 14px;
		min-height: 46px;
		padding: 10px 13px;
	}

	.pl-filter-primary button {
		padding-left: 14px;
		padding-right: 14px;
	}

	.pl-filter-advanced {
		padding: 15px;
	}

	.pl-filter-grid {
		gap: 12px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pl-filter-advanced-head {
		margin-bottom: 13px;
	}

	.pl-filter-advanced-head strong {
		font-size: 20px;
	}

	.pl-filter-apply {
		grid-column: 1 / -1;
		width: 100%;
	}

	.pl-girls-grid {
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pl-girl-card__body {
		padding: 11px;
	}

	.pl-girl-card h2 {
		font-size: 18px;
	}

	.pl-profile-head {
		align-items: stretch;
		flex-direction: column;
		gap: 18px;
	}

	.pl-progress {
		flex-basis: auto;
		width: 100%;
	}

	.pl-progress strong {
		text-align: left;
	}

	.pl-registration {
		padding: 24px 14px 36px;
	}

	.pl-registration .pl-heading {
		padding: 0;
	}

	.pl-registration .pl-heading h1 {
		font-size: 40px;
	}

	.pl-registration-form {
		gap: 16px;
		padding: 20px 16px;
	}

	.pl-registration-form .pl-grid--2,
	.pl-profile-form .pl-grid--2 {
		grid-template-columns: 1fr;
	}

	.pl-profile-shell {
		padding: 24px 14px 40px;
	}

	.pl-profile-form {
		gap: 24px;
		padding: 20px 16px;
	}

	.pl-profile-photo-card,
	.pl-profile-gallery-card {
		padding: 20px 16px;
	}

	.pl-profile-photo-layout {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	.pl-profile-photo-actions {
		align-items: stretch;
		flex-direction: column;
		justify-content: center;
		width: 100%;
	}

	.pl-profile-photo-actions .pl-button,
	.pl-profile-photo-actions .pl-file-button,
	.pl-profile-gallery-actions .pl-button,
	.pl-profile-gallery-actions .pl-file-button {
		width: 100%;
	}

	.pl-profile-gallery-head {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.pl-profile-gallery-head > span {
		align-self: flex-start;
	}

	.pl-profile-gallery-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.pl-profile-requests {
		padding: 20px 16px;
	}

	.pl-request-card {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	.pl-request-card__link {
		grid-column: 1 / -1;
		width: 100%;
	}

	.pl-profile-form .pl-form-section--photo {
		padding: 18px 15px;
	}

	.pl-profile-form .pl-photo-input {
		align-items: stretch;
		flex-direction: column;
	}

	.pl-profile-form .pl-photo-preview {
		height: auto;
		max-width: 190px;
		width: 100%;
	}

	.pl-profile-form .pl-photo-preview::before {
		content: "";
		display: block;
		padding-top: 112.5%;
	}

	.pl-profile-form .pl-photo-preview img,
	.pl-profile-form .pl-photo-preview span {
		inset: 0;
		position: absolute;
	}

	.pl-profile-form .pl-photo-preview {
		position: relative;
	}

	.pl-profile-form .pl-file-button {
		text-align: center;
	}

	.pl-birthdate-fields {
		grid-template-columns: .8fr 1.3fr 1fr;
	}

	.pl-girl-hero {
		gap: 28px;
		min-height: 0;
	}

	.pl-contact-panel--pre-media {
		display: block;
		margin: 0 0 18px;
	}

	.pl-contact-panel--summary.pl-contact-panel--blocked {
		display: none;
	}

	.pl-contact-panel--pre-media.pl-contact-panel--blocked {
		animation: pl-contact-alert-pulse 1.7s ease-in-out infinite;
		border-width: 2px;
		box-shadow: 0 12px 34px rgba(156, 111, 5, .25), 0 0 0 4px rgba(212, 175, 55, .16);
		padding: 23px 18px 20px;
	}

	.pl-contact-panel--pre-media .pl-contact-alert__heading > div {
		min-width: 0;
	}

	.pl-contact-panel--pre-media .pl-contact-alert__heading strong {
		display: block;
		font-size: 28px;
		line-height: 1.02;
	}

	.pl-contact-panel--pre-media .pl-contact-alert__heading p {
		font-size: 16px;
		font-weight: 650;
		line-height: 1.4;
		margin-top: 10px;
	}

	.pl-contact-panel--pre-media .pl-contact-progress > span {
		height: 16px;
	}

	.pl-contact-panel--pre-media .pl-contact-alert__icon {
		animation: pl-contact-icon-pulse .9s ease-in-out infinite alternate;
	}

	.pl-girl-main {
		height: min(62vh, 520px);
	}

	.pl-girl-summary {
		border: 0;
		padding: 14px 2px 4px;
	}

	.pl-girl-summary h1 {
		font-size: 46px;
	}

	.pl-girl-facts {
		gap: 18px 24px;
		grid-template-columns: 1fr 1fr;
		padding: 18px;
	}

	.pl-girl-facts > div:nth-child(2) {
		border: 0;
	}

	.pl-girl-facts > div:nth-child(3) {
		border: 0;
		grid-column: 1 / -1;
		padding-left: 0;
	}

	.pl-thumbs {
		grid-template-columns: repeat(5, 1fr);
	}

	.pl-lightbox {
		padding: 54px 12px 18px;
	}

	.pl-lightbox figure {
		max-width: 100%;
	}

	.pl-lightbox-nav {
		background: rgba(18, 19, 22, .58);
		bottom: 24px;
		top: auto;
	}

	.pl-lightbox-prev {
		left: 12px;
	}

	.pl-lightbox-next {
		right: 12px;
	}

	.pl-girl-details {
		gap: 22px;
		grid-template-columns: 1fr;
		padding: 34px 0;
	}

	.pl-girl-details h2 {
		font-size: 31px;
	}
}

@keyframes pl-contact-alert-pulse {
	0%, 100% { box-shadow: 0 12px 34px rgba(156, 111, 5, .22), 0 0 0 3px rgba(212, 175, 55, .12); }
	50% { box-shadow: 0 15px 40px rgba(156, 111, 5, .3), 0 0 0 7px rgba(212, 175, 55, .24); }
}

@keyframes pl-contact-icon-pulse {
	from { transform: scale(1); }
	to { transform: scale(1.12); }
}

@media (prefers-reduced-motion: reduce) {
	.pl-contact-panel--pre-media.pl-contact-panel--blocked,
	.pl-contact-panel--pre-media .pl-contact-alert__icon {
		animation: none;
	}
}

@media (max-width: 480px) {
	.pl-heading--girls h1 {
		font-size: 38px;
	}

	.pl-birthdate-fields {
		grid-template-columns: 1fr 1.35fr;
	}

	.pl-birthdate-fields label:last-child {
		grid-column: 1 / -1;
	}

	.pl-filter-search-button {
		font-size: 0 !important;
		padding: 0 !important;
		position: relative;
		width: 46px;
	}

	.pl-filter-search-button::before {
		border: 2px solid var(--pl-ink);
		border-radius: 50%;
		content: "";
		height: 13px;
		left: 14px;
		position: absolute;
		top: 12px;
		width: 13px;
	}

	.pl-filter-search-button::after {
		background: var(--pl-ink);
		content: "";
		height: 2px;
		left: 27px;
		position: absolute;
		top: 27px;
		transform: rotate(45deg);
		width: 8px;
	}

	.pl-filter-toggle {
		padding-left: 11px !important;
		padding-right: 11px !important;
	}

	.pl-filter-advanced-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 9px;
	}

	.pl-filter-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 360px) {
	.pl-page {
		padding-top: 4px;
	}

	.pl-shell {
		padding: 10px;
	}

	.pl-heading--girls {
		padding-bottom: 18px;
	}

	.pl-heading h1,
	.pl-heading--girls h1,
	.pl-girl-summary h1,
	.pl-profile-head h1 {
		font-size: 34px;
	}

	.pl-filter-primary {
		grid-template-columns: minmax(0, 1fr) 46px;
	}

	.pl-filter-toggle {
		grid-column: 1 / -1;
		width: 100%;
	}

	.pl-filter-grid {
		grid-template-columns: 1fr;
	}

	.pl-girls-grid {
		grid-template-columns: 1fr;
	}

	.pl-girl-card__photo {
		aspect-ratio: 4 / 4.8;
	}

	.pl-girl-gallery {
		padding: 7px;
	}

	.pl-girl-main {
		height: min(60vh, 430px);
	}

	.pl-open-hint,
	.pl-photo-count {
		bottom: 10px;
		font-size: 11px;
		padding: 7px 10px;
	}

	.pl-open-hint {
		left: 10px;
	}

	.pl-photo-count {
		right: 10px;
	}

	.pl-thumbs {
		gap: 7px;
		grid-template-columns: repeat(4, 1fr);
	}

	.pl-girl-facts {
		grid-template-columns: 1fr;
	}

	.pl-girl-facts > div:nth-child(3) {
		grid-column: auto;
	}

	.pl-contact-panel,
	.pl-girl-details {
		padding-left: 0;
		padding-right: 0;
	}

	.pl-contact-panel {
		padding: 19px 16px 20px;
	}

	.pl-lightbox {
		padding: 50px 8px 16px;
	}

	.pl-lightbox-close {
		right: 8px;
		top: 8px;
	}
}

@media (max-height: 520px) and (orientation: landscape) {
	.pl-girl-page {
		padding-top: 12px;
	}

	.pl-girl-page .pl-back {
		margin-bottom: 10px;
	}

	.pl-girl-hero {
		align-items: start;
		gap: 24px;
		grid-template-columns: minmax(280px, .8fr) 1fr;
		min-height: 0;
	}

	.pl-contact-panel--pre-media {
		display: block;
		margin: 0 0 14px;
	}

	.pl-contact-panel--summary.pl-contact-panel--blocked {
		display: none;
	}

	.pl-contact-panel--pre-media.pl-contact-panel--blocked {
		border-width: 2px;
		box-shadow: 0 10px 28px rgba(156, 111, 5, .25), 0 0 0 4px rgba(212, 175, 55, .16);
		padding: 17px 19px 18px;
	}

	.pl-girl-main {
		height: 72vh;
	}

	.pl-girl-summary {
		padding-top: 0;
	}

	.pl-girl-summary h1 {
		font-size: 42px;
		margin-bottom: 12px;
	}

	.pl-girl-lead {
		font-size: 18px;
		line-height: 1.3;
		margin-bottom: 14px;
	}

	.pl-girl-facts {
		margin-bottom: 14px;
		padding: 12px 15px;
	}

	.pl-contact-panel {
		padding: 17px 19px 18px;
	}

	.pl-form {
		padding: 18px;
	}
}

@media (max-width: 560px) and (max-height: 520px) and (orientation: landscape) {
	.pl-girl-hero {
		grid-template-columns: 1fr;
	}

	.pl-girl-main {
		height: 68vh;
	}

	.pl-girl-summary h1 {
		font-size: 36px;
	}

	.pl-girl-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pl-contact-panel {
		margin-bottom: 12px;
	}

	.pl-lightbox {
		padding: 42px 56px 12px;
	}

	.pl-lightbox img {
		max-height: calc(100vh - 64px);
	}

	.pl-lightbox-close {
		height: 40px;
		right: 10px;
		top: 8px;
		width: 40px;
	}

	.pl-lightbox-nav {
		background: rgba(18, 19, 22, .58);
		height: 46px;
		top: calc(50% - 23px);
		width: 40px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pl-shell * {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}
