/*!
Theme Name: Blocksy
Theme URI: https://creativethemes.com/blocksy/
Author: CreativeThemes
Author URI: https://creativethemes.com
Description: Blocksy with the restored DesirePorn presentation layer.
Version: 2.1.56
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Copyright: (c) 2019 CreativeThemes.
Requires at least: 6.7
Requires PHP: 7.0
Tested up to: 7.1
Text Domain: blocksy
Blocksy Minimum Companion Version: 2.1.36-dev1
Tags: accessibility-ready, blog, block-patterns, e-commerce, wide-blocks, block-styles, grid-layout, one-column, two-columns, three-columns, four-columns, right-sidebar, left-sidebar, translation-ready, custom-colors, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, theme-options, threaded-comments
*/

/* ==========================================================
   DESIREPORN — RESTORED VISUAL SYSTEM
   Approved direction: graphite black, white/light-grey copy,
   gold names and selections, restrained violet neon details.
   ========================================================== */

:root {
	--dp-bg: #0b0b0f;
	--dp-bg-soft: #100c14;
	--dp-panel: #151018;
	--dp-panel-2: #1b1421;
	--dp-line: rgba(168, 85, 247, .28);
	--dp-line-strong: rgba(190, 64, 236, .56);
	--dp-violet: #7c3aed;
	--dp-violet-bright: #a855f7;
	--dp-violet-neon: #cf3ff1;
	--dp-gold: #e3bd55;
	--dp-gold-light: #f0d477;
	--dp-copy: #f5f5f7;
	--dp-copy-soft: #d7d3dc;
	--dp-muted: #aaa3af;
	--dp-danger: #ff8796;
	--dp-radius: 12px;
	--dp-shadow: 0 14px 34px rgba(0, 0, 0, .26);
}

/* ---------- Global ---------- */

html {
	background: var(--dp-bg);
}

body,
#main-container,
.site-main {
	background-color: var(--dp-bg) !important;
	color: var(--dp-copy-soft);
}

body,
button,
input,
select,
textarea {
	font-family: "Afacad", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

a {
	transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease;
}

#main .ct-container,
#main .ct-container-full {
	min-width: 0;
}

.entry-content {
	overflow: visible;
}

.entry-content p,
.entry-content li {
	color: var(--dp-copy-soft);
}

.entry-content a:not(.wp-element-button):not(.button) {
	color: var(--dp-gold);
}

.entry-content a:not(.wp-element-button):not(.button):hover {
	color: var(--dp-gold-light);
}

:is(button, input[type="button"], input[type="submit"], .button, .wp-element-button):focus-visible,
a:focus-visible {
	outline: 2px solid var(--dp-gold) !important;
	outline-offset: 3px;
}

/* ---------- Header and navigation ---------- */

#header [data-row="middle"] {
	background: rgba(11, 11, 15, .96) !important;
	border-bottom: 1px solid rgba(168, 85, 247, .2);
	box-shadow: 0 8px 30px rgba(0, 0, 0, .24);
	backdrop-filter: blur(14px);
}

#header .site-logo-container img,
#header .custom-logo-link img {
	filter: drop-shadow(0 0 12px rgba(168, 85, 247, .16));
}

#header .menu > li > a {
	color: var(--dp-copy) !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: .08em !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
}

#header .menu > li > a:hover,
#header .menu > li.current-menu-item > a,
#header .menu > li.current_page_item > a {
	color: var(--dp-gold-light) !important;
	text-shadow: 0 0 13px rgba(227, 189, 85, .25);
}

#header [data-id="trigger"],
#header [data-id="account"] {
	color: var(--dp-copy) !important;
}

/* ---------- Footer ---------- */

.site-footer,
footer.ct-footer {
	background: linear-gradient(180deg, #0d0b10, #08070a) !important;
	border-top: 1px solid rgba(168, 85, 247, .22);
}

.site-footer [data-row] {
	background: transparent !important;
}

.site-footer,
.site-footer p,
.site-footer li {
	color: var(--dp-muted) !important;
}

.site-footer a {
	color: var(--dp-copy-soft) !important;
	text-decoration: none !important;
}

.site-footer a:hover {
	color: var(--dp-gold-light) !important;
}

/* ---------- Shared controls ---------- */

body :is(
	.wp-block-button__link,
	button:not(.sub-menu-toggle),
	input[type="submit"],
	input[type="button"],
	.ct-button
) {
	border-radius: 9px;
}

body :is(input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="url"], textarea, select) {
	border: 1px solid rgba(168, 85, 247, .32) !important;
	border-radius: 9px !important;
	background: #130f17 !important;
	color: var(--dp-copy) !important;
	box-shadow: none !important;
}

body :is(input, textarea)::placeholder {
	color: #88818f !important;
}

body :is(input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="url"], textarea, select):focus {
	border-color: var(--dp-violet-bright) !important;
	box-shadow: 0 0 0 3px rgba(168, 85, 247, .14) !important;
}

/* ==========================================================
   HOME — FULL WIDTH, MODERATE NEON, 4 / 3 / 2 GRIDS
   ========================================================== */

body.home #main,
body.home #main > .ct-container-full,
body.home #main article,
body.home #main .entry-content {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	background:
		radial-gradient(circle at 9% 12%, rgba(168, 40, 205, .1), transparent 27rem),
		radial-gradient(circle at 92% 30%, rgba(227, 189, 85, .055), transparent 25rem),
		var(--dp-bg) !important;
}

body.home #main > .ct-container-full {
	padding: 0 !important;
}

body.home .entry-content > :not(.alignfull) {
	width: min(1200px, calc(100% - 44px)) !important;
	max-width: 1200px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.home .entry-content > .wp-block-group:first-child {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 245px !important;
	margin: 0 0 44px !important;
	padding: 50px max(22px, calc((100vw - 1200px) / 2)) 46px !important;
	overflow: hidden;
	border-bottom: 1px solid rgba(168, 85, 247, .28);
	background:
		linear-gradient(135deg, rgba(11,11,15,.96) 0%, rgba(32,16,43,.96) 34%, rgba(63,31,98,.9) 72%, rgba(72,52,20,.76) 100%) !important;
	box-shadow: inset 0 -22px 50px rgba(0,0,0,.16);
}

body.home .entry-content > .wp-block-group:first-child::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background:
		radial-gradient(circle at 50% 0%, rgba(207, 63, 241, .16), transparent 42%),
		radial-gradient(circle at 82% 100%, rgba(227, 189, 85, .1), transparent 35%);
	pointer-events: none;
}

body.home .entry-content > .wp-block-group:first-child h1 {
	max-width: 1050px;
	margin: 0 !important;
	padding: 0 12px 7px !important;
	overflow: visible !important;
	color: #fff !important;
	font-size: clamp(34px, 5.3vw, 66px) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: -.035em !important;
	text-shadow:
		0 0 13px rgba(207, 63, 241, .28),
		0 0 28px rgba(168, 85, 247, .14);
}

body.home .entry-content > .wp-block-group:first-child p {
	max-width: 760px;
	margin: 15px auto 23px !important;
	color: #e6dfe9 !important;
	font-size: clamp(15px, 1.6vw, 19px) !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
}

body.home .dp-tc-hero-search {
	width: min(700px, 100%) !important;
	max-width: 700px !important;
	filter: drop-shadow(0 10px 26px rgba(0,0,0,.28));
}

body.home .dp-tc-hero-search input {
	min-height: 50px !important;
	border-color: rgba(227, 189, 85, .42) !important;
	background: rgba(12,9,16,.86) !important;
}

body.home .dp-tc-hero-search button {
	width: 58px !important;
	min-height: 50px !important;
	background: linear-gradient(135deg, #7723b5, #a92fd1) !important;
	color: #fff !important;
}

body.home .dp-tc-hero-search button:hover {
	background: linear-gradient(135deg, #9230cc, #cd43ee) !important;
}

body.home .entry-content > .wp-block-columns,
body.home .entry-content > .wp-block-columns > .wp-block-column,
body.home .entry-content > .wp-block-columns .wp-block-columns,
body.home .entry-content > .wp-block-columns .wp-block-column {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.home .dp-model-section {
	width: min(1200px, calc(100% - 44px)) !important;
	max-width: 1200px !important;
	margin: 0 auto 46px !important;
}

body.home .entry-content > h2,
body.home .dp-model-section > h2 {
	position: relative !important;
	margin-top: 52px !important;
	margin-bottom: 21px !important;
	padding: 0 0 12px !important;
	overflow: visible !important;
	color: #fff !important;
	font-size: clamp(25px, 3vw, 34px) !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: -.018em !important;
	text-align: left !important;
	text-shadow: 0 0 13px rgba(207, 63, 241, .2);
}

body.home .entry-content > h2::after,
body.home .dp-model-section > h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 72px;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--dp-violet-neon), var(--dp-gold));
	box-shadow: 0 0 14px rgba(207, 63, 241, .28);
}

.dp-tc-grid,
.dp-tc-category-grid,
.dp-model-grid,
.dp-video-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	max-width: 1200px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.dp-tc-card,
.dp-tc-category-card,
.dp-model-card,
.dp-video-card {
	position: relative !important;
	min-width: 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(168, 85, 247, .24) !important;
	border-radius: 12px !important;
	background: linear-gradient(155deg, #18131d, #100d14) !important;
	box-shadow: 0 11px 27px rgba(0,0,0,.22) !important;
	color: var(--dp-copy) !important;
	text-decoration: none !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

.dp-tc-card,
.dp-model-card,
.dp-video-card {
	display: flex !important;
	flex-direction: column !important;
}

.dp-tc-category-card {
	display: block !important;
}

.dp-tc-card:hover,
.dp-tc-category-card:hover,
.dp-model-card:hover,
.dp-video-card:hover {
	transform: translateY(-3px) !important;
	border-color: rgba(207, 63, 241, .56) !important;
	box-shadow:
		0 16px 34px rgba(0,0,0,.3),
		0 0 21px rgba(168, 40, 205, .1) !important;
}

.dp-tc-thumb-link,
.dp-video-thumb-link,
.dp-model-image-wrap {
	position: relative !important;
	display: block !important;
	aspect-ratio: 16 / 9 !important;
	overflow: hidden !important;
	background: #08070a !important;
}

.dp-tc-thumb,
.dp-tc-category-thumb,
.dp-video-thumb,
.dp-model-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: 16 / 9 !important;
	object-fit: cover !important;
	border-radius: 0 !important;
	transition: transform .32s ease, filter .32s ease !important;
}

.dp-tc-card:hover .dp-tc-thumb,
.dp-tc-category-card:hover .dp-tc-category-thumb,
.dp-video-card:hover .dp-video-thumb,
.dp-model-card:hover .dp-model-image {
	transform: scale(1.035) !important;
	filter: saturate(1.06) contrast(1.025);
}

.dp-tc-title,
.dp-video-title {
	display: -webkit-box !important;
	min-height: 51px !important;
	margin: 0 !important;
	padding: 12px 13px 7px !important;
	overflow: hidden !important;
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.dp-tc-title a,
.dp-video-title a {
	color: inherit !important;
	text-decoration: none !important;
}

.dp-tc-title a:hover,
.dp-video-title a:hover {
	color: var(--dp-gold-light) !important;
}

.dp-tc-meta-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: center !important;
	gap: 6px !important;
	width: 100% !important;
	margin-top: auto !important;
	padding: 8px 11px 12px !important;
	color: #cfc6d3 !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
	box-sizing: border-box !important;
}

.dp-tc-meta-row > span {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	overflow: visible !important;
	color: inherit !important;
	font-weight: 650 !important;
	white-space: nowrap !important;
}

.dp-tc-meta-row > span:first-child {
	justify-content: flex-start !important;
}

.dp-tc-meta-row > span:last-child {
	justify-content: flex-end !important;
	color: var(--dp-gold-light) !important;
}

.dp-tc-card-quality {
	min-width: 0 !important;
	padding: 3px 5px !important;
	border: 1px solid rgba(227,189,85,.4) !important;
	border-radius: 5px !important;
	background: rgba(8,8,12,.48) !important;
	color: var(--dp-gold-light) !important;
	box-shadow: none !important;
}

.dp-tc-duration-badge,
.dp-tc-quality-badge,
.dp-live-badge {
	border: 1px solid rgba(255,255,255,.14) !important;
	box-shadow: 0 7px 18px rgba(0,0,0,.32) !important;
	backdrop-filter: blur(7px);
}

.dp-tc-category-name {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 45px !important;
	padding: 9px 11px !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	text-align: center !important;
}

.dp-tc-category-count {
	display: block !important;
	padding: 0 11px 11px !important;
	color: var(--dp-gold-light) !important;
	font-size: 12px !important;
	text-align: center !important;
}

.dp-model-info {
	min-height: 68px !important;
	padding: 11px 13px 13px !important;
	background: transparent !important;
}

.dp-model-name {
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 750 !important;
}

.dp-model-meta {
	color: var(--dp-muted) !important;
}

.dp-free-chat {
	color: #65e491 !important;
}

body.home .wp-block-buttons {
	justify-content: center !important;
	margin: 26px auto 24px !important;
}

body.home .wp-block-button__link {
	padding: 12px 26px !important;
	border: 1px solid rgba(255,255,255,.12) !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, var(--dp-gold), #efcc71) !important;
	box-shadow:
		0 0 12px rgba(227,189,85,.22),
		0 0 26px rgba(168,85,247,.09) !important;
	color: #0b0810 !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

body.home .wp-block-button__link:hover {
	transform: translateY(-2px);
	filter: brightness(1.06);
	box-shadow:
		0 0 16px rgba(227,189,85,.34),
		0 0 32px rgba(168,85,247,.14) !important;
}

body.home .entry-content > p:not(.has-text-align-center) {
	max-width: 900px !important;
	margin-top: 0 !important;
	margin-bottom: 15px !important;
	color: #bbb3bf !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.72 !important;
}

body.home .entry-content > h2:not(.has-x-large-font-size) {
	max-width: 900px !important;
}

body.home .entry-content > .wp-block-site-logo {
	margin-top: 35px !important;
	margin-bottom: 22px !important;
	opacity: .82;
}

/* ==========================================================
   INNER CONTENT, LEGAL PAGES, LOGIN AND ARCHIVES
   ========================================================== */

body:not(.home) .site-main > .ct-container,
body:not(.home) .site-main > .ct-container-full {
	padding-top: clamp(28px, 4vw, 58px);
	padding-bottom: clamp(42px, 6vw, 80px);
}

body.page:not(.home):not(.buddypress) .entry-content {
	max-width: 980px;
	padding: clamp(24px, 4vw, 48px);
	border: 1px solid rgba(168, 85, 247, .18);
	border-radius: 16px;
	background: linear-gradient(150deg, rgba(21,16,24,.93), rgba(12,10,15,.97));
	box-shadow: var(--dp-shadow);
}

body.page:not(.home):not(.buddypress) .entry-content h1,
body.page:not(.home):not(.buddypress) .entry-content h2,
body.page:not(.home):not(.buddypress) .entry-content h3,
.archive .page-title {
	color: #fff !important;
	line-height: 1.2 !important;
}

body.page:not(.home):not(.buddypress) .entry-content h2 {
	position: relative;
	margin-top: 38px;
	padding-bottom: 10px;
}

body.page:not(.home):not(.buddypress) .entry-content h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 55px;
	height: 2px;
	background: linear-gradient(90deg, var(--dp-violet-neon), var(--dp-gold));
}

body.page:not(.home):not(.buddypress) .entry-content p,
body.page:not(.home):not(.buddypress) .entry-content li {
	color: #cbc5cf !important;
	line-height: 1.72;
}

body.login,
body.register,
body.activation {
	background:
		radial-gradient(circle at 50% 0%, rgba(168,85,247,.16), transparent 35rem),
		var(--dp-bg) !important;
}

/* ==========================================================
   BUDDYPRESS — PROFILE
   ========================================================== */

body.buddypress #buddypress,
body.bp-user #buddypress {
	color: var(--dp-copy-soft);
}

