:root {
	--savis-color: #2955bb;
	--savis-color-dark: #1d3f8c;
	--savis-color-light: #6f91e5;
	--savis-bg: #121212;
	--savis-bg-deep: #000000;
	--savis-bg-card: #171717;
	--savis-text: #f1f1f1;
	--savis-muted: #a9a9ad;
	--savis-border: rgba(255, 255, 255, .1);
	--savis-shadow: 0 8px 30px rgba(0, 0, 0, .38);
	--savis-radius: 12px;
	--savis-transition: .35s cubic-bezier(.4, 0, .2, 1);
	--savis-rail: 64px;
}

@font-face {
	font-family: "Iran Sans";
	src: url("../uploads/2024/12/iranyekanwebregular.ttf") format("truetype");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Iran Sans";
	src: url("../uploads/2024/12/iranyekanwebmedium.ttf") format("truetype");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "Iran Sans";
	src: url("../uploads/2024/12/iranyekanwebbold.ttf") format("truetype");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

@font-face {
	font-family: "Iran Sans";
	src: url("../uploads/2024/12/iranyekanwebextrabold.ttf") format("truetype");
	font-style: normal;
	font-weight: 800;
	font-display: swap;
}

@font-face {
	font-family: "Iran Sans";
	src: url("../uploads/2024/12/iranyekanwebblack.ttf") format("truetype");
	font-style: normal;
	font-weight: 900;
	font-display: swap;
}

html {
	scroll-behavior: smooth;
	background: var(--savis-bg);
}

body.savis-local-page {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	background: var(--savis-bg);
	color: var(--savis-text);
	font-family: "Iran Sans", "IRSans", Tahoma, sans-serif;
	font-size: 15px;
	line-height: 1.9;
	-webkit-font-smoothing: antialiased;
}

body.savis-local-page *,
body.savis-local-page *::before,
body.savis-local-page *::after {
	box-sizing: border-box;
}

body.savis-local-page a {
	color: inherit;
	text-decoration: none;
	transition: color var(--savis-transition), background var(--savis-transition), transform var(--savis-transition), border-color var(--savis-transition), box-shadow var(--savis-transition);
}

body.savis-local-page button,
body.savis-local-page input,
body.savis-local-page textarea {
	font: inherit;
}

body.savis-local-page .elementor.elementor-4195 {
	width: calc(100% - var(--savis-rail));
	max-width: none;
	margin: 0 0 0 var(--savis-rail);
	padding: 0;
	overflow: clip;
}

body.savis-local-page .elementor.elementor-4195 > .ys-section {
	width: 100%;
	max-width: none;
	min-height: 100vh;
	margin: 0;
	padding: clamp(84px, 10vh, 132px) clamp(24px, 7vw, 120px);
	background: var(--savis-bg);
	scroll-margin-top: 0;
}

body.savis-local-page .elementor.elementor-4195 > .ys-section > .e-con-inner {
	width: min(1160px, 100%);
	max-width: 1160px;
	margin-inline: auto;
	padding: 0;
	gap: 22px;
}

body.savis-local-page #intro {
	min-height: 100vh;
	padding: 0;
}

body.savis-local-page #intro > .e-con-inner {
	width: 100%;
	max-width: none;
	min-height: 100vh;
}

body.savis-local-page #intro .ys-hero-section {
	width: 100%;
	max-width: none;
	min-height: 100vh;
	margin: 0;
	padding: clamp(110px, 13vh, 160px) clamp(34px, 8vw, 130px) clamp(70px, 9vh, 110px);
	justify-content: center;
	overflow: hidden;
	isolation: isolate;
}

body.savis-local-page #intro .ys-hero-section::before {
	background: rgba(8, 15, 24, .46) !important;
	opacity: 1 !important;
}

body.savis-local-page #intro .ys-hero-section::after {
	position: absolute;
	inset: 0;
	z-index: -1;
	content: "";
	background:
		radial-gradient(circle at 68% 45%, rgba(41, 85, 187, .15), transparent 30%),
		linear-gradient(90deg, rgba(8, 12, 20, .12), rgba(8, 12, 20, .48));
	pointer-events: none;
}

body.savis-local-page #intro .ys-hero-row {
	width: min(1160px, 100%);
	max-width: 1160px;
	margin-inline: auto;
	align-items: center;
	gap: clamp(26px, 5vw, 80px);
}

body.savis-local-page #intro .ys-hero-copy {
	width: 58% !important;
	max-width: 650px;
	padding: 0;
	gap: 18px;
	text-align: right;
}

body.savis-local-page #intro .ys-hero-art {
	width: 42% !important;
	min-height: 320px;
	padding: 0;
	position: relative;
	align-items: center;
	justify-content: center;
}

body.savis-local-page #intro .ys-hero-title h1 {
	max-width: 720px;
	margin: 0;
	color: #fff;
	font-size: clamp(2rem, 4.1vw, 4.35rem);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -.045em;
	text-shadow: 0 8px 28px rgba(0, 0, 0, .28);
}

body.savis-local-page .ys-kicker,
body.savis-local-page .savis-local-modal-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--savis-color-light);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .05em;
}

body.savis-local-page .ys-kicker::before,
body.savis-local-page .savis-local-modal-kicker::before {
	width: 28px;
	height: 2px;
	content: "";
	background: currentColor;
	border-radius: 10px;
}

body.savis-local-page .ys-hero-description p,
body.savis-local-page .ys-section-lead,
body.savis-local-page .ys-section-lead-widget p {
	max-width: 700px;
	margin: 0;
	color: rgba(233, 233, 233, .72);
	font-size: clamp(.95rem, 1.1vw, 1.12rem);
	line-height: 2.05;
}

body.savis-local-page .ys-hero-description p {
	color: rgba(255, 255, 255, .78);
}

body.savis-local-page .ys-hero-actions {
	width: auto !important;
	margin-top: 9px;
	gap: 12px;
}

body.savis-local-page .ys-hero-actions > .elementor-element {
	width: auto !important;
	flex: 0 0 auto !important;
}

body.savis-local-page .elementor-button {
	border: 1px solid transparent;
	border-radius: 5px;
	box-shadow: 0 10px 22px rgba(0, 0, 0, .12);
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.3;
	transition: transform var(--savis-transition), background var(--savis-transition), border-color var(--savis-transition), color var(--savis-transition), box-shadow var(--savis-transition);
}

body.savis-local-page .elementor-button:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, .22);
}

body.savis-local-page .ys-primary-button .elementor-button,
body.savis-local-page .savis-local-button-primary {
	background: var(--savis-color);
	color: #fff;
}

body.savis-local-page .ys-primary-button .elementor-button:hover,
body.savis-local-page .savis-local-button-primary:hover {
	background: var(--savis-color-dark);
}

body.savis-local-page .ys-outline-button .elementor-button {
	background: rgba(255, 255, 255, .03);
	border-color: rgba(255, 255, 255, .45);
	color: #fff;
}

body.savis-local-page .ys-outline-button .elementor-button:hover {
	border-color: var(--savis-color);
	color: var(--savis-color-light);
}

body.savis-local-page .ys-text-button .elementor-button {
	padding: 6px 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--savis-color);
	font-size: .83rem;
}

body.savis-local-page .ys-text-button .elementor-button:hover {
	color: var(--savis-color-light);
	transform: translateX(-4px);
}

body.savis-local-page .ys-hero-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 13px 28px;
	margin-top: 20px;
	color: rgba(255, 255, 255, .65);
	font-size: .82rem;
}

body.savis-local-page .ys-hero-stats span {
	display: inline-flex;
	align-items: baseline;
	gap: 7px;
}

body.savis-local-page .ys-hero-stats strong {
	color: var(--savis-color-light);
	font-size: 1.1rem;
}

body.savis-local-page .ys-hero-logo img {
	width: clamp(180px, 24vw, 330px);
	height: auto;
	max-height: 330px;
	object-fit: contain;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 20px;
	box-shadow: 0 30px 70px rgba(0, 0, 0, .48);
}

body.savis-local-page .ys-hero-orbit-widget {
	position: absolute;
	inset: 50% auto auto 50%;
	width: clamp(250px, 30vw, 410px);
	height: clamp(250px, 30vw, 410px);
	transform: translate(-50%, -50%);
	pointer-events: none;
}

body.savis-local-page .ys-hero-orbit {
	position: relative;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	animation: savis-orbit 18s linear infinite;
}

body.savis-local-page .ys-hero-orbit::before,
body.savis-local-page .ys-hero-orbit::after,
body.savis-local-page .ys-hero-orbit span {
	position: absolute;
	display: block;
	width: 8px;
	height: 8px;
	content: "";
	background: var(--savis-color);
	border-radius: 50%;
	box-shadow: 0 0 0 7px rgba(41, 85, 187, .13), 0 0 22px rgba(41, 85, 187, .8);
}

body.savis-local-page .ys-hero-orbit::before {
	top: 13%;
	left: 15%;
}

body.savis-local-page .ys-hero-orbit::after {
	right: 8%;
	bottom: 18%;
	background: var(--savis-color-light);
}

body.savis-local-page .ys-hero-orbit span:nth-child(1) {
	top: 47%;
	right: -4px;
}

body.savis-local-page .ys-hero-orbit span:nth-child(2) {
	bottom: 8%;
	left: 35%;
	background: #b6c8ff;
}

body.savis-local-page .ys-hero-orbit span:nth-child(3) {
	top: 23%;
	left: 51%;
	width: 5px;
	height: 5px;
	background: #fff;
}

@keyframes savis-orbit {
	to {
		transform: rotate(360deg);
	}
}

body.savis-local-page .ys-section-title {
	position: relative;
	width: 100%;
	margin-bottom: 2px;
	text-align: right;
}

body.savis-local-page .ys-section-title h2,
body.savis-local-page .ys-contact-title h2,
body.savis-local-page .ys-about-quote h2 {
	margin: 0;
	color: #fff;
	font-size: clamp(1.65rem, 2.8vw, 2.45rem);
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: -.035em;
}

body.savis-local-page .ys-section-title::after {
	display: block;
	width: 48px;
	height: 3px;
	margin-top: 12px;
	content: "";
	background: var(--savis-color);
	border-radius: 4px;
}

body.savis-local-page .ys-section-lead-widget {
	width: 100%;
	margin-bottom: 16px;
}

body.savis-local-page .ys-services-row,
body.savis-local-page .ys-projects-row,
body.savis-local-page .ys-prices-row {
	display: grid !important;
	width: 100%;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	align-items: stretch;
}

body.savis-local-page .ys-projects-row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.savis-local-page .ys-card,
body.savis-local-page .ys-price-card {
	width: auto !important;
	min-width: 0;
	min-height: 260px;
	margin: 0;
	background: var(--savis-bg-card) !important;
	border: 1px solid var(--savis-border) !important;
	border-radius: var(--savis-radius) !important;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .17);
	transition: border-color var(--savis-transition), transform var(--savis-transition), box-shadow var(--savis-transition);
}

body.savis-local-page .ys-card:hover,
body.savis-local-page .ys-price-card:hover {
	border-color: rgba(41, 85, 187, .32) !important;
	box-shadow: var(--savis-shadow);
	transform: translateY(-6px);
}

body.savis-local-page .ys-card .elementor-icon-box-wrapper {
	height: 100%;
}

body.savis-local-page .ys-card .elementor-icon-box-icon,
body.savis-local-page .ys-inline-icon-box .elementor-icon-box-icon {
	margin-bottom: 14px;
}

body.savis-local-page .ys-card .elementor-icon,
body.savis-local-page .ys-inline-icon-box .elementor-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var(--savis-color);
	background: rgba(41, 85, 187, .12);
	border-radius: 12px;
}

body.savis-local-page .ys-card .elementor-icon svg,
body.savis-local-page .ys-inline-icon-box .elementor-icon svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

body.savis-local-page .ys-card .elementor-icon-box-title,
body.savis-local-page .ys-inline-icon-box .elementor-icon-box-title {
	margin: 0 0 8px;
	color: #fff;
	font-size: 1.05rem;
	font-weight: 700;
}

body.savis-local-page .ys-card .elementor-icon-box-description,
body.savis-local-page .ys-inline-icon-box .elementor-icon-box-description {
	color: var(--savis-muted);
	font-size: .88rem;
	line-height: 1.9;
}

body.savis-local-page .ys-card .ys-text-button {
	margin-top: auto;
}

body.savis-local-page .ys-about-row,
body.savis-local-page .ys-contact-row {
	display: grid !important;
	width: 100%;
	grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
	gap: clamp(24px, 5vw, 72px);
	align-items: stretch;
}

body.savis-local-page .ys-about-aside,
body.savis-local-page .ys-about-copy,
body.savis-local-page .ys-contact-copy,
body.savis-local-page .ys-contact-form-wrap {
	width: auto !important;
	min-width: 0;
	padding: 0;
}

body.savis-local-page .ys-about-aside {
	min-height: 400px;
	padding: clamp(28px, 4vw, 48px) !important;
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .16), transparent 56%),
		#121212 !important;
	border: 1px solid rgba(41, 85, 187, .15);
	border-radius: 16px;
	box-shadow: var(--savis-shadow);
	justify-content: center;
}

body.savis-local-page .ys-about-quote h2 {
	font-size: clamp(1.45rem, 2.3vw, 2.1rem);
}

body.savis-local-page .ys-about-quote-text p,
body.savis-local-page .ys-about-text p,
body.savis-local-page .ys-contact-details-widget p {
	margin: 0;
	color: var(--savis-muted);
	line-height: 2.1;
}

