/* Base Variables */
:root {
	--text-dark:#000;
	--primary-green: #00419E;
	--company-orange: #00419E;
}
body {
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: center;
	margin: 0;
	background-color: #fff;
}
header, footer, .mobile-menu, .phones-menu-mobile, .catalog-menu-mobile {
	display:none !important;
}
.global-wrapper {
	width:100%;
	justify-content: center;
}
main.main {
	width:100%;
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: center;
	padding:0
}
.contact-us-section {
	position: relative;
	padding: 0;
	width:100%;
	min-height:100vh;
	display: flex;
}
/* Main Card Container (Mobile First) */
.business-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 15px;
}

/* --- Profile Section --- */
.profile-section {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	width: 100%;
}

.avatar-container {
	overflow: hidden;
	display: flex;
}

.avatar-image {
	width: 100%;
	height: auto;
	object-fit: cover;
	max-height:350px;
}

.person-name {
	font-size: 25px;
	color: #fff;
	margin: 0 0 12px 0;
	font-weight: 600;
	line-height: 1;
}

.person-title {
	color: #fff;
	margin: 0;
	text-align: center;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 127%;
}

/* --- Details Section --- */
.details-section {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 350px;
	padding: 0;
}

/* Social Icons */
.social-icons {
	display: flex;
	justify-content: center; /* Center horizontally on mobile */
	gap: 12px;
	width: 100%;
}

.icon-btn {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	text-decoration: none;
	outline: none;
}
.icon-btn:focus {
	outline: none;
}
.icon-btn {
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.icon-btn:hover {
	transform: scale(1.1);
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
/* Brand Colors */
.bg-phone {
	background-color: #ff6a00;
}
.bg-phone img,
.bg-email img {
	width: 20px;
	height: 20px;
}
.bg-email {
	background-color: #ff6a00;
}
.bg-viber {
	background-color: #7c509a;
}
.bg-viber img {
	width: 21px;
	height: 23px;
}
.bg-whatsapp {
	background-color: #48c95f;
}
.bg-whatsapp img {
	width: 21px;
	height: 21px;
}
.bg-linkedin {
	background-color: #2878b7;
}
.bg-linkedin img {
	width: 15px;
	height: 14px;
}

/* Contact Links */
.contact-info {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin: 30px 0 20px 0;
}

.contact-link {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--text-dark);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	width: max-content;
}
.contact-link:hover {
	color:var(--blue);
}
.contact-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}
.contact-icon svg {
	width: 20px;
	height: 20px;
}

/* Company Widget */
.company-card {
	background-color: #fff;
	color: var(--font-color);
	padding: 20px;
	border-radius: 24px;
	display: flex;
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--blue);
}
.social__link svg{
	width: 21px;
	height: 21px;
}
.company-logo img {
	max-width:100%;
	height: auto;
}

.company-name {
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 6px 0 12px 0;
}
.company-name a {
	color: #fff;
	text-decoration: none;
}
.contact-person_figcaption {
	max-width: 350px;
	min-width: max-content;
	width: 100%;
}
.company-desc {
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 6px 0 6px 0;
}

.company-website {
	color: #000;
	text-decoration: none;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.company-website:hover {
	color:var(--blue)
}

/* Action Buttons */
.action-buttons {
	display: inline-flex;
	align-items: center;
	gap: 17px;
	margin-top: 20px;
}

.add-to-contacts {
	background-color: var(--primary-green);
	color: white;
	border: none;
	padding: 11px 26px;
	border-radius: 8px;
	border: 1px solid var(--primary-green);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 50px;
	flex-grow: 1;
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.add-to-contacts:hover {
	background-color: #fff;
	color: var(--primary-green);
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.add-to-contacts svg {
	width: 22px;
	height: 22px;
}
.add-to-contacts svg path {
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.add-to-contacts:hover svg path {
	fill: var(--primary-green);
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.add-to-contacts span {
	font-weight: 600;
	font-size: 14px;
}
.qr-code-link {
	display: flex;
	width: 50px;
	height: 50px;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	border-radius: 8px;
	border: 1px solid var(--primary-green);
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.qr-code-link svg {
	width: 34px;
	height: 34px;
}
.qr-code-link:hover {
	background-color: var(--primary-green);
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.qr-code-link svg path {
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.qr-code-link:hover svg path {
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	fill: #fff;
}

/* --- Desktop Scaling (Optional enhancement) --- */
@media (min-width: 768px) {
	body {
		min-height: 95vh;
	}
	.business-card {
		flex-direction: row;
		max-width: 900px;
		justify-content: space-between;
		padding: 0 15px;
	}
	.avatar-container {
		width: 340px;
	}
	.person-name {
		font-size: 30px;
		margin: 0 0 9px 0;
	}

	.social-icons {
		justify-content: flex-start;
	}


	.action-buttons {
		margin-top: 25px;
	}
	.add-to-contacts {
		flex-grow: unset;
	}
	.contact-link .contact-item {
		position: relative;
		line-height: 1;
	}
	.contact-link .contact-item::after {
		bottom: -2px;
		background-color: var(--text-dark);
		content: "";
		height: 0.0125rem;
		left: 0;
		position: absolute;
		right: 0;
		width: 0;
		transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	}
	.contact-link:hover .contact-item::after {
		width: 100%;
		transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	}
	.avatar-image {
		max-height:unset;
	}
	.profile-section {
		width:auto;
	}

}
@media (min-width: 1024px) {
	.contact-person_figcaption {
		min-width:400px;
	}
}