/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.1.0
Description: Child theme for Hello Elementor
Text Domain: hello-elementor-child
*/

/* ---------- Header ---------- */
.ziv-header { z-index: 50; }
body.home .ziv-header { position: absolute !important; top: 0; left: 0; right: 0; }
body.home.admin-bar .ziv-header { top: 32px; }
.ziv-account .elementor-icon-list-text { white-space: nowrap; }
body:not(.home) .ziv-header { background: #000 !important; min-height: 0 !important; padding-bottom: 20px !important; }
.ziv-header-left { gap: 0 !important; width: auto !important; }
.ziv-header-left > * { flex-shrink: 0 !important; }
.ziv-badge { width: 249px !important; }
.ziv-header-right { width: auto !important; flex: 0 1 auto !important; }
.ziv-header-left > .ziv-account { margin: 45px 0 0 38px; width: auto; }
.ziv-header-left > .ziv-search { margin: 45px 0 0 57px; width: 95px; }
.ziv-account .elementor-icon-list-item > a { flex-direction: row-reverse; gap: 8px; }
.ziv-account .elementor-icon-list-icon { padding: 0 !important; }
.ziv-badge-script { margin-top: -6px; }
.ziv-nav .ziv-menu-brand > a { color: #F26723 !important; font-weight: 700 !important; }
.ziv-search .elementor-search-form__container {
	background: #F5F5F5 !important; border-radius: 10px; overflow: hidden; min-height: 24px !important; border: 0 !important;
}
.ziv-search .elementor-search-form__input {
	font-family: Rubik, sans-serif; font-size: 18px; color: #000; text-align: center; padding: 0 6px !important; min-height: 24px; background: transparent;
}
.ziv-search .elementor-search-form__input::placeholder { color: #000; opacity: 1; }
.ziv-search .elementor-search-form__submit {
	background: transparent url(/wp-content/uploads/ziv-home/search.png) center / 15px no-repeat !important; min-width: 26px !important; min-height: 24px;
}
.ziv-search .elementor-search-form__submit i, .ziv-search .elementor-search-form__submit svg { display: none; }

/* ---------- Hero slideshow ---------- */
.ziv-hero { position: relative; overflow: hidden; }
.ziv-hero::after {
	content: ""; position: absolute; inset: auto 0 0 0; height: 160px; pointer-events: none; z-index: 1;
	background: linear-gradient(0deg, rgba(0,0,0,.28), rgba(0,0,0,0));
}
.ziv-hero-progress {
	position: absolute; left: 0; bottom: 0; height: 4px; width: 100%; z-index: 2;
	background: #F26723; transform: scaleX(0); transform-origin: right center;
}
.ziv-hero-progress.is-running { animation: ziv-hero-progress 7.6s linear forwards; }
@keyframes ziv-hero-progress { to { transform: scaleX(1); } }
@media (prefers-reduced-motion: reduce) {
	.ziv-hero-progress { display: none; }
	.ziv-hero .elementor-ken-burns { animation: none !important; transform: none !important; }
}

/* ---------- Section titles ---------- */
.ziv-section-title .elementor-heading-title { line-height: 1; }

/* ---------- Categories ---------- */
.ziv-cat { text-decoration: none; }
.ziv-cat img, .ziv-cat .ziv-cat-img { transition: transform .3s ease, filter .3s ease; }
.ziv-cat:hover img, .ziv-cat:hover .ziv-cat-img { transform: scale(1.08); }
.ziv-cat:hover .ziv-cat-img img { transform: none; }
.ziv-cat:hover .elementor-heading-title { color: #F26723 !important; }

/* ---------- Sliders (products / brands / designers) ---------- */
.ziv-slider { position: relative; }
.ziv-track { overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.ziv-track::-webkit-scrollbar { display: none; }
.ziv-track > .e-con { flex: 0 0 auto !important; scroll-snap-align: start; }
/* Center the row when it is narrower than the screen; auto margins collapse to 0 once it overflows. */
.ziv-track > .e-con:first-child { margin-inline-start: auto; }
.ziv-track > .e-con:last-child { margin-inline-end: auto; }
.ziv-arrow { position: absolute !important; top: 50%; transform: translateY(-50%); z-index: 5; width: auto !important; cursor: pointer; }
.ziv-arrow img { display: block; }
.ziv-slider-products .ziv-next { right: 21px; }
.ziv-slider-products .ziv-prev { left: 64px; }
.ziv-slider-products .ziv-prev img { transform: rotate(180deg); }
.ziv-slider-small .ziv-next { right: 16px; }
.ziv-slider-small .ziv-prev { left: 16px; }
.ziv-flip img { transform: scaleX(-1); }

/* brands marquee: grayscale logos, one lights up to its original colour at a time */
.ziv-track.ziv-marquee { scroll-snap-type: none; scroll-behavior: auto; }
.ziv-brands .ziv-brand { transition: border-color .6s ease, box-shadow .6s ease; }
.ziv-brands .ziv-brand img { filter: grayscale(1); opacity: .55; transition: filter .6s ease, opacity .6s ease, transform .6s ease; }
.ziv-brands .ziv-brand.is-lit img, .ziv-brands .ziv-brand:hover img { filter: none; opacity: 1; transform: scale(1.06); }
.ziv-brands .ziv-brand.is-lit, .ziv-brands .ziv-brand:hover { border-color: #F26723 !important; box-shadow: 0 6px 18px rgba(0,0,0,.08); }

/* product cards */
.ziv-product .elementor-widget-heading:first-child .elementor-heading-title { line-height: 16px; }
.ziv-product-img img { width: 443px; max-width: 100%; height: 323px; object-fit: cover; }
.ziv-clamp p { margin: 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

/* designers */
.ziv-designer-photo { overflow: hidden; height: 189px; }
.ziv-designer-photo img { width: 172px; height: 215px; object-fit: cover; object-position: top; margin-top: 1px; }
.ziv-designer .elementor-icon-list-item > a, .ziv-designer .elementor-icon-list-item { justify-content: flex-start; }
.ziv-designer .elementor-icon-list-icon svg, .ziv-designer .elementor-icon-list-icon img { width: 14px; }
.ziv-designer .elementor-icon-list-item:first-child .elementor-icon-list-icon svg { fill: none !important; }

/* ---------- Contact form ---------- */
.ziv-form { width: 100%; max-width: 1240px; }
.ziv-form .elementor-form-fields-wrapper { flex-wrap: nowrap; justify-content: center; }
.ziv-form .elementor-field-group { width: 192px !important; flex: 0 0 auto; }
.ziv-form .elementor-field-group-message { width: 258px !important; }
.ziv-form .elementor-field-type-submit { width: 160px !important; }
.ziv-form .elementor-field-textual, .ziv-form select { min-height: 35px; height: 35px; padding: 4px 10px; }
.ziv-form .elementor-field::placeholder { color: #000; opacity: 1; }
.ziv-form .elementor-button { min-height: 35px; height: 35px; padding: 0 !important; }

/* ---------- About ---------- */
.ziv-about-text p { margin: 0 0 20px; }

/* ---------- Floating WhatsApp ---------- */
.ziv-wa { position: fixed !important; right: 0; bottom: 120px; z-index: 60; overflow: visible !important; text-decoration: none; }
.ziv-wa .ziv-wa-icon { position: absolute !important; right: 8px; top: -20px; width: 38px !important; }

/* ---------- Footer ---------- */
.ziv-footer { position: relative; }
.ziv-foot-text p { margin: 0; }
.ziv-foot-text a { color: inherit; }
.ziv-foot-h { color: #F26723; font-weight: 700; font-size: 24px; }
.ziv-footer .elementor-icon-list-text { transition: color .2s; }
.ziv-footer .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #F26723 !important; }
.ziv-to-top { position: absolute !important; right: 20px; bottom: 16px; width: auto !important; }
.ziv-to-top img { transform: rotate(-90deg); }

/* ---------- Tablet / mobile ---------- */
@media (max-width: 1024px) {
	.ziv-header { padding: 0 16px !important; }
	.ziv-header-left { width: auto !important; }
	.ziv-header-left > .ziv-account, .ziv-header-left > .ziv-search { display: none; }
	.ziv-badge { width: 170px !important; min-height: 140px !important; }
	.ziv-badge .elementor-widget-image:first-child img { width: 140px; }
	.ziv-badge-script img { width: 100px; }
	.ziv-badge .elementor-heading-title { font-size: 16px !important; }
	.ziv-header-right { padding-top: 30px !important; }
	.ziv-form .elementor-form-fields-wrapper { flex-wrap: wrap; }
	.ziv-form .elementor-field-group { width: calc(50% - 9px) !important; }
	.ziv-form .elementor-field-type-submit { width: 100% !important; }
	.ziv-foot-col { width: calc(50% - 15px) !important; }
}
@media (max-width: 767px) {
	.ziv-badge { width: 130px !important; min-height: 110px !important; }
	.ziv-badge .elementor-widget-image:first-child img { width: 105px; }
	.ziv-badge-script img { width: 80px; }
	.ziv-badge .elementor-heading-title { font-size: 13px !important; }
	.ziv-cat { width: 45% !important; }
	.ziv-cat img, .ziv-cat .ziv-cat-img { width: 140px !important; min-height: 0 !important; }
	.ziv-cat .ziv-cat-img { height: 140px; }
	.ziv-cat .ziv-cat-img img { width: 80px !important; }
	.ziv-cat .elementor-heading-title { font-size: 18px !important; }
	.ziv-product { width: 85vw !important; }
	.ziv-slider-products .ziv-prev { left: 8px; }
	.ziv-slider-products .ziv-next { right: 8px; }
	.ziv-form .elementor-field-group { width: 100% !important; }
	.ziv-foot-col { width: 100% !important; }
	.ziv-wa { bottom: 70px; }
}