body.savis-local-page .ys-inline-icon-box {
	width: 100%;
	padding: 13px 0;
	border-top: 1px solid rgba(255, 255, 255, .07);
}

body.savis-local-page .ys-inline-icon-box .elementor-icon-box-wrapper {
	display: grid;
	grid-template-columns: 44px 1fr;
	gap: 14px;
	align-items: start;
	text-align: right;
}

body.savis-local-page .ys-inline-icon-box .elementor-icon-box-icon {
	margin: 0;
}

body.savis-local-page .ys-inline-icon-box .elementor-icon-box-title {
	font-size: .95rem;
}

body.savis-local-page .ys-inline-icon-box .elementor-icon-box-description {
	font-size: .8rem;
}

body.savis-local-page .ys-progress-row {
	display: grid !important;
	width: 100%;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(28px, 6vw, 85px);
}

body.savis-local-page .ys-progress-col {
	width: auto !important;
	min-width: 0;
	padding: 0;
}

body.savis-local-page .ys-progress {
	position: relative;
	margin: 0 0 26px;
	padding-bottom: 12px;
	color: #fff;
	font-size: .88rem;
}

body.savis-local-page .ys-progress span {
	display: inline-block;
	color: rgba(255, 255, 255, .78);
}

body.savis-local-page .ys-progress b {
	float: left;
	color: var(--savis-color-light);
	font-size: .75rem;
	font-weight: 700;
}

body.savis-local-page .ys-progress i {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 4px;
	overflow: hidden;
	background: rgba(255, 255, 255, .08);
	border-radius: 10px;
}

body.savis-local-page .ys-progress i::after {
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: linear-gradient(90deg, var(--savis-color-dark), var(--savis-color-light));
	border-radius: inherit;
	box-shadow: 0 0 16px rgba(41, 85, 187, .4);
}

body.savis-local-page .ys-project-card {
	min-height: 300px;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(10, 14, 20, .08), rgba(10, 14, 20, .94)),
		var(--savis-local-background) center / cover no-repeat !important;
}

body.savis-local-page .ys-project-card:nth-child(2) {
	background-position: 68% center !important;
}

body.savis-local-page .ys-project-card:nth-child(3) {
	background-position: 30% center !important;
}

body.savis-local-page .ys-project-card .elementor-icon-box-description {
	color: rgba(255, 255, 255, .72);
}

body.savis-local-page .ys-price-card {
	min-height: 420px;
}

body.savis-local-page .ys-price-featured {
	background:
		linear-gradient(150deg, rgba(41, 85, 187, .96), rgba(16, 33, 80, .95)) !important;
	border-color: rgba(111, 145, 229, .38) !important;
}

body.savis-local-page .ys-price-featured *,
body.savis-local-page .ys-price-featured .elementor-icon-list-text {
	color: #fff !important;
}

body.savis-local-page .ys-price-title h3 {
	margin: 0;
	color: #fff;
	font-size: 1.08rem;
}

body.savis-local-page .ys-price-value {
	margin: 5px 0 12px;
}

body.savis-local-page .ys-price {
	display: flex;
	align-items: baseline;
	gap: 8px;
	color: var(--savis-color-light);
}

body.savis-local-page .ys-price strong {
	font-size: clamp(1.45rem, 2.3vw, 2rem);
}

body.savis-local-page .ys-price span {
	color: var(--savis-muted);
	font-size: .8rem;
}

body.savis-local-page .ys-price-features {
	flex: 1 1 auto;
}

body.savis-local-page .ys-price-features .elementor-icon-list-items {
	margin: 0;
	padding: 0;
}

body.savis-local-page .ys-price-features .elementor-icon-list-item {
	padding: 5px 0;
	color: var(--savis-muted);
	font-size: .78rem;
}

body.savis-local-page .ys-price-features .elementor-icon-list-icon {
	color: var(--savis-color);
}

body.savis-local-page .ys-price-button .elementor-button {
	width: 100%;
	justify-content: center;
	background: rgba(255, 255, 255, .06);
	border-color: rgba(255, 255, 255, .18);
	color: #fff;
}

body.savis-local-page .ys-price-featured .ys-price-button .elementor-button {
	background: #fff;
	border-color: #fff;
	color: #2955bb !important;
}

body.savis-local-page .ys-posts-widget {
	width: 100%;
}

body.savis-local-page .ys-posts-widget .elementor-posts-container {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

body.savis-local-page .ys-posts-widget .elementor-post {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: var(--savis-bg-card);
	border: 1px solid var(--savis-border);
	border-radius: var(--savis-radius);
	box-shadow: 0 5px 20px rgba(0, 0, 0, .17);
	transition: transform var(--savis-transition), border-color var(--savis-transition), box-shadow var(--savis-transition);
}

body.savis-local-page .ys-posts-widget .elementor-post:hover {
	border-color: rgba(41, 85, 187, .32);
	box-shadow: var(--savis-shadow);
	transform: translateY(-6px);
}

body.savis-local-page .ys-posts-widget .elementor-post__thumbnail {
	background: linear-gradient(140deg, rgba(41, 85, 187, .25), rgba(10, 16, 24, .8));
}

body.savis-local-page .ys-posts-widget .elementor-post__thumbnail img {
	height: 170px;
	object-fit: cover;
	opacity: .85;
}

body.savis-local-page .ys-posts-widget .elementor-post__text {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 18px;
}

body.savis-local-page .ys-posts-widget .elementor-post__title {
	margin: 0 0 8px;
	font-size: 1rem;
	line-height: 1.7;
}

body.savis-local-page .ys-posts-widget .elementor-post__title a {
	color: #fff;
}

body.savis-local-page .ys-posts-widget .elementor-post__excerpt {
	flex: 1 1 auto;
	color: var(--savis-muted);
	font-size: .8rem;
	line-height: 1.9;
}

body.savis-local-page .ys-posts-widget .elementor-post__read-more {
	margin-top: 12px;
	color: var(--savis-color);
	font-size: .78rem;
	font-weight: 700;
}

body.savis-local-page .ys-contact-row {
	grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
}

body.savis-local-page .ys-contact-title h2 {
	margin: 12px 0 18px;
}

body.savis-local-page .ys-contact-details {
	margin-top: 26px !important;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, .08);
	color: var(--savis-color-light) !important;
	line-height: 2.3 !important;
	direction: ltr;
	text-align: right;
}

body.savis-local-page .ys-contact-form-wrap {
	padding: clamp(24px, 4vw, 42px) !important;
	background: var(--savis-bg-card);
	border: 1px solid var(--savis-border);
	border-radius: 16px;
	box-shadow: var(--savis-shadow);
}

body.savis-local-page .ys-contact-form .elementor-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 13px 18px;
}

body.savis-local-page .ys-contact-form .elementor-field-group {
	margin: 0;
}

body.savis-local-page .ys-contact-form .elementor-field-group-message,
body.savis-local-page .ys-contact-form .elementor-field-type-submit {
	grid-column: 1 / -1;
}

body.savis-local-page .ys-contact-form .elementor-field-label {
	margin-bottom: 5px;
	color: rgba(255, 255, 255, .72);
	font-size: .75rem;
}

body.savis-local-page .ys-contact-form .elementor-field {
	min-height: 45px;
	padding: 9px 13px;
	color: #fff;
	background: rgba(255, 255, 255, .035);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 7px;
	outline: 0;
}

body.savis-local-page .ys-contact-form textarea.elementor-field {
	min-height: 125px;
	resize: vertical;
}

body.savis-local-page .ys-contact-form .elementor-field:focus {
	border-color: var(--savis-color);
	box-shadow: 0 0 0 3px rgba(41, 85, 187, .12);
}

body.savis-local-page .ys-contact-form input.elementor-field,
body.savis-local-page .ys-contact-form textarea.elementor-field,
body.savis-local-page .ys-contact-form select.elementor-field {
	color: #fff !important;
	background: #080808 !important;
	border-color: rgba(111, 145, 229, .34) !important;
	-webkit-text-fill-color: #fff !important;
	caret-color: #fff;
}

body.savis-local-page .ys-contact-form .elementor-field::placeholder {
	color: #aeb9d6 !important;
	opacity: 1 !important;
}

body.savis-local-page .ys-contact-form .elementor-button {
	width: 100%;
	min-height: 47px;
	background: var(--savis-color);
}

body.savis-local-page .ys-footer-section {
	min-height: auto !important;
	padding: 32px clamp(24px, 7vw, 120px) !important;
	background: #000 !important;
}

body.savis-local-page .ys-footer-row {
	display: flex !important;
	width: 100%;
	flex-wrap: wrap;
	gap: 18px 30px;
	align-items: center;
	justify-content: space-between;
}

body.savis-local-page .ys-footer-brand,
body.savis-local-page .ys-footer-copy {
	color: var(--savis-muted);
	font-size: .8rem;
}

body.savis-local-page .ys-footer-brand strong {
	color: #fff;
	font-size: 1rem;
}

body.savis-local-page .ys-footer-social .elementor-social-icons-wrapper {
	display: flex;
	gap: 8px;
}

body.savis-local-page .ys-footer-social .elementor-social-icon {
	width: 35px;
	height: 35px;
	color: #fff;
	background: rgba(255, 255, 255, .06);
	border-radius: 50%;
}

body.savis-local-page .ys-footer-social .elementor-social-icon:hover {
	background: var(--savis-color);
}

/* Fixed reference-style rail and utility controls. */
.savis-local-header {
	position: fixed;
	z-index: 10000;
	top: 0;
	bottom: 0;
	left: 0;
	display: flex;
	width: var(--savis-rail);
	flex-direction: column;
	background: var(--savis-bg-deep);
	border-right: 1px solid rgba(255, 255, 255, .06);
	text-align: center;
}

.savis-local-logo {
	display: flex;
	width: 100%;
	height: 68px;
	align-items: center;
	justify-content: center;
	background: var(--savis-color);
	overflow: hidden;
}

.savis-local-logo span {
	display: flex;
	width: 52px;
	height: 52px;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: #0b0b0b;
	border-radius: 50%;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
}

.savis-local-logo img {
	display: block;
	width: 50px;
	height: 50px;
	object-fit: cover;
}

.savis-local-nav {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 3px;
	padding: 17px 0;
	overflow-y: auto;
	scrollbar-width: none;
}

.savis-local-nav::-webkit-scrollbar {
	display: none;
}

.savis-local-nav a {
	position: relative;
	display: flex;
	width: 100%;
	min-height: 49px;
	align-items: center;
	justify-content: center;
	color: #9ea19e;
}

.savis-local-nav a:hover,
.savis-local-nav a.is-active {
	color: var(--savis-color);
}

.savis-local-nav a::after {
	position: absolute;
	top: 50%;
	right: -1px;
	width: 3px;
	height: 0;
	content: "";
	background: var(--savis-color);
	border-radius: 4px 0 0 4px;
	transform: translateY(-50%);
	transition: height var(--savis-transition);
}

.savis-local-nav a.is-active::after,
.savis-local-nav a:hover::after {
	height: 24px;
}

.savis-local-nav-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
}

.savis-inline-icon {
	display: block;
	width: 21px;
	height: 21px;
	fill: currentColor;
}

.savis-local-nav-label {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: calc(100% + 12px);
	padding: 4px 10px;
	color: #fff;
	background: #111;
	border-radius: 4px;
	font-size: .73rem;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transform: translate(-8px, -50%);
	transition: opacity var(--savis-transition), transform var(--savis-transition);
}

.savis-local-nav-label::before {
	position: absolute;
	top: 50%;
	left: -8px;
	content: "";
	border: 4px solid transparent;
	border-right-color: #111;
	transform: translateY(-50%);
}

.savis-local-nav a:hover .savis-local-nav-label {
	opacity: 1;
	transform: translate(0, -50%);
}

.savis-local-controls {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 0 0 16px;
}

.savis-local-controls button,
.savis-local-menu-toggle {
	display: inline-flex;
	width: 100%;
	height: 31px;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: #a9aaa7;
	background: transparent;
	border: 0;
	cursor: pointer;
	transition: color var(--savis-transition), background var(--savis-transition);
}

.savis-local-controls button:hover {
	color: var(--savis-color);
}

.savis-local-controls .savis-inline-icon {
	width: 18px;
	height: 18px;
}

/* Keep the utility icons visible even when the imported theme applies broad
 * SVG/button rules. The accessible labels remain on the controls themselves. */
.savis-local-controls button .savis-control-icon,
.savis-local-controls .savis-local-cart .savis-control-icon {
	display: inline-flex !important;
	width: 24px !important;
	height: 24px !important;
	align-items: center;
	justify-content: center;
	visibility: visible !important;
	opacity: 1 !important;
}

.savis-local-controls button .savis-control-icon .savis-inline-icon,
.savis-local-controls .savis-local-cart .savis-control-icon .savis-inline-icon {
	display: block !important;
	width: 21px !important;
	height: 21px !important;
	min-width: 21px !important;
	min-height: 21px !important;
	fill: currentColor !important;
	stroke: none !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.savis-local-menu-toggle {
	display: none;
}

.savis-local-preloader {
	position: fixed;
	z-index: 20000;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--savis-bg-deep);
	transition: opacity .6s ease, visibility .6s ease;
}

.savis-local-preloader.is-hidden {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}

.savis-local-preloader-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	color: #fff;
	text-align: center;
}

.savis-local-preloader-inner img {
	width: 58px;
	height: 58px;
	object-fit: cover;
	border-radius: 50%;
}