body.bp-user #buddypress #cover-image-container {
	overflow: hidden !important;
	border: 1px solid rgba(168, 85, 247, .34) !important;
	border-radius: 15px !important;
	background: linear-gradient(155deg, #151019, #0d0a10) !important;
	box-shadow: var(--dp-shadow) !important;
}

body.bp-user #buddypress #header-cover-image {
	background-color: #0c0910 !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

body.bp-user #buddypress #item-header-cover-image {
	align-items: center !important;
}

body.bp-user #buddypress #item-header-avatar img.avatar {
	border: 3px solid var(--dp-gold) !important;
	border-radius: 50% !important;
	box-shadow:
		0 0 0 4px rgba(227,189,85,.1),
		0 0 21px rgba(168,85,247,.18),
		0 10px 24px rgba(0,0,0,.3) !important;
	object-fit: cover !important;
}

body.bp-user #buddypress #item-header-content h2,
body.bp-user #buddypress #item-header-content h2 a,
body.bp-user #buddypress .activity-header a {
	color: var(--dp-gold) !important;
	font-weight: 800 !important;
}

body.bp-user #buddypress #item-header-content h2 a:hover,
body.bp-user #buddypress .activity-header a:hover {
	color: var(--dp-gold-light) !important;
}

/* Profile navigation retained from the approved black / gold design */
body.bp-user #buddypress :is(#item-nav, .bp-navs) {
	overflow: hidden !important;
	border: 1px solid rgba(168,85,247,.3) !important;
	border-radius: 10px !important;
	background: #0f0b13 !important;
}

body.bp-user #buddypress :is(#item-nav, .bp-navs) li a {
	border: 0 !important;
	background: transparent !important;
	color: #e8e5ea !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}

body.bp-user #buddypress :is(#item-nav, .bp-navs) li a:hover {
	background: rgba(168,85,247,.1) !important;
	color: var(--dp-gold-light) !important;
}

body.bp-user #buddypress :is(#item-nav, .bp-navs) li:is(.current, .selected) a {
	background: linear-gradient(135deg, rgba(168,85,247,.22), rgba(90,30,132,.14)) !important;
	box-shadow: inset 0 -2px 0 var(--dp-gold) !important;
	color: var(--dp-gold) !important;
}

/* Uniform circular profile buttons: same button, meaningful icon */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 9px !important;
	width: 100% !important;
	margin: 12px 0 0 !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button {
	margin: 0 !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button),
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button > a {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	min-width: 44px !important;
	max-width: 44px !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(207,63,241,.54) !important;
	border-radius: 50% !important;
	background: linear-gradient(145deg, rgba(141,42,193,.3), rgba(76,23,112,.5)) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 7px 18px rgba(0,0,0,.2) !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-indent: -9999px !important;
	transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button):hover,
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button > a:hover {
	transform: translateY(-2px) scale(1.04) !important;
	border-color: var(--dp-violet-neon) !important;
	background: linear-gradient(145deg, #a735d8, #6f21aa) !important;
	box-shadow: 0 0 19px rgba(207,63,241,.23) !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button)::before,
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button > a::before {
	content: "" !important;
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	background: #fff !important;
	-webkit-mask-position: center !important;
	-webkit-mask-repeat: no-repeat !important;
	-webkit-mask-size: contain !important;
	mask-position: center !important;
	mask-repeat: no-repeat !important;
	mask-size: contain !important;
	text-indent: 0 !important;
}

/* Default/account icon */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button)::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 15 0A17.9 17.9 0 0 1 12 21.75a17.9 17.9 0 0 1-7.5-1.65Z'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 15 0A17.9 17.9 0 0 1 12 21.75a17.9 17.9 0 0 1-7.5-1.65Z'/%3E%3C/svg%3E") !important;
}

/* Message */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	.dp-send-message, .send-message, .message-button, [href*="compose"], [href*="messages"]
)::before,
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	.dp-message-action, .message-button
) > a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") !important;
}

/* Friendship */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	.friendship-button, [id*="friend"], [class*="friend"]
)::before,
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	.friendship-button, [id*="friend"], [class*="friend"]
) > a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 15 0M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 12.75-2.92M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") !important;
}

/* Block */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	.dp-block-user, .dp-block-action > a, [class*="block"], [id*="block"], [href*="block"]
)::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") !important;
}

/* Report */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	[class*="report"], [id*="report"], [href*="report"]
)::before,
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(
	[class*="report"], [id*="report"]
) > a::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") !important;
}

/* Profile content and quick metadata */
body.bp-user #buddypress :is(.bp-wrap, .bp-profile-content, .profile, .activity-list .activity-item) {
	border-color: rgba(168,85,247,.22) !important;
}

body.bp-user #buddypress .dp-profile-quick-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 7px !important;
}

body.bp-user #buddypress .dp-profile-meta-pill {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 28px !important;
	padding: 5px 9px !important;
	border: 1px solid rgba(227,189,85,.55) !important;
	border-radius: 20px !important;
	background: rgba(15,11,19,.9) !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 500 !important;
}

/* ==========================================================
   MEMBERS DIRECTORY — FINAL: TWO HORIZONTAL CARDS / ONE MOBILE
   ========================================================== */

body.members-directory #buddypress #members-list,
body.directory.members #buddypress #members-list,
body.buddypress.members #buddypress #members-list {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	margin: 22px 0 0 !important;
	padding: 0 !important;
}

body.members-directory #buddypress #members-list > li,
body.directory.members #buddypress #members-list > li,
body.buddypress.members #buddypress #members-list > li {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: 170px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(168,85,247,.28) !important;
	border-radius: 16px !important;
	background: linear-gradient(145deg, rgba(28,21,35,.98), rgba(15,12,20,.98)) !important;
	box-shadow: 0 13px 31px rgba(0,0,0,.23) !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

body.members-directory #buddypress #members-list > li:hover,
body.directory.members #buddypress #members-list > li:hover,
body.buddypress.members #buddypress #members-list > li:hover {
	transform: translateY(-2px) !important;
	border-color: rgba(207,63,241,.55) !important;
	box-shadow: 0 17px 37px rgba(0,0,0,.28), 0 0 18px rgba(168,85,247,.08) !important;
}

body.members-directory #buddypress #members-list > li .list-wrap,
body.directory.members #buddypress #members-list > li .list-wrap,
body.buddypress.members #buddypress #members-list > li .list-wrap {
	display: grid !important;
	grid-template-columns: 84px minmax(0, 1fr) !important;
	grid-template-areas:
		"avatar info"
		"avatar actions" !important;
	align-items: center !important;
	gap: 8px 17px !important;
	width: 100% !important;
	min-height: 170px !important;
	margin: 0 !important;
	padding: 20px !important;
	border: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
}

body.members-directory #buddypress #members-list .item-avatar,
body.directory.members #buddypress #members-list .item-avatar,
body.buddypress.members #buddypress #members-list .item-avatar {
	grid-area: avatar !important;
	align-self: start !important;
	width: 80px !important;
	height: 80px !important;
	margin: 0 !important;
	float: none !important;
}

body.members-directory #buddypress #members-list .item-avatar a,
body.directory.members #buddypress #members-list .item-avatar a,
body.buddypress.members #buddypress #members-list .item-avatar a {
	display: block !important;
	width: 80px !important;
	height: 80px !important;
	padding: 3px !important;
	border-radius: 50% !important;
	background: linear-gradient(135deg, var(--dp-gold), var(--dp-violet-bright)) !important;
	box-shadow: 0 0 0 4px rgba(168,85,247,.08) !important;
}

body.members-directory #buddypress #members-list .item-avatar img.avatar,
body.directory.members #buddypress #members-list .item-avatar img.avatar,
body.buddypress.members #buddypress #members-list .item-avatar img.avatar {
	display: block !important;
	width: 74px !important;
	height: 74px !important;
	max-width: none !important;
	margin: 0 !important;
	border: 3px solid #141019 !important;
	border-radius: 50% !important;
	object-fit: cover !important;
}

body.members-directory #buddypress #members-list .item,
body.directory.members #buddypress #members-list .item,
body.buddypress.members #buddypress #members-list .item {
	grid-area: info !important;
	min-width: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	float: none !important;
}

body.members-directory #buddypress #members-list :is(.list-title, .member-name),
body.directory.members #buddypress #members-list :is(.list-title, .member-name),
body.buddypress.members #buddypress #members-list :is(.list-title, .member-name) {
	margin: 0 0 5px !important;
	color: var(--dp-gold) !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

body.members-directory #buddypress #members-list :is(.list-title, .member-name) a,
body.directory.members #buddypress #members-list :is(.list-title, .member-name) a,
body.buddypress.members #buddypress #members-list :is(.list-title, .member-name) a {
	color: inherit !important;
	text-decoration: none !important;
}

body.members-directory #buddypress #members-list :is(.item-meta, .last-activity),
body.directory.members #buddypress #members-list :is(.item-meta, .last-activity),
body.buddypress.members #buddypress #members-list :is(.item-meta, .last-activity) {
	margin: 0 0 7px !important;
	color: var(--dp-muted) !important;
	font-size: 12px !important;
	line-height: 1.35 !important;
}

body.members-directory #buddypress #members-list :is(.dp-member-details, .dp-member-info, .dp-member-meta),
body.directory.members #buddypress #members-list :is(.dp-member-details, .dp-member-info, .dp-member-meta),
body.buddypress.members #buddypress #members-list :is(.dp-member-details, .dp-member-info, .dp-member-meta) {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 6px !important;
	width: 100% !important;
	margin: 6px 0 0 !important;
}

body.members-directory #buddypress #members-list :is(.dp-meta-pill, .dp-member-details span, .dp-member-info span, .dp-member-meta span),
body.directory.members #buddypress #members-list :is(.dp-meta-pill, .dp-member-details span, .dp-member-info span, .dp-member-meta span),
body.buddypress.members #buddypress #members-list :is(.dp-meta-pill, .dp-member-details span, .dp-member-info span, .dp-member-meta span) {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 25px !important;
	padding: 5px 8px !important;
	border: 1px solid rgba(168,85,247,.32) !important;
	border-radius: 999px !important;
	background: rgba(168,85,247,.08) !important;
	color: #ddd7e1 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* Member-card actions */
body.members-directory #buddypress #members-list ul.action,
body.directory.members #buddypress #members-list ul.action,
body.buddypress.members #buddypress #members-list ul.action {
	grid-area: actions !important;
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 8px !important;
	width: auto !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
	float: none !important;
}

body.members-directory #buddypress #members-list ul.action > li,
body.members-directory #buddypress #members-list ul.action .generic-button,
body.directory.members #buddypress #members-list ul.action > li,
body.directory.members #buddypress #members-list ul.action .generic-button,
body.buddypress.members #buddypress #members-list ul.action > li,
body.buddypress.members #buddypress #members-list ul.action .generic-button {
	display: contents !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.members-directory #buddypress #members-list ul.action :is(a, button, .button),
body.directory.members #buddypress #members-list ul.action :is(a, button, .button),
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button) {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 39px !important;
	width: 39px !important;
	min-width: 39px !important;
	max-width: 39px !important;
	height: 39px !important;
	min-height: 39px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(207,63,241,.5) !important;
	border-radius: 50% !important;
	background: linear-gradient(145deg, rgba(141,42,193,.28), rgba(76,23,112,.45)) !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-indent: -9999px !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 6px 15px rgba(0,0,0,.2) !important;
	transition: transform .18s ease, background .18s ease, border-color .18s ease !important;
}

