/* Focused visual QA fixes: contact links, messenger icons, forms, mobile spacing. */
a[href^="tel:"],
a[href*="t.me/+"],
a[href*="tg://"],
a[href*="whatsapp://send"],
a[href*="api.whatsapp.com/send"],
a[href*="mailto:"],
.drop-salons > a,
.drop-salons .dropdown-item a,
.footer-salon-phone,
.footer-phone .phone-number,
.footer-phone .phone-link,
.schedule-salon-phone,
.girl-page-salon a,
.contacts-block a,
.mob_phone-item a {
	overflow-wrap: normal;
	white-space: nowrap;
	word-break: keep-all;
}

.work-form-notice {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px solid rgba(33, 35, 49, 0.14);
	background: rgba(255, 255, 255, 0.94);
	color: #212331;
	font-family: Montserrat-Regular, Arial, sans-serif;
	line-height: 1.45;
}

.work-form-notice strong,
.work-form-notice span {
	display: block;
}

.work-form-notice strong {
	margin-bottom: 4px;
	font-family: Montserrat-SemiBold, Arial, sans-serif;
	font-size: 14px;
}

.work-form-notice span {
	font-size: 13px;
}

.work-form-notice-success {
	border-color: rgba(36, 130, 82, 0.28);
	background: rgba(232, 248, 238, 0.96);
}

.work-form-notice-error {
	border-color: rgba(219, 0, 110, 0.28);
	background: rgba(255, 239, 247, 0.96);
}

.new_job input,
.new_job select,
.new_job textarea,
.new_job button,
.nav-search,
.nav .nav-link,
.navbar-toggler,
.dropdown-toggle,
.dropdown-item {
	min-height: 44px;
}

.new_job button[disabled] {
	cursor: wait;
	opacity: 0.72;
}

.header-socials .icon-square,
.small-contacts .icon-square,
.girl-page-socials .icon-square,
.girl-page-bottom-socials .icon-square,
.footer-telegram .icon-square {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	min-width: 40px;
	height: 40px;
	flex: 0 0 40px;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}

.header-socials .icon-square:last-child,
.small-contacts .icon-square:last-child,
.girl-page-socials .icon-square:last-child,
.footer-telegram .icon-square:last-child {
	margin-right: 0;
}

.icon-square.icon-phone {
	background-image: url(../img/phone-icon.svg) !important;
	background-size: 58% !important;
}

.icon-square.icon-telegram {
	background-image: url(../img/girl-telegram.svg) !important;
	background-size: 60% !important;
}

.icon-square.icon-telegram-white,
.girl-page-bottom-socials .teleg-red,
.girl-page-bottom-socials .teleg-blue {
	background-image: url(../img/telega-icon.svg) !important;
	background-size: 52% !important;
}

.icon-square.icon-whatsapp {
	background-image: url(../img/girl-whatsapp.svg) !important;
	background-size: 60% !important;
}

.icon-square.icon-whatsapp-white {
	background-image: url(../img/girl-whatsapp-white.svg) !important;
	background-size: 60% !important;
}

.icon-square.icon-max,
.icon-square.max-icon {
	border-color: rgba(232, 232, 232, 0.86);
	background: transparent url(../img/Max_logo.png) center center / 70% no-repeat !important;
}

.girl-page-socials .icon-square.icon-max {
	background: #fff url(../img/Max_logo_black.png) center center / 58% no-repeat !important;
}

.footer-telegram {
	gap: 10px;
	min-width: 0;
}

.footer-telegram > a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
}

.footer-telegram > a .icon-square {
	margin-right: 0;
}

.footer-telegram > .icon-square {
	margin-right: 0;
}

.footer-telegram a,
.footer-salon-phone,
.mob_phone-item a {
	line-height: 1.25;
}

#mobile_phones .modal-body {
	padding: 18px 16px;
}

.mob_contact-list {
	display: grid;
	gap: 10px;
}