.savis-local-preloader-inner strong {
	font-size: 1rem;
}

.savis-local-preloader-inner span {
	color: #8f938d;
	font-size: .72rem;
}

.savis-local-preloader-inner i {
	display: block;
	width: 140px;
	height: 2px;
	margin-top: 13px;
	overflow: hidden;
	background: rgba(255, 255, 255, .08);
	border-radius: 3px;
}

.savis-local-preloader-inner i::after {
	display: block;
	width: 45%;
	height: 100%;
	content: "";
	background: var(--savis-color);
	border-radius: inherit;
	animation: savis-loader 1.2s ease-in-out infinite;
}

@keyframes savis-loader {
	0% {
		transform: translateX(-220%);
	}
	100% {
		transform: translateX(320%);
	}
}

.savis-local-modal {
	position: fixed;
	z-index: 15000;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(0, 0, 0, .68);
	backdrop-filter: blur(9px);
	opacity: 0;
	transition: opacity var(--savis-transition);
}

.savis-local-modal[hidden] {
	display: none;
}

.savis-local-modal.is-open {
	opacity: 1;
}

.savis-local-modal-dialog {
	position: relative;
	width: min(580px, 100%);
	padding: clamp(26px, 5vw, 44px);
	background: #1b1e1b;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 14px;
	box-shadow: 0 25px 80px rgba(0, 0, 0, .48);
	transform: translateY(16px) scale(.98);
	transition: transform var(--savis-transition);
}

.savis-local-modal.is-open .savis-local-modal-dialog {
	transform: translateY(0) scale(1);
}

.savis-local-modal-close {
	position: absolute;
	top: 16px;
	left: 16px;
	display: inline-flex;
	width: 32px;
	height: 32px;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: #a9aaa7;
	background: rgba(255, 255, 255, .05);
	border: 0;
	border-radius: 50%;
	cursor: pointer;
}

.savis-local-modal-close:hover {
	color: #fff;
	background: var(--savis-color);
}

.savis-local-modal-close .savis-inline-icon {
	width: 16px;
	height: 16px;
}

.savis-local-modal h2 {
	margin: 7px 0 23px;
	color: #fff;
	font-size: clamp(1.35rem, 3vw, 1.9rem);
	line-height: 1.45;
}

.savis-local-search-form {
	display: flex;
	gap: 10px;
	align-items: stretch;
}

.savis-local-search-form input {
	flex: 1 1 auto;
	min-height: 46px;
	padding: 8px 14px;
	color: #fff;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 6px;
	outline: 0;
	direction: rtl;
}

.savis-local-search-form input:focus {
	border-color: var(--savis-color);
	box-shadow: 0 0 0 3px rgba(41, 85, 187, .12);
}

.savis-local-search-form button {
	display: inline-flex;
	min-width: 105px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 0 14px;
	color: #fff;
	background: var(--savis-color);
	border: 0;
	border-radius: 6px;
	cursor: pointer;
}

.savis-local-search-form button:hover {
	background: var(--savis-color-dark);
}

.savis-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.savis-social-links a,
.savis-social-links button {
	display: inline-flex;
	width: 45px;
	height: 45px;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: #d5d7d4;
	background: rgba(255, 255, 255, .05);
	border: 0;
	border-radius: 50%;
	cursor: pointer;
}

.savis-social-links a:hover,
.savis-social-links button:hover {
	color: #fff;
	background: var(--savis-color);
	transform: translateY(-3px);
}

.savis-social-links .savis-inline-icon {
	width: 21px;
	height: 21px;
}

.savis-social-links .savis-social-copy-button {
	width: auto;
	min-width: 168px;
	height: auto;
	min-height: 45px;
	flex: 1 1 168px;
	gap: 8px;
	padding: 8px 13px;
	border: 1px solid rgba(111, 145, 229, .32);
	border-radius: 10px;
	background: rgba(41, 85, 187, .12);
}

.savis-social-button-icon {
	display: inline-flex;
	width: 22px;
	height: 22px;
	align-items: center;
	justify-content: center;
	flex: 0 0 22px;
}

.savis-social-button-icon .savis-inline-icon {
	width: 20px;
	height: 20px;
}

.savis-social-button-label {
	display: inline-block;
	color: inherit;
	font-size: .76rem;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
}

.savis-local-modal-note {
	margin: 20px 0 0;
	color: var(--savis-muted);
	font-size: .82rem;
}

.savis-login-tabs {
	display: flex;
	gap: 20px;
	margin-bottom: 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.savis-login-tabs button {
	padding: 0 0 8px;
	color: #898d88;
	background: transparent;
	border: 0;
	border-bottom: 2px solid transparent;
	cursor: pointer;
}

.savis-login-tabs button.is-active {
	color: var(--savis-color);
	border-bottom-color: var(--savis-color);
}

.savis-login-panel {
	display: none;
}

.savis-login-panel.is-active {
	display: block;
}

.savis-login-panel p {
	margin: 0 0 18px;
	color: var(--savis-muted);
	font-size: .86rem;
}

.savis-login-panel form {
	display: grid;
	gap: 12px;
}

.savis-login-panel form p {
	margin: 0;
}

.savis-login-panel form label {
	display: block;
	margin-bottom: 5px;
	color: rgba(255, 255, 255, .72);
	font-size: .74rem;
}

.savis-login-panel form input[type="text"],
.savis-login-panel form input[type="password"] {
	width: 100%;
	min-height: 43px;
	padding: 7px 12px;
	color: #fff;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 6px;
	outline: 0;
}

.savis-login-panel form input:focus {
	border-color: var(--savis-color);
}

.savis-login-panel form .login-remember {
	display: flex;
	align-items: center;
	gap: 7px;
}

.savis-login-panel form .login-remember label {
	margin: 0;
}

.savis-login-panel form input[type="checkbox"] {
	width: auto;
	min-height: auto;
}

.savis-login-panel form input[type="submit"] {
	min-height: 43px;
	padding: 8px 18px;
	color: #fff;
	background: var(--savis-color);
	border: 0;
	border-radius: 6px;
	cursor: pointer;
}

.savis-login-panel form input[type="submit"]:hover {
	background: var(--savis-color-dark);
}

.savis-login-lost {
	display: inline-block;
	margin-top: 14px;
	color: var(--savis-color) !important;
	font-size: .78rem;
}

.savis-local-button {
	display: inline-flex;
	min-height: 43px;
	align-items: center;
	justify-content: center;
	padding: 8px 18px;
	border-radius: 6px;
	font-size: .82rem;
	font-weight: 700;
}

.savis-local-toast {
	position: fixed;
	z-index: 18000;
	right: 50%;
	bottom: 28px;
	max-width: min(380px, calc(100% - 30px));
	padding: 10px 18px;
	color: #fff;
	background: #111;
	border: 1px solid rgba(41, 85, 187, .3);
	border-radius: 7px;
	box-shadow: var(--savis-shadow);
	font-size: .8rem;
	opacity: 0;
	pointer-events: none;
	transform: translate(50%, 15px);
	transition: opacity var(--savis-transition), transform var(--savis-transition);
}

.savis-local-toast.is-visible {
	opacity: 1;
	transform: translate(50%, 0);
}

body.savis-modal-open {
	overflow: hidden;
}

@media (max-width: 1080px) {
	:root {
		--savis-rail: 58px;
	}

	body.savis-local-page #intro .ys-hero-copy {
		width: 61% !important;
	}

	body.savis-local-page #intro .ys-hero-art {
		width: 39% !important;
	}

	body.savis-local-page .ys-services-row,
	body.savis-local-page .ys-prices-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.savis-local-page .ys-posts-widget .elementor-posts-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	:root {
		--savis-rail: 0px;
	}

	body.savis-local-page {
		font-size: 14px;
	}

	body.savis-local-page .elementor.elementor-4195 {
		width: 100%;
		margin: 0;
	}

	body.savis-local-page .elementor.elementor-4195 > .ys-section {
		min-height: auto;
		padding: 88px 18px 70px;
	}

	body.savis-local-page #intro,
	body.savis-local-page #intro > .e-con-inner,
	body.savis-local-page #intro .ys-hero-section {
		min-height: 100svh;
	}

	body.savis-local-page #intro .ys-hero-section {
		padding: 96px 20px 62px;
	}

	body.savis-local-page #intro .ys-hero-row {
		flex-direction: column-reverse !important;
		gap: 28px;
	}

	body.savis-local-page #intro .ys-hero-copy,
	body.savis-local-page #intro .ys-hero-art {
		width: 100% !important;
		max-width: none;
		text-align: center;
	}

	body.savis-local-page #intro .ys-hero-copy {
		align-items: center;
	}

	body.savis-local-page #intro .ys-hero-title h1 {
		font-size: clamp(1.8rem, 8vw, 2.7rem);
	}

	body.savis-local-page .ys-hero-description p {
		font-size: .9rem;
	}

	body.savis-local-page .ys-hero-stats {
		justify-content: center;
		gap: 8px 15px;
	}

	body.savis-local-page .ys-hero-logo img {
		width: min(220px, 55vw);
		max-height: 220px;
	}

	body.savis-local-page .ys-hero-orbit-widget {
		width: min(250px, 62vw);
		height: min(250px, 62vw);
	}

	body.savis-local-page .ys-services-row,
	body.savis-local-page .ys-projects-row,
	body.savis-local-page .ys-prices-row,
	body.savis-local-page .ys-about-row,
	body.savis-local-page .ys-progress-row,
	body.savis-local-page .ys-contact-row {
		grid-template-columns: 1fr;
	}

	body.savis-local-page .ys-project-card {
		min-height: 250px;
	}

	body.savis-local-page .ys-posts-widget .elementor-posts-container {
		grid-template-columns: 1fr;
	}

	body.savis-local-page .ys-contact-form .elementor-form {
		grid-template-columns: 1fr;
	}

	body.savis-local-page .ys-contact-form .elementor-field-group-message,
	body.savis-local-page .ys-contact-form .elementor-field-type-submit {
		grid-column: auto;
	}

	body.savis-local-page .ys-footer-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.savis-local-header {
		right: 0;
		bottom: auto;
		width: 100%;
		height: 62px;
		flex-direction: row;
		align-items: center;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .07);
	}

	.savis-local-logo {
		width: 70px;
		height: 62px;
		flex: 0 0 70px;
	}

	.savis-local-logo span {
		width: 44px;
		height: 44px;
	}

	.savis-local-logo img {
		width: 44px;
		height: 44px;
	}

	.savis-local-nav {
		position: absolute;
		z-index: -1;
		top: 62px;
		right: 0;
		left: 0;
		display: grid;
		height: auto;
		max-height: calc(100svh - 62px);
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0;
		padding: 13px;
		overflow-y: auto;
		background: rgba(24, 24, 24, .98);
		border-bottom: 1px solid rgba(255, 255, 255, .08);
		box-shadow: 0 18px 35px rgba(0, 0, 0, .3);
		opacity: 0;
		pointer-events: none;
		transform: translateY(-12px);
		transition: opacity var(--savis-transition), transform var(--savis-transition);
	}

	.savis-local-header.is-menu-open .savis-local-nav {
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	.savis-local-nav a {
		min-height: 55px;
		justify-content: flex-start;
		gap: 9px;
		padding: 6px 11px;
		border-bottom: 1px solid rgba(255, 255, 255, .04);
	}

	.savis-local-nav a::after {
		right: auto;
		left: 0;
	}

	.savis-local-nav-label {
		position: static;
		padding: 0;
		background: transparent;
		opacity: 1;
		transform: none;
	}

	.savis-local-nav-label::before {
		display: none;
	}

	.savis-local-controls {
		flex: 1 1 auto;
		flex-direction: row;
		justify-content: flex-end;
		gap: 2px;
		padding: 0 4px;
	}

	.savis-local-controls button {
		width: 38px;
		height: 42px;
	}

	.savis-local-controls button .savis-control-icon,
	.savis-local-controls .savis-local-cart .savis-control-icon {
		width: 24px !important;
		height: 24px !important;
	}

	.savis-local-menu-toggle {
		display: flex;
		width: 54px;
		height: 62px;
		flex: 0 0 54px;
		flex-direction: column;
		gap: 5px;
	}

	.savis-local-menu-toggle span {
		display: block;
		width: 22px;
		height: 2px;
		background: #a9aaa7;
		transition: transform var(--savis-transition), opacity var(--savis-transition);
	}

	.savis-local-header.is-menu-open .savis-local-menu-toggle span:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}

	.savis-local-header.is-menu-open .savis-local-menu-toggle span:nth-child(2) {
		opacity: 0;
	}

	.savis-local-header.is-menu-open .savis-local-menu-toggle span:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	body.savis-local-page *,
	body.savis-local-page *::before,
	body.savis-local-page *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}

/* Yaser Akramian brand overrides: strict RTL, right rail and the requested palette. */
html {
	background: #121212;
}

body.savis-local-page {
	direction: rtl;
	text-align: right;
	background: #121212;
}

body.savis-local-page .elementor.elementor-4195 {
	width: calc(100% - var(--savis-rail));
	margin: 0 var(--savis-rail) 0 0;
}

body.savis-local-page .elementor.elementor-4195 > .ys-section {
	direction: rtl;
}

body.savis-local-page #intro .ys-hero-row {
	direction: rtl;
}

body.savis-local-page #intro .ys-hero-copy {
	text-align: right;
}