body.members-directory #buddypress #members-list ul.action :is(a, button, .button):hover,
body.directory.members #buddypress #members-list ul.action :is(a, button, .button):hover,
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button):hover {
	transform: translateY(-2px) scale(1.04) !important;
	border-color: var(--dp-violet-neon) !important;
	background: linear-gradient(145deg, #a735d8, #6f21aa) !important;
}

body.members-directory #buddypress #members-list ul.action :is(a, button, .button)::before,
body.directory.members #buddypress #members-list ul.action :is(a, button, .button)::before,
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button)::before {
	content: "" !important;
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	background: #fff !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 15 0'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 15 0'/%3E%3C/svg%3E") center / contain no-repeat !important;
	text-indent: 0 !important;
}

/* Directory message */
body.members-directory #buddypress #members-list ul.action :is(.dp-send-message, [href*="messages"], [href*="compose"])::before,
body.directory.members #buddypress #members-list ul.action :is(.dp-send-message, [href*="messages"], [href*="compose"])::before,
body.buddypress.members #buddypress #members-list ul.action :is(.dp-send-message, [href*="messages"], [href*="compose"])::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") !important;
}

/* Directory friendship */
body.members-directory #buddypress #members-list ul.action :is([id*="friend"], [class*="friend"])::before,
body.directory.members #buddypress #members-list ul.action :is([id*="friend"], [class*="friend"])::before,
body.buddypress.members #buddypress #members-list ul.action :is([id*="friend"], [class*="friend"])::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 12.75-2.92M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 12.75-2.92M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") !important;
}

/* Directory block */
body.members-directory #buddypress #members-list ul.action :is(.dp-block-user, [class*="block"], [id*="block"], [href*="block"])::before,
body.directory.members #buddypress #members-list ul.action :is(.dp-block-user, [class*="block"], [id*="block"], [href*="block"])::before,
body.buddypress.members #buddypress #members-list ul.action :is(.dp-block-user, [class*="block"], [id*="block"], [href*="block"])::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") !important;
}

/* Directory report */
body.members-directory #buddypress #members-list ul.action :is([class*="report"], [id*="report"], [href*="report"])::before,
body.directory.members #buddypress #members-list ul.action :is([class*="report"], [id*="report"], [href*="report"])::before,
body.buddypress.members #buddypress #members-list ul.action :is([class*="report"], [id*="report"], [href*="report"])::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") !important;
}

body.members-directory #buddypress .subnav-filters,
body.directory.members #buddypress .subnav-filters,
body.buddypress.members #buddypress .subnav-filters {
	padding: 14px !important;
	border: 1px solid rgba(168,85,247,.2) !important;
	border-radius: 13px !important;
	background: rgba(22,16,27,.78) !important;
}

/* ==========================================================
   MESSAGES — KEEP THE ACCEPTED LAYOUT, RESTORE VISIBLE ICONS
   ========================================================== */

.bp-messages-wrap {
	border-color: rgba(168,85,247,.32) !important;
	background: #0b090d !important;
	color: var(--dp-copy) !important;
}

.bp-messages-wrap :is(.chat-header, .bp-messages-mobile-tap, .bp-messages-side-threads .top, .bp-messages-side-threads .bottom) {
	background: #100c14 !important;
	border-color: rgba(227,189,85,.32) !important;
}

.bp-messages-wrap svg {
	color: var(--dp-gold) !important;
	stroke: currentColor !important;
}

.bp-messages-wrap svg:not([fill="none"]) {
	fill: currentColor !important;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 1000px) {
	.dp-tc-grid,
	.dp-tc-category-grid,
	.dp-model-grid,
	.dp-video-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 15px !important;
	}

	body.members-directory #buddypress #members-list,
	body.directory.members #buddypress #members-list,
	body.buddypress.members #buddypress #members-list {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 650px) {
	body.home .entry-content > :not(.alignfull),
	body.home .dp-model-section {
		width: min(100% - 24px, 1200px) !important;
	}

	body.home .entry-content > .wp-block-group:first-child {
		min-height: 225px !important;
		margin-bottom: 32px !important;
		padding: 42px 14px 40px !important;
	}

	body.home .entry-content > .wp-block-group:first-child h1 {
		font-size: clamp(30px, 9vw, 43px) !important;
	}

	body.home .entry-content > .wp-block-group:first-child p {
		margin: 12px auto 19px !important;
		font-size: 15px !important;
	}

	body.home .entry-content > h2,
	body.home .dp-model-section > h2 {
		margin-top: 40px !important;
		font-size: 25px !important;
	}

	.dp-tc-grid,
	.dp-tc-category-grid,
	.dp-model-grid,
	.dp-video-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.dp-tc-title,
	.dp-video-title {
		min-height: 45px !important;
		padding: 9px 9px 5px !important;
		font-size: 12px !important;
	}

	.dp-tc-meta-row {
		gap: 2px !important;
		padding: 7px 7px 9px !important;
		font-size: 10px !important;
	}

	.dp-tc-category-name,
	.dp-model-name {
		font-size: 12px !important;
	}

	body.page:not(.home):not(.buddypress) .entry-content {
		padding: 22px 17px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}

	body.bp-user #buddypress #item-header-cover-image {
		text-align: center !important;
	}

	body.bp-user #buddypress :is(#item-buttons, .member-header-actions) {
		justify-content: center !important;
	}
}

@media (max-width: 480px) {
	body.members-directory #buddypress #members-list > li .list-wrap,
	body.directory.members #buddypress #members-list > li .list-wrap,
	body.buddypress.members #buddypress #members-list > li .list-wrap {
		grid-template-columns: 68px minmax(0, 1fr) !important;
		grid-template-areas:
			"avatar info"
			"actions actions" !important;
		gap: 13px !important;
		min-height: 0 !important;
		padding: 16px !important;
	}

	body.members-directory #buddypress #members-list .item-avatar,
	body.members-directory #buddypress #members-list .item-avatar a,
	body.directory.members #buddypress #members-list .item-avatar,
	body.directory.members #buddypress #members-list .item-avatar a,
	body.buddypress.members #buddypress #members-list .item-avatar,
	body.buddypress.members #buddypress #members-list .item-avatar a {
		width: 64px !important;
		height: 64px !important;
	}

	body.members-directory #buddypress #members-list .item-avatar img.avatar,
	body.directory.members #buddypress #members-list .item-avatar img.avatar,
	body.buddypress.members #buddypress #members-list .item-avatar img.avatar {
		width: 58px !important;
		height: 58px !important;
	}

	body.members-directory #buddypress #members-list ul.action,
	body.directory.members #buddypress #members-list ul.action,
	body.buddypress.members #buddypress #members-list ul.action {
		padding-top: 3px !important;
	}
}

/* ==========================================================
   DESIREPORN — PREMIUM 9/10 FINISH
   Recovered from the accepted August design and consolidated.
   ========================================================== */

/* Premium header: clean labels, restrained glass and neon line */
#header [data-row="middle"] {
	position: relative;
	background:
		linear-gradient(180deg, rgba(15, 10, 20, .98), rgba(8, 7, 11, .97)) !important;
	border-bottom: 0 !important;
	box-shadow:
		0 12px 34px rgba(0, 0, 0, .44),
		0 2px 24px rgba(165, 45, 220, .10) !important;
}

#header [data-row="middle"]::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent 5%, #8f2fd1 32%, #ff4f9f 52%, #e3bd55 72%, transparent 95%);
	box-shadow: 0 0 13px rgba(207, 63, 241, .52);
	pointer-events: none;
}

#header .menu {
	--menu-items-spacing: 22px;
	gap: 22px !important;
}

#header .menu > li > a {
	position: relative;
	padding-top: 8px;
	padding-bottom: 8px;
}

#header .menu > li > a::after {
	content: "";
	position: absolute;
	right: 12%;
	bottom: 1px;
	left: 12%;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, #c93cf0, #ff4f9f, #e3bd55);
	box-shadow: 0 0 10px rgba(213, 61, 235, .62);
	opacity: 0;
	transform: scaleX(.42);
	transition: opacity .22s ease, transform .22s ease;
}

#header .menu > li > a:hover::after,
#header .menu > li.current-menu-item > a::after,
#header .menu > li.current_page_item > a::after {
	opacity: 1;
	transform: scaleX(1);
}

#header .ct-header-cta .ct-button {
	border: 1px solid rgba(235, 199, 101, .72) !important;
	background: linear-gradient(135deg, #e3bd55, #f3d87c) !important;
	box-shadow: 0 0 18px rgba(227, 189, 85, .23) !important;
	color: #0b0810 !important;
	font-weight: 800 !important;
	letter-spacing: .045em;
}

#header .dp-account-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

#header .dp-account-actions > a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	min-height: 40px !important;
	padding: 0 18px !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: 9px !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: .045em !important;
	text-decoration: none !important;
}

#header .dp-account-actions .dp-login-button {
	border-color: rgba(227, 144, 255, .82) !important;
	background: linear-gradient(135deg, #9b35c8, #e390ff) !important;
	box-shadow: 0 0 18px rgba(190, 60, 240, .30) !important;
	color: #0b0810 !important;
}

#header .dp-account-actions .dp-login-button:hover,
#header .dp-account-actions .dp-login-button:focus-visible {
	border-color: #efb3ff !important;
	background: linear-gradient(135deg, #ae42d8, #edb0ff) !important;
	box-shadow: 0 0 22px rgba(190, 60, 240, .45) !important;
	color: #0b0810 !important;
}

#offcanvas .dp-mobile-account-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 18px 22px 12px;
}

#offcanvas .dp-mobile-account-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 112px;
	min-height: 42px;
	padding: 0 16px;
	border-radius: var(--theme-button-border-radius, 3px);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .045em;
	text-decoration: none;
}

#offcanvas .dp-mobile-account-actions__login {
	border: 1px solid rgba(227, 144, 255, .82);
	background: linear-gradient(135deg, #9b35c8, #e390ff);
	box-shadow: 0 0 18px rgba(190, 60, 240, .30);
	color: #0b0810;
}

#offcanvas .dp-mobile-account-actions__register {
	border: 1px solid rgba(235, 199, 101, .72);
	background: linear-gradient(135deg, #e3bd55, #f3d87c);
	color: #0b0810;
}

#offcanvas .mobile-menu .page-item-7198 {
	display: none;
}

#header .ct-header-search {
	color: #e390ff !important;
	filter: drop-shadow(0 0 7px rgba(190, 60, 240, .45));
}

/* Cinematic homepage atmosphere: layered plum light, restrained gold and grain */
body.home,
body.home .site-main,
body.home .site-main > .ct-container-full,
body.home article.page,
body.home .entry-content {
	background-color: #09070c !important;
}

