/* ===== Layout fixes ===== */
body.page .page-content > .container,
body.single .page-content > .container {
	max-width: 1140px;
}

body.home .page-content,
body.front-page .page-content {
	padding: 0;
}

body.home .page-content > .container,
body.front-page .page-content > .container {
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.vira-wrap .entry-content,
.vira-page .entry-content {
	max-width: none;
}

.entry-content > *:first-child {
	margin-top: 0;
}

/* ===== Shared section system ===== */
.vira-section {
	padding: 72px 0;
}

.vira-section--tight {
	padding: 48px 0;
}

.vira-section--alt {
	background: var(--themeht-light-color, #ecf4fb);
}

.vira-section--dark {
	background: linear-gradient(135deg, #0f2748 0%, #1a3d6d 55%, #2458b3 100%);
	color: #fff;
}

.vira-section--dark h1,
.vira-section--dark h2,
.vira-section--dark h3,
.vira-section--dark p,
.vira-section--dark li {
	color: #fff;
}

.vira-section--dark p,
.vira-section--dark li {
	opacity: 0.92;
}

.vira-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
}

.vira-kicker {
	display: inline-block;
	font-size: 13px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--themeht-primary-color, #2458b3);
	margin-bottom: 12px;
}

.vira-section--dark .vira-kicker {
	color: rgba(255, 255, 255, 0.75);
}

.vira-title {
	font-family: var(--themeht-typography-secondary-font-family, 'Chivo', sans-serif);
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	line-height: 1.25;
	margin: 0 0 16px;
	color: var(--themeht-secondary-color, #222);
}

.vira-lead {
	font-size: 1.1rem;
	line-height: 1.7;
	max-width: 720px;
	margin: 0 0 28px;
	color: var(--themeht-body-color, #666);
}

.vira-section--dark .vira-lead {
	color: rgba(255, 255, 255, 0.9);
}

.vira-text {
	font-size: 1.02rem;
	line-height: 1.8;
	color: var(--themeht-body-color, #666);
	margin-bottom: 1.15rem;
}

.vira-page .entry-content h2 {
	font-family: var(--themeht-typography-secondary-font-family, 'Chivo', sans-serif);
	font-size: 1.55rem;
	margin: 2.5rem 0 1rem;
	color: var(--themeht-secondary-color, #222);
	padding-top: 0.5rem;
	border-top: 1px solid rgba(15, 39, 72, 0.08);
}

.vira-page .entry-content h2:first-of-type {
	border-top: 0;
	margin-top: 1.5rem;
}

.vira-page .entry-content ul {
	padding-left: 1.25rem;
	margin: 0 0 1.5rem;
}

.vira-page .entry-content li {
	margin-bottom: 0.55rem;
	line-height: 1.7;
	color: var(--themeht-body-color, #666);
}

.vira-page .entry-content p {
	line-height: 1.8;
	color: var(--themeht-body-color, #666);
	margin-bottom: 1.1rem;
}

.vira-intro {
	font-size: 1.15rem;
	line-height: 1.7;
	color: var(--themeht-secondary-color, #222);
	margin-bottom: 1.75rem;
}

/* ===== CTA buttons ===== */
.vira-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 28px 0 0;
}

.vira-cta .themeht-btn {
	text-decoration: none;
	border: 0;
}

.vira-cta .themeht-btn + .themeht-btn {
	margin-left: 0;
}

/* ===== Feature / checklist ===== */
.vira-checklist {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 24px;
}

.vira-checklist li {
	position: relative;
	padding: 14px 16px 14px 44px;
	background: #fff;
	border: 1px solid rgba(15, 39, 72, 0.08);
	border-radius: 12px;
	margin: 0;
	line-height: 1.45;
	color: var(--themeht-secondary-color, #222);
	font-weight: 500;
}

.vira-checklist li::before {
	content: "";
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--themeht-primary-color, #2458b3);
}

/* ===== Service cards ===== */
.vira-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-top: 28px;
}

.vira-card {
	background: #fff;
	border: 1px solid rgba(15, 39, 72, 0.08);
	border-radius: 16px;
	padding: 28px 24px;
	height: 100%;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	display: flex;
	flex-direction: column;
}

.vira-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(15, 39, 72, 0.1);
}

.vira-card h3 {
	font-size: 1.2rem;
	margin: 0 0 12px;
	color: var(--themeht-secondary-color, #222);
}

.vira-card h3 a {
	color: inherit;
	text-decoration: none;
}

.vira-card h3 a:hover {
	color: var(--themeht-primary-color, #2458b3);
}

.vira-card p {
	flex: 1;
	margin: 0 0 18px;
	line-height: 1.65;
	color: var(--themeht-body-color, #666);
	font-size: 0.98rem;
}

.vira-card-link {
	font-weight: 600;
	font-size: 0.92rem;
	color: var(--themeht-primary-color, #2458b3);
	text-decoration: none;
}

.vira-card-link:hover {
	text-decoration: underline;
}

/* ===== FAQ blocks ===== */
.vira-faq {
	display: grid;
	gap: 14px;
	margin: 20px 0 28px;
}

.vira-faq-item {
	background: #fff;
	border: 1px solid rgba(15, 39, 72, 0.08);
	border-radius: 12px;
	padding: 18px 20px;
}

.vira-faq-item strong {
	display: block;
	color: var(--themeht-secondary-color, #222);
	margin-bottom: 6px;
	font-size: 1.02rem;
}

.vira-faq-item span,
.vira-faq-item p {
	margin: 0;
	color: var(--themeht-body-color, #666);
	line-height: 1.7;
}

/* ===== Contact strip ===== */
.vira-contact-box {
	background: #fff;
	border-radius: 16px;
	border: 1px solid rgba(15, 39, 72, 0.08);
	padding: 28px;
	margin-top: 12px;
}

.vira-contact-box ul {
	list-style: none;
	padding: 0;
	margin: 0 0 20px;
}

.vira-contact-box li {
	padding: 10px 0;
	border-bottom: 1px solid rgba(15, 39, 72, 0.06);
	color: var(--themeht-secondary-color, #222);
}

.vira-contact-box li:last-child {
	border-bottom: 0;
}

/* ===== Hero ===== */
.vira-hero {
	padding: 96px 0 88px;
	background:
		radial-gradient(ellipse at 20% 20%, rgba(36, 88, 179, 0.18), transparent 50%),
		radial-gradient(ellipse at 80% 10%, rgba(15, 39, 72, 0.12), transparent 45%),
		linear-gradient(180deg, #f4f8fc 0%, #ffffff 70%);
}

.vira-hero .vira-title {
	font-size: clamp(2.1rem, 4.2vw, 3.4rem);
	max-width: 16ch;
}

.vira-hero .vira-lead {
	max-width: 640px;
}

/* ===== Page title polish ===== */
.page-title {
	margin-bottom: 0;
}

.page-title .theme-breadcrumb-box h1 {
	font-size: clamp(1.8rem, 3vw, 2.6rem);
}

.breadcrumb-item a {
	text-decoration: none;
}

/* Inner page content spacing */
body:not(.home):not(.front-page) .page-content {
	padding-top: 48px;
	padding-bottom: 72px;
}

body.single-post .page-content {
	padding-top: 40px;
	padding-bottom: 72px;
}

.single-post .entry-content {
	max-width: 760px;
	margin: 0 auto;
	line-height: 1.8;
}

.single-post .entry-content p {
	margin-bottom: 1.15rem;
	color: var(--themeht-body-color, #666);
}

/* Blog list + single — keep theme card; constrain featured image */
body.blog .post-card.post-classic,
body.blog-classic .post-card.post-classic,
.blog .post-card.post-classic,
body.single-post .post-card {
	overflow: hidden;
}

body.blog .post-card .post-image,
body.blog-classic .post-card .post-image,
.blog .post-card .post-image {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	line-height: 0;
	border-radius: 20px 20px 0 0;
}

body.blog .post-card .post-image img,
body.blog-classic .post-card .post-image img,
.blog .post-card .post-image img,
body.blog .post-card.post-classic img,
.blog .post-card.post-classic img,
body.single-post .post-card > img,
body.single-post .post-card .wp-post-image,
body.single-post .post-card .post-image img,
.post-single-page .post-card > img,
.post-single-page .post-card .wp-post-image {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	object-fit: cover;
}

body.blog .post-card .post-image img,
body.blog-classic .post-card .post-image img,
.blog .post-card .post-image img,
body.blog .post-card.post-classic img,
.blog .post-card.post-classic img {
	border-radius: 20px 20px 0 0;
}

body.single-post .post-card > img,
body.single-post .post-card .wp-post-image,
.post-single-page .post-card > img,
.post-single-page .post-card .wp-post-image {
	border-radius: 30px;
}

body.blog article.post,
.blog article.post {
	margin-bottom: 40px;
	padding-bottom: 0;
	border-bottom: 0;
}

/* Sidebar recent posts thumbs — match theme 80x80 box */
.widget_themeht_recentpost .themeht-post-image {
	overflow: hidden;
	border-radius: 10px;
}

.widget_themeht_recentpost .themeht-post-image img,
.widget .themeht-post-image img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: 10px;
}

.widget_themeht_recentpost li {
	overflow: hidden;
	margin-bottom: 18px;
}

.widget_themeht_recentpost li:last-child {
	margin-bottom: 0;
}

.widget_themeht_recentpost .themeht-post-content {
	min-width: 0;
	flex: 1;
}

/* Sidebar note */
.vira-sidebar-note {
	margin: 0;
	padding: 14px 16px;
	font-size: 0.9rem;
	line-height: 1.7;
	color: #5c6b7a;
	background: #f4f8fc;
	border-radius: 12px;
	border-left: 3px solid var(--themeht-primary-color, #2458b3);
}

.vira-sidebar-note p {
	margin: 0;
}

.widget.vira-note-widget .widget-title::before {
	content: "\f158";
}

/* Legal note */
.vira-legal {
	font-size: 0.92rem;
	line-height: 1.65;
	color: #7a8594;
	margin: 0;
}

/* Footer copyright link */
.footer .copyright a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.footer .copyright a:hover {
	opacity: 0.85;
}

/* ===== Logos: dark PNG on dark header/footer ===== */
.navbar-brand.logo:not(.sticky-logo) img,
.navbar-brand.main-logo img,
.footer-logo img,
.footer .logo img {
	filter: brightness(0) invert(1);
	max-height: 48px;
	width: auto;
	height: auto;
}

.navbar-brand.sticky-logo img {
	filter: none;
	max-height: 46px;
	width: auto;
}

/* ===== Header-1: tek satır (logo | menü | iletişim) ===== */
@media (min-width: 1202px) {
	.header.header-1 {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		gap: 20px;
		padding: 14px 36px !important;
		width: 100%;
	}

	.header.header-1 .header-top {
		display: contents;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	.header.header-1 .header-top > .container-fluid,
	.header.header-1 .header-top > .container-fluid > .row {
		display: contents;
	}

	.header.header-1 .header-top .col-lg-4 {
		display: contents;
	}

	.header.header-1 .header-top .navbar-brand.logo {
		order: 1;
		flex: 0 0 auto;
		padding-right: 10px !important;
		margin: 0;
	}

	.header.header-1 .header-top .col-lg-8 {
		order: 3;
		flex: 0 0 auto;
		width: auto !important;
		max-width: none !important;
		margin-left: auto;
		padding: 0 !important;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 12px;
	}

	.header.header-1 .header-top .header-number {
		margin-right: 0 !important;
	}

	.header.header-1 .header-top .primary-btn {
		margin-left: 0 !important;
		padding: 14px 22px 12px !important;
		white-space: nowrap;
	}

	.header.header-1 #header-wrap:not(.fixed-header) {
		order: 2;
		flex: 1 1 auto;
		width: auto !important;
		max-width: none;
		padding: 0 !important;
		min-width: 0;
		display: flex;
		align-items: center;
	}

	.header.header-1 #header-wrap:not(.fixed-header) > .container-fluid,
	.header.header-1 #header-wrap:not(.fixed-header) > .container-fluid > .row,
	.header.header-1 #header-wrap:not(.fixed-header) > .container-fluid > .row > .col {
		display: contents;
	}

	.header.header-1 #header-wrap:not(.fixed-header) .ht-navigation {
		width: 100%;
		justify-content: center;
		margin: 0 !important;
	}

	.header.header-1 #header-wrap:not(.fixed-header) .navigation-top {
		margin: 0 auto;
	}

	.header.header-1 #header-wrap:not(.fixed-header) .main-nav > ul {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: center;
		gap: 0;
		margin: 0;
	}

	.header.header-1 #header-wrap:not(.fixed-header) .main-nav > ul > li > a {
		padding: 10px 12px !important;
		white-space: nowrap;
		font-size: 13px;
	}

	.header.header-1 #header-wrap:not(.fixed-header) .main-nav > ul > li.current-menu-item > a,
	.header.header-1 #header-wrap:not(.fixed-header) .main-nav > ul > li.current-menu-parent > a {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
}

@media (max-width: 991px) {
	.navbar-brand.logo img {
		max-height: 45px;
	}
}

/* ===== Service hero (contained, rounded — not full-bleed) ===== */
.vira-service-hero {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0 0 36px;
	overflow: hidden;
	border-radius: 28px;
	background: #e8eef5;
	aspect-ratio: 16 / 9;
	max-height: 480px;
}

.vira-service-hero img,
.vira-service-hero .wp-post-image {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center !important;
	border-radius: 0 !important;
}

.vira-card-media {
	margin: -28px -24px 18px;
	border-radius: 16px 16px 0 0;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #e8eef5;
}

.vira-card-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vira-page .entry-content img,
.vira-page .entry-content .wp-block-image img {
	max-width: 100% !important;
	height: auto !important;
	border-radius: 16px;
}

.service-images img,
.featured-item img,
.themeht-service img {
	max-width: 100%;
	height: auto;
	object-fit: cover;
}

/* Contact list polish — icon centering */
.elementor-widget-contact-list .contact-media-icon,
.contact-page .contact-media-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 48px !important;
	height: 48px !important;
	border-radius: 50% !important;
	line-height: 1 !important;
	overflow: hidden !important;
}

.elementor-widget-contact-list .contact-media-icon i,
.contact-page .contact-media-icon i {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	line-height: 1 !important;
	font-size: 18px !important;
	margin: 0 !important;
}

.elementor-widget-contact-list .contact-media-icon i::before,
.contact-page .contact-media-icon i::before {
	line-height: 1 !important;
	display: block !important;
}

/* ===== Responsive ===== */
@media (max-width: 991px) {
	.vira-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vira-section {
		padding: 56px 0;
	}

	.vira-hero {
		padding: 72px 0 56px;
	}
}

@media (max-width: 667px) {
	.vira-cards,
	.vira-checklist {
		grid-template-columns: 1fr;
	}

	.vira-cta .themeht-btn {
		width: 100%;
		text-align: center;
	}

	.vira-hero .vira-title {
		max-width: none;
	}
}

/* Elementor pages: no container clamp */
body.page .page-content.vira-elementor-page {
	padding: 0;
}
body.page .page-content.vira-elementor-page > .vira-page,
body.page .page-content.vira-elementor-page .entry-content {
	max-width: none;
	margin: 0;
	padding: 0;
}

/* About featured portrait (Hakkımda + Anasayfa) */
body.page-id-1513 .elementor-widget-image img,
body.vira-home .vira-home-about .elementor-widget-image img {
	border-radius: 28px;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* ===== Circular service cards (Hizmetler + Anasayfa) — Berlin style ===== */
body.page-id-11124 .elementor-widget-service-grid .row,
body.vira-home .elementor-widget-service-grid .row {
	--bs-gutter-x: 1.5rem;
}

body.page-id-11124 .service-item.style-2,
body.vira-home .service-item.style-2 {
	background: #fff;
	border-radius: 24px;
	padding: 36px 24px 48px;
	margin-bottom: 0;
	text-align: center;
	overflow: visible;
	box-shadow: 0 8px 28px rgba(15, 39, 72, 0.06);
	height: 100%;
}

body.page-id-11124 .service-item.style-2 .service-image,
body.vira-home .service-item.style-2 .service-image {
	position: static;
	display: block;
	width: 168px;
	height: 168px;
	margin: 0 auto 22px;
	border-radius: 50%;
	overflow: visible;
	background: #e8eef5;
}

body.page-id-11124 .service-item.style-2 .service-image img,
body.vira-home .service-item.style-2 .service-image img {
	display: block;
	width: 168px !important;
	height: 168px !important;
	max-width: none !important;
	border-radius: 50% !important;
	object-fit: cover;
	transform: none !important;
}

body.page-id-11124 .service-item.style-2:hover .service-image img,
body.vira-home .service-item.style-2:hover .service-image img {
	transform: scale(1.04) !important;
}

body.page-id-11124 .service-item.style-2 .service-title,
body.vira-home .service-item.style-2 .service-title {
	position: static !important;
	left: auto;
	bottom: auto;
	width: 100%;
	padding: 0 !important;
	background: none !important;
	border-radius: 0;
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	gap: 6px;
}

body.page-id-11124 .service-item.style-2 .service-title h4,
body.vira-home .service-item.style-2 .service-title h4 {
	font-size: 22px;
	line-height: 1.3;
	margin: 0;
}

body.page-id-11124 .service-item.style-2 .service-title h4 a,
body.vira-home .service-item.style-2 .service-title h4 a {
	color: var(--themeht-secondary-color, #0f2748);
}

body.page-id-11124 .service-item.style-2 .service-cat a,
body.vira-home .service-item.style-2 .service-cat a {
	color: #7a8594 !important;
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
	pointer-events: none;
}

body.page-id-11124 .service-item.style-2 .button-style-2,
body.vira-home .service-item.style-2 .button-style-2 {
	position: absolute;
	right: 8px;
	bottom: 8px;
	z-index: 3;
}

body.page-id-11124 .service-item.style-2 .button-style-2 > svg:last-of-type path,
body.page-id-11124 .service-item.style-2 .button-style-2 > svg:first-of-type path,
body.vira-home .service-item.style-2 .button-style-2 > svg:last-of-type path,
body.vira-home .service-item.style-2 .button-style-2 > svg:first-of-type path {
	fill: #ECF4FB;
}

/* ===== Anasayfa dark CTA band ===== */
body.vira-home .vira-home-cta {
	position: relative;
}

body.vira-home .vira-home-cta .theme-title {
	text-align: center;
}

body.vira-home .vira-home-cta .theme-title h2,
body.vira-home .vira-home-cta .theme-title h2 .char,
body.vira-home .vira-home-cta .theme-title h2 .word,
body.vira-home .vira-home-cta .theme-title .splitting {
	color: #fff !important;
}

body.vira-home .vira-home-cta .theme-title h6 {
	color: #a8c0d8 !important;
}

body.vira-home .vira-home-cta .elementor-widget-text-editor {
	text-align: center;
	color: #c5d4e4;
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

body.vira-home .vira-home-cta .featured-item.style-3 {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: 22px 20px;
	height: 100%;
	box-shadow: none;
}

body.vira-home .vira-home-cta .featured-item.style-3 .featured-top {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

body.vira-home .vira-home-cta .featured-item.style-3 .featured-icon {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	display: flex !important;
	align-items: center;
	justify-content: center;
	color: #9ec5e8;
	font-size: 18px;
}

body.vira-home .vira-home-cta .featured-item.style-3 .featured-icon i {
	color: #9ec5e8;
}

body.vira-home .vira-home-cta .featured-item.style-3 .featured-title h5 {
	margin: 0 0 6px;
	color: #fff;
	font-size: 17px;
}

body.vira-home .vira-home-cta .featured-item.style-3 .featured-desc {
	margin: 0;
	color: #b7c7d8;
	font-size: 14px;
	line-height: 1.45;
}

body.vira-home .vira-home-cta .elementor-widget-themeht_button {
	margin-top: 28px;
	text-align: center;
}

/* ===== Anasayfa iletişim — açık / iletişim sayfası tonu ===== */
body.vira-home .vira-home-contact .elementor-widget-image img {
	border-radius: 28px;
	width: 100%;
	height: 100%;
	min-height: 480px;
	max-height: 620px;
	object-fit: cover;
	display: block;
}

.vira-contact-panel {
	color: #0f2748;
	background: #fff;
	border-radius: 28px;
	padding: 36px 36px 32px;
	box-shadow: 0 12px 36px rgba(15, 39, 72, 0.06);
}

.vira-contact-panel__eyebrow {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 999px;
	background: #ecf4fb;
	color: #2f6fed;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.vira-contact-panel__title {
	margin: 0 0 10px;
	color: #0f2748 !important;
	font-size: 34px;
	line-height: 1.2;
}

.vira-contact-panel__text {
	margin: 0 0 22px;
	color: #5b6b7c !important;
	font-size: 15px;
	line-height: 1.55;
}

.vira-contact-panel__text strong {
	color: #0f2748;
	font-weight: 600;
}

.vira-contact-panel__form .contact-form,
.vira-contact-panel__form .wpcf7,
.vira-contact-panel__form .wpcf7 form {
	background: transparent !important;
	padding: 0 !important;
	box-shadow: none !important;
	border: 0 !important;
	border-radius: 0 !important;
}

.vira-contact-panel__form input[type="text"],
.vira-contact-panel__form input[type="email"],
.vira-contact-panel__form input[type="tel"],
.vira-contact-panel__form textarea {
	background: #eef3f8 !important;
	border: 1px solid transparent !important;
	color: #0f2748 !important;
	box-shadow: none !important;
	border-radius: 999px !important;
}

.vira-contact-panel__form textarea {
	border-radius: 24px !important;
}

.vira-contact-panel__form input::placeholder,
.vira-contact-panel__form textarea::placeholder {
	color: #8a96a5 !important;
}

.vira-contact-panel__form input[type="submit"],
.vira-contact-panel__form .wpcf7-submit {
	background: #0f2748 !important;
	border-color: #0f2748 !important;
	color: #fff !important;
	border-radius: 999px !important;
}

/* Floating phone + WhatsApp (mid-right) */
.vira-float-actions {
	position: fixed;
	right: 22px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 9998;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.vira-float-actions__btn {
	width: 54px;
	height: 54px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none !important;
	box-shadow: 0 10px 28px rgba(15, 39, 72, 0.22);
	transition: transform 0.2s ease;
}

.vira-float-actions__btn:hover {
	transform: scale(1.06);
}

.vira-float-actions__btn--phone {
	background: #0f2748;
	color: #fff !important;
	font-size: 20px;
}

.vira-float-actions__btn--wa {
	background: #25d366;
	color: #fff !important;
}

/* Hide Joinchat duplicate (we use our float WA) */
.whatsappme {
	display: none !important;
}

/* Footer "Bilgi Alın" text — white */
.footer .footer-subscribe .widget-title,
.footer .footer-subscribe .textwidget,
.footer .footer-subscribe .textwidget p,
.footer .footer-subscribe .textwidget a {
	color: #fff !important;
}

@media (max-width: 991px) {
	body.vira-home .vira-home-contact .elementor-widget-image img {
		min-height: 280px;
		max-height: 360px;
	}

	.vira-contact-panel {
		padding: 28px 22px 24px;
	}

	.vira-contact-panel__title {
		font-size: 28px;
	}

	.vira-float-actions {
		right: 14px;
		top: auto;
		bottom: 90px;
		transform: none;
	}
}