body.savis-local-page .ys-brand-name {
	width: 100%;
	color: #fff;
	font-size: clamp(1.05rem, 1.8vw, 1.35rem);
	font-weight: 800;
	letter-spacing: -.02em;
}

body.savis-local-page .ys-brand-name span {
	display: inline-block;
	padding: 4px 13px;
	background: rgba(41, 85, 187, .18);
	border-right: 3px solid var(--savis-color);
	border-radius: 5px;
}

body.savis-local-page .elementor-widget-button,
body.savis-local-page .elementor-button-wrapper {
	text-align: center !important;
}

body.savis-local-page .ys-hero-actions {
	justify-content: center !important;
}

body.savis-local-page .ys-text-button .elementor-button-wrapper {
	text-align: center !important;
}

body.savis-local-page .elementor-button {
	background-color: var(--savis-color);
}

body.savis-local-page .ys-outline-button .elementor-button {
	background-color: rgba(0, 0, 0, .28);
	border-color: rgba(255, 255, 255, .42);
}

body.savis-local-page .ys-card:hover,
body.savis-local-page .ys-price-card:hover,
body.savis-local-page .ys-posts-widget .elementor-post:hover {
	border-color: rgba(41, 85, 187, .58) !important;
}

body.savis-local-page .ys-card .elementor-icon,
body.savis-local-page .ys-inline-icon-box .elementor-icon {
	background: rgba(41, 85, 187, .16);
}

body.savis-local-page .ys-about-aside {
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .28), transparent 56%),
		#121212 !important;
	border-color: rgba(41, 85, 187, .28);
}

body.savis-local-page .ys-price-featured {
	background:
		linear-gradient(150deg, rgba(41, 85, 187, .98), rgba(16, 33, 80, .98)) !important;
	border-color: rgba(111, 145, 229, .55) !important;
}

body.savis-local-page .ys-price-featured .ys-price-button .elementor-button {
	color: #2955bb !important;
}

body.savis-local-page .ys-posts-widget .elementor-post__thumbnail {
	background: linear-gradient(140deg, rgba(41, 85, 187, .38), rgba(0, 0, 0, .9));
}

body.savis-local-page .ys-contact-details a {
	color: var(--savis-color-light);
}

body.savis-local-page .ys-contact-details a:hover {
	color: #fff;
}

body.savis-local-page .ys-progress-widget .elementor-title {
	display: block;
	margin-bottom: 8px;
	color: rgba(255, 255, 255, .8);
	font-size: .88rem;
	font-weight: 500;
}

body.savis-local-page .ys-progress-widget .elementor-progress-wrapper {
	height: 5px;
	overflow: visible;
	background: rgba(255, 255, 255, .09);
	border-radius: 10px;
	direction: ltr;
}

body.savis-local-page .ys-progress-widget .elementor-progress-bar {
	position: relative;
	height: 100%;
	min-width: 2.4rem;
	background: linear-gradient(90deg, var(--savis-color-dark), var(--savis-color-light));
	border-radius: inherit;
}

body.savis-local-page .ys-progress-widget .elementor-progress-percentage {
	position: absolute;
	top: 50%;
	right: 8px;
	display: block;
	color: #fff;
	font-size: .7rem;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-50%);
}

body.savis-local-page .ys-progress-widget {
	margin-bottom: 25px;
}

.savis-local-header {
	right: 0 !important;
	left: auto !important;
	background: #000;
	border-right: 0;
	border-left: 1px solid rgba(255, 255, 255, .08);
	direction: rtl;
}

.savis-local-logo {
	background: var(--savis-color);
}

.savis-local-nav a::after {
	right: auto;
	left: -1px;
	border-radius: 0 4px 4px 0;
}

.savis-local-nav-label {
	right: calc(100% + 12px);
	left: auto;
	transform: translate(8px, -50%);
}

.savis-local-nav-label::before {
	right: -8px;
	left: auto;
	border-right-color: #111;
	border-left-color: transparent;
}

.savis-local-nav a:hover .savis-local-nav-label {
	transform: translate(0, -50%);
}

.savis-local-controls {
	direction: rtl;
}

.savis-local-cart {
	position: relative;
	display: inline-flex;
	width: 100%;
	height: 31px;
	align-items: center;
	justify-content: center;
	color: #a9a9ad;
}

.savis-local-cart:hover {
	color: var(--savis-color);
}

.savis-local-cart .savis-inline-icon {
	width: 18px;
	height: 18px;
}

.savis-local-cart-count {
	position: absolute;
	top: -2px;
	right: calc(50% - 18px);
	display: inline-flex;
	min-width: 16px;
	height: 16px;
	align-items: center;
	justify-content: center;
	padding: 0 4px;
	color: #fff;
	background: var(--savis-color);
	border-radius: 20px;
	font-size: .62rem;
	line-height: 1;
}

/* Give regular WordPress pages, posts, archives and WooCommerce screens the
 * same reading surface and right-side rail as the Elementor homepage. */
body.savis-local-page:not(.home) .site,
body.savis-local-page:not(.home) .site-content,
body.savis-local-page:not(.home) .site-main,
body.savis-local-page:not(.home) #primary,
body.savis-local-page:not(.home) #content {
	min-height: 100vh;
	background: #121212;
}

body.savis-local-page:not(.home) .site-main,
body.savis-local-page:not(.home) #primary,
body.savis-local-page:not(.home) #content {
	margin-right: var(--savis-rail);
}

body.savis-local-page:not(.home) .entry-header,
body.savis-local-page:not(.home) .entry-content,
body.savis-local-page:not(.home) .page-header,
body.savis-local-page:not(.home) .posts-navigation,
body.savis-local-page:not(.home) .woocommerce {
	width: min(980px, calc(100% - 48px));
	margin-right: auto;
	margin-left: auto;
	direction: rtl;
	text-align: right;
}

body.savis-local-page:not(.home) .entry-header {
	padding-top: 130px;
}

body.savis-local-page:not(.home) .entry-content,
body.savis-local-page:not(.home) .woocommerce {
	padding-top: 28px;
	padding-bottom: 90px;
	color: var(--savis-text);
}

body.savis-local-page:not(.home) .entry-title,
body.savis-local-page:not(.home) .page-title {
	color: #fff;
	font-size: clamp(1.8rem, 4vw, 3.3rem);
	line-height: 1.35;
}

body.savis-local-page:not(.home) .entry-content a,
body.savis-local-page:not(.home) .woocommerce a {
	color: var(--savis-color-light);
}

body.savis-local-page:not(.home) .entry-content img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

body.savis-local-page:not(.home) .entry-content blockquote {
	margin: 28px 0;
	padding: 12px 20px;
	border-right: 3px solid var(--savis-color);
	border-left: 0;
	background: rgba(41, 85, 187, .1);
}

/* The imported theme-builder header/footer are intentionally hidden on
 * branded pages so the shared local rail is the only site chrome. */
body.savis-local-page .elementor-location-header,
body.savis-local-page .elementor-location-footer {
	display: none !important;
}

@media (max-width: 767px) {
	body.savis-local-page .elementor.elementor-4195 {
		width: 100%;
		margin: 0;
	}

	body.savis-local-page .ys-brand-name {
		text-align: center;
	}

	.savis-local-header {
		right: 0 !important;
		left: 0 !important;
		border-left: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .08);
	}

	.savis-local-nav a::after {
		right: auto;
		left: 0;
	}

	.savis-local-controls {
		direction: ltr;
	}

	.savis-local-cart {
		width: 38px;
		height: 42px;
	}

	body.savis-local-page:not(.home) .site-main,
	body.savis-local-page:not(.home) #primary,
	body.savis-local-page:not(.home) #content {
		margin-right: 0;
	}

	body.savis-local-page:not(.home) .entry-header,
	body.savis-local-page:not(.home) .entry-content,
	body.savis-local-page:not(.home) .page-header,
	body.savis-local-page:not(.home) .posts-navigation,
	body.savis-local-page:not(.home) .woocommerce {
		width: min(100% - 36px, 680px);
	}

	body.savis-local-page:not(.home) .entry-header {
		padding-top: 96px;
	}
}

/* Shared homepage shell for archives and single articles. */
body.savis-local-article-template {
	background: var(--savis-bg) !important;
}

body.savis-local-article-template .savis-local-article-main {
	min-height: 100vh;
	background: var(--savis-bg);
}

body.savis-local-article-template .savis-local-article-main > .elementor.elementor-4195 {
	margin-right: var(--savis-rail);
	margin-left: 0;
}

.savis-article-detail {
	width: min(980px, calc(100% - 48px));
	margin: 0 auto;
	padding: clamp(34px, 6vw, 74px) clamp(22px, 5vw, 64px) 100px;
	direction: rtl;
	text-align: right;
	color: var(--savis-text);
}

.savis-article-detail-header {
	padding: clamp(26px, 4vw, 44px);
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .2), transparent 62%),
		var(--savis-bg-card);
	border: 1px solid var(--savis-border);
	border-radius: 16px 16px 0 0;
}

.savis-article-kicker {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--savis-color-light);
	font-size: .8rem;
	font-weight: 700;
}

.savis-article-kicker::before {
	width: 28px;
	height: 2px;
	content: "";
	background: currentColor;
	border-radius: 4px;
}

.savis-article-detail h1 {
	margin: 12px 0 16px;
	color: #fff;
	font-size: clamp(1.7rem, 4vw, 3rem);
	line-height: 1.45;
}

.savis-article-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	color: var(--savis-muted);
	font-size: .8rem;
}

.savis-article-detail-content {
	padding: clamp(26px, 4vw, 46px);
	background: #151515;
	border-right: 1px solid var(--savis-border);
	border-bottom: 1px solid var(--savis-border);
	border-left: 1px solid var(--savis-border);
	border-radius: 0 0 16px 16px;
	font-size: 1rem;
	line-height: 2.2;
}

.savis-article-detail-content > :first-child {
	margin-top: 0;
}

.savis-article-detail-content > :last-child {
	margin-bottom: 0;
}

.savis-article-detail-content h2,
.savis-article-detail-content h3 {
	margin: 30px 0 10px;
	color: #fff;
	line-height: 1.6;
}

.savis-article-detail-content p,
.savis-article-detail-content ul,
.savis-article-detail-content ol {
	color: #c6c6cb;
}

.savis-article-detail-content li + li {
	margin-top: 7px;
}

.savis-article-detail-content a {
	color: var(--savis-color-light);
	text-decoration: underline;
	text-decoration-color: rgba(111, 145, 229, .45);
	text-underline-offset: 3px;
}

/* Requested rule: every white-background CTA uses the brand blue for text. */
body.savis-local-page .ys-price-featured .elementor-button,
body.savis-local-page .woocommerce a.button,
body.savis-local-page .woocommerce button.button,
body.savis-local-page .woocommerce input.button,
body.savis-local-page .woocommerce .button {
	color: #2955bb !important;
}

body.savis-local-page .ys-price-featured .elementor-button:hover,
body.savis-local-page .woocommerce a.button:hover,
body.savis-local-page .woocommerce button.button:hover,
body.savis-local-page .woocommerce input.button:hover,
body.savis-local-page .woocommerce .button:hover {
	color: #1d3f8c !important;
}

/* Readability pass for the requested charcoal/blue/black palette. */
body.savis-local-page .elementor-widget-text-editor,
body.savis-local-page .elementor-icon-list-text,
body.savis-local-page .elementor-post__excerpt,
body.savis-local-page .elementor-post__meta-data {
	color: #c6c6cb;
}

body.savis-local-page .elementor-widget-text-editor a,
body.savis-local-page .elementor-icon-list-text a,
body.savis-local-page .elementor-post__read-more {
	color: var(--savis-color-light);
}

body.savis-local-page input::placeholder,
body.savis-local-page textarea::placeholder {
	color: #a9a9ad;
	opacity: 1;
}

body.savis-local-page a:focus-visible,
body.savis-local-page button:focus-visible,
body.savis-local-page input:focus-visible,
body.savis-local-page textarea:focus-visible,
body.savis-local-page select:focus-visible {
	outline: 3px solid var(--savis-color-light);
	outline-offset: 3px;
}

body.savis-local-page .woocommerce-message,
body.savis-local-page .woocommerce-info,
body.savis-local-page .woocommerce-error {
	margin-right: auto;
	margin-left: auto;
	width: min(980px, calc(100% - 48px));
	background: #1b1b1b;
	border-top-color: var(--savis-color);
	color: #f1f1f1;
}

body.savis-local-page .woocommerce-message a,
body.savis-local-page .woocommerce-info a,
body.savis-local-page .woocommerce-error a {
	color: var(--savis-color-light);
}

/* Dedicated article archive, based on the reference blog card surface. */
body.savis-local-blog-template {
	direction: rtl;
	background: #121212 !important;
}

body.savis-local-blog-template .savis-local-blog-main {
	min-height: 100vh;
	margin-right: var(--savis-rail);
	background: #121212;
}

.savis-blog-shell {
	min-height: 100vh;
	padding: clamp(104px, 10vh, 140px) clamp(24px, 6vw, 96px) 90px;
	background:
		radial-gradient(circle at 14% 12%, rgba(41, 85, 187, .16), transparent 28%),
		linear-gradient(135deg, #121212 0%, #151515 58%, #000 100%);
}

.savis-blog-content {
	width: min(1160px, 100%);
	margin: 0 auto;
}

.savis-blog-heading {
	margin: 0 0 34px;
	text-align: right;
}

.savis-blog-kicker {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--savis-color-light);
	font-size: .82rem;
	font-weight: 700;
}