body.home .site-main {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background-image:
		radial-gradient(ellipse 62% 34% at 50% 2%, rgba(190, 48, 231, .20), transparent 72%),
		radial-gradient(ellipse 42% 30% at 3% 40%, rgba(103, 36, 154, .15), transparent 74%),
		radial-gradient(ellipse 38% 28% at 98% 68%, rgba(227, 189, 85, .09), transparent 76%),
		linear-gradient(118deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 42px),
		linear-gradient(180deg, #09070c 0%, #0f0a14 38%, #09070c 100%) !important;
	background-size: auto, auto, auto, 48px 48px, auto !important;
}

body.home .entry-content {
	position: relative;
	z-index: 1;
	background: transparent !important;
}

body.home .entry-content > .wp-block-group:first-child {
	position: relative;
	width: min(1560px, calc(100% - 40px)) !important;
	min-height: 350px !important;
	margin: 22px auto 72px !important;
	overflow: hidden;
	border: 1px solid rgba(222, 126, 255, .34);
	border-top-color: rgba(255, 220, 255, .48);
	border-bottom-color: rgba(92, 26, 116, .62);
	border-radius: 24px;
	outline: 1px solid rgba(255,255,255,.035);
	outline-offset: -7px;
	background:
		linear-gradient(104deg, rgba(5, 4, 8, .76), rgba(22, 7, 29, .34) 46%, rgba(20, 12, 8, .56)),
		radial-gradient(ellipse 34% 86% at 22% 18%, rgba(220, 60, 249, .28), transparent 74%),
		radial-gradient(ellipse 28% 74% at 78% 70%, rgba(227, 172, 49, .16), transparent 76%),
		url("https://desireporn.com/wp-content/uploads/desireporn-performance/hero-425d23f9317ed1d5.webp") center 56% / cover no-repeat,
		conic-gradient(from 218deg at 52% 115%, #09070c, #261231 23%, #54256b 42%, #1b0e24 64%, #3a2713 82%, #09070c) !important;
	background-blend-mode: normal, screen, screen, screen, normal;
	box-shadow:
		inset 0 2px 0 rgba(255, 255, 255, .14),
		inset 0 18px 34px rgba(255, 185, 255, .045),
		inset 0 -20px 38px rgba(0, 0, 0, .48),
		inset 0 -2px 0 rgba(85, 20, 105, .70),
		0 3px 0 rgba(255, 255, 255, .035),
		0 14px 18px rgba(0, 0, 0, .36),
		0 34px 76px rgba(0, 0, 0, .56),
		0 0 38px rgba(177, 49, 221, .17) !important;
}

body.home .entry-content > .wp-block-group:first-child::before,
body.home .entry-content > .wp-block-group:first-child::after {
	content: "";
	position: absolute;
	pointer-events: none;
}

body.home .entry-content > .wp-block-group:first-child::before {
	inset: 0;
	z-index: 0;
	opacity: .42;
	background-image:
		radial-gradient(ellipse 34% 10% at 48% 5%, rgba(255,255,255,.22), transparent 72%),
		linear-gradient(108deg, transparent 12%, rgba(255,255,255,.025) 31%, rgba(255,220,250,.14) 43%, transparent 55%),
		radial-gradient(circle at 18% 34%, rgba(255,255,255,.18) 0 1px, transparent 2px),
		radial-gradient(circle at 72% 68%, rgba(255,255,255,.13) 0 1px, transparent 2px),
		repeating-linear-gradient(117deg, rgba(255,255,255,.022) 0 1px, transparent 1px 9px),
		repeating-linear-gradient(23deg, rgba(0,0,0,.08) 0 1px, transparent 1px 11px);
	background-size: auto, auto, 38px 44px, 52px 61px, auto, auto;
	mix-blend-mode: soft-light;
}

body.home .entry-content > .wp-block-group:first-child::after {
	right: 10%;
	bottom: -52px;
	left: 10%;
	height: 94px;
	border-radius: 50%;
	background: radial-gradient(ellipse, rgba(205, 64, 242, .26), rgba(255, 71, 157, .08) 44%, transparent 72%);
	filter: blur(18px);
}

body.home .entry-content > .wp-block-group:first-child > * {
	position: relative;
	z-index: 1;
}

body.home .entry-content > .wp-block-group:first-child h1 {
	background: linear-gradient(90deg, #ffffff 0%, #ffe19a 26%, #e7a0ff 54%, #ff72b6 77%, #ffffff 100%) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	text-shadow:
		0 0 8px rgba(174, 0, 255, .40),
		0 0 20px rgba(255, 0, 110, .22),
		0 0 36px rgba(255, 190, 90, .12) !important;
	animation: dp-premium-title-glow 3.4s ease-in-out infinite alternate;
}

body.home .dp-tc-hero-search {
	display: flex !important;
	align-items: stretch !important;
	width: min(700px, calc(100% - 32px)) !important;
	max-width: 700px !important;
	min-height: 56px !important;
	margin-top: 30px !important;
	margin-right: auto !important;
	margin-bottom: 0 !important;
	margin-left: auto !important;
	gap: 0 !important;
	overflow: hidden;
	border: 1px solid rgba(229,184,255,.50);
	border-top-color: rgba(255,235,255,.66);
	border-bottom-color: rgba(112,45,139,.58);
	border-radius: 14px;
	background: rgba(9,7,13,.82);
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,.065),
		inset 0 -8px 18px rgba(0,0,0,.22),
		inset 0 0 24px rgba(161,48,203,.07),
		0 14px 34px rgba(0,0,0,.40),
		0 0 22px rgba(177,48,220,.14);
	filter: none !important;
	backdrop-filter: blur(14px);
}

body.home .dp-tc-hero-search:focus-within {
	border-color: rgba(239,208,124,.74);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.055),
		0 16px 38px rgba(0,0,0,.44),
		0 0 0 3px rgba(201,61,237,.10),
		0 0 25px rgba(201,61,237,.19);
}

body.home .dp-tc-hero-search input {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0 !important;
	height: 56px !important;
	min-height: 56px !important;
	margin: 0 !important;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #f8f3fa !important;
	line-height: 56px !important;
}

body.home .dp-tc-hero-search input:focus {
	outline: 0 !important;
	box-shadow: none !important;
}

body.home .dp-tc-hero-search input::placeholder {
	color: #918799 !important;
	opacity: 1;
}

body.home .dp-tc-hero-search button {
	flex: 0 0 62px !important;
	align-self: stretch !important;
	width: 62px !important;
	height: 56px !important;
	min-height: 56px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-left: 1px solid rgba(255,255,255,.12) !important;
	border-radius: 0 !important;
	background: linear-gradient(145deg, #7e28b7 0%, #c63be2 56%, #d89f28 100%) !important;
	box-shadow:
		inset 1px 0 0 rgba(255,255,255,.05),
		-7px 0 24px rgba(181,48,221,.17) !important;
	color: #fff !important;
	line-height: 1 !important;
	transform: none !important;
}

body.home .dp-tc-hero-search button:hover {
	background: linear-gradient(145deg, #9130c9 0%, #da48ed 56%, #e0b13e 100%) !important;
	box-shadow:
		inset 1px 0 0 rgba(255,255,255,.09),
		-8px 0 28px rgba(203,59,235,.24) !important;
}

/* Authentic premium section headings */
body.home .entry-content > h2,
body.home .dp-model-section > h2 {
	display: block !important;
	width: min(1200px, calc(100% - 44px)) !important;
	max-width: 1200px !important;
	margin: 58px auto 31px !important;
	padding: 0 0 14px !important;
	text-align: center !important;
	font-size: clamp(36px, 4.1vw, 52px) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: .018em !important;
	background: linear-gradient(90deg, #ffffff 0%, #ffd98a 25%, #e390ff 52%, #ff5ca8 76%, #ffffff 100%) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	text-shadow:
		0 0 8px rgba(170, 50, 255, .45),
		0 0 20px rgba(255, 0, 115, .30),
		0 0 38px rgba(255, 190, 90, .18) !important;
	animation: dp-premium-title-glow 3s ease-in-out infinite alternate;
}

body.home .entry-content > h2::after,
body.home .dp-model-section > h2::after {
	right: 50% !important;
	left: 50% !important;
	width: 112px !important;
	transform: translateX(-50%);
	background: linear-gradient(90deg, #a42edb, #ff4f9f 52%, #e3bd55) !important;
	box-shadow:
		0 0 10px rgba(207, 63, 241, .72),
		0 0 20px rgba(255, 79, 159, .24) !important;
}

@keyframes dp-premium-title-glow {
	from {
		filter: brightness(1);
	}
	to {
		filter: brightness(1.08);
	}
}

/* Premium cards: visible neon lift and play affordance */
body.home :is(.dp-tc-card, .dp-model-card, .dp-tc-category-card),
body:not(.home) .dp-tc-card {
	border: 1px solid rgba(205, 105, 255, .32) !important;
	border-radius: 14px !important;
	background: linear-gradient(145deg, rgba(35, 20, 44, .97), rgba(13, 9, 18, .99)) !important;
	box-shadow:
		0 10px 28px rgba(0, 0, 0, .38),
		0 0 18px rgba(130, 40, 190, .11) !important;
}

body.home :is(.dp-tc-card, .dp-model-card, .dp-tc-category-card):hover,
body:not(.home) .dp-tc-card:hover {
	transform: translateY(-7px) !important;
	border-color: rgba(255, 85, 175, .80) !important;
	box-shadow:
		0 18px 40px rgba(0, 0, 0, .55),
		0 0 22px rgba(185, 70, 255, .38),
		0 0 38px rgba(255, 50, 135, .22) !important;
}

.dp-tc-card .dp-tc-thumb-link::after {
	content: "▶";
	position: absolute;
	z-index: 6;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	padding-left: 4px;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: 50%;
	background: rgba(20, 8, 27, .72);
	backdrop-filter: blur(5px);
	box-shadow:
		0 0 18px rgba(205, 85, 255, .55),
		0 0 32px rgba(255, 40, 130, .35);
	color: #fff;
	font-size: 20px;
	line-height: 1;
	opacity: 0;
	transform: translate(-50%, -42%) scale(.78);
	transition: opacity .28s ease, transform .28s ease, box-shadow .28s ease;
	pointer-events: none;
}

.dp-tc-card:hover .dp-tc-thumb-link::after {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
	box-shadow:
		0 0 24px rgba(205, 85, 255, .75),
		0 0 44px rgba(255, 40, 130, .48);
}

.dp-tc-card:hover .dp-tc-title a {
	color: #f4c5ff !important;
	text-shadow:
		0 0 8px rgba(210, 100, 255, .45),
		0 0 16px rgba(255, 60, 145, .28);
}

.dp-model-card:hover .dp-model-name,
.dp-tc-category-card:hover .dp-tc-category-name {
	color: #ffd98a !important;
	text-shadow: 0 0 12px rgba(255, 190, 90, .32);
}

/* SEO copy progressively becomes one accessible premium tab window.
   Without JavaScript, every section remains visible and readable. */
body.home .entry-content > h2:not(.has-x-large-font-size) {
	width: min(980px, calc(100% - 44px)) !important;
	margin: 34px auto 12px !important;
	padding: 0 0 12px !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(205, 105, 255, .22) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: clamp(25px, 2.7vw, 34px) !important;
}

body.home .entry-content > h2:not(.has-x-large-font-size) ~ p:not(.has-text-align-center) {
	width: min(980px, calc(100% - 44px)) !important;
	max-width: 980px !important;
	margin: 0 auto 12px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #d7d0dc !important;
	font-size: 16px !important;
	line-height: 1.72 !important;
	box-sizing: border-box;
}

.dp-info-tabs {
	position: relative;
	width: min(1040px, calc(100% - 44px));
	margin: 66px auto 28px;
	padding: 1px;
	overflow: hidden;
	border-radius: 20px;
	background: linear-gradient(118deg, rgba(227,189,85,.70), rgba(205,64,242,.72) 42%, rgba(255,75,157,.60) 70%, rgba(227,189,85,.46));
	box-shadow:
		0 26px 68px rgba(0,0,0,.52),
		0 0 38px rgba(173,48,220,.16);
}

.dp-info-tabs::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: -110px;
	left: 12%;
	width: 76%;
	height: 180px;
	border-radius: 50%;
	background: radial-gradient(ellipse, rgba(195,58,237,.22), transparent 70%);
	filter: blur(18px);
	pointer-events: none;
}

.dp-info-tabs__list,
.dp-info-tabs__panels {
	position: relative;
	z-index: 1;
}

.dp-info-tabs__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 7px;
	padding: 10px;
	border-radius: 19px 19px 0 0;
	background: rgba(8, 6, 11, .96);
}

.dp-info-tabs__tab {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 62px;
	padding: 11px 14px;
	border: 1px solid rgba(196,101,230,.18);
	border-radius: 12px;
	background: linear-gradient(160deg, rgba(31,21,38,.86), rgba(14,10,18,.94));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
	color: #c9c1ce;
	font: inherit;
	font-size: 13px;
	font-weight: 760;
	line-height: 1.3;
	text-align: center;
	cursor: pointer;
	transition: color .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dp-info-tabs__tab:hover {
	border-color: rgba(224,91,255,.48);
	color: #fff;
	transform: translateY(-1px);
}

.dp-info-tabs__tab[aria-selected="true"] {
	border-color: rgba(239,196,83,.68);
	background:
		radial-gradient(circle at 50% 0%, rgba(206,61,241,.24), transparent 72%),
		linear-gradient(150deg, rgba(63,30,75,.96), rgba(24,13,30,.98));
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.06),
		0 0 18px rgba(202,61,239,.18),
		0 0 12px rgba(227,189,85,.09);
	color: #f6dda0;
	text-shadow: 0 0 10px rgba(227,189,85,.20);
}

.dp-info-tabs__tab:focus-visible {
	outline: 2px solid #f0d477 !important;
	outline-offset: 2px;
}

.dp-info-tabs__panels {
	min-height: 280px;
	padding: clamp(27px, 4vw, 46px);
	border-radius: 0 0 19px 19px;
	background:
		radial-gradient(circle at 88% 112%, rgba(227,189,85,.09), transparent 34%),
		radial-gradient(circle at 6% -12%, rgba(195,58,237,.16), transparent 38%),
		linear-gradient(142deg, rgba(25,16,31,.985), rgba(10,8,13,.995));
}

.dp-info-tabs__panel[hidden] {
	display: none !important;
}

.dp-info-tabs__panel {
	outline: none;
	animation: dp-tab-reveal .28s ease both;
}

.dp-info-tabs__heading {
	width: auto !important;
	max-width: 760px !important;
	margin: 0 0 22px !important;
	padding: 0 0 15px !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(216,110,255,.22) !important;
	border-radius: 0 !important;
	background: linear-gradient(90deg, #fff, #e9a7ff 44%, #ff77b8 72%, #f2d98d) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	box-shadow: none !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: clamp(28px, 3.4vw, 42px) !important;
	line-height: 1.12 !important;
	text-align: left !important;
	text-shadow: 0 0 18px rgba(190,58,230,.18) !important;
}

.dp-info-tabs__panel p {
	max-width: 900px !important;
	margin: 0 0 15px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #d9d2de !important;
	font-size: 16px !important;
	line-height: 1.78 !important;
}

.dp-info-tabs__panel p:last-child {
	margin-bottom: 0 !important;
}

@keyframes dp-tab-reveal {
	from { opacity: 0; transform: translateY(7px); }
	to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 820px) {
	.dp-info-tabs__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.dp-info-tabs {
		width: calc(100% - 24px);
		margin-top: 48px;
		border-radius: 16px;
	}

	.dp-info-tabs__list {
		grid-template-columns: 1fr;
		padding: 8px;
	}

	.dp-info-tabs__tab {
		min-height: 48px;
	}

	.dp-info-tabs__panels {
		min-height: 0;
		padding: 24px 19px 28px;
	}

	.dp-info-tabs__heading {
		font-size: 28px !important;
	}
}

/* Closing brand panel */
body.home .entry-content > p.has-text-align-center {
	width: min(980px, calc(100% - 44px)) !important;
	margin: 42px auto 18px !important;
	padding: 22px !important;
	border: 1px solid rgba(227, 189, 85, .38);
	border-radius: 15px;
	background:
		radial-gradient(circle at 50% 0%, rgba(190, 55, 232, .18), transparent 70%),
		#100c14 !important;
	box-shadow:
		0 14px 34px rgba(0,0,0,.30),
		0 0 23px rgba(205,85,255,.12);
	color: #f2d98d !important;
	font-size: 21px !important;
	letter-spacing: .025em;
}

/* Restored legal/footer architecture */
.dp-footer-legal {
	width: 100% !important;
	margin: 0 !important;
	padding: 23px 22px !important;
	border-top: 1px solid rgba(205, 105, 255, .25) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .06) !important;
	background:
		linear-gradient(180deg, #100b15, #09080d) !important;
	box-shadow: inset 0 10px 30px rgba(174, 46, 218, .045);
	text-align: center !important;
}

.dp-footer-legal-menu {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px 26px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.dp-footer-legal-menu li {
	position: relative;
	margin: 0 !important;
}

.dp-footer-legal-menu li:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -14px;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #a855f7;
	box-shadow: 0 0 8px rgba(168,85,247,.8);
	transform: translateY(-50%);
}

.dp-footer-legal-menu a {
	color: #e8e4eb !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	letter-spacing: .035em;
	text-decoration: none !important;
}

.dp-footer-legal-menu a:hover {
	color: #f2d98d !important;
	text-shadow: 0 0 10px rgba(227,189,85,.35);
}

footer.ct-footer,
footer.ct-footer [data-row],
footer.ct-footer .ct-container,
footer.ct-footer .ct-footer-copyright {
	background: #09080d !important;
}

footer.ct-footer .ct-footer-copyright {
	padding-top: 18px;
	padding-bottom: 18px;
	color: #aaa3af !important;
}

/* Keep motion comfortable when the visitor requests it */
@media (prefers-reduced-motion: reduce) {
	body.home .entry-content > .wp-block-group:first-child h1,
	body.home .entry-content > h2,
	body.home .dp-model-section > h2 {
		animation: none !important;
	}
}

/* Premium responsive tuning; keep the accepted 4 / 3 / 2 grid */
@media (max-width: 650px) {
	body.home .entry-content > .wp-block-group:first-child {
		width: calc(100% - 20px) !important;
		min-height: 270px !important;
		margin-top: 10px !important;
		margin-bottom: 48px !important;
		padding-top: 48px !important;
		padding-bottom: 44px !important;
		border-radius: 18px;
	}

	body.home .entry-content > h2,
	body.home .dp-model-section > h2 {
		width: calc(100% - 24px) !important;
		margin-top: 43px !important;
		font-size: 33px !important;
	}

	body.home .entry-content > h2:not(.has-x-large-font-size) {
		width: calc(100% - 24px) !important;
		padding: 21px 18px 10px !important;
		font-size: 27px !important;
	}

	body.home .entry-content > h2:not(.has-x-large-font-size) ~ p:not(.has-text-align-center) {
		width: calc(100% - 24px) !important;
		padding-right: 18px !important;
		padding-left: 18px !important;
		font-size: 14px !important;
	}

	.dp-tc-card .dp-tc-thumb-link::after {
		width: 43px;
		height: 43px;
		font-size: 16px;
	}

	.dp-footer-legal-menu {
		gap: 10px 16px !important;
	}

	.dp-footer-legal-menu li::after {
		display: none;
	}
}

/* Complete premium footer: brand, navigation, account, then legal bar */
.dp-premium-footer {
	position: relative;
	width: 100%;
	margin: 58px 0 0;
	padding: 48px 22px 42px;
	overflow: hidden;
	border-top: 1px solid rgba(205, 105, 255, .34);
	background:
		radial-gradient(circle at 13% 5%, rgba(167, 48, 220, .19), transparent 27rem),
		radial-gradient(circle at 87% 100%, rgba(227, 189, 85, .10), transparent 24rem),
		linear-gradient(180deg, #110c16, #09080d);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 -14px 36px rgba(0,0,0,.18);
}
.dp-premium-footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: min(820px, 76vw);
	height: 1px;
	background: linear-gradient(90deg, transparent, #c93cf0 32%, #ff4f9f 54%, #e3bd55 74%, transparent);
	box-shadow: 0 0 16px rgba(207, 63, 241, .58);
	transform: translateX(-50%);
}
.dp-premium-footer__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(150px, .65fr) minmax(150px, .65fr);
	gap: 46px;
	width: min(1200px, 100%);
	margin: 0 auto;
}
.dp-premium-footer__brand { max-width: 520px; }
.dp-premium-footer__logo {
	display: inline-block;
	margin-bottom: 15px;
	background: linear-gradient(90deg, #fff, #ffd98a 30%, #e390ff 63%, #ff5ca8);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent;
	font-size: clamp(27px, 3vw, 38px);
	font-weight: 900;
	letter-spacing: .065em;
	line-height: 1;
	text-decoration: none !important;
	text-shadow: 0 0 19px rgba(196, 60, 236, .28);
}
.dp-premium-footer__brand p {
	max-width: 470px;
	margin: 0;
	color: #bdb6c2;
	font-size: 14px;
	line-height: 1.7;
}
.dp-premium-footer__column {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 9px;
}
.dp-premium-footer__column h2 {
	margin: 0 0 8px;
	color: #f2d98d;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .13em;
	line-height: 1;
	text-transform: uppercase;
	text-shadow: 0 0 10px rgba(227,189,85,.22);
}
.dp-premium-footer__column a {
	position: relative;
	color: #d8d2dc !important;
	font-size: 14px;
	font-weight: 560;
	text-decoration: none !important;
	transition: color .18s ease, transform .18s ease, text-shadow .18s ease;
}
.dp-premium-footer__column a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -13px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #b93fe4;
	box-shadow: 0 0 8px rgba(185,63,228,.72);
	opacity: 0;
	transform: translateY(-50%);
	transition: opacity .18s ease;
}
.dp-premium-footer__column a:hover {
	color: #fff !important;
	text-shadow: 0 0 10px rgba(210,80,240,.34);
	transform: translateX(5px);
}
.dp-premium-footer__column a:hover::before { opacity: 1; }
@media (max-width: 760px) {
	.dp-premium-footer { margin-top: 44px; padding: 38px 20px 32px; }
	.dp-premium-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 24px; }
	.dp-premium-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 430px) {
	.dp-premium-footer__inner { grid-template-columns: 1fr; }
	.dp-premium-footer__brand { grid-column: auto; }
}

/* ==========================================================
   DESIREPORN — INTEGRAL 10/10 POLISH
   Final consistency, accessibility and responsive safeguards.
   ========================================================== */

.dp-tc-meta-row > span {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	min-width: 0;
	white-space: nowrap;
}
.dp-tc-meta-row > span::before {
	content: "" !important;
	flex: 0 0 5px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--dp-violet-neon);
	box-shadow: 0 0 7px rgba(207,63,241,.55);
}
.dp-tc-meta-row > .dp-tc-card-quality::before {
	background: var(--dp-gold);
	box-shadow: 0 0 7px rgba(227,189,85,.45);
}
.dp-tc-meta-row > .dp-tc-vote-percent::before {
	background: #ff72b6;
	box-shadow: 0 0 7px rgba(255,114,182,.48);
}

.dp-tc-title,
.dp-video-title {
	display: -webkit-box !important;
	overflow: hidden !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

body.members-directory #buddypress #members-list ul.action :is(a, button, .button),
body.directory.members #buddypress #members-list ul.action :is(a, button, .button),
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button) {
	flex-basis: 44px !important;
	width: 44px !important;
	min-width: 44px !important;
	max-width: 44px !important;
	height: 44px !important;
	min-height: 44px !important;
}
body.members-directory #buddypress #members-list ul.action :is(a, button, .button)::before,
body.directory.members #buddypress #members-list ul.action :is(a, button, .button)::before,
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button)::before {
	width: 20px !important;
	height: 20px !important;
}

#offcanvas {
	--theme-link-initial-color: #f4eef7;
	--theme-link-hover-color: #f0d477;
}
#offcanvas .ct-panel-inner {
	background:
		radial-gradient(circle at 85% 8%, rgba(190,55,232,.18), transparent 22rem),
		linear-gradient(155deg, #100b15, #08070b) !important;
}
#offcanvas .mobile-menu a {
	font-weight: 700 !important;
	letter-spacing: .055em;
}
#offcanvas .mobile-menu li {
	border-bottom: 1px solid rgba(205,105,255,.10);
}

