/* Victor Service Pages 1.0 — isolated from Elementor/theme page rules. */
.victor-page-system,
.victor-page-system *,
#victor-cart-shipping-progress,
#victor-cart-shipping-progress * {
	box-sizing: border-box;
}

.victor-page-system {
	--vps-blue: #1762f2;
	--vps-ink: #111827;
	--vps-muted: #637089;
	--vps-line: #d8e0eb;
	--vps-soft: #f3f6fa;
	--vps-green: #0b9560;
	width: min(100% - 40px, 1180px) !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 34px 0 100px !important;
	direction: rtl !important;
	color: var(--vps-ink) !important;
	font-family: inherit !important;
	font-size: 16px !important;
	line-height: 1.8 !important;
}

.victor-page-system :where(h1, h2, h3, p, blockquote, dl, dd) {
	margin: 0 !important;
}

.victor-page-system :where(h1, h2, h3, strong, b, span, small, label, a) {
	font-family: inherit !important;
}

.victor-page-system :where(a) {
	text-decoration: none !important;
}

.victor-page-system :where(button, input, textarea, select) {
	font: inherit !important;
}

.vps-breadcrumb {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	min-height: 32px !important;
	margin: 0 4px 22px !important;
	color: var(--vps-muted) !important;
	font-size: 13px !important;
	white-space: nowrap !important;
	overflow-x: auto !important;
}

.vps-breadcrumb a { color: var(--vps-blue) !important; }

.vps-hero,
.vps-section {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(360px, .78fr) !important;
	gap: clamp(32px, 5vw, 76px) !important;
	align-items: center !important;
	margin: 0 0 28px !important;
	padding: clamp(34px, 5vw, 68px) !important;
	border: 1px solid rgba(17, 24, 39, .12) !important;
	border-radius: 30px !important;
	background: rgba(255, 255, 255, .92) !important;
	box-shadow: 0 18px 55px rgba(29, 50, 91, .07) !important;
}

.vps-eyebrow {
	display: block !important;
	margin: 0 0 12px !important;
	color: var(--vps-blue) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .08em !important;
	line-height: 1.4 !important;
}

.vps-hero__copy h1 {
	max-width: 720px !important;
	font-size: clamp(36px, 4.2vw, 58px) !important;
	font-weight: 900 !important;
	letter-spacing: -.055em !important;
	line-height: 1.12 !important;
}

.vps-hero__copy > p,
.vps-section__head > p {
	margin-top: 20px !important;
	color: var(--vps-muted) !important;
	font-size: clamp(15px, 1.6vw, 18px) !important;
	line-height: 2 !important;
}

.vps-hero__actions,
.vps-contact-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin-top: 28px !important;
}

.vps-button {
	display: inline-flex !important;
	min-height: 52px !important;
	padding: 10px 22px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 14px !important;
	border: 1px solid #ccdaef !important;
	border-radius: 16px !important;
	background: #fff !important;
	color: var(--vps-ink) !important;
	font-weight: 800 !important;
	cursor: pointer !important;
	transition: transform .2s ease, background-color .2s ease !important;
}

.vps-button:hover { transform: translateY(-1px) !important; }
.vps-button--primary { border-color: var(--vps-blue) !important; background: var(--vps-blue) !important; color: #fff !important; }
.vps-button--quiet { border-color: transparent !important; background: transparent !important; color: var(--vps-blue) !important; }

.vps-smart {
	display: grid !important;
	gap: 18px !important;
	min-width: 0 !important;
	padding: 26px !important;
	border: 1px solid #d4deec !important;
	border-radius: 24px !important;
	background: linear-gradient(145deg, rgba(247, 250, 255, .95), rgba(255, 255, 255, .72)) !important;
	box-shadow: inset 0 1px rgba(255, 255, 255, .85) !important;
	backdrop-filter: blur(16px) !important;
}

.vps-smart__head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
}