.mob_contact-item {
	display: flex;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	width: 100%;
	min-height: 58px;
	padding: 12px 14px;
	border: 1px solid rgba(33, 35, 49, 0.12);
	border-radius: 10px;
	background: #fff;
	color: #212331 !important;
	font-family: Montserrat-Regular, Arial, sans-serif;
	text-align: left;
	text-decoration: none !important;
	white-space: normal !important;
}

.mob_contact-item:hover,
.mob_contact-item:focus {
	border-color: rgba(219, 0, 110, 0.42);
	color: #212331 !important;
	text-decoration: none !important;
}

.mob_contact-item .icon-square {
	width: 42px;
	min-width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin-right: 0;
	border: 1px solid rgba(33, 35, 49, 0.12);
	border-radius: 8px;
	background-color: #f8f8fb;
}

.mob_contact-item span:last-child {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
}

.mob_contact-item strong {
	color: #212331;
	font-family: Montserrat-SemiBold, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.2;
}

.mob_contact-item small {
	color: #db006e;
	font-size: 13px;
	line-height: 1.2;
	overflow-wrap: anywhere;
}

.drop-salons > a,
.drop-salons .dropdown-item a {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	line-height: 1.25;
}

.drop-salons .dropdown-item {
	align-items: center;
	min-height: 42px;
}

.contacts-block,
.schedule-salon-call,
.girl-page-connection,
.footer-telegram {
	align-items: center;
}

.contacts-block p,
.contacts-block a,
.contacts-block span {
	flex-shrink: 0;
}

.contacts-block p {
	min-width: 0;
	flex-shrink: 1;
	line-height: 1.35;
}

.girl-page-socials,
.small-contacts,
.header-socials {
	flex-wrap: nowrap;
}

.girl-page-trust-badges,
.girl-page-cta-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.girl-page-trust-badges {
	margin: 12px 0 4px;
}

.girl-page-trust-badges span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	border: 1px solid rgba(219, 0, 110, 0.18);
	border-radius: 999px;
	padding: 0 12px;
	background: rgba(219, 0, 110, 0.06);
	color: #db006e;
	font-family: Montserrat-SemiBold, Arial, sans-serif;
	font-size: 10px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.girl-page-cta-row {
	flex: 0 0 auto;
	justify-content: flex-end;
}

.girl-page-cta-row .girl-page-call {
	box-sizing: border-box;
	width: auto;
	min-width: 158px;
	min-height: 46px;
	height: auto;
	padding: 0 18px;
	text-align: center;
}

.girl-page-request {
	border-color: #212331;
	background: #212331;
}

.girl-page-request:hover,
.girl-page-request:focus {
	border-color: #db006e;
	background: #fff;
	color: #db006e;
}

.girl-page-socials a,
.small-contacts a,
.header-socials a {
	text-decoration: none;
}

.girl-page .girl-page-prices {
	box-sizing: border-box;
	max-width: 100%;
	overflow: hidden;
}

.girl-page .girl-page-prices p {
	min-width: 0;
}

.girl-page .girl-page-prices span {
	overflow-wrap: normal;
	white-space: nowrap;
	word-break: keep-all;
}

.girl-card,
.girl-pics-list,
.owl-girl {
	max-width: 100%;
}

.girl-card {
	background-color: #171820;
}

.girl-pics-list {
	display: block;
}