#header [data-row="middle"],
body.home .dp-tc-hero-search {
	-webkit-backdrop-filter: blur(14px);
}

@media (prefers-reduced-motion: reduce) {
	.dp-info-tabs__panel,
	.dp-tc-card,
	.dp-model-card,
	.dp-tc-category-card,
	.dp-premium-footer__column a {
		animation: none !important;
		transition: none !important;
	}
}

@media (max-width: 650px) {
	body.home .dp-tc-hero-search {
		margin-top: 22px !important;
	}
	.dp-tc-meta-row > span {
		gap: 4px !important;
	}
	.dp-tc-meta-row > span::before {
		width: 4px;
		height: 4px;
		flex-basis: 4px;
	}
}

@media (max-width: 430px) {
	.dp-premium-footer__column {
		padding-top: 4px;
		border-top: 1px solid rgba(205,105,255,.13);
	}
	.dp-premium-footer__column h2 {
		margin-top: 16px;
	}
}

/* Category cards: names and counts remain visible over every thumbnail */
.dp-tc-category-card {
	position: relative !important;
	display: block !important;
	aspect-ratio: 16 / 9 !important;
	min-height: 0 !important;
	isolation: isolate;
}
.dp-tc-category-card::after {
	content: "" !important;
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	left: 0;
	height: 58%;
	background: linear-gradient(180deg, transparent, rgba(7,5,10,.72) 42%, rgba(7,5,10,.97));
	pointer-events: none;
}
.dp-tc-category-card .dp-tc-category-thumb {
	position: absolute !important;
	z-index: 0;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}
.dp-tc-category-card .dp-tc-category-name {
	position: absolute !important;
	z-index: 3;
	right: 13px;
	bottom: 27px;
	left: 13px;
	display: block !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	font-size: clamp(15px, 1.45vw, 18px) !important;
	font-weight: 800 !important;
	line-height: 1.18 !important;
	text-align: center !important;
	text-shadow: 0 2px 8px rgba(0,0,0,.95), 0 0 12px rgba(177,49,221,.28);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	opacity: 1 !important;
	visibility: visible !important;
}
.dp-tc-category-card .dp-tc-category-count {
	position: absolute !important;
	z-index: 3;
	right: 13px;
	bottom: 9px;
	left: 13px;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #f0d477 !important;
	font-size: 11px !important;
	font-weight: 650 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-shadow: 0 2px 7px rgba(0,0,0,.95);
	opacity: 1 !important;
	visibility: visible !important;
}

/* Wide catalogue pages: center the complete surface, not only its text */
body:is(.page-id-63, .page-id-65, .page-id-67) .site-main > .ct-container-full,
body:is(.page-id-63, .page-id-65, .page-id-67) .site-main article {
	width: 100% !important;
	max-width: none !important;
}
body:is(.page-id-63, .page-id-65, .page-id-67) .hero-section .entry-header {
	width: min(1400px, calc(100% - 48px)) !important;
	max-width: 1400px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}
body:is(.page-id-63, .page-id-65, .page-id-67) .entry-content {
	width: min(1400px, calc(100% - 48px)) !important;
	max-width: 1400px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	box-sizing: border-box !important;
}
body:is(.page-id-63, .page-id-65, .page-id-67) :is(.dp-tc-grid, .dp-tc-category-grid) {
	margin-right: auto !important;
	margin-left: auto !important;
}

@media (max-width: 650px) {
	body:is(.page-id-63, .page-id-65, .page-id-67) .hero-section .entry-header,
	body:is(.page-id-63, .page-id-65, .page-id-67) .entry-content {
		width: calc(100% - 24px) !important;
	}
}