.savis-blog-kicker::before {
	width: 30px;
	height: 2px;
	content: "";
	background: currentColor;
	border-radius: 8px;
}

.savis-blog-heading h1 {
	margin: 10px 0 8px;
	color: #fff;
	font-size: clamp(2rem, 4vw, 3.35rem);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -.04em;
}

.savis-blog-heading p {
	max-width: 720px;
	margin: 0;
	color: #c6c6cb;
	font-size: .95rem;
	line-height: 2;
}

.savis-blog-posts {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	align-items: stretch;
}

.savis-blog-post {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	background: #171717;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .2);
	transition: transform var(--savis-transition), border-color var(--savis-transition), box-shadow var(--savis-transition);
}

.savis-blog-post:hover {
	border-color: rgba(41, 85, 187, .68);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .34);
	transform: translateY(-6px);
}

.savis-blog-post-image,
.savis-blog-post-image > a {
	position: relative;
	display: block;
	height: 200px;
	overflow: hidden;
	background:
		linear-gradient(140deg, rgba(41, 85, 187, .4), rgba(0, 0, 0, .9)),
		var(--savis-local-background) center / cover no-repeat;
}

.savis-blog-post-image > a::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: "";
	background: linear-gradient(180deg, rgba(0, 0, 0, .02), rgba(0, 0, 0, .72));
	pointer-events: none;
}

.savis-blog-post-image img {
	display: block;
	width: 100%;
	height: 200px;
	object-fit: cover;
	opacity: .88;
	transition: transform .55s ease, opacity .55s ease;
}

.savis-blog-post:hover .savis-blog-post-image img {
	opacity: 1;
	transform: scale(1.06);
}

.savis-blog-post-info {
	position: absolute;
	z-index: 2;
	top: 14px;
	right: 14px;
	display: inline-flex;
	width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: var(--savis-color);
	border-radius: 50%;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .28);
}

.savis-blog-post-info .savis-inline-icon {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.savis-blog-post-date {
	position: absolute;
	z-index: 2;
	bottom: 13px;
	left: 14px;
	display: inline-flex;
	min-width: 52px;
	flex-direction: column;
	align-items: center;
	padding: 5px 9px 4px;
	color: #fff;
	background: rgba(0, 0, 0, .58);
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 7px;
	backdrop-filter: blur(7px);
	line-height: 1.25;
}

.savis-blog-post-date strong {
	font-size: 1.05rem;
	font-weight: 800;
}

.savis-blog-post-date span {
	max-width: 70px;
	overflow: hidden;
	color: #d9d9dc;
	font-size: .61rem;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.savis-blog-post-description {
	display: flex;
	min-height: 196px;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 17px 18px 18px;
	text-align: right;
}

.savis-blog-post-title {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.75;
}

.savis-blog-post-title a {
	color: #fff;
}

.savis-blog-post-title a:hover {
	color: var(--savis-color-light);
}

.savis-blog-post-excerpt {
	display: -webkit-box;
	flex: 1 1 auto;
	margin: 0;
	overflow: hidden;
	color: #c6c6cb;
	font-size: .79rem;
	line-height: 1.95;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.savis-blog-post-meta {
	margin: 0 0 7px;
	color: var(--savis-color-light);
	font-size: .68rem;
	line-height: 1.7;
}

.savis-article-author {
	color: var(--savis-color-light);
}

.savis-blog-post-readmore {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 15px;
	color: var(--savis-color-light);
	font-size: .78rem;
	font-weight: 700;
}

.savis-blog-post-readmore:hover {
	color: #fff;
	transform: translateX(-3px);
}

.savis-blog-empty {
	grid-column: 1 / -1;
	padding: 50px 28px;
	text-align: center;
	background: #171717;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 10px;
}

.savis-blog-empty h2 {
	margin: 0 0 8px;
	color: #fff;
	font-size: 1.25rem;
}

.savis-blog-empty p {
	margin: 0;
	color: #c6c6cb;
}

.savis-blog-pagination {
	display: flex;
	justify-content: center;
	margin-top: 36px;
	direction: rtl;
}

.savis-blog-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.savis-blog-pagination a,
.savis-blog-pagination span {
	display: inline-flex;
	min-width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0 11px;
	color: #fff;
	background: #171717;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 6px;
	font-size: .78rem;
}

.savis-blog-pagination a:hover,
.savis-blog-pagination .current {
	color: #2955bb;
	background: #fff;
	border-color: #fff;
}

.savis-article-detail-blog {
	width: min(980px, 100%);
	padding: 0 0 18px;
}

.savis-article-featured-image {
	overflow: hidden;
	background: #171717;
	border-right: 1px solid var(--savis-border);
	border-left: 1px solid var(--savis-border);
}

.savis-article-featured-image img {
	display: block;
	width: 100%;
	max-height: 430px;
	object-fit: cover;
}

@media (max-width: 1080px) {
	.savis-blog-posts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	body.savis-local-blog-template .savis-local-blog-main {
		margin-right: 0;
	}

	.savis-blog-shell {
		padding: 92px 18px 72px;
	}

	.savis-blog-heading {
		margin-bottom: 26px;
	}

	.savis-blog-heading h1 {
		font-size: clamp(1.9rem, 9vw, 2.65rem);
	}

	.savis-blog-heading p {
		font-size: .86rem;
	}

	.savis-blog-posts {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.savis-blog-post-image,
	.savis-blog-post-image > a,
	.savis-blog-post-image img {
		height: 190px;
	}

	.savis-blog-post-description {
		min-height: 172px;
	}

	.savis-article-detail-blog {
		width: 100%;
	}

	.savis-article-detail-blog .savis-article-detail-header {
		padding: 24px 20px;
	}

	.savis-article-detail-blog .savis-article-detail-content {
		padding: 24px 20px;
	}
}

/* Final utility-control pass: make the glyphs distinct from the black rail. */
.savis-local-controls button {
	color: #f1f1f1 !important;
}

.savis-local-controls button:hover {
	color: #6f91e5 !important;
	background: rgba(41, 85, 187, .16) !important;
	border-radius: 6px;
}

/* Same-page account form: registration and logout stay inside the site modal. */
body.savis-local-page .savis-auth-form {
	display: grid;
	gap: 12px;
}

body.savis-local-page .savis-auth-field {
	min-width: 0;
}

body.savis-local-page .savis-auth-field label {
	display: block;
	margin: 0 0 5px;
	color: rgba(255, 255, 255, .72);
	font-size: .74rem;
}

body.savis-local-page .savis-auth-form input[type="text"],
body.savis-local-page .savis-auth-form input[type="email"],
body.savis-local-page .savis-auth-form input[type="password"] {
	width: 100%;
	min-height: 43px;
	padding: 7px 12px;
	color: #fff;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 6px;
	outline: 0;
	direction: rtl;
}

body.savis-local-page .savis-auth-form input:focus {
	border-color: var(--savis-color);
	box-shadow: 0 0 0 3px rgba(41, 85, 187, .12);
}

body.savis-local-page .savis-auth-fields-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

body.savis-local-page .savis-auth-remember {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: rgba(255, 255, 255, .68);
	font-size: .75rem;
}

body.savis-local-page .savis-auth-remember input {
	width: auto;
	min-height: auto;
	accent-color: var(--savis-color);
}

body.savis-local-page .savis-auth-form button[type="submit"],
body.savis-local-page .savis-logout-button {
	width: 100%;
	border: 0;
	cursor: pointer;
}

body.savis-local-page .savis-auth-form button[disabled],
body.savis-local-page .savis-logout-button[disabled] {
	cursor: wait;
	opacity: .65;
}

body.savis-local-page .savis-auth-status {
	min-height: 1.55em;
	margin: 0 !important;
	color: var(--savis-muted);
	font-size: .75rem;
	line-height: 1.8;
}

body.savis-local-page .savis-auth-status.is-error {
	color: #ff9e9e;
}

body.savis-local-page .savis-auth-status.is-success {
	color: #9de2b0;
}

body.savis-local-page .savis-account-summary {
	display: grid;
	gap: 11px;
	padding: 20px;
	background: rgba(41, 85, 187, .12);
	border: 1px solid rgba(111, 145, 229, .24);
	border-radius: 9px;
}

body.savis-local-page .savis-account-summary strong {
	color: #fff;
	font-size: .94rem;
}

body.savis-local-page .savis-account-summary p {
	margin: 0 !important;
}

/* White CTAs retain their white surface while their label stays brand blue. */
body.savis-local-page .savis-white-button,
body.savis-local-page .savis-white-button:hover,
body.savis-local-page .ys-price-featured .ys-price-button .elementor-button,
body.savis-local-page .ys-price-featured .ys-price-button .elementor-button:hover {
	background-color: #fff !important;
	border-color: #fff !important;
	color: #2955bb !important;
	fill: #2955bb !important;
}

body.savis-local-page .savis-white-button *,
body.savis-local-page .ys-price-featured .ys-price-button .elementor-button * {
	color: #2955bb !important;
	fill: #2955bb !important;
}

/* Desktop homepage: one active card at a time, matching the reference shell. */
@media (min-width: 768px) {
	body.home.savis-local-page.savis-cards-ready {
		overflow: hidden;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 {
		position: relative;
		height: 100vh;
		min-height: 100vh;
		overflow: hidden;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section {
		position: absolute !important;
		z-index: 0;
		inset: 0;
		display: flex !important;
		width: 100%;
		height: 100%;
		min-height: 100vh !important;
		margin: 0;
		padding: 0 !important;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transform: translateX(42px);
		transition: opacity .48s ease, transform .48s ease, visibility .48s ease;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section.is-active {
		z-index: 2;
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > #intro,
	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > #intro > .e-con-inner {
		width: 100%;
		min-height: 100vh;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > #intro > .e-con-inner {
		display: flex !important;
		height: 100%;
		max-height: none;
		overflow: visible;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) {
		background: #121212 !important;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner {
		position: relative;
		display: block !important;
		width: 100%;
		max-width: none;
		height: 100%;
		max-height: 100vh;
		margin: 0;
		padding: clamp(48px, 8vh, 105px) 0 !important;
		overflow-y: auto;
		overflow-x: hidden;
		scrollbar-color: #2955bb #171717;
		scrollbar-width: thin;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner::before {
		position: absolute;
		z-index: 0;
		top: 0;
		bottom: 0;
		left: 0;
		width: 42%;
		content: "";
		background:
			linear-gradient(145deg, rgba(0, 0, 0, .1), rgba(0, 0, 0, .86)),
			var(--savis-local-background) center / cover no-repeat;
		border-right: 1px solid rgba(41, 85, 187, .3);
		pointer-events: none;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner > * {
		position: relative;
		z-index: 1;
		width: 58% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 42% !important;
		padding-right: clamp(28px, 5vw, 86px);
		padding-left: clamp(28px, 5vw, 86px);
		direction: rtl;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner > .ys-section-title {
		padding-top: 3px;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner > .ys-section-lead-widget {
		margin-top: -3px;
		margin-bottom: 20px;
	}

	body.home.savis-local-page.savis-cards-ready .ys-services-row,
	body.home.savis-local-page.savis-cards-ready .ys-projects-row,
	body.home.savis-local-page.savis-cards-ready .ys-prices-row,
	body.home.savis-local-page.savis-cards-ready .ys-progress-row,
	body.home.savis-local-page.savis-cards-ready .ys-posts-widget .elementor-posts-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.home.savis-local-page.savis-cards-ready .ys-about-row,
	body.home.savis-local-page.savis-cards-ready .ys-contact-row {
		grid-template-columns: 1fr;
	}

	body.home.savis-local-page.savis-cards-ready .ys-section:not(#intro) .ys-card,
	body.home.savis-local-page.savis-cards-ready .ys-section:not(#intro) .ys-price-card {
		min-height: 0;
	}

	body.home.savis-local-page.savis-cards-ready #services > .e-con-inner::before {
		background-position: 76% center;
	}

	body.home.savis-local-page.savis-cards-ready #about_us > .e-con-inner::before {
		background-position: 38% center;
	}

	body.home.savis-local-page.savis-cards-ready #experiences > .e-con-inner::before {
		background-position: 52% center;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner::before {
		background-position: 62% center;
	}

	body.home.savis-local-page.savis-cards-ready #prices > .e-con-inner::before {
		background-position: 30% center;
	}

	body.home.savis-local-page.savis-cards-ready #posts > .e-con-inner::before {
		background-position: 70% center;
	}

	body.home.savis-local-page.savis-cards-ready #contact > .e-con-inner::before {
		background-position: 44% center;
	}
}

@media (max-width: 767px) {
	body.savis-local-page .savis-auth-fields-row {
		grid-template-columns: 1fr;
	}

	body.savis-local-page #intro .ys-hero-copy {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 0 1 100% !important;
		align-items: center;
		text-align: center !important;
	}

	body.savis-local-page #intro .ys-hero-row,
	body.savis-local-page #intro .ys-hero-copy > *,
	body.savis-local-page #intro .ys-hero-title,
	body.savis-local-page #intro .ys-hero-title .elementor-widget-container,
	body.savis-local-page #intro .ys-hero-title h1 {
		width: 100%;
		max-width: 100%;
		min-width: 0 !important;
		text-align: center;
		white-space: normal;
		word-break: break-word;
		overflow-wrap: anywhere;
	}

	body.savis-local-page #intro .ys-hero-title h1 {
		font-size: clamp(1.2rem, 6vw, 1.75rem) !important;
		line-height: 1.38;
		letter-spacing: -.02em;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section {
		position: relative !important;
		inset: auto;
		display: block !important;
		width: 100%;
		height: auto;
		min-height: auto !important;
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: none;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner {
		display: flex !important;
		height: auto;
		max-height: none;
		overflow: visible;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner::before {
		display: none;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner > * {
		width: 100% !important;
		margin: 0 !important;
		padding-right: 0;
		padding-left: 0;
	}
}

@media (max-width: 767px) {
	body.savis-local-article-template .savis-local-article-main > .elementor.elementor-4195 {
		margin: 0;
	}

	.savis-article-detail {
		width: min(100% - 36px, 680px);
		padding: 36px 0 78px;
	}

	.savis-article-detail-header,
	.savis-article-detail-content {
		padding: 24px 20px;
	}

	body.savis-local-page .woocommerce-message,
	body.savis-local-page .woocommerce-info,
	body.savis-local-page .woocommerce-error {
		width: min(100% - 36px, 680px);
	}
}

/* Iran Sans pass: keep every readable surface in one consistent type system. */
body.savis-local-page,
body.savis-local-page h1,
body.savis-local-page h2,
body.savis-local-page h3,
body.savis-local-page h4,
body.savis-local-page h5,
body.savis-local-page h6,
body.savis-local-page p,
body.savis-local-page li,
body.savis-local-page a,
body.savis-local-page button,
body.savis-local-page input,
body.savis-local-page textarea,
body.savis-local-page select,
body.savis-local-page label,
body.savis-local-page .elementor-widget-container,
body.savis-local-page .woocommerce,
body.savis-local-page .woocommerce *,
body.savis-local-blog-template,
body.savis-local-blog-template h1,
body.savis-local-blog-template h2,
body.savis-local-blog-template h3,
body.savis-local-blog-template p,
body.savis-local-blog-template a,
body.savis-local-blog-template button {
	font-family: "Iran Sans", "IRSans", Tahoma, sans-serif !important;
}

/* Intro identity/rotator: a compact animated line inspired by the reference hero. */
@media (min-width: 768px) {
	body.savis-local-page #intro .ys-hero-section {
		padding-top: clamp(72px, 9vh, 112px);
		padding-bottom: clamp(48px, 7vh, 78px);
	}

	body.savis-local-page #intro .ys-hero-row {
		width: min(1220px, 100%);
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		gap: clamp(18px, 3vw, 42px);
	}

	body.savis-local-page #intro .ys-hero-copy {
		width: 56% !important;
		min-height: 0 !important;
		justify-content: flex-start !important;
		align-content: flex-start;
	}

	body.savis-local-page #intro .ys-hero-art {
		width: 44% !important;
	}

	body.savis-local-page #intro .ys-hero-actions,
	body.savis-local-page #intro .ys-hero-actions > .elementor-element {
		height: auto !important;
		min-height: 0 !important;
	}

	body.savis-local-page #intro .ys-hero-actions {
		flex-direction: row !important;
		align-items: center;
	}
}

body.savis-local-page #intro .ys-hero-identity {
	margin-bottom: -6px;
}

body.savis-local-page #intro .ys-hero-intro-line {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, .88);
	font-size: clamp(1rem, 1.5vw, 1.35rem);
	font-weight: 700;
}