.vps-smart__head strong { display: block !important; font-size: 21px !important; line-height: 1.45 !important; }
.vps-live { display: inline-flex !important; align-items: center !important; gap: 8px !important; color: var(--vps-green) !important; font-size: 12px !important; white-space: nowrap !important; }
.vps-live::before { width: 8px !important; height: 8px !important; border-radius: 50% !important; background: #19b979 !important; content: "" !important; }

.vps-field { display: grid !important; gap: 8px !important; min-width: 0 !important; color: var(--vps-muted) !important; }
.vps-field > span { display: block !important; line-height: 1.5 !important; }
.vps-field input,
.vps-field textarea {
	width: 100% !important;
	min-width: 0 !important;
	min-height: 54px !important;
	margin: 0 !important;
	padding: 12px 16px !important;
	border: 1px solid #ced8e5 !important;
	border-radius: 14px !important;
	background: #fff !important;
	color: var(--vps-ink) !important;
	box-shadow: none !important;
	outline: 0 !important;
}
.vps-field textarea { min-height: 92px !important; resize: vertical !important; }
.vps-field input:focus,
.vps-field textarea:focus { border-color: var(--vps-blue) !important; box-shadow: 0 0 0 3px rgba(23, 98, 242, .12) !important; }
.vps-hint { color: var(--vps-muted) !important; font-size: 13px !important; line-height: 1.8 !important; }
.vps-phone { display: block !important; color: var(--vps-ink) !important; font-size: clamp(25px, 3.2vw, 38px) !important; font-weight: 900 !important; letter-spacing: .01em !important; text-align: center !important; }

.vps-form-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 14px !important; }
.vps-field--wide { grid-column: 1 / -1 !important; }
.vps-segments { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 6px !important; padding: 5px !important; border-radius: 13px !important; background: #e8edf5 !important; }
.vps-segments button { min-height: 42px !important; border: 0 !important; border-radius: 10px !important; background: transparent !important; color: var(--vps-muted) !important; cursor: pointer !important; }
.vps-segments button.is-active { background: #fff !important; color: var(--vps-ink) !important; box-shadow: 0 3px 12px rgba(17, 24, 39, .08) !important; }

.vps-result[hidden] { display: none !important; }
.vps-result { display: block !important; padding-top: 4px !important; }
.vps-result.is-error { padding: 12px 14px !important; border-radius: 12px !important; background: #fff1f2 !important; color: #a31d2d !important; }
.vps-result.is-success { padding: 12px 14px !important; border-radius: 12px !important; background: #ecfdf5 !important; color: #08714b !important; }

.vps-section { display: block !important; }
.vps-section__head { display: grid !important; grid-template-columns: 1fr minmax(260px, .65fr) !important; gap: 28px !important; align-items: end !important; margin-bottom: 34px !important; }
.vps-section__head h2 { font-size: clamp(27px, 3.2vw, 40px) !important; font-weight: 900 !important; letter-spacing: -.04em !important; line-height: 1.25 !important; }

.vps-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 14px !important; }
.vps-card,
.vps-branch {
	display: flex !important;
	min-width: 0 !important;
	min-height: 208px !important;
	padding: 24px !important;
	flex-direction: column !important;
	border: 1px solid var(--vps-line) !important;
	border-radius: 22px !important;
	background: #fff !important;
}
.vps-card > span { display: block !important; margin-bottom: auto !important; color: var(--vps-blue) !important; font-size: 12px !important; font-weight: 800 !important; }
.vps-card h3,
.vps-branch h3 { margin-top: 20px !important; font-size: 20px !important; font-weight: 850 !important; line-height: 1.5 !important; }
.vps-card p,
.vps-branch p,
.vps-branch address { display: block !important; margin-top: 8px !important; color: var(--vps-muted) !important; font-size: 14px !important; font-style: normal !important; line-height: 1.9 !important; }

.vps-contact-router__head { display: flex !important; align-items: end !important; justify-content: space-between !important; gap: 12px !important; padding-top: 4px !important; }
.vps-contact-router__head strong { display: block !important; font-size: 18px !important; line-height: 1.5 !important; }
.vps-contact-router__head span { display: block !important; color: var(--vps-muted) !important; font-size: 12px !important; line-height: 1.6 !important; }
.vps-contact-router { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
.vps-contact-route { display: flex !important; min-width: 0 !important; min-height: 174px !important; padding: 18px !important; flex-direction: column !important; border: 1px solid var(--vps-line) !important; border-radius: 18px !important; background: rgba(255, 255, 255, .9) !important; color: var(--vps-ink) !important; box-shadow: 0 8px 24px rgba(29, 50, 91, .035) !important; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important; }
.vps-contact-route:hover { border-color: #a8bfe8 !important; box-shadow: 0 12px 28px rgba(29, 50, 91, .08) !important; transform: translateY(-2px) !important; }
.vps-contact-route__meta { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 10px !important; }
.vps-contact-route__meta small { display: block !important; color: var(--vps-blue) !important; font-size: 11px !important; font-weight: 800 !important; line-height: 1.5 !important; }
.vps-contact-route__meta > span { display: inline-flex !important; width: 29px !important; height: 29px !important; align-items: center !important; justify-content: center !important; border: 1px solid #d6e0ef !important; border-radius: 9px !important; color: var(--vps-muted) !important; font-size: 10px !important; }
.vps-contact-route > strong { display: block !important; margin-top: 14px !important; font-size: 17px !important; line-height: 1.55 !important; }
.vps-contact-route > p { display: block !important; margin-top: 5px !important; color: var(--vps-muted) !important; font-size: 12px !important; line-height: 1.8 !important; }
.vps-contact-route__action { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 8px !important; margin-top: auto !important; padding-top: 13px !important; color: var(--vps-blue) !important; font-size: 12px !important; font-weight: 800 !important; }
.vps-contact-route--primary { border-color: #111827 !important; background: #111827 !important; color: #fff !important; box-shadow: 0 14px 30px rgba(17, 24, 39, .16) !important; }
.vps-contact-route--primary .vps-contact-route__meta small,
.vps-contact-route--primary > p { color: #b9c3d4 !important; }
.vps-contact-route--primary .vps-contact-route__meta > span { border-color: rgba(255, 255, 255, .24) !important; color: #fff !important; }
.vps-contact-route--primary .vps-contact-route__action { color: #fff !important; }
.vps-contact-route--care { border-color: #b9cff7 !important; background: linear-gradient(145deg, #f4f8ff, #fff) !important; }

.vps-facts { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; }
.vps-facts > div { padding: 14px !important; border-radius: 14px !important; background: #fff !important; }
.vps-facts dt { display: block !important; color: var(--vps-muted) !important; font-size: 12px !important; }
.vps-facts dd { display: block !important; margin-top: 6px !important; font-weight: 800 !important; }

.vps-story { display: grid !important; gap: 2px !important; }
.vps-story article { display: grid !important; grid-template-columns: 68px 1fr !important; gap: 6px 18px !important; padding: 18px 0 !important; border-bottom: 1px solid var(--vps-line) !important; }
.vps-story article > span { grid-row: 1 / span 2 !important; color: var(--vps-muted) !important; }
.vps-story h2 { font-size: 18px !important; line-height: 1.5 !important; }
.vps-story p { color: var(--vps-muted) !important; font-size: 13px !important; line-height: 1.8 !important; }

.vps-shipping-summary { display: grid !important; gap: 4px !important; padding: 16px !important; border-top: 1px solid var(--vps-line) !important; }
.vps-shipping-summary span,
.vps-shipping-summary p { display: block !important; color: var(--vps-muted) !important; font-size: 12px !important; line-height: 1.8 !important; }
.vps-shipping-summary strong { display: block !important; }

.vps-free-shipping {
	display: grid !important;
	gap: 12px !important;
	width: 100% !important;
	padding: 18px !important;
	border: 1px solid #b9cff7 !important;
	border-radius: 18px !important;
	background: linear-gradient(135deg, rgba(237, 244, 255, .96), rgba(255, 255, 255, .82)) !important;
}
.vps-free-shipping > div:first-child { display: grid !important; gap: 4px !important; }
.vps-free-shipping strong,
.vps-free-shipping span { display: block !important; line-height: 1.65 !important; }
.vps-free-shipping strong { color: #1550b8 !important; font-size: 15px !important; }
.vps-free-shipping span { color: var(--vps-muted, #637089) !important; font-size: 12px !important; }
.vps-free-shipping__track { direction: ltr !important; height: 6px !important; overflow: hidden !important; border-radius: 10px !important; background: #d9e4f7 !important; }
.vps-free-shipping__track i { display: block !important; width: var(--vps-progress) !important; height: 100% !important; border-radius: inherit !important; background: #1762f2 !important; transition: width .35s ease !important; }
.vps-free-shipping.is-complete strong { color: var(--vps-green, #0b9560) !important; }
#victor-cart-shipping-progress { width: 100% !important; margin: 0 0 16px !important; direction: rtl !important; }
.victor-checkout-cart__body > #victor-cart-shipping-progress,
.woocommerce-cart-form + #victor-cart-shipping-progress { max-width: 100% !important; }

.vps-tracking-card { display: grid !important; gap: 22px !important; padding: 24px !important; border-radius: 22px !important; background: #162035 !important; color: #fff !important; }
.vps-tracking-card__head { display: grid !important; gap: 5px !important; }
.vps-tracking-card__head span { display: block !important; color: #aab5c9 !important; font-size: 12px !important; }
.vps-tracking-card__head strong { display: block !important; font-size: 23px !important; line-height: 1.5 !important; }
.vps-tracking-code { display: grid !important; grid-template-columns: 1fr auto !important; gap: 6px 12px !important; padding: 15px !important; border-radius: 14px !important; background: #26324a !important; }
.vps-tracking-code > span { display: block !important; grid-column: 1 / -1 !important; color: #aab5c9 !important; font-size: 12px !important; }
.vps-tracking-code b { display: block !important; min-width: 0 !important; overflow-wrap: anywhere !important; line-height: 1.7 !important; }
.vps-tracking-code button { min-width: 64px !important; border: 0 !important; border-radius: 10px !important; background: #fff !important; color: #1550b8 !important; cursor: pointer !important; }
.vps-timeline { display: grid !important; gap: 0 !important; }
.vps-timeline-item { position: relative !important; display: grid !important; grid-template-columns: 18px minmax(0, 1fr) !important; gap: 14px !important; min-height: 84px !important; }
.vps-timeline-item:not(:last-child)::after { position: absolute !important; top: 16px !important; right: 6px !important; width: 1px !important; height: calc(100% - 2px) !important; background: #4b5870 !important; content: "" !important; }
.vps-timeline-item > i { position: relative !important; z-index: 1 !important; display: block !important; width: 13px !important; height: 13px !important; margin-top: 5px !important; border: 2px solid #8290a8 !important; border-radius: 50% !important; background: #162035 !important; }
.vps-timeline-item.is-done > i { border-color: #fff !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(255, 255, 255, .08) !important; }
.vps-timeline-item > div { display: grid !important; align-content: start !important; gap: 7px !important; min-width: 0 !important; }
.vps-timeline-item > div > b,
.vps-timeline-item > div > small { display: block !important; margin: 0 !important; padding: 0 !important; white-space: normal !important; overflow-wrap: anywhere !important; }
.vps-timeline-item > div > b { color: #fff !important; font-size: 15px !important; line-height: 1.7 !important; }
.vps-timeline-item > div > small { color: #aab5c9 !important; font-size: 12px !important; line-height: 1.9 !important; }

.vps-branch-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 14px !important; }
.vps-branch[hidden] { display: none !important; }
.vps-branch__top { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; }
.vps-branch__top > span { display: grid !important; width: 42px !important; height: 42px !important; place-items: center !important; border: 1px solid #cbd9ef !important; border-radius: 14px !important; color: var(--vps-blue) !important; font-size: 12px !important; }
.vps-branch__top small { display: inline-flex !important; align-items: center !important; gap: 6px !important; color: var(--vps-muted) !important; line-height: 1.5 !important; }
.vps-branch__top i { display: block !important; width: 7px !important; height: 7px !important; border-radius: 50% !important; background: #a3adbd !important; }
.vps-branch__top small.is-active i { background: #18b77a !important; }
.vps-branch address { margin-bottom: 20px !important; }
.vps-branch > a { display: flex !important; margin-top: auto !important; padding-top: 15px !important; align-items: center !important; justify-content: space-between !important; border-top: 1px solid var(--vps-line) !important; color: var(--vps-blue) !important; font-weight: 800 !important; }

.vps-partners { overflow: hidden !important; }
.vps-logo-marquee { overflow: hidden !important; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent) !important; mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent) !important; }
.vps-logo-track { display: flex !important; width: max-content !important; gap: 14px !important; animation: vps-logo-move 28s linear infinite !important; }
.vps-logo-track--slow { animation-duration: 42s !important; }
.vps-logo-track--fast { animation-duration: 18s !important; }
.vps-logo-repeat { display: contents !important; }
.vps-partner-logo { display: grid !important; width: 200px !important; height: 80px !important; min-width: 200px !important; min-height: 80px !important; aspect-ratio: 5 / 2 !important; padding: 10px 18px !important; place-items: center !important; overflow: hidden !important; flex: 0 0 auto !important; border: 1px solid rgba(17, 24, 39, .11) !important; border-radius: 20px !important; background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(236,240,246,.7)) !important; backdrop-filter: blur(14px) !important; }
.vps-partner-logo img { display: block !important; width: 100% !important; height: 100% !important; min-width: 0 !important; min-height: 0 !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; filter: grayscale(1) contrast(1.08) !important; }
@keyframes vps-logo-move {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(50%, 0, 0); }
}

.vps-faqs { border-top: 1px solid var(--vps-line) !important; }
.vps-faqs details { border-bottom: 1px solid var(--vps-line) !important; }
.vps-faqs summary { display: flex !important; min-height: 66px !important; padding: 14px 2px !important; align-items: center !important; justify-content: space-between !important; gap: 20px !important; font-weight: 800 !important; cursor: pointer !important; list-style: none !important; }
.vps-faqs summary::-webkit-details-marker { display: none !important; }
.vps-faqs summary span { display: block !important; color: var(--vps-blue) !important; font-size: 21px !important; }
.vps-faqs details[open] summary span { transform: rotate(45deg) !important; }
.vps-faqs details p { max-width: 800px !important; padding: 0 0 22px !important; color: var(--vps-muted) !important; line-height: 2 !important; }
.vps-quote { padding: clamp(26px, 5vw, 60px) !important; border-radius: 22px !important; background: #111827 !important; color: #fff !important; font-size: clamp(24px, 4vw, 44px) !important; font-weight: 850 !important; line-height: 1.65 !important; }
.vps-posts { display: grid !important; gap: 1px !important; overflow: hidden !important; border: 1px solid var(--vps-line) !important; border-radius: 20px !important; background: var(--vps-line) !important; }
.vps-posts article a { display: grid !important; grid-template-columns: 110px 1fr !important; gap: 5px 22px !important; padding: 22px !important; background: #fff !important; color: var(--vps-ink) !important; }
.vps-posts article span { grid-row: 1 / span 2 !important; color: var(--vps-muted) !important; }
.vps-posts article h2 { font-size: 20px !important; line-height: 1.5 !important; }
.vps-posts article p { color: var(--vps-muted) !important; line-height: 1.8 !important; }

.victor-page-system--about,
.victor-page-system--story { --vps-blue: #111827; }
.victor-page-system--about .vps-hero,
.victor-page-system--story .vps-hero { background: linear-gradient(145deg, #fff, #eff1f4) !important; }

@media (max-width: 900px) {
	.vps-hero { grid-template-columns: 1fr !important; }
	.vps-section__head { grid-template-columns: 1fr !important; gap: 0 !important; }
	.vps-grid,
	.vps-branch-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 640px) {
	.victor-page-system { width: min(100% - 24px, 1180px) !important; padding-top: 20px !important; }
	.vps-breadcrumb { margin-bottom: 14px !important; }
	.vps-hero,
	.vps-section { margin-bottom: 16px !important; padding: 24px 18px !important; border-radius: 23px !important; }
	.vps-hero__copy h1 { font-size: clamp(33px, 9.5vw, 44px) !important; }
	.vps-hero__copy > p,
	.vps-section__head > p { margin-top: 13px !important; font-size: 14px !important; }
	.vps-hero__actions,
	.vps-contact-actions { display: grid !important; grid-template-columns: 1fr !important; margin-top: 20px !important; }
	.vps-smart { padding: 18px !important; border-radius: 19px !important; }
	.vps-smart__head { align-items: flex-start !important; }
	.vps-smart__head strong { font-size: 18px !important; }
	.vps-form-grid,
	.vps-grid,
	.vps-branch-grid { grid-template-columns: 1fr !important; }
	.vps-card,
	.vps-branch { min-height: 180px !important; padding: 20px !important; }
	.vps-section__head { margin-bottom: 24px !important; }
	.vps-posts article a { grid-template-columns: 1fr !important; }
	.vps-posts article span { grid-row: auto !important; }
	.vps-story article { grid-template-columns: 52px 1fr !important; }
	.vps-partner-logo { width: 160px !important; height: 64px !important; min-width: 160px !important; min-height: 64px !important; padding: 8px 14px !important; }
	.vps-tracking-card { padding: 18px !important; }
	.vps-contact-router { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
	.vps-contact-route { min-height: 164px !important; padding: 14px !important; border-radius: 15px !important; }
	.vps-contact-route > strong { margin-top: 11px !important; font-size: 15px !important; }
	.vps-contact-route > p { font-size: 11px !important; line-height: 1.75 !important; }
	.vps-contact-route__action { padding-top: 10px !important; }
}

@media (prefers-reduced-motion: reduce) {
	.vps-logo-track { animation: none !important; transform: none !important; }
	.vps-button,
	.vps-free-shipping__track i { transition: none !important; }
}