/* Premium catalogue headings — aligned with the approved homepage hero */
body:is(.page-id-65, .page-id-67) .hero-section {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: clamp(170px, 19vw, 230px) !important;
	overflow: hidden !important;
	border-bottom: 1px solid rgba(205, 64, 242, .30) !important;
	background:
		radial-gradient(ellipse 48% 82% at 50% 0%, rgba(190, 48, 231, .22), transparent 72%),
		radial-gradient(ellipse 32% 60% at 86% 80%, rgba(227, 172, 49, .10), transparent 76%),
		linear-gradient(180deg, #0d0812 0%, #09070c 100%) !important;
	box-shadow: inset 0 -24px 44px rgba(0, 0, 0, .30) !important;
}

body:is(.page-id-65, .page-id-67) .hero-section::after {
	content: "";
	position: absolute;
	right: 18%;
	bottom: -34px;
	left: 18%;
	height: 64px;
	border-radius: 50%;
	background: radial-gradient(ellipse, rgba(205, 64, 242, .22), rgba(255, 71, 157, .06) 45%, transparent 74%);
	filter: blur(16px);
	pointer-events: none;
}

body:is(.page-id-65, .page-id-67) .hero-section .entry-header {
	position: relative !important;
	z-index: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 34px 20px !important;
	text-align: center !important;
}

body:is(.page-id-65, .page-id-67) .hero-section .entry-header::after {
	content: "";
	display: block;
	width: 112px;
	height: 2px;
	margin: 18px auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, #a42edb, #ff4f9f 52%, #e3bd55);
	box-shadow:
		0 0 10px rgba(207, 63, 241, .72),
		0 0 20px rgba(255, 79, 159, .24);
}

body:is(.page-id-65, .page-id-67) .hero-section .page-title {
	width: 100% !important;
	max-width: 1050px !important;
	margin: 0 auto !important;
	background: linear-gradient(90deg, #ffffff 0%, #ffe19a 26%, #e7a0ff 54%, #ff72b6 77%, #ffffff 100%) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: clamp(34px, 4.6vw, 58px) !important;
	font-weight: 800 !important;
	line-height: 1.16 !important;
	letter-spacing: -.035em !important;
	padding: .04em 0 .18em !important;
	overflow: visible !important;
	text-align: center !important;
	text-shadow:
		0 0 8px rgba(174, 0, 255, .40),
		0 0 20px rgba(255, 0, 110, .22),
		0 0 36px rgba(255, 190, 90, .12) !important;
	animation: dp-premium-title-glow 3.4s ease-in-out infinite alternate;
}

@media (max-width: 650px) {
	body:is(.page-id-65, .page-id-67) .hero-section {
		min-height: 150px !important;
	}
	body:is(.page-id-65, .page-id-67) .hero-section .entry-header {
		padding: 28px 14px !important;
	}
	body:is(.page-id-65, .page-id-67) .hero-section .page-title {
		font-size: clamp(30px, 9vw, 42px) !important;
	}
}

/* Mobile/tablet QA pass 1: readable cards and reliable touch targets */
@media (max-width: 650px) {
	.dp-tc-grid,
	.dp-tc-category-grid,
	.dp-model-grid,
	.dp-video-grid {
		gap: 12px !important;
	}

	.dp-tc-title,
	.dp-video-title {
		min-height: 50px !important;
		padding: 10px 10px 6px !important;
		font-size: 13.5px !important;
		line-height: 1.34 !important;
	}

	.dp-tc-meta-row {
		min-height: 38px !important;
		gap: 4px !important;
		padding: 8px 9px 10px !important;
		font-size: 11px !important;
		line-height: 1.2 !important;
	}

	.dp-tc-category-name,
	.dp-model-name {
		font-size: clamp(14px, 4vw, 16px) !important;
		line-height: 1.2 !important;
	}

	body.home .dp-tc-hero-search {
		width: 100% !important;
		min-width: 0 !important;
	}

	body.home .dp-tc-hero-search input {
		min-width: 0 !important;
		font-size: 16px !important;
	}

	body.home .dp-tc-hero-search button,
	.ct-header-trigger,
	.ct-header-trigger .ct-icon-container {
		min-width: 48px !important;
		min-height: 48px !important;
	}

	.dp-premium-footer__column a {
		display: inline-flex;
		align-items: center;
		min-height: 40px;
	}
}

@media (max-width: 430px) {
	.dp-premium-footer {
		padding-right: 18px;
		padding-left: 18px;
	}

	.dp-premium-footer__inner {
		gap: 25px !important;
	}

	.dp-premium-footer__column {
		gap: 3px;
	}
}

/* ==========================================================
   COMMUNITY / PROFILES — PREMIUM RESPONSIVE PASS
   ========================================================== */
body.buddypress #main > .ct-container,
body.buddypress #main > .ct-container-full,
body.bp-user #main > .ct-container,
body.bp-user #main > .ct-container-full {
	width: min(1240px, calc(100% - 40px)) !important;
	max-width: 1240px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.buddypress #buddypress,
body.bp-user #buddypress {
	width: 100% !important;
	max-width: 1200px !important;
	margin: 32px auto 0 !important;
}

body.bp-user #buddypress #cover-image-container {
	position: relative !important;
	isolation: isolate;
	min-height: 280px !important;
	border-color: rgba(211, 98, 247, .42) !important;
	border-radius: 22px !important;
	background:
		radial-gradient(ellipse 44% 85% at 16% 8%, rgba(197, 52, 232, .24), transparent 72%),
		radial-gradient(ellipse 34% 74% at 88% 92%, rgba(227, 172, 49, .14), transparent 74%),
		linear-gradient(145deg, #17101e, #0b0910 66%, #16100b) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 24px 58px rgba(0,0,0,.42), 0 0 28px rgba(178,48,220,.12) !important;
}

body.bp-user #buddypress #cover-image-container::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(112deg, transparent 18%, rgba(255,255,255,.035) 38%, transparent 55%),
		repeating-linear-gradient(118deg, rgba(255,255,255,.018) 0 1px, transparent 1px 12px);
	pointer-events: none;
}

body.bp-user #buddypress #item-header-cover-image {
	position: relative !important;
	z-index: 1 !important;
	display: grid !important;
	grid-template-columns: 160px minmax(0, 1fr) !important;
	align-items: end !important;
	gap: 26px !important;
	min-height: 280px !important;
	padding: 104px 34px 28px !important;
	box-sizing: border-box !important;
}

body.bp-user #buddypress #item-header-avatar,
body.bp-user #buddypress #item-header-content {
	margin: 0 !important;
	float: none !important;
}

body.bp-user #buddypress #item-header-avatar img.avatar {
	display: block !important;
	width: 150px !important;
	height: 150px !important;
	max-width: 150px !important;
}

body.bp-user #buddypress #item-header-content {
	min-width: 0 !important;
	padding-bottom: 4px !important;
	text-align: left !important;
}

body.bp-user #buddypress #item-header-content h2 {
	margin: 0 0 7px !important;
	font-size: clamp(26px, 3.2vw, 40px) !important;
	line-height: 1.12 !important;
	letter-spacing: -.025em !important;
}

body.bp-user #buddypress #item-header-content .item-meta {
	margin: 0 !important;
	color: #c7becb !important;
	font-size: 13px !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button),
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button > a,
body.members-directory #buddypress #members-list ul.action :is(a, button, .button),
body.directory.members #buddypress #members-list ul.action :is(a, button, .button),
body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button) {
	width: 46px !important;
	min-width: 46px !important;
	max-width: 46px !important;
	height: 46px !important;
	min-height: 46px !important;
	outline: none !important;
}

body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button):focus-visible,
body.members-directory #buddypress #members-list ul.action :is(a, button, .button):focus-visible,
body.buddypress #buddypress .bp-navs a:focus-visible {
	outline: 2px solid #f2d98d !important;
	outline-offset: 3px !important;
	box-shadow: 0 0 0 5px rgba(205,63,241,.18) !important;
}

/* Different action colours make each SVG immediately recognisable. */
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(.dp-send-message, .send-message, .message-button, [href*="compose"], [href*="messages"])::before,
body.members-directory #buddypress #members-list ul.action :is(.dp-send-message, [href*="messages"], [href*="compose"])::before {
	background: #f2b2ff !important;
}
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(.friendship-button, [id*="friend"], [class*="friend"])::before,
body.members-directory #buddypress #members-list ul.action :is([id*="friend"], [class*="friend"])::before {
	background: #f2d98d !important;
}
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(.dp-block-user, [class*="block"], [id*="block"], [href*="block"])::before,
body.members-directory #buddypress #members-list ul.action :is(.dp-block-user, [class*="block"], [id*="block"], [href*="block"])::before {
	background: #ff9f74 !important;
}
body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is([class*="report"], [id*="report"], [href*="report"])::before,
body.members-directory #buddypress #members-list ul.action :is([class*="report"], [id*="report"], [href*="report"])::before {
	background: #ff6f91 !important;
}

body.bp-user #buddypress :is(#object-nav, #item-nav, .single-screen-navs),
body.bp-user #buddypress :is(#subnav, .bp-subnavs) {
	width: 100% !important;
	margin: 18px 0 0 !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	border: 1px solid rgba(191,76,230,.28) !important;
	border-radius: 14px !important;
	background: rgba(15,11,19,.92) !important;
	scrollbar-width: thin;
	scrollbar-color: rgba(205,63,241,.55) transparent;
}

body.bp-user #buddypress :is(#object-nav, #item-nav, .single-screen-navs) ul,
body.bp-user #buddypress :is(#subnav, .bp-subnavs) ul {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: max-content !important;
	min-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.bp-user #buddypress :is(#object-nav, #item-nav, .single-screen-navs, #subnav, .bp-subnavs) li a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 48px !important;
	padding: 11px 18px !important;
	white-space: nowrap !important;
}

body.bp-user #buddypress #item-body {
	margin-top: 18px !important;
	padding: clamp(18px, 3vw, 30px) !important;
	border: 1px solid rgba(168,85,247,.24) !important;
	border-radius: 18px !important;
	background: linear-gradient(145deg, rgba(23,17,29,.96), rgba(11,9,15,.98)) !important;
	box-shadow: 0 18px 42px rgba(0,0,0,.26) !important;
}

body.buddypress #buddypress .subnav-filters {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
	margin: 18px 0 !important;
	padding: 14px !important;
	border: 1px solid rgba(168,85,247,.24) !important;
	border-radius: 14px !important;
	background: rgba(20,14,25,.88) !important;
}

body.buddypress #buddypress .bp-dir-search-form {
	display: flex !important;
	align-items: stretch !important;
	min-height: 46px !important;
	overflow: hidden !important;
	border: 1px solid rgba(190,76,229,.40) !important;
	border-radius: 12px !important;
	background: #0d0a11 !important;
}

body.buddypress #buddypress .bp-dir-search-form input[type="search"] {
	min-width: 0 !important;
	min-height: 46px !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 16px !important;
}

body.buddypress #buddypress .bp-dir-search-form button {
	width: 48px !important;
	min-width: 48px !important;
	min-height: 46px !important;
	border: 0 !important;
	border-left: 1px solid rgba(190,76,229,.32) !important;
	border-radius: 0 !important;
	background: linear-gradient(145deg, #9430c9, #c841e4 62%, #c79632) !important;
}

body.buddypress #buddypress :is(.bp-feedback, .bp-messages) {
	padding: 20px !important;
	border: 1px solid rgba(168,85,247,.24) !important;
	border-radius: 14px !important;
	background: rgba(20,14,25,.84) !important;
	color: #d8d1dc !important;
}

body.buddypress #buddypress :is(.bp-feedback, .bp-messages) p {
	margin: 0 !important;
	line-height: 1.55 !important;
}

@media (max-width: 760px) {
	body.buddypress #main > .ct-container,
	body.buddypress #main > .ct-container-full,
	body.bp-user #main > .ct-container,
	body.bp-user #main > .ct-container-full {
		width: calc(100% - 24px) !important;
	}

	body.buddypress #buddypress,
	body.bp-user #buddypress {
		margin-top: 20px !important;
	}

	body.bp-user #buddypress #cover-image-container,
	body.bp-user #buddypress #item-header-cover-image {
		min-height: 0 !important;
	}

	body.bp-user #buddypress #item-header-cover-image {
		grid-template-columns: 1fr !important;
		justify-items: center !important;
		gap: 14px !important;
		padding: 92px 18px 24px !important;
		text-align: center !important;
	}

	body.bp-user #buddypress #item-header-content {
		width: 100% !important;
		padding: 0 !important;
		text-align: center !important;
	}

	body.bp-user #buddypress :is(#item-buttons, .member-header-actions) {
		justify-content: center !important;
	}

	body.bp-user #buddypress #item-body {
		padding: 16px !important;
		border-radius: 14px !important;
	}

	body.buddypress #buddypress .subnav-filters {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	body.buddypress #buddypress :is(.subnav-search, .component-filters, .select-wrap, select) {
		width: 100% !important;
		max-width: none !important;
	}
}

@media (max-width: 480px) {
	body.bp-user #buddypress #item-header-avatar img.avatar {
		width: 126px !important;
		height: 126px !important;
	}

	body.bp-user #buddypress #item-header-content h2 {
		font-size: 27px !important;
	}

	body.bp-user #buddypress :is(#item-buttons, .member-header-actions) :is(a, button),
	body.bp-user #buddypress :is(#item-buttons, .member-header-actions) .generic-button > a,
	body.members-directory #buddypress #members-list ul.action :is(a, button, .button),
	body.directory.members #buddypress #members-list ul.action :is(a, button, .button),
	body.buddypress.members #buddypress #members-list ul.action :is(a, button, .button) {
		width: 48px !important;
		min-width: 48px !important;
		max-width: 48px !important;
		height: 48px !important;
		min-height: 48px !important;
	}

	body.members-directory #buddypress #members-list > li .list-wrap,
	body.directory.members #buddypress #members-list > li .list-wrap,
	body.buddypress.members #buddypress #members-list > li .list-wrap {
		padding: 17px !important;
	}
}

/* Members directory alignment fix — independent of BuddyPress body-class variants. */
body.buddypress #buddypress #members-dir-list,
body.buddypress #buddypress [data-bp-list="members"] {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

body.buddypress #buddypress #members-list {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	gap: 20px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 22px 0 0 !important;
	padding: 0 !important;
}

body.buddypress #buddypress #members-list > li {
	grid-column: auto !important;
	align-self: stretch !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	inset: auto !important;
	transform: none;
}

body.buddypress #buddypress #members-list > li:hover {
	transform: translateY(-2px) !important;
}

body.buddypress #buddypress #members-list > li .list-wrap {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	float: none !important;
}

body.buddypress #buddypress .subnav-filters > :is(.subnav-search, .component-filters) {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	float: none !important;
}

body.buddypress #buddypress .subnav-filters .subnav-search {
	flex: 1 1 420px !important;
	justify-content: flex-start !important;
}

body.buddypress #buddypress .subnav-filters .component-filters {
	flex: 0 0 auto !important;
	justify-content: flex-end !important;
}

body.buddypress #buddypress .subnav-filters .bp-dir-search-form {
	width: min(100%, 460px) !important;
}

body.buddypress #buddypress .subnav-filters select {
	min-width: 205px !important;
	min-height: 46px !important;
}

/* Directory actions: explicit structural fallbacks prevent empty circles. */
body.buddypress #buddypress #members-list ul.action > :nth-child(1) :is(a, button, .button)::before {
	background: #f2d98d !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 12.75-2.92M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.75 6a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0ZM4.5 20.1a7.5 7.5 0 0 1 12.75-2.92M19.5 7.5v6m3-3h-6'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
body.buddypress #buddypress #members-list ul.action > :nth-child(2) :is(a, button, .button)::before {
	background: #f2b2ff !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5A2.25 2.25 0 0 1 19.5 19.5h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0-8.52 5.52a2.25 2.25 0 0 1-2.46 0L2.25 6.75'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