body.savis-local-page #intro .ys-hero-intro-line::before {
	width: 9px;
	height: 9px;
	content: "";
	background: var(--savis-color);
	border-radius: 50%;
	box-shadow: 0 0 0 6px rgba(41, 85, 187, .18);
}

body.savis-local-page #intro .ys-hero-rotator {
	position: relative;
	min-height: 2.15em;
	margin-top: -6px;
	color: var(--savis-color-light);
	font-size: clamp(1.05rem, 1.9vw, 1.65rem);
	font-weight: 800;
	line-height: 1.45;
}

body.savis-local-page #intro .ys-hero-rotator span {
	position: absolute;
	inset: 0 auto auto 0;
	opacity: 0;
	transform: translateY(9px);
	transition: opacity .45s ease, transform .45s ease;
}

body.savis-local-page #intro .ys-hero-rotator span.is-active {
	opacity: 1;
	transform: translateY(0);
}

/* Personal profile and delivery experience are editable Elementor text widgets. */
body.savis-local-page .ys-about-profile,
body.savis-local-page .ys-experience-note {
	margin-top: 18px;
	padding: 20px 22px;
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .16), transparent 70%),
		#171717;
	border: 1px solid rgba(111, 145, 229, .24);
	border-radius: 12px;
}

body.savis-local-page .ys-about-profile h3,
body.savis-local-page .ys-experience-note h3 {
	margin: 6px 0 2px;
	color: #fff;
	font-size: 1.25rem;
	line-height: 1.55;
}

body.savis-local-page .ys-profile-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--savis-color-light);
	font-size: .76rem;
	font-weight: 800;
}

body.savis-local-page .ys-profile-kicker::before {
	width: 24px;
	height: 2px;
	content: "";
	background: currentColor;
	border-radius: 6px;
}

body.savis-local-page .ys-profile-role {
	margin: 0 0 12px !important;
	color: #fff !important;
	font-size: .88rem;
	font-weight: 700;
}

body.savis-local-page .ys-about-profile ul {
	display: grid;
	gap: 6px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

body.savis-local-page .ys-about-profile li {
	position: relative;
	padding-right: 20px;
	color: #c6c6cb;
	font-size: .84rem;
	line-height: 1.9;
}

body.savis-local-page .ys-about-profile li::before {
	position: absolute;
	top: .78em;
	right: 0;
	width: 7px;
	height: 7px;
	content: "";
	background: var(--savis-color);
	border-radius: 50%;
}

body.savis-local-page .ys-experience-note p {
	margin: 10px 0 14px !important;
	color: #c6c6cb !important;
	font-size: .86rem;
	line-height: 2;
}

body.savis-local-page .ys-experience-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

body.savis-local-page .ys-experience-tags span {
	display: inline-flex;
	padding: 4px 10px;
	color: #dce5ff;
	background: rgba(41, 85, 187, .18);
	border: 1px solid rgba(111, 145, 229, .3);
	border-radius: 999px;
	font-size: .73rem;
	font-weight: 700;
}

body.savis-local-page .ys-progress-widget .elementor-progress-percentage {
	white-space: nowrap;
}

/* WooCommerce shop/cart/checkout surfaces use the same card language. */
body.savis-local-page.woocommerce .site-main,
body.savis-local-page.woocommerce-page .site-main,
body.savis-local-page.woocommerce .page-content,
body.savis-local-page.woocommerce-page .page-content {
	background: #121212 !important;
}

body.savis-local-page.woocommerce-shop .site-main,
body.savis-local-page.post-type-archive-product .site-main {
	padding-top: 96px;
}

body.savis-local-page.woocommerce-shop .woocommerce,
body.savis-local-page.post-type-archive-product .woocommerce {
	width: min(1160px, calc(100% - 48px));
	padding-top: 26px;
}

body.savis-local-page.woocommerce-shop .elementor-3775 > section:nth-of-type(2) > .elementor-container,
body.savis-local-page.post-type-archive-product .elementor-3775 > section:nth-of-type(2) > .elementor-container {
	display: block;
}

body.savis-local-page.woocommerce-shop .elementor-3775 > section:nth-of-type(2) .elementor-element-5d84e21a,
body.savis-local-page.post-type-archive-product .elementor-3775 > section:nth-of-type(2) .elementor-element-5d84e21a {
	display: none !important;
}

body.savis-local-page.woocommerce-shop .elementor-3775 > section:nth-of-type(2) .elementor-element-650cec81,
body.savis-local-page.post-type-archive-product .elementor-3775 > section:nth-of-type(2) .elementor-element-650cec81 {
	width: 100% !important;
}

body.savis-local-page.woocommerce-shop .woocommerce::before,
body.savis-local-page.post-type-archive-product .woocommerce::before {
	display: block;
	margin-bottom: 20px;
	color: #fff;
	content: "فروشگاه خدمات یاسر اکرامیان";
	font-size: clamp(1.7rem, 3.5vw, 2.7rem);
	font-weight: 800;
	line-height: 1.45;
}

body.savis-local-page.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin: 0 !important;
	padding: 0 !important;
}

body.savis-local-page.woocommerce ul.products::before,
body.savis-local-page.woocommerce ul.products::after {
	display: none;
}

body.savis-local-page.woocommerce ul.products li.product {
	display: flex;
	width: auto !important;
	min-height: 100%;
	float: none !important;
	flex-direction: column;
	margin: 0 !important;
	padding: 18px;
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .13), transparent 65%),
		#171717;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 14px;
}

body.savis-local-page.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: block;
}

body.savis-local-page.woocommerce ul.products li.product img {
	width: 100%;
	height: 170px;
	margin: 0 0 16px !important;
	object-fit: cover;
	border-radius: 9px;
	opacity: .82;
}

body.savis-local-page.woocommerce ul.products li.product .woocommerce-loop-product__title {
	min-height: 3.1em;
	padding: 0 !important;
	color: #fff;
	font-size: 1.08rem;
	font-weight: 800;
	line-height: 1.65;
}

body.savis-local-page.woocommerce ul.products li.product .price {
	margin: 8px 0 14px !important;
	color: var(--savis-color-light) !important;
	font-size: 1rem;
	font-weight: 800;
}

body.savis-local-page.woocommerce ul.products li.product .button {
	align-self: flex-start;
	margin-top: auto !important;
	color: #fff !important;
	background: var(--savis-color) !important;
	border: 1px solid var(--savis-color) !important;
}

body.savis-local-page.woocommerce ul.products li.product .button:hover {
	color: #fff !important;
	background: var(--savis-color-dark) !important;
}

body.savis-local-page.woocommerce div.product,
body.savis-local-page.woocommerce-cart .woocommerce,
body.savis-local-page.woocommerce-checkout .woocommerce {
	width: min(980px, calc(100% - 48px));
	margin: 0 auto;
	padding: 112px 28px 90px;
	background: #171717;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 14px;
}

body.savis-local-page.woocommerce div.product .product_title {
	color: #fff;
	font-size: clamp(1.6rem, 3.5vw, 2.6rem);
	line-height: 1.5;
}

body.savis-local-page.woocommerce div.product .price,
body.savis-local-page.woocommerce div.product p.price {
	color: var(--savis-color-light) !important;
	font-weight: 800;
}

body.savis-local-page.woocommerce form .form-row input.input-text,
body.savis-local-page.woocommerce form .form-row textarea,
body.savis-local-page.woocommerce form .form-row select,
body.savis-local-page.woocommerce table.shop_table,
body.savis-local-page.woocommerce table.shop_table td,
body.savis-local-page.woocommerce table.shop_table th {
	color: #f1f1f1;
	background: #121212;
	border-color: rgba(255, 255, 255, .12);
}