.girl-card-shadow {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.art-profile-card {
	cursor: pointer;
}

.girl-pics-list:not(.owl-loaded) .girl-card-shadow {
	position: absolute;
	inset: 0;
}

.girl-pics-list:not(.owl-loaded) .girl-card-shadow:not(:first-child) {
	display: none;
}

.girl-card-shadow img,
.girl-card > img {
	display: block;
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.girl-card-shadow img[src*="dummy-image"] {
	opacity: 0;
}

.girl-card-shadow:has(img[src*="dummy-image"]) {
	background:
		linear-gradient(180deg, rgba(23, 24, 32, 0.08), rgba(23, 24, 32, 0.86)),
		#171820;
}

.header-carousel-wrp {
	overflow: hidden;
	max-width: 100%;
}

.header-carousel-wrp .owl-stage-outer {
	overflow: hidden;
}

@media (max-width: 991.98px) {
	html,
	body {
		max-width: 100%;
		overflow-x: hidden;
	}

	body {
		padding-bottom: 84px;
	}

	.inner-filtered,
	.filtered,
	.now,
	.now2 {
		overflow-x: hidden;
	}

	.inner-filtered .filter-form {
		column-gap: 10px;
	}

	.inner-filtered .input-item-group {
		min-width: 0;
		margin-right: 0;
	}

	.inner-filtered .input-item-group p {
		overflow-wrap: anywhere;
	}

	.inner-filtered .now-girls,
	.filtered .now-girls,
	.now .now-girls,
	.now2 .now-girls,
	.girl-card,
	.girl-pics-list,
	.owl-girl,
	.owl-girl .owl-stage-outer {
		overflow: hidden;
	}
}

.girl-page-call,
.questionnaire-btn,
.girl-reviews-form button,
#filtBtn,
.searchmobile button,
.work-request form button,
.work-request button {
	border: 1px solid #db006e;
	line-height: 1.2;
}

.girl-page-call:hover,
.girl-page-call:focus,
.questionnaire-btn:hover,
.questionnaire-btn:focus,
.girl-reviews-form button:hover,
.girl-reviews-form button:focus,
#filtBtn:hover,
#filtBtn:focus,
.searchmobile button:hover,
.searchmobile button:focus {
	text-decoration: none;
}

.girl-reviews-form input,
.girl-reviews-form textarea,
.work-inputs input,
.work-inputs select,
.work-request form textarea,
.input-item-group input,
.input-item-group .select-content,
.searchmobile input {
	color: #212331;
	line-height: 1.35;
}

.girl-reviews-form input::placeholder,
.girl-reviews-form textarea::placeholder,
.work-inputs input::placeholder,
.work-request form textarea::placeholder,
.input-item-group input::placeholder,
.searchmobile input::placeholder {
	color: #6f7280;
	opacity: 1;
}

.modal-content {
	color: #212331;
}

.modal .close {
	color: #212331;
	opacity: 0.78;
}

.modal .close:hover,
.modal .close:focus {
	opacity: 1;
}

.art-floating-request {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 1040;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 164px;
	min-height: 54px;
	padding: 10px 18px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	background: #db006e;
	box-shadow: 0 18px 46px rgba(0, 0, 0, 0.28), 0 10px 26px rgba(219, 0, 110, 0.28);
	color: #fff;
	font-family: Montserrat-SemiBold, Arial, sans-serif;
	line-height: 1.15;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.art-floating-request span {
	font-size: 11px;
	letter-spacing: 0.1em;
}

.art-floating-request small {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.76);
	font-family: Montserrat-Regular, Arial, sans-serif;
	font-size: 10px;
	letter-spacing: 0.08em;
}

.art-floating-request:hover,
.art-floating-request:focus {
	background: #c0265c;
	box-shadow: 0 20px 52px rgba(0, 0, 0, 0.34), 0 12px 30px rgba(219, 0, 110, 0.32);
	color: #fff;
	text-decoration: none;
	transform: translateY(-2px);
}

@media (max-width: 767.98px) {
	html,
	body {
		max-width: 100%;
		overflow-x: hidden;
	}

	.drop-salons {
		min-width: 0;
	}

	.drop-salons > a {
		font-size: 15px;
		letter-spacing: 0.01em;
	}

	.header-contacts-wrp,
	#inner-page .header-contacts-wrp {
		min-width: 0;
	}

	.header-socials {
		gap: 8px;
	}

	body.art-burgundy-rose .inner-filtered .block-title h1,
	body.art-burgundy-rose .inner-filtered .block-title .seo-h1-visual {
		max-width: 100%;
		font-size: clamp(28px, 8.4vw, 34px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		overflow-wrap: anywhere;
		word-break: normal;
		hyphens: auto;
	}

	.graficonline-card-title {
		flex-wrap: wrap;
	}

	.graficonline-card-title h2 {
		max-width: 100%;
		min-width: 0;
	}

	.graficonline-card-title span,
	.graficonline-price {
		white-space: normal;
	}

	.header-socials .icon-square,
	#inner-page .small-contacts .icon-square,
	.small-contacts .icon-square {
		width: 38px;
		min-width: 38px;
		height: 38px;
		flex-basis: 38px;
		margin-right: 0;
	}

	.girl-page .girl-page-connection > div {
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.girl-page-cta-row {
		width: 100%;
		justify-content: flex-start;
	}

	.girl-page-cta-row .girl-page-call {
		flex: 1 1 145px;
	}

	.girl-page .girl-page-socials {
		gap: 8px;
	}

	.girl-page .girl-page-socials .icon-square {
		width: 38px;
		min-width: 38px;
		height: 38px;
		flex-basis: 38px;
		margin-right: 0;
	}

	.girl-page .girl-page-salon {
		flex: 1 1 145px;
	}

	.girl-page .girl-page-salon a {
		display: inline-flex;
		max-width: 100%;
		font-size: 17px;
	}

	.footer-content {
		row-gap: 22px;
	}

	#footer {
		padding-bottom: calc(112px + env(safe-area-inset-bottom));
	}

	#footer > .container {
		box-sizing: border-box;
		width: 100% !important;
		padding-right: 24px !important;
		padding-left: 24px !important;
	}

	.art-footer-platform {
		gap: 24px;
		margin-bottom: 34px;
		padding: 30px 0 34px;
	}

	.art-footer-platform-label {
		margin-bottom: 12px;
		font-size: 10px;
		line-height: 1.35;
		letter-spacing: 0.13em;
	}

	.art-footer-platform h2 {
		max-width: 330px;
		font-size: clamp(28px, 8.2vw, 36px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		text-wrap: balance;
	}

	.art-footer-platform-copy > p:last-child {
		max-width: 330px;
		margin-top: 18px;
		color: rgba(255, 255, 255, 0.76);
		font-size: 14px;
		line-height: 1.62;
	}

	.art-footer-platform-actions {
		gap: 22px;
	}

	.art-footer-platform-actions > a {
		min-height: 52px;
		padding-right: 18px;
		padding-left: 18px;
	}

	.art-footer-platform-actions ul {
		gap: 12px;
	}

	.art-footer-platform-actions li {
		padding-left: 20px;
		color: rgba(255, 255, 255, 0.8);
		font-size: 14px;
		line-height: 1.45;
	}

	.footer-salon-phone,
	.footer-nav a,
	.footer-telegram a {
		line-height: 1.35;
	}

	.mob_phone-item a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 36px;
		font-size: 18px;
	}

	.contacts-block {
		gap: 12px;
	}

	#header.art-premium-hero,
	#header.art-premium-hero > .container,
	#header.art-premium-hero .art-hero-shell,
	#header.art-premium-hero .art-hero-copy,
	#header.art-premium-hero .art-hero-actions,
	#header.art-premium-hero .art-hero-subtitle,
	#header.art-premium-hero .art-hero-copy h1,
	.art-home-section,
	.art-home-section > .container,
	.art-home-head,
	.art-home-split {
		box-sizing: border-box;
		max-width: 100vw !important;
		min-width: 0 !important;
		overflow-x: hidden;
	}

	#header.art-premium-hero > .container,
	.art-home-section > .container {
		width: 100% !important;
		padding-right: 15px !important;
		padding-left: 15px !important;
	}

	#header.art-premium-hero .art-hero-copy,
	#header.art-premium-hero .art-hero-actions,
	#header.art-premium-hero .art-hero-subtitle,
	#header.art-premium-hero .art-hero-copy h1 {
		width: 100% !important;
		max-width: min(330px, calc(100vw - 30px)) !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: break-word !important;
	}

	#header.art-premium-hero .art-hero-copy h1 {
		font-size: clamp(30px, 8.2vw, 38px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		text-wrap: balance;
	}

	#header.art-premium-hero .art-hero-subtitle {
		font-size: 14px !important;
		line-height: 1.62 !important;
	}

	.art-home-head h2,
	.art-home-split h2 {
		max-width: min(330px, calc(100vw - 48px)) !important;
		font-size: clamp(30px, 8.4vw, 38px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
		text-wrap: pretty;
	}

	.art-home-head span,
	.art-home-split p {
		max-width: min(330px, calc(100vw - 30px)) !important;
		color: rgba(247, 237, 240, 0.8) !important;
		font-size: 14px !important;
		line-height: 1.62 !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: break-word !important;
	}

	body.art-burgundy-rose .block-title h1,
	body.art-burgundy-rose .block-title h2,
	.work-header .block-title h1,
	.salons-header .block-title h1 {
		max-width: 100%;
		font-size: clamp(30px, 8.4vw, 38px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		overflow-wrap: anywhere;
		text-wrap: balance;
	}

	body.art-burgundy-rose .block-title .line p,
	body.art-burgundy-rose .breadcrumbs a,
	body.art-burgundy-rose .seotext-content p,
	body.art-burgundy-rose .seotext-content li,
	.contacts-block p,
	.contacts-block a {
		font-size: 14px;
		line-height: 1.58;
	}

	body.art-burgundy-rose .seotext-content p,
	body.art-burgundy-rose .seotext-content li {
		color: rgba(247, 237, 240, 0.78) !important;
	}

	body.art-burgundy-rose .seotext-content h2 {
		font-size: clamp(28px, 8vw, 36px) !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
		overflow-wrap: anywhere;
		text-wrap: balance;
	}

	.contacts-page,
	.contacts-column,
	.contacts-page .group-item {
		box-sizing: border-box;
		max-width: 100%;
		min-width: 0;
	}

	.contacts-page .group-item {
		padding: 18px;
	}

	.contacts-name {
		font-size: 18px;
		line-height: 1.3;
		overflow-wrap: anywhere;
	}

	.contacts-block span,
	.contacts-block .icon-square {
		margin-right: 0;
	}

	.girl-page-name {
		font-size: clamp(34px, 9vw, 44px);
		line-height: 1.04;
		overflow-wrap: anywhere;
	}

	.girl-page-text,
	.girl-page-text p,
	.girl-page-announce p {
		font-size: 14px;
		line-height: 1.62;
		overflow-wrap: anywhere;
	}

	.inner-filtered .now-girls,
	.filtered .now-girls,
	.now .now-girls,
	.now2 .now-girls {
		width: 100%;
		max-width: 100%;
		overflow-x: clip;
	}

	.art-floating-request {
		right: auto !important;
		left: calc(100vw - 166px) !important;
		bottom: calc(12px + env(safe-area-inset-bottom));
		box-sizing: border-box;
		width: 142px !important;
		min-width: 0 !important;
		max-width: 142px !important;
		min-height: 46px;
		padding: 11px 16px;
	}

	.art-floating-request span {
		font-size: 10px;
		letter-spacing: 0.08em;
	}

	.art-floating-request small {
		font-size: 9px;
	}
}

@media (max-width: 479.98px) {
	.girl-page .girl-page-prices {
		display: grid;
		grid-template-columns: 1fr;
	}

	.girl-page .girl-page-prices p {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto auto;
		align-items: baseline;
		column-gap: 4px;
	}

	.girl-page .girl-page-prices p span {
		justify-self: end;
	}
}

@media (max-width: 390px) {
	#inner-page .navbar-brand {
		max-width: 156px;
	}

	#inner-page .navbar-brand span {
		font-size: 16px;
	}

	.header-socials {
		gap: 6px;
	}

	.header-socials .icon-square,
	#inner-page .small-contacts .icon-square,
	.small-contacts .icon-square,
	.girl-page .girl-page-socials .icon-square {
		width: 36px;
		min-width: 36px;
		height: 36px;
		flex-basis: 36px;
	}

	.girl-page .girl-page-salon a,
	.footer-salon-phone,
	.mob_phone-item a {
		font-size: 16px;
	}
}