body.buddypress #buddypress #members-list ul.action > :nth-child(3) :is(a, button, .button)::before {
	background: #ff9f74 !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 4.5 15 15M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
body.buddypress #buddypress #members-list ul.action > :nth-child(4) :is(a, button, .button)::before {
	background: #ff6f91 !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 4.5v15m0-15c4.5-3 8.25 3 12.75 0v9c-4.5 3-8.25-3-12.75 0'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

@media (max-width: 1000px) {
	body.buddypress #buddypress #members-list {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 650px) {
	body.buddypress #buddypress .subnav-filters .subnav-search,
	body.buddypress #buddypress .subnav-filters .component-filters,
	body.buddypress #buddypress .subnav-filters .bp-dir-search-form,
	body.buddypress #buddypress .subnav-filters select {
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
	}
}

/* Members directory — definitive single-column horizontal layout. */
body.directory.members #buddypress #members-list,
body.members-directory #buddypress #members-list,
body.buddypress #buddypress #members-list,
#buddypress [data-bp-list="members"] > ul {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	grid-auto-flow: row !important;
	gap: 18px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 22px 0 0 !important;
	padding: 0 !important;
	columns: auto !important;
}

body.directory.members #buddypress #members-list > li,
body.members-directory #buddypress #members-list > li,
body.buddypress #buddypress #members-list > li,
#buddypress [data-bp-list="members"] > ul > li {
	position: relative !important;
	display: block !important;
	grid-column: 1 / -1 !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: 126px !important;
	margin: 0 !important;
	inset: auto !important;
	float: none !important;
	clear: both !important;
	transform: none !important;
}

body.buddypress #buddypress #members-list > li:hover {
	transform: translateY(-2px) !important;
}

body.directory.members #buddypress #members-list > li .list-wrap,
body.members-directory #buddypress #members-list > li .list-wrap,
body.buddypress #buddypress #members-list > li .list-wrap {
	display: grid !important;
	grid-template-columns: 88px minmax(0, 1fr) auto !important;
	grid-template-areas: "avatar content actions" !important;
	align-items: center !important;
	column-gap: 18px !important;
	min-height: 126px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 14px 20px !important;
	box-sizing: border-box !important;
}

body.buddypress #buddypress #members-list .item-avatar {
	grid-area: avatar !important;
	margin: 0 !important;
	float: none !important;
}

body.buddypress #buddypress #members-list .item {
	grid-area: content !important;
	min-width: 0 !important;
	margin: 0 !important;
	float: none !important;
	text-align: left !important;
}

body.buddypress #buddypress #members-list .action {
	grid-area: actions !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	width: auto !important;
	margin: 0 !important;
	float: none !important;
}

@media (max-width: 760px) {
	body.directory.members #buddypress #members-list > li .list-wrap,
	body.members-directory #buddypress #members-list > li .list-wrap,
	body.buddypress #buddypress #members-list > li .list-wrap {
		grid-template-columns: 86px minmax(0, 1fr) !important;
		grid-template-areas:
			"avatar content"
			"actions actions" !important;
		row-gap: 16px !important;
		column-gap: 18px !important;
		padding: 20px !important;
	}

	body.buddypress #buddypress #members-list .action {
		justify-content: flex-start !important;
		padding-left: 104px !important;
	}
}

@media (max-width: 480px) {
	body.directory.members #buddypress #members-list > li .list-wrap,
	body.members-directory #buddypress #members-list > li .list-wrap,
	body.buddypress #buddypress #members-list > li .list-wrap {
		grid-template-columns: 72px minmax(0, 1fr) !important;
		column-gap: 14px !important;
		padding: 17px !important;
	}

	body.buddypress #buddypress #members-list .action {
		padding-left: 86px !important;
		gap: 9px !important;
	}
}

/* Members compact row — BuddyPress nests actions inside .item. */
body.directory.members #buddypress #members-list > li,
body.members-directory #buddypress #members-list > li,
body.buddypress #buddypress #members-list > li {
	height: auto !important;
	min-height: 0 !important;
}

body.directory.members #buddypress #members-list > li .list-wrap,
body.members-directory #buddypress #members-list > li .list-wrap,
body.buddypress #buddypress #members-list > li .list-wrap {
	display: grid !important;
	grid-template-columns: 80px minmax(0, 1fr) !important;
	grid-template-areas: "avatar member" !important;
	align-items: center !important;
	gap: 16px !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 14px 18px !important;
}

body.directory.members #buddypress #members-list .item-avatar,
body.members-directory #buddypress #members-list .item-avatar,
body.buddypress #buddypress #members-list .item-avatar {
	grid-area: avatar !important;
	align-self: center !important;
}

body.directory.members #buddypress #members-list .item,
body.members-directory #buddypress #members-list .item,
body.buddypress #buddypress #members-list .item {
	grid-area: member !important;
	display: grid !important;
	grid-template-columns: minmax(180px, 1fr) auto !important;
	grid-template-areas: "details buttons" !important;
	align-items: center !important;
	gap: 18px !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.buddypress #buddypress #members-list .item > :is(.item-block, .item-title, .item-meta-wrap) {
	grid-area: details !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
}

body.directory.members #buddypress #members-list .item > .action,
body.members-directory #buddypress #members-list .item > .action,
body.buddypress #buddypress #members-list .item > .action {
	grid-area: buttons !important;
	align-self: center !important;
	justify-self: end !important;
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 760px) {
	body.directory.members #buddypress #members-list .item,
	body.members-directory #buddypress #members-list .item,
	body.buddypress #buddypress #members-list .item {
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-areas:
			"details"
			"buttons" !important;
		gap: 11px !important;
	}

	body.directory.members #buddypress #members-list .item > .action,
	body.members-directory #buddypress #members-list .item > .action,
	body.buddypress #buddypress #members-list .item > .action {
		justify-self: start !important;
		justify-content: flex-start !important;
		padding: 0 !important;
	}
}

@media (max-width: 480px) {
	body.directory.members #buddypress #members-list > li .list-wrap,
	body.members-directory #buddypress #members-list > li .list-wrap,
	body.buddypress #buddypress #members-list > li .list-wrap {
		grid-template-columns: 64px minmax(0, 1fr) !important;
		gap: 12px !important;
		padding: 13px !important;
	}
}

/* ==========================================================
   Messages — centred, site-wide conversation surface
   ========================================================== */

body.page-id-7204 #main > .ct-container-full,
body.page-id-7204 article#post-7204,
body.page-id-7204 article#post-7204 > .entry-content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

body.page-id-7204 article#post-7204 > .entry-content {
	padding-inline: 0 !important;
}

body.page-id-7204 .entry-content.is-layout-constrained > .bp-messages-wrap,
body.page-id-7204 .entry-content.is-layout-constrained > [class*="better-messages"],
body.page-id-7204 .entry-content.is-layout-constrained > [class*="bp-messages"] {
	display: block !important;
	width: calc(100% - clamp(24px, 3vw, 56px)) !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box !important;
}

body.page-id-7204 .bp-messages-wrap {
	width: calc(100% - clamp(24px, 3vw, 56px)) !important;
	max-width: none !important;
	margin-inline: auto !important;
}

@media (max-width: 760px) {
	body.page-id-7204 article#post-7204 > .entry-content {
		padding-inline: 0 !important;
	}

	body.page-id-7204 .entry-content.is-layout-constrained > .bp-messages-wrap,
	body.page-id-7204 .entry-content.is-layout-constrained > [class*="better-messages"],
	body.page-id-7204 .entry-content.is-layout-constrained > [class*="bp-messages"],
	body.page-id-7204 .bp-messages-wrap {
		width: calc(100% - 16px) !important;
	}
}

/* Messages title — same premium treatment as the site headings */
body.page-id-7204 .hero-section {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
}

body.page-id-7204 .hero-section .entry-header {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 34px 20px !important;
	text-align: center !important;
}

body.page-id-7204 .hero-section .entry-header::after {
	content: "";
	display: block;
	width: 112px;
	height: 2px;
	margin: 18px auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, #a42edb, #ff4f9f 52%, #e3bd55);
	box-shadow:
		0 0 10px rgba(207, 63, 241, .72),
		0 0 20px rgba(255, 79, 159, .24);
}