body.savis-local-page.woocommerce table.shop_table {
	border-radius: 10px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

/* Card mode is navigation-only on every viewport: the active card may scroll
 * internally, but the page wheel/touch gesture never advances to another card. */
@media (max-width: 767px) {
	body.home.savis-local-page.savis-cards-ready {
		height: 100vh;
		overflow: hidden;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 {
		position: relative;
		height: 100vh;
		min-height: 100vh;
		overflow: hidden;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section {
		position: absolute !important;
		z-index: 0;
		inset: 0;
		display: flex !important;
		width: 100%;
		height: 100vh;
		min-height: 100vh !important;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transform: translateY(18px);
		transition: opacity .4s ease, transform .4s ease, visibility .4s ease;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section.is-active {
		z-index: 2;
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner {
		display: block !important;
		width: 100%;
		height: 100%;
		max-height: 100vh;
		margin: 0;
		padding: 86px 18px 30px !important;
		overflow-y: auto;
		overflow-x: hidden;
		scrollbar-color: #2955bb #171717;
		scrollbar-width: thin;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner::before {
		display: none;
	}

	body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner > * {
		width: 100% !important;
		max-width: none !important;
		margin: 0 0 18px !important;
		padding-right: 0;
		padding-left: 0;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section {
		min-height: 100vh;
		padding: 88px 20px 26px !important;
		overflow-y: auto;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-row {
		display: flex !important;
		width: 100%;
		min-height: calc(100vh - 114px);
		flex-direction: column !important;
		justify-content: center;
		gap: 12px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-copy {
		order: 1;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-art {
		order: 2;
		width: 100% !important;
		min-height: 140px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit-widget {
		transform: scale(.72);
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-logo img {
		max-width: 118px;
	}

	body.savis-local-page.woocommerce-shop .woocommerce,
	body.savis-local-page.post-type-archive-product .woocommerce,
	body.savis-local-page.woocommerce div.product,
	body.savis-local-page.woocommerce-cart .woocommerce,
	body.savis-local-page.woocommerce-checkout .woocommerce {
		width: min(100% - 36px, 680px);
		padding-right: 18px;
		padding-left: 18px;
	}

	body.savis-local-page.woocommerce ul.products {
		grid-template-columns: 1fr;
	}
}

/* Keep the store heading readable even when the original archive template
 * supplies an encoded title through its own CSS. */
body.savis-local-page.woocommerce-shop .woocommerce::before,
body.savis-local-page.post-type-archive-product .woocommerce::before {
	content: "فروشگاه خدمات یاسر اکرامیان";
}

/* Collaboration plans: one calm default surface, with the hovered plan
 * becoming the visual focus. The featured class remains editable in
 * Elementor, but no longer creates a permanently different card. */
body.savis-local-page .ys-price-card,
body.savis-local-page .ys-price-featured {
	background:
		linear-gradient(135deg, rgba(41, 85, 187, .10), transparent 68%),
		#171717 !important;
	border-color: rgba(255, 255, 255, .12) !important;
	color: #fff;
}

body.savis-local-page .ys-price-card *,
body.savis-local-page .ys-price-featured * {
	color: inherit;
}

body.savis-local-page .ys-price-card .ys-price-title h3,
body.savis-local-page .ys-price-card .elementor-icon-list-text,
body.savis-local-page .ys-price-featured .ys-price-title h3,
body.savis-local-page .ys-price-featured .elementor-icon-list-text {
	color: #fff !important;
}

body.savis-local-page .ys-price-card .ys-price,
body.savis-local-page .ys-price-featured .ys-price {
	color: var(--savis-color-light) !important;
}

body.savis-local-page .ys-price-card .ys-price span,
body.savis-local-page .ys-price-featured .ys-price span {
	color: var(--savis-muted) !important;
}

body.savis-local-page .ys-price-card .ys-price-button .elementor-button,
body.savis-local-page .ys-price-featured .ys-price-button .elementor-button {
	background: var(--savis-color) !important;
	border-color: var(--savis-color) !important;
	color: #fff !important;
}

body.savis-local-page .ys-price-card .ys-price-button .elementor-button *,
body.savis-local-page .ys-price-featured .ys-price-button .elementor-button * {
	color: #fff !important;
	fill: #fff !important;
}

body.savis-local-page .ys-price-card:hover,
body.savis-local-page .ys-price-featured:hover {
	background:
		linear-gradient(145deg, rgba(41, 85, 187, .96), rgba(16, 33, 80, .98)) !important;
	border-color: rgba(111, 145, 229, .62) !important;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .34), 0 0 0 1px rgba(111, 145, 229, .12);
	transform: translateY(-8px);
}

body.savis-local-page .ys-price-card:hover .elementor-icon-list-text,
body.savis-local-page .ys-price-card:hover .ys-price-title h3,
body.savis-local-page .ys-price-card:hover .ys-price,
body.savis-local-page .ys-price-card:hover .ys-price span,
body.savis-local-page .ys-price-featured:hover .elementor-icon-list-text,
body.savis-local-page .ys-price-featured:hover .ys-price-title h3,
body.savis-local-page .ys-price-featured:hover .ys-price,
body.savis-local-page .ys-price-featured:hover .ys-price span {
	color: #fff !important;
}

body.savis-local-page .ys-price-card:hover .ys-price-button .elementor-button,
body.savis-local-page .ys-price-featured:hover .ys-price-button .elementor-button {
	background: #fff !important;
	border-color: #fff !important;
	color: #2955bb !important;
}

body.savis-local-page .ys-price-card:hover .ys-price-button .elementor-button *,
body.savis-local-page .ys-price-featured:hover .ys-price-button .elementor-button * {
	color: #2955bb !important;
	fill: #2955bb !important;
}

/* Final mobile hero pass: keep the Intro readable at phone widths while
 * retaining the supplied artwork as a quiet visual layer. */
@media (max-width: 767px) {
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section {
		padding: 82px 16px 20px !important;
		justify-content: flex-start;
		overflow-x: hidden !important;
		overflow-y: auto;
		background-position: 72% center !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section::before {
		background: rgba(8, 15, 24, .74) !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section::after {
		background:
			linear-gradient(180deg, rgba(8, 12, 20, .36), rgba(8, 12, 20, .88)),
			radial-gradient(circle at 50% 38%, rgba(41, 85, 187, .16), transparent 54%) !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-row {
		width: 100% !important;
		max-width: none !important;
		min-height: calc(100vh - 102px);
		margin: 0 !important;
		padding: 0 !important;
		flex-direction: column !important;
		justify-content: flex-start;
		align-items: stretch;
		gap: 8px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-copy {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		padding: 0 !important;
		gap: 9px;
		align-items: center;
		text-align: center !important;
		z-index: 3;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-copy > .elementor-element,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-title,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-title .elementor-widget-container,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-title h1,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-description,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-description .elementor-widget-container {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-intro-line,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-rotator,
	body.home.savis-local-page.savis-cards-ready #intro .ys-brand-name,
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-kicker {
		align-self: center;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-title h1 {
		font-size: clamp(1.3rem, 6.9vw, 1.8rem) !important;
		line-height: 1.55;
		letter-spacing: -.025em;
		overflow-wrap: normal;
		word-break: normal;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-description p {
		max-width: 350px;
		margin-inline: auto;
		font-size: .8rem;
		line-height: 2;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		margin-top: 4px;
		padding: 0 !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
		align-items: center;
		gap: 8px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions > .elementor-element {
		width: auto !important;
		max-width: 50%;
		min-width: 0 !important;
		flex: 0 1 auto !important;
		padding: 0 !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions .elementor-button {
		padding: 11px 13px !important;
		font-size: .76rem !important;
		white-space: nowrap;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-stats-widget {
		width: 100% !important;
		margin-top: 2px;
		padding: 0 !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-stats {
		justify-content: center;
		gap: 6px 13px;
		font-size: .72rem;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-art {
		position: relative;
		width: 100% !important;
		height: 116px !important;
		min-height: 116px !important;
		margin-top: -4px !important;
		padding: 0 !important;
		order: 2;
		z-index: 1;
		overflow: visible;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-logo img {
		width: 94px !important;
		max-width: 94px !important;
		max-height: 94px;
		border-radius: 14px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit-widget {
		width: 190px !important;
		height: 190px !important;
		inset: 50% auto auto 50%;
		transform: translate(-50%, -50%) scale(.72) !important;
	}
}

/* Latest content pass: the execution paths section uses the generated
 * editorial visual, while Intro stays deliberately minimal at every width. */
body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner::before {
	display: none !important;
	background: none !important;
	opacity: 0 !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section {
	background-image: var(--savis-local-background) !important;
	background-color: #121212 !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section::before {
	background: rgba(0, 0, 0, .58) !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section::after {
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .16), rgba(0, 0, 0, .52)),
		radial-gradient(circle at 35% 52%, rgba(41, 85, 187, .18), transparent 42%) !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-copy {
	width: min(690px, 100%) !important;
	max-width: 690px !important;
	gap: 16px;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-title h1 {
	font-size: clamp(2.1rem, 4.8vw, 4.7rem);
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-description p {
	max-width: 620px;
	font-size: clamp(1rem, 1.25vw, 1.22rem);
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-art {
	width: min(290px, 32%) !important;
	min-height: 240px;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-logo img {
	width: 178px !important;
	max-width: 178px !important;
	max-height: 178px;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions {
	justify-content: center !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions .elementor-button {
	min-width: 146px;
}

body.savis-local-page .ys-contact-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 20px;
	direction: rtl;
}

body.savis-local-page .ys-contact-social-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 11px;
	color: var(--savis-muted);
	background: rgba(41, 85, 187, .08);
	border: 1px solid rgba(41, 85, 187, .2);
	border-radius: 999px;
	font-size: .78rem;
}

body.savis-local-page .ys-contact-social-link:hover {
	color: #fff;
	background: var(--savis-color);
	border-color: var(--savis-color);
	transform: translateY(-2px);
}

body.savis-local-page .ys-contact-social-link svg {
	width: 17px;
	height: 17px;
	flex: 0 0 17px;
}

body.savis-local-page .ys-contact-details {
	direction: rtl;
}

@media (max-width: 767px) {
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-section {
		background-position: 64% center !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-copy {
		width: 100% !important;
		max-width: 100% !important;
		gap: 11px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-art {
		display: flex !important;
		position: absolute !important;
		left: 50% !important;
		right: auto !important;
		top: auto !important;
		bottom: 0 !important;
		width: 100% !important;
		min-height: 138px;
		height: 138px !important;
		margin: 0 !important;
		transform: translateX(-50%) !important;
		align-items: center !important;
		justify-content: center !important;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-logo img {
		width: 112px !important;
		max-width: 112px !important;
		max-height: 112px;
	}

	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-actions .elementor-button {
		min-width: 0;
		padding: 11px 14px !important;
	}
}

/* Final delivery pass: restore the small rotating orbit that frames the
 * supplied logo in the reference Intro. It stays decorative and does not
 * interfere with the two editable calls to action. */
body.home.savis-local-page.savis-cards-ready #intro .ys-hero-art {
	position: relative !important;
	overflow: visible !important;
	isolation: isolate;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit-widget {
	position: absolute !important;
	z-index: -1;
	top: 50% !important;
	left: 50% !important;
	right: auto !important;
	bottom: auto !important;
	display: block !important;
	width: clamp(250px, 30vw, 390px) !important;
	height: clamp(250px, 30vw, 390px) !important;
	margin: 0 !important;
	transform: translate(-50%, -50%) !important;
	pointer-events: none !important;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(111, 145, 229, .38);
	border-radius: 50%;
	animation: savis-orbit 19s linear infinite;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit::before,
body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit::after {
	position: absolute;
	display: block;
	width: 8px;
	height: 8px;
	content: "";
	background: var(--savis-color);
	border-radius: 50%;
	box-shadow: 0 0 0 7px rgba(41, 85, 187, .14), 0 0 22px rgba(41, 85, 187, .88);
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit::before {
	top: 12%;
	left: 16%;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit::after {
	right: 9%;
	bottom: 18%;
	background: var(--savis-color-light);
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit span {
	position: absolute;
	display: block;
	width: 7px;
	height: 7px;
	background: #b6c8ff;
	border-radius: 50%;
	box-shadow: 0 0 0 6px rgba(111, 145, 229, .13), 0 0 18px rgba(111, 145, 229, .72);
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit span:nth-child(1) {
	top: 46%;
	right: -3px;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit span:nth-child(2) {
	bottom: 8%;
	left: 35%;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit span:nth-child(3) {
	top: 23%;
	left: 51%;
	width: 5px;
	height: 5px;
	background: #fff;
}

body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit span:nth-child(4) {
	top: 72%;
	left: 8%;
	width: 4px;
	height: 4px;
	background: var(--savis-color-light);
}

body.savis-local-page .ys-price-value {
	display: none !important;
}

body.savis-local-blog-template .savis-blog-content {
	width: 100%;
	max-width: 1480px;
}

body.savis-local-blog-template .savis-blog-shell {
	padding-right: clamp(22px, 4vw, 76px);
	padding-left: clamp(22px, 4vw, 76px);
}

@media (max-width: 767px) {
	body.home.savis-local-page.savis-cards-ready #intro .ys-hero-orbit-widget {
		width: 196px !important;
		height: 196px !important;
		transform: translate(-50%, -50%) !important;
	}

	body.savis-local-blog-template .savis-blog-shell {
		padding-right: 18px;
		padding-left: 18px;
	}
}

/* Final visual system pass: page-specific editorial backdrops, readable
 * contact copy, consistent CTAs and the exact six-card pricing grid. */
body.home.savis-local-page.savis-cards-ready .elementor.elementor-4195 > .ys-section:not(#intro) > .e-con-inner::before {
	background-position: center !important;
	background-size: cover !important;
}

body.home.savis-local-page.savis-cards-ready #services > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .22), rgba(0, 0, 0, .88)),
		var(--savis-local-services-background) !important;
}

body.home.savis-local-page.savis-cards-ready #about_us > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .18), rgba(0, 0, 0, .9)),
		var(--savis-local-about-background) !important;
}

body.home.savis-local-page.savis-cards-ready #experiences > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .2), rgba(0, 0, 0, .9)),
		var(--savis-local-experience-background) !important;
}

body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .2), rgba(0, 0, 0, .84)),
		var(--savis-local-execution-background) !important;
}

body.home.savis-local-page.savis-cards-ready #prices > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .18), rgba(0, 0, 0, .9)),
		var(--savis-local-prices-background) !important;
}

body.home.savis-local-page.savis-cards-ready #posts > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .2), rgba(0, 0, 0, .9)),
		var(--savis-local-posts-background) !important;
}

body.home.savis-local-page.savis-cards-ready #contact > .e-con-inner::before {
	background-image:
		linear-gradient(145deg, rgba(5, 8, 15, .22), rgba(0, 0, 0, .9)),
		var(--savis-local-contact-background) !important;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card[class*="ys-execution-"] {
	position: relative;
	overflow: hidden;
	background-color: #121212 !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: cover !important;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card[class*="ys-execution-"]::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	content: "";
	background: linear-gradient(150deg, rgba(0, 0, 0, .16), rgba(0, 0, 0, .78));
	pointer-events: none;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card[class*="ys-execution-"] > * {
	position: relative;
	z-index: 1;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card.ys-execution-brand-card {
	background-image:
		linear-gradient(150deg, rgba(12, 18, 35, .22), rgba(0, 0, 0, .72)),
		var(--savis-local-execution-brand-background) !important;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card.ys-execution-warehouse-card {
	background-image:
		linear-gradient(150deg, rgba(12, 18, 35, .22), rgba(0, 0, 0, .72)),
		var(--savis-local-execution-warehouse-background) !important;
}

body.home.savis-local-page.savis-cards-ready .ys-project-card.ys-execution-kpi-card {
	background-image:
		linear-gradient(150deg, rgba(12, 18, 35, .22), rgba(0, 0, 0, .72)),
		var(--savis-local-execution-kpi-background) !important;
}

body.savis-local-page .elementor-button-wrapper,
body.savis-local-page .elementor-widget-button,
body.savis-local-page .savis-local-button {
	text-align: center !important;
}

body.savis-local-page .elementor-button,
body.savis-local-page .savis-local-button,
body.savis-local-page .ys-text-button,
body.savis-local-page .ys-outline-button,
body.savis-local-page .ys-primary-button,
body.savis-local-page button {
	text-align: center !important;
}

body.savis-local-page .elementor-button {
	align-items: center !important;
	justify-content: center !important;
}

body.savis-local-page .elementor-button-content-wrapper {
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
}

body.savis-local-page .savis-white-button,
body.savis-local-page .ys-price-featured .elementor-button,
body.savis-local-page .elementor-button[style*="#fff"],
body.savis-local-page .elementor-button[style*="#FFF"],
body.savis-local-page .elementor-button[style*="#ffffff"],
body.savis-local-page .elementor-button[style*="#FFFFFF"],
body.savis-local-page .elementor-button[style*="rgb(255"] {
	color: #2955bb !important;
}

body.savis-local-page .savis-white-button:hover,
body.savis-local-page .ys-price-featured .elementor-button:hover,
body.savis-local-page .elementor-button[style*="#fff"]:hover,
body.savis-local-page .elementor-button[style*="#FFF"]:hover,
body.savis-local-page .elementor-button[style*="#ffffff"]:hover,
body.savis-local-page .elementor-button[style*="#FFFFFF"]:hover,
body.savis-local-page .elementor-button[style*="rgb(255"]:hover {
	color: #1d3f8c !important;
}

body.savis-local-page .ys-contact-details-widget,
body.savis-local-page .ys-contact-details-widget p,
body.savis-local-page .ys-contact-details-widget span,
body.savis-local-page .ys-contact-details-widget li,
body.savis-local-page .ys-contact-details-widget strong,
body.savis-local-page .ys-contact-details-widget a {
	color: #f1f1f1 !important;
}

body.savis-local-page .ys-contact-details-widget a {
	color: #a8bfff !important;
}

body.savis-local-page .ys-contact-details-widget a:hover {
	color: #fff !important;
}

body.savis-local-page .ys-contact-social-link {
	color: #dce5ff !important;
	background: rgba(41, 85, 187, .22) !important;
	border-color: rgba(111, 145, 229, .45) !important;
}

body.savis-local-page .ys-contact-social-link:hover {
	color: #fff !important;
	background: #2955bb !important;
}

body.savis-local-page .ys-prices-row {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.savis-local-page .ys-prices-row > .ys-price-card,
body.savis-local-page .ys-prices-row > .elementor-element {
	width: auto !important;
	min-width: 0 !important;
}

body.savis-local-page .ys-price-card .elementor-button {
	display: inline-flex !important;
	width: 100%;
	min-height: 44px;
}

/* The blog heading is a real editorial banner, not a flat title strip. */
body.savis-local-blog-template .savis-blog-heading {
	position: relative;
	min-height: 258px;
	margin-bottom: 36px;
	padding: 34px clamp(24px, 5vw, 66px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	background:
		linear-gradient(100deg, rgba(0, 0, 0, .78), rgba(4, 10, 24, .32)),
		var(--savis-blog-header-image, var(--savis-local-blog-background)) center / cover no-repeat;
	border: 1px solid rgba(111, 145, 229, .28);
	border-radius: 18px;
	box-shadow: 0 20px 48px rgba(0, 0, 0, .3);
}

body.savis-local-blog-template .savis-blog-heading::before {
	position: absolute;
	top: 0;
	right: 0;
	width: 38%;
	height: 3px;
	content: "";
	background: linear-gradient(90deg, transparent, #6f91e5, #2955bb);
}

body.savis-local-blog-template .savis-blog-heading::after {
	position: absolute;
	right: 8%;
	bottom: -50px;
	width: 220px;
	height: 220px;
	content: "";
	border: 1px solid rgba(111, 145, 229, .22);
	border-radius: 50%;
	box-shadow: 0 0 0 18px rgba(41, 85, 187, .05), 0 0 0 36px rgba(41, 85, 187, .035);
	pointer-events: none;
}

body.savis-local-blog-template .savis-blog-heading > * {
	position: relative;
	z-index: 1;
}

body.savis-local-blog-template .savis-blog-heading h1 {
	margin-top: 12px;
}

body.savis-local-blog-template .savis-blog-post-readmore {
	width: 100%;
	justify-content: center;
	padding: 10px 14px;
	color: #dce5ff !important;
	background: rgba(41, 85, 187, .18);
	border: 1px solid rgba(111, 145, 229, .42);
	border-radius: 8px;
	text-align: center;
}

body.savis-local-blog-template .savis-blog-post-readmore:hover {
	color: #2955bb !important;
	background: #fff;
	border-color: #fff;
	transform: translateY(-2px);
}

body.savis-local-blog-template .savis-article-detail-header {
	position: relative;
	display: flex;
	min-height: 248px;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	background:
		linear-gradient(105deg, rgba(0, 0, 0, .8), rgba(9, 18, 42, .38)),
		var(--savis-article-header-image, var(--savis-local-blog-background)) center / cover no-repeat !important;
}

body.savis-local-blog-template .savis-article-detail-header::after {
	position: absolute;
	right: 7%;
	bottom: -78px;
	width: 240px;
	height: 240px;
	content: "";
	border: 1px solid rgba(111, 145, 229, .24);
	border-radius: 50%;
	box-shadow: 0 0 0 20px rgba(41, 85, 187, .05);
	pointer-events: none;
}

body.savis-local-blog-template .savis-article-detail-header > * {
	position: relative;
	z-index: 1;
}

/* Single articles keep a readable title block, but only the article lobby
 * receives the dedicated editorial header image. */
body.savis-local-blog-template .savis-article-detail-header {
	min-height: 0 !important;
	display: block !important;
	background: #171717 !important;
}

body.savis-local-blog-template .savis-article-detail-header::after {
	display: none !important;
}

body.savis-local-blog-template .savis-article-detail-header > * {
	position: static;
}

/* A single article starts with a clean title block; only the archive lobby
 * uses the dedicated editorial hero/header treatment. */
body.savis-local-blog-template .savis-article-detail-heading {
	padding: 0 0 24px !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.savis-local-blog-template .savis-article-detail-heading > * {
	position: static !important;
}

/* The desktop rail is deliberately collapsible and has a visible restore
 * affordance. The mobile menu keeps the same control but slides vertically. */
.savis-local-header {
	transition: transform var(--savis-transition);
}

.savis-local-rail-toggle,
.savis-local-rail-restore {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

.savis-local-rail-toggle .savis-control-icon,
.savis-local-rail-restore .savis-control-icon {
	display: inline-flex !important;
	width: 24px !important;
	height: 24px !important;
	align-items: center;
	justify-content: center;
}

.savis-local-rail-toggle .savis-inline-icon,
.savis-local-rail-restore .savis-inline-icon {
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	fill: currentColor !important;
}

.savis-local-rail-restore {
	position: fixed;
	z-index: 10001;
	top: 50%;
	right: 10px;
	width: 42px;
	height: 42px;
	padding: 0;
	color: #dce5ff;
	background: rgba(0, 0, 0, .88);
	border: 1px solid rgba(111, 145, 229, .55);
	border-radius: 10px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .35);
	cursor: pointer;
	transform: translateY(-50%);
}

.savis-local-rail-restore[hidden] {
	display: none !important;
}

.savis-local-rail-restore:hover {
	color: #fff;
	background: #2955bb;
}

body.savis-local-rail-collapsed .savis-local-header {
	transform: translateX(110%);
}

body.savis-local-rail-collapsed.savis-local-page .elementor.elementor-4195 {
	width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

body.savis-local-rail-collapsed.savis-local-blog-template .savis-local-blog-main,
body.savis-local-rail-collapsed.savis-local-page:not(.home) .site,
body.savis-local-rail-collapsed.savis-local-page:not(.home) .site-content,
body.savis-local-rail-collapsed.savis-local-page:not(.home) .site-main,
body.savis-local-rail-collapsed.savis-local-page:not(.home) #primary,
body.savis-local-rail-collapsed.savis-local-page:not(.home) #content {
	margin-right: 0 !important;
}

body.savis-local-page .ys-contact-form .elementor-field-label {
	color: #dce5ff !important;
}

body.savis-local-page .ys-contact-form .elementor-field,
body.savis-local-page .ys-contact-form .elementor-field-textual,
body.savis-local-page .ys-contact-form input.elementor-field-textual,
body.savis-local-page .ys-contact-form textarea.elementor-field-textual,
body.savis-local-page .ys-contact-form select.elementor-field-textual {
	color: #fff !important;
	background-color: #080808 !important;
	border-color: rgba(111, 145, 229, .48) !important;
	-webkit-text-fill-color: #fff !important;
}

body.savis-local-page .ys-contact-form .elementor-field:focus,
body.savis-local-page .ys-contact-form .elementor-field-textual:focus {
	color: #fff !important;
	background-color: #050505 !important;
	border-color: #2955bb !important;
	box-shadow: 0 0 0 3px rgba(41, 85, 187, .18) !important;
}

.savis-social-links .savis-social-copy-button {
	width: auto !important;
	min-width: 168px !important;
	min-height: 45px !important;
	padding: 9px 14px !important;
	gap: 9px !important;
	color: #dce5ff !important;
	background: rgba(41, 85, 187, .18) !important;
	border: 1px solid rgba(111, 145, 229, .52) !important;
	border-radius: 9px !important;
	text-align: center !important;
	cursor: pointer;
}

.savis-social-links .savis-social-copy-button:hover,
.savis-social-links .savis-social-copy-button:focus-visible {
	color: #2955bb !important;
	background: #fff !important;
	border-color: #fff !important;
	box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}

.savis-local-menu-toggle .savis-menu-toggle-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: currentColor;
	transition: transform var(--savis-transition), color var(--savis-transition);
}

.savis-local-menu-toggle .savis-menu-toggle-icon .savis-inline-icon {
	display: block !important;
	width: 22px;
	height: 22px;
	fill: currentColor !important;
}

/* The mobile menu control must never occupy desktop rail space. */
.savis-local-menu-toggle {
	display: none !important;
}

.savis-local-header.is-menu-open .savis-menu-toggle-icon {
	color: var(--savis-color-light);
	transform: rotate(90deg);
}

@media (max-width: 1080px) {
	body.savis-local-page .ys-prices-row {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.savis-local-page .ys-prices-row {
		grid-template-columns: 1fr !important;
	}

	.savis-local-menu-toggle {
		display: inline-flex !important;
		width: 54px !important;
		height: 62px !important;
		flex: 0 0 54px !important;
		flex-direction: column;
		gap: 5px;
	}

	body.savis-local-blog-template .savis-blog-heading {
		min-height: 220px;
		margin-bottom: 26px;
		padding: 28px 22px;
	}

	body.savis-local-blog-template .savis-blog-heading h1 {
		font-size: clamp(1.8rem, 9vw, 2.65rem);
	}

	body.savis-local-blog-template .savis-article-detail-header {
		min-height: 0 !important;
	}

	.savis-local-header {
		transition: transform var(--savis-transition);
	}

	body.savis-local-rail-collapsed .savis-local-header {
		transform: translateY(-110%);
	}

	.savis-local-rail-restore {
		top: 12px;
		right: 12px;
		transform: none;
	}
}

/* Projects alignment pass: keep the execution-paths panel in the same
 * two-column shell as the other homepage sections.  The editorial images
 * remain on the three cards, while the extra nested Elementor backdrop is
 * removed so it cannot create a second visual panel. */
@media (min-width: 768px) {
	body.home.savis-local-page.savis-cards-ready #projects {
		background: #121212 !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner {
		background: transparent !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner::before {
		display: block !important;
		opacity: 1 !important;
		background-image:
			linear-gradient(145deg, rgba(5, 8, 15, .22), rgba(0, 0, 0, .88)),
			var(--savis-local-execution-background) !important;
		background-position: center !important;
		background-size: cover !important;
		border-right: 1px solid rgba(41, 85, 187, .3) !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner > .ys-projects-row {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 18px !important;
		padding: 0 !important;
		background: transparent !important;
		background-image: none !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner > .ys-projects-row::before {
		display: none !important;
		background: none !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card[class*="ys-execution-"] {
		display: flex !important;
		min-height: 286px !important;
		height: 100% !important;
		padding: 28px 25px !important;
		border: 1px solid var(--savis-border) !important;
		border-radius: var(--savis-radius) !important;
		box-shadow: 0 5px 20px rgba(0, 0, 0, .17) !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card[class*="ys-execution-"]:hover {
		border-color: rgba(41, 85, 187, .58) !important;
		box-shadow: var(--savis-shadow) !important;
		transform: translateY(-6px);
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card .ys-card-icon-box {
		width: 100% !important;
		flex: 1 1 auto !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card .ys-card-icon-box .elementor-icon-box-wrapper {
		height: auto !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card .ys-text-button {
		width: 100% !important;
		margin-top: 20px !important;
	}
}

@media (max-width: 767px) {
	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner::before {
		display: none !important;
		background: none !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner > .ys-projects-row {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
		padding: 0 !important;
		background: transparent !important;
		background-image: none !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects > .e-con-inner > .ys-projects-row::before {
		display: none !important;
		background: none !important;
	}

	body.home.savis-local-page.savis-cards-ready #projects .ys-project-card[class*="ys-execution-"] {
		min-height: 250px !important;
	}
}