body.page-id-7204 .hero-section .page-title {
	display: block !important;
	width: 100% !important;
	max-width: 1050px !important;
	margin: 0 auto !important;
	padding: .04em 0 .18em !important;
	overflow: visible !important;
	text-align: center !important;
	background: linear-gradient(90deg, #ffffff 0%, #ffe19a 26%, #e7a0ff 54%, #ff72b6 77%, #ffffff 100%) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: clamp(34px, 4.6vw, 58px) !important;
	font-weight: 800 !important;
	line-height: 1.16 !important;
	letter-spacing: -.035em !important;
	text-shadow:
		0 0 8px rgba(174, 0, 255, .40),
		0 0 20px rgba(255, 0, 110, .22),
		0 0 36px rgba(255, 190, 90, .12) !important;
	animation: dp-premium-title-glow 3.4s ease-in-out infinite alternate;
}

@media (max-width: 650px) {
	body.page-id-7204 .hero-section .entry-header {
		padding: 28px 14px !important;
	}


	body.page-id-7204 .hero-section .page-title {
		font-size: clamp(30px, 9vw, 42px) !important;
	}
}

/* ==========================================================
   PERFORMER DIRECTORY — DRAFT PILOT
   Editorial profiles, restrained gold / violet identity.
   ========================================================== */
body.page-id-7382 .hero-section,
body.page-id-7383 .hero-section,
body.page-id-7384 .hero-section {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	background: radial-gradient(circle at 50% 120%, rgba(168,85,247,.16), transparent 48%), var(--dp-bg) !important;
}

body.page-id-7382 .hero-section .entry-header,
body.page-id-7383 .hero-section .entry-header,
body.page-id-7384 .hero-section .entry-header {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 44px 20px 38px !important;
	text-align: center !important;
}

body.page-id-7382 .hero-section .entry-header::after,
body.page-id-7383 .hero-section .entry-header::after,
body.page-id-7384 .hero-section .entry-header::after {
	content: "";
	width: 112px;
	height: 2px;
	margin: 18px auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg,#a42edb,#ff4f9f 52%,#e3bd55);
	box-shadow: 0 0 12px rgba(207,63,241,.58);
}

body.page-id-7382 .hero-section .page-title,
body.page-id-7383 .hero-section .page-title,
body.page-id-7384 .hero-section .page-title {
	width: 100% !important;
	margin: 0 auto !important;
	padding: .04em 0 .18em !important;
	overflow: visible !important;
	text-align: center !important;
	background: linear-gradient(90deg,#fff 0%,#ffe19a 28%,#e7a0ff 56%,#ff72b6 78%,#fff 100%) !important;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: clamp(38px,5vw,62px) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: -.04em !important;
	text-shadow: 0 0 9px rgba(174,0,255,.34), 0 0 28px rgba(255,190,90,.10) !important;
	animation: dp-premium-title-glow 3.4s ease-in-out infinite alternate;
}

body.page-id-7382 .entry-content,
body.page-id-7383 .entry-content,
body.page-id-7384 .entry-content {
	width: min(1180px,calc(100% - 40px)) !important;
	max-width: none !important;
	margin-inline: auto !important;
}

.dp-performer-directory,
.dp-performer-profile {
	position: relative;
	padding: clamp(24px,4vw,56px) 0 clamp(54px,7vw,86px);
}

.dp-performer-directory::before,
.dp-performer-profile::before {
	content: "";
	position: absolute;
	inset: 0 auto auto 50%;
	width: min(760px,90vw);
	height: 360px;
	transform: translateX(-50%);
	pointer-events: none;
	background: radial-gradient(ellipse at center,rgba(124,58,237,.12),transparent 68%);
	filter: blur(8px);
}

.dp-performer-kicker,
.dp-performer-type {
	color: var(--dp-gold) !important;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.dp-performer-intro {
	max-width: 760px;
	margin: 10px auto 28px !important;
	color: var(--dp-copy-soft) !important;
	font-size: clamp(18px,2vw,23px);
	line-height: 1.55;
}

.dp-performer-note,
.dp-profile-disclaimer {
	border: 1px solid rgba(227,189,85,.24);
	border-radius: var(--dp-radius);
	background: rgba(21,16,24,.78);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.dp-performer-note {
	max-width: 840px;
	margin: 0 auto 48px !important;
	padding: 14px 22px;
	text-align: center;
}

.dp-performer-note p,
.dp-profile-disclaimer p {
	margin: 0;
	color: var(--dp-muted) !important;
	font-size: 15px;
	line-height: 1.55;
}

.dp-section-title {
	position: relative;
	margin-top: 48px !important;
	margin-bottom: 22px !important;
	color: var(--dp-copy) !important;
	font-size: clamp(25px,3vw,34px) !important;
	font-weight: 750 !important;
	letter-spacing: -.025em;
}

.dp-performer-directory-tools {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto;
	align-items: end;
	gap: 8px 16px;
	max-width: 880px;
	margin: 0 auto 16px;
}
.dp-performer-directory-tools label {
	grid-column: 1 / -1;
	color: #fff;
	font-size: 14px;
	font-weight: 750;
}
.dp-performer-search {
	width: 100%;
	min-height: 48px;
	padding: 11px 16px;
	border: 1px solid rgba(168,85,247,.38);
	border-radius: 12px;
	background: rgba(12,10,15,.94);
	color: #fff;
	font-size: 16px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.dp-performer-search::placeholder { color: #a99dac; }
.dp-performer-search:focus {
	border-color: #e3bd55;
	outline: 3px solid rgba(227,189,85,.16);
	outline-offset: 2px;
}
.dp-performer-results {
	margin: 0 0 12px !important;
	color: var(--dp-muted) !important;
	font-size: 14px;
	white-space: nowrap;
}
.dp-performer-empty {
	max-width: 880px;
	margin: 18px auto 0 !important;
	padding: 18px;
	border: 1px solid rgba(168,85,247,.24);
	border-radius: 12px;
	color: var(--dp-copy-soft) !important;
	text-align: center;
}
.dp-performer-card[hidden],
.dp-performer-empty[hidden] {
	display: none !important;
}
.dp-performer-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	max-width: 880px;
	margin-inline: auto;
}

.dp-performer-card {
	position: relative;
	display: grid;
	grid-template-columns: 72px minmax(0,1fr);
	align-items: center;
	gap: 16px;
	min-height: 0;
	padding: 14px 18px;
	overflow: hidden;
	border: 1px solid var(--dp-line);
	border-radius: 12px;
	background: linear-gradient(145deg,rgba(255,255,255,.035),transparent 42%), linear-gradient(135deg,rgba(27,20,33,.97),rgba(11,11,15,.96));
	box-shadow: 0 10px 24px rgba(0,0,0,.22);
	color: inherit;
	text-decoration: none;
}

.dp-performer-card::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 2px;
	background: linear-gradient(90deg,transparent,var(--dp-violet-neon),var(--dp-gold),transparent);
	opacity: .62;
}

.dp-performer-card:hover {
	border-color: rgba(227,189,85,.52);
	transform: translateY(-3px);
	box-shadow: 0 20px 42px rgba(0,0,0,.34), 0 0 24px rgba(168,85,247,.10);
}

.dp-performer-photo,
.dp-profile-photo-wrap {
	position: relative;
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(227,189,85,.42);
	border-radius: 14px;
	background: #09080c;
	box-shadow: 0 16px 34px rgba(0,0,0,.28), 0 0 22px rgba(168,85,247,.10);
}

.dp-performer-photo {
	aspect-ratio: 1;
	border-radius: 50%;
}

.dp-performer-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dp-profile-gallery {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	align-items: stretch;
	gap: 12px;
	width: 100%;
	max-width: 440px;
	justify-self: center;
}

.dp-profile-photo-wrap {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border-radius: 18px;
}

.dp-profile-photo {
	display: block;
	width: 100%;
	aspect-ratio: 2 / 3;
	object-fit: cover;
	flex: 1 1 auto;
}

.dp-profile-photo-wrap figcaption {
	padding: 9px 12px 10px;
	border-top: 1px solid rgba(168,85,247,.18);
	color: var(--dp-muted);
	font-size: 12px;
	line-height: 1.35;
	text-align: center;
}

.dp-performer-card h3 {
	margin: 2px 0 3px;
	color: #fff;
	font-size: 21px;
	line-height: 1.2;
	letter-spacing: -.025em;
}

.dp-performer-card p {
	margin: 0;
	color: var(--dp-muted);
	line-height: 1.45;
}

.dp-performer-masthead {
	position: relative;
	display: grid;
	grid-template-columns: minmax(300px,420px) minmax(0,1fr);
	align-items: center;
	gap: clamp(28px,5vw,64px);
	margin-bottom: 50px;
	padding: clamp(28px,5vw,58px);
	overflow: hidden;
	border: 1px solid var(--dp-line);
	border-radius: 20px;
	background: linear-gradient(135deg,rgba(168,85,247,.11),transparent 46%), linear-gradient(145deg,#18111d,#0d0b10);
	box-shadow: 0 24px 60px rgba(0,0,0,.30);
}

.dp-profile-monogram {
	width: 100%;
	max-width: 230px;
	justify-self: center;
	font-size: clamp(44px,7vw,78px);
}

.dp-profile-lede {
	max-width: 720px;
	margin: 12px 0 22px !important;
	color: var(--dp-copy) !important;
	font-size: clamp(20px,2.5vw,29px);
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -.02em;
}

.dp-profile-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.dp-profile-facts span {
	padding: 8px 13px;
	border: 1px solid rgba(168,85,247,.28);
	border-radius: 999px;
	background: rgba(11,11,15,.58);
	color: var(--dp-copy-soft);
	font-size: 14px;
}

.dp-performer-profile > p {
	max-width: 850px;
	color: var(--dp-copy-soft);
	font-size: 18px;
	line-height: 1.72;
}

.dp-performer-video-list {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.dp-performer-video-list li { margin: 0; }

.dp-performer-video-list a {
	display: flex;
	align-items: center;
	min-height: 64px;
	padding: 14px 17px;
	border: 1px solid rgba(168,85,247,.24);
	border-radius: 10px;
	background: rgba(21,16,24,.72);
	color: var(--dp-copy) !important;
	font-weight: 650;
	line-height: 1.35;
	text-decoration: none;
}

.dp-performer-video-list a::before {
	content: "";
	flex: 0 0 auto;
	width: 8px;
	height: 8px;
	margin-right: 12px;
	border-radius: 50%;
	background: var(--dp-gold);
	box-shadow: 0 0 10px rgba(227,189,85,.48);
}

.dp-performer-video-list a:hover {
	border-color: rgba(227,189,85,.5);
	background: rgba(27,20,33,.94);
	transform: translateX(3px);
}

.dp-catalogue-count,
.dp-profile-updated {
	color: var(--dp-muted) !important;
	font-size: 14px !important;
}

.dp-profile-disclaimer {
	margin-top: 38px !important;
	padding: 18px 20px;
}

/* Complete performer profile components */
.dp-profile-main-photo {
	position: relative;
	display: flex;
	flex-direction: column;
	width: min(100%,360px);
	margin: 0;
	justify-self: center;
	overflow: hidden;
	border: 1px solid rgba(227,189,85,.42);
	border-radius: 18px;
	background: #09080c;
	box-shadow: 0 18px 40px rgba(0,0,0,.34), 0 0 26px rgba(168,85,247,.12);
}
.dp-profile-main-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 2 / 3;
	object-fit: cover;
}
.dp-profile-main-photo figcaption,
.dp-profile-body-gallery figcaption {
	padding: 9px 12px 10px;
	border-top: 1px solid rgba(168,85,247,.18);
	color: var(--dp-muted);
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
}
.dp-detail-grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 12px;
	margin: 0 0 14px;
}
.dp-detail-grid > div {
	min-width: 0;
	padding: 18px;
	border: 1px solid rgba(168,85,247,.24);
	border-radius: 12px;
	background: linear-gradient(145deg,rgba(255,255,255,.03),rgba(21,16,24,.78));
}
.dp-detail-grid dt {
	margin-bottom: 7px;
	color: var(--dp-gold);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.dp-detail-grid dd {
	margin: 0;
	color: var(--dp-copy);
	font-size: 16px;
	font-weight: 650;
	line-height: 1.4;
	overflow-wrap: anywhere;
}
.dp-profile-availability-note {
	max-width: 850px;
	margin: 12px 0 0 !important;
	color: var(--dp-muted) !important;
	font-size: 14px !important;
	line-height: 1.55 !important;
}
.dp-profile-body-gallery {
	display: grid;
	grid-template-columns: minmax(240px,360px) minmax(0,1fr);
	align-items: center;
	gap: clamp(24px,5vw,56px);
	padding: clamp(22px,4vw,38px);
	border: 1px solid var(--dp-line);
	border-radius: 18px;
	background: linear-gradient(135deg,rgba(168,85,247,.08),transparent 52%),rgba(15,12,18,.9);
	box-shadow: var(--dp-shadow);
}
.dp-profile-body-gallery .dp-profile-photo-wrap {
	max-width: 360px;
	justify-self: center;
}
.dp-profile-body-copy h3 {
	margin: 0 0 10px;
	color: #fff !important;
	font-size: clamp(23px,3vw,31px);
}
.dp-profile-body-copy p {
	max-width: 620px;
	margin: 0;
	color: var(--dp-copy-soft);
	font-size: 17px;
	line-height: 1.65;
}
@media (max-width: 760px) {
	.dp-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.dp-profile-main-photo { width: min(100%,420px); }
	.dp-profile-body-gallery {
		grid-template-columns: 1fr;
		text-align: center;
	}
	.dp-profile-body-copy p { margin-inline: auto; }
}
@media (max-width: 480px) {
	.dp-detail-grid { grid-template-columns: 1fr; }
	.dp-performer-masthead { padding: 18px; }
	.dp-profile-body-gallery { padding: 18px; }
}

@media (max-width: 760px) {
	body.page-id-7382 .entry-content,
	body.page-id-7383 .entry-content,
	body.page-id-7384 .entry-content {
		width: min(100% - 24px,1180px) !important;
	}
	.dp-performer-grid,
	.dp-performer-video-list { grid-template-columns: 1fr; }
	.dp-performer-masthead {
		grid-template-columns: 1fr;
		text-align: center;
	}
	.dp-profile-gallery { max-width: 560px; }
	.dp-profile-facts { justify-content: center; }
}

@media (max-width: 480px) {
	body.page-id-7382 .hero-section .entry-header,
	body.page-id-7383 .hero-section .entry-header,
	body.page-id-7384 .hero-section .entry-header { padding: 30px 14px !important; }

	body.page-id-7382 .hero-section .page-title,
	body.page-id-7383 .hero-section .page-title,
	body.page-id-7384 .hero-section .page-title { font-size: clamp(34px,11vw,46px) !important; }

	.dp-performer-directory-tools {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	.dp-performer-results { margin: 0 !important; }
	.dp-performer-card {
		grid-template-columns: 58px minmax(0,1fr);
		gap: 12px;
		padding: 12px;
	}
	.dp-performer-card h3 { font-size: 20px; }
	.dp-profile-gallery { gap: 8px; }
	.dp-profile-photo-wrap figcaption {
		padding: 8px 7px 9px;
		font-size: 10px;
	}
}

/* Performer profile navigation and keyboard accessibility */
.dp-profile-breadcrumb {
	position: relative;
	z-index: 2;
	margin: 0 0 18px;
}
.dp-profile-breadcrumb a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 10px 15px;
	border: 1px solid rgba(227,189,85,.34);
	border-radius: 999px;
	background: rgba(21,16,24,.78);
	color: var(--dp-gold) !important;
	font-size: 14px;
	font-weight: 750;
	letter-spacing: .02em;
	text-decoration: none;
}
.dp-profile-breadcrumb a:hover {
	border-color: rgba(227,189,85,.72);
	background: rgba(38,27,44,.94);
	transform: translateX(-2px);
}
.dp-performer-card:focus-visible,
.dp-performer-video-list a:focus-visible,
.dp-profile-breadcrumb a:focus-visible {
	outline: 3px solid #ff72b6;
	outline-offset: 4px;
}
.dp-profile-summary {
	min-width: 0;
}
@media (max-width: 760px) {
	.dp-profile-breadcrumb {
		text-align: center;
	}
}

/* Performer masthead: keep the portrait, roles and facts in balanced columns. */
body .dp-performer-profile {
	container: dp-profile / inline-size;
	width: 100%;
}
body .dp-performer-profile > .dp-performer-masthead,
body .dp-performer-profile > .dp-profile-tabs {
	width: 100%;
	max-width: none !important;
	box-sizing: border-box;
}
body .dp-performer-profile > .dp-performer-masthead {
	grid-template-columns: minmax(180px,260px) minmax(0,1fr) !important;
	align-items: center !important;
	gap: clamp(24px,3vw,40px) !important;
	padding: clamp(22px,3vw,36px) !important;
	text-align: left;
}
body .dp-performer-profile .dp-profile-main-photo {
	width: 100% !important;
	max-width: 260px;
	justify-self: start;
	margin: 0 !important;
}
body .dp-performer-profile .dp-profile-main-photo img {
	height: auto;
}
body .dp-performer-profile .dp-profile-summary {
	min-width: 0;
	padding: 0;
	text-align: left;
}
body .dp-profile-summary > .dp-performer-type {
	display: block !important;
	width: auto !important;
	max-width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	color: #e7c96f !important;
	font-size: 1rem !important;
	font-weight: 650 !important;
	letter-spacing: normal !important;
	text-transform: none;
	line-height: 1.5;
	overflow-wrap: normal;
	word-break: normal;
	text-wrap: balance;
}
body .dp-performer-profile .dp-profile-lede {
	max-width: 60ch;
	margin: 16px 0 22px !important;
	font-size: clamp(1rem,1.4vw,1.2rem) !important;
	font-weight: 400;
	line-height: 1.6 !important;
	letter-spacing: normal;
}
body .dp-performer-profile .dp-profile-facts {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 12px 24px !important;
	margin: 0;
	padding-top: 18px;
	border-top: 1px solid rgba(255,255,255,.14);
}
body .dp-performer-profile .dp-profile-facts > span {
	display: block !important;
	flex: 0 1 auto;
	width: auto;
	min-width: 0;
	min-height: 0;
	max-width: 100%;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	font-size: .95rem !important;
	font-weight: 600 !important;
	line-height: 1.5;
	text-align: left;
	overflow-wrap: normal;
	word-break: normal;
}
@container dp-profile (max-width: 680px) {
	body .dp-performer-profile > .dp-performer-masthead {
		grid-template-columns: 1fr !important;
		gap: 22px !important;
		padding: 20px !important;
	}
	body .dp-performer-profile .dp-profile-main-photo {
		max-width: 220px;
	}
}
@media (max-width: 720px) {
	body .dp-performer-profile > .dp-performer-masthead {
		grid-template-columns: 1fr !important;
		gap: 22px !important;
		padding: 20px !important;
	}
	body .dp-performer-profile .dp-profile-main-photo {
		max-width: 220px;
	}
}



