/* ============================================================
   Me Home Design — main.css
   חוזה עיצוב: שמנת/חום/טרקוטה, אבסולוטיקה, פינות חדות,
   שפה אדיטוריאלית: קיקר + דיספליי + לינק קו-תחתון.
   ============================================================ */

/* ---------- Fonts ---------- */
@font-face {
	font-family: 'FbAbsolutica';
	src: url('../fonts/FbAbsolutik-Regular.woff2') format('woff2'),
		url('../fonts/FbAbsolutik-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
/* משקלים נוספים — לשחרר ברגע שהקבצים מיוצאים מחשבון פונטביט:
@font-face { font-family:'FbAbsolutica'; src:url('../fonts/FbAbsolutic-LIght.woff2') format('woff2'); font-weight:300; font-display:swap; }
@font-face { font-family:'FbAbsolutica'; src:url('../fonts/FbAbsoluticka-Medium.woff2') format('woff2'); font-weight:500; font-display:swap; }
@font-face { font-family:'FbAbsolutica'; src:url('../fonts/FbAbsolutic-Bold.woff2') format('woff2'); font-weight:700; font-display:swap; }
*/

/* ---------- Tokens ---------- */
:root {
	--bg: #FCFAF6;
	--cream: #F1EAE0;
	--ink: #241A12;
	--brown: #5C4433;
	--terra: #C05B2E;
	--paper: #FFFFFF;
	--line: rgba(36, 26, 18, .14);
	--font: 'FbAbsolutica', 'David Libre', 'Times New Roman', serif;
	--topbar-h: 38px;
	--header-h: 76px;
	--wrap: 1380px;
	--ease: cubic-bezier(.22, .61, .36, 1);
}

/* טיקר כבוי בהגדרות — ההדר וההירו מתיישרים חזרה לראש המסך */
body.no-topbar { --topbar-h: 0px; }

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }

/* סקרולבר ממותג ובולט — רואים תמיד איפה אתה בעמוד */
html { scrollbar-color: #5C4433 #EFE8DD; }
::-webkit-scrollbar { width: 13px; height: 13px; }
::-webkit-scrollbar-track { background: #EFE8DD; }
::-webkit-scrollbar-thumb { background: #5C4433; border: 3px solid #EFE8DD; border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #241A12; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
html, body { overflow-x: clip; }
body {
	margin: 0;
	font: 400 15px/1.7 var(--font);
	background: var(--bg);
	color: var(--ink);
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; padding: 0; }
h1, h2, h3 { font-weight: 400; }
:focus-visible { outline: 2px solid var(--terra); outline-offset: 3px; }

.wrap { max-width: var(--wrap); margin-inline: auto; padding-inline: clamp(16px, 3vw, 32px); }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	clip-path: inset(50%);
	overflow: hidden;
	white-space: nowrap;
}
.skip-link {
	position: absolute; inset-inline-start: 8px; top: -48px;
	background: var(--ink); color: #fff; padding: 10px 18px; z-index: 200;
	transition: top .2s;
}
.skip-link:focus { top: 8px; }

/* ---------- Type system ---------- */
.kicker { font-size: 14px; letter-spacing: .06em; margin: 0; }
.display {
	font-size: clamp(28px, 3.4vw, 40px);
	letter-spacing: .02em;
	line-height: 1.25;
	margin: 0;
}
.center { text-align: center; }
.section-sub { text-align: center; color: var(--brown); margin: 8px 0 36px; font-size: 14.5px; }
.link-line {
	display: inline-block;
	border-bottom: 1px solid currentColor;
	padding-bottom: 3px;
	font-size: 14px;
	letter-spacing: .04em;
	transition: opacity .2s;
}
.link-line:hover { opacity: .65; }
.link-line.sm { font-size: 13px; }

/* ---------- Topbar ticker ---------- */
.topbar {
	height: var(--topbar-h);
	background: var(--ink);
	color: #F3EADF;
	overflow: clip;
	display: flex;
	align-items: center;
}
/* לולאה אינסופית: שתי רצועות זהות, והאנימציה מזיזה בדיוק רוחב רצועה אחת.
   min-width של רצועה = רוחב המסך, כדי שלעולם לא ייפער חור בקצה הלולאה. */
.ticker {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	white-space: nowrap;
	font-size: 13px;
	letter-spacing: .05em;
	animation: ticker var(--ticker-dur, 48s) linear infinite;
	will-change: transform;
}
.ticker-run {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	min-width: 100vw;
	justify-content: space-around;
}
.ticker-run span { display: block; }
.ticker-run span::after {
	content: '|';
	opacity: .38;
	margin-inline: 22px;
}
@keyframes ticker {
	from { transform: translateX(0); }
	to { transform: translateX(50%); }
}

/* ---------- Header ---------- */
.site-header {
	position: relative;
	z-index: 60;
	background: #fff;
	border-bottom: 1px solid var(--line);
	transition: background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
}
.header-inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	height: var(--header-h);
	padding-inline: clamp(16px, 2.6vw, 40px);
}
.site-logo { justify-self: center; display: block; }
.site-logo-img { width: 171px; height: auto; transition: filter .25s; }

/* מעל ההירו: שקוף + לוגו לבן */
body.has-hero .site-header {
	position: absolute;
	inset-inline: 0;
	top: var(--topbar-h);
	background: transparent;
	border-bottom: 0;
	color: #fff;
}
/* לוגו יחיד (אין קובץ לבן) — נהפך ב-CSS מעל ההירו */
body.has-hero .site-header .site-logo-invert { filter: invert(1); }
/* זוג לוגואים — הכהה כברירת מחדל, הלבן מעל ההירו. בלי JS ובלי הבהוב. */
.site-logo-light { display: none; }
body.has-hero .site-header .site-logo-dark { display: none; }
body.has-hero .site-header .site-logo-light { display: block; }

/* נגלל: פס לבן + לוגו שחור */
.site-header.is-scrolled,
body.has-hero .site-header.is-scrolled {
	position: fixed;
	top: 0;
	inset-inline: 0;
	background: #fff;
	color: var(--ink);
	box-shadow: 0 1px 0 var(--line);
}
body.has-hero .site-header.is-scrolled .site-logo-invert { filter: none; }
body.has-hero .site-header.is-scrolled .site-logo-dark { display: block; }
body.has-hero .site-header.is-scrolled .site-logo-light { display: none; }

.menu-toggle {
	justify-self: start;
	display: grid;
	gap: 5px;
	padding: 10px;
	margin-inline-start: -10px;
}
.menu-toggle span { display: block; width: 22px; height: 1.5px; background: currentColor; transition: .2s; }

.header-end { justify-self: end; display: flex; align-items: center; gap: 4px; }
.header-search-btn { display: grid; place-items: center; padding: 8px; }
.header-cart { position: relative; display: grid; place-items: center; padding: 8px; margin-inline-end: -8px; }
.cart-count {
	position: absolute;
	top: 0;
	inset-inline-end: -4px;
	min-width: 17px;
	height: 17px;
	padding-inline: 4px;
	border-radius: 999px;
	background: var(--terra);
	color: #fff;
	font-size: 11px;
	line-height: 17px;
	text-align: center;
}

/* ---------- Drawer ---------- */
.scrim {
	position: fixed; inset: 0; z-index: 90;
	background: rgba(22, 14, 7, .45);
	opacity: 0; transition: opacity .3s;
}
.scrim.show { opacity: 1; }
.drawer {
	position: fixed;
	inset-block: 0;
	inset-inline-start: 0;
	z-index: 100;
	width: min(430px, 92vw);
	background: var(--bg);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform .38s var(--ease);
	overflow-y: auto;
}
.drawer.open { transform: none; }
.drawer-head { display: flex; justify-content: flex-end; padding: 22px 26px 6px; }
.drawer-close { padding: 6px; }
.drawer-menu { flex: 1; padding: 12px 40px 24px; }
.drawer-list, .drawer-list ul { list-style: none; margin: 0; padding: 0; }
.drawer-list > li { border-bottom: 1px solid var(--line); }
.drawer-list > li > a {
	display: inline-block;
	font-size: 19px;
	letter-spacing: .01em;
	padding-block: 13px;
}
/* באדג'ים בתפריט (נקבעים לכל פריט במסך מראה ← תפריטים) */
.nav-badge {
	font-style: normal;
	font-size: 10.5px;
	letter-spacing: .12em;
	line-height: 1;
	padding: 4px 7px 3px;
	margin-inline-start: 8px;
	vertical-align: middle;
	display: inline-block;
	white-space: nowrap;
	transform: translateY(-1px);
}
.nav-badge-terra { background: var(--terra); color: #fff; }
.nav-badge-dark { background: var(--ink); color: #fff; }
.nav-badge-soft { border: 1px solid var(--terra); color: var(--terra); }
.footer-list .nav-badge { font-size: 9.5px; padding: 3px 6px 2px; }

.drawer-list li { position: relative; }
.sub-toggle {
	position: absolute;
	top: 12px;
	inset-inline-end: 0;
	width: 34px; height: 34px;
	display: grid; place-items: center;
	transition: transform .25s;
}
li.open > .sub-toggle { transform: rotate(180deg); }
.drawer-list .sub-menu { display: none; padding-inline-start: 18px; padding-bottom: 12px; border-inline-start: 1px solid var(--line); margin-inline-start: 2px; }
.drawer-list li.open > .sub-menu { display: block; }
.drawer-list .sub-menu a { display: inline-block; font-size: 17px; padding-block: 9px; color: inherit; letter-spacing: .01em; }
.drawer-list .sub-menu a:hover { color: var(--terra); }
.drawer-list .sub-menu .sub-menu { padding-inline-start: 14px; }
.drawer-foot {
	display: flex;
	gap: 22px;
	padding: 20px 40px 30px;
	border-top: 1px solid var(--line);
	font-size: 14px;
}
.drawer-foot a { border-bottom: 1px solid var(--line); padding-bottom: 2px; }

/* ---------- Hero ---------- */
.hero {
	position: relative;
	height: calc(100svh - var(--topbar-h));
	min-height: 540px;
	overflow: hidden;
	background: #1D140C;
}
.hero-video, .hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
/* הירו מיוטיוב — מותח את המסגרת כך שתכסה בלי פסים שחורים */
.hero-yt { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.hero-yt iframe {
	position: absolute;
	top: 50%;
	inset-inline-start: 50%;
	width: 100vw;
	height: 56.25vw;
	min-height: 100%;
	min-width: 177.78vh;
	transform: translate(50%, -50%);
	border: 0;
}
html[dir="ltr"] .hero-yt iframe { transform: translate(-50%, -50%); }
.hero::after {
	content: '';
	position: absolute; inset: 0;
	background:
		linear-gradient(to bottom, rgba(15, 9, 4, .42), transparent 24%),
		linear-gradient(to top, rgba(15, 9, 4, .62), rgba(15, 9, 4, .16) 46%, rgba(15, 9, 4, .1));
}
.hero-content {
	position: absolute;
	inset-inline: 0;
	bottom: 8vh;
	z-index: 2;
	color: #fff;
	text-align: center;
	display: grid;
	gap: 12px;
	justify-items: center;
}
.hero-content .display { font-size: clamp(34px, 4.6vw, 54px); }

/* ---------- Categories ---------- */
.wrap-wide { max-width: 1720px; }
.cats { padding-block: clamp(48px, 6.5vw, 88px); }
.cats-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(14px, 2vw, 30px);
}
.cat-card { text-align: center; display: grid; gap: 10px; justify-items: center; }
.cat-media { width: 100%; aspect-ratio: 4 / 5; overflow: hidden; background: var(--cream); position: relative; }
.cat-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ease); }
.cat-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(20, 12, 6, .18), transparent 32%); opacity: 0; transition: opacity .45s; }
.cat-card:hover .cat-media img { transform: scale(1.05); }
.cat-card:hover .cat-media::after { opacity: 1; }
.cat-name { font-size: clamp(18px, 1.5vw, 21px); margin: 10px 0 0; }

/* ---------- Studio / Story ---------- */
.studio { background: var(--cream); padding-block: clamp(60px, 8vw, 112px); }
.story { padding-block: clamp(60px, 8vw, 112px); }
.story-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: clamp(32px, 5vw, 80px);
	align-items: center;
	max-width: 1180px;
}
.story-media { position: relative; margin-inline-start: 20px; margin-block-end: 20px; }
.story-media img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; position: relative; z-index: 1; }
.story-media::after {
	content: '';
	position: absolute;
	inset: 20px -20px -20px 20px;
	border: 1px solid var(--terra);
}
.story-body { display: grid; gap: 14px; justify-items: start; text-align: start; }
.story-body .studio-text { text-align: start; }
@media (max-width: 820px) {
	.story-grid { grid-template-columns: 1fr; gap: 34px; }
	.story-media { margin-inline-end: 14px; }
	.story-media::after { inset: 14px -14px -14px 14px; }
}
.studio-inner {
	max-width: 660px;
	text-align: center;
	display: grid;
	gap: 14px;
	justify-items: center;
}
.studio-text { font-size: 15.5px; line-height: 2; color: var(--brown); margin: 0; }

/* ---------- Full-bleed banners ---------- */
.banner {
	position: relative;
	height: min(76vh, 720px);
	min-height: 420px;
	overflow: hidden;
	background: #1D140C;
}
.banner > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.banner::after {
	content: '';
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(15, 9, 4, .55), rgba(15, 9, 4, .1) 55%);
}
.banner-content {
	position: absolute;
	inset-inline: 0;
	bottom: 10%;
	z-index: 2;
	color: #fff;
	text-align: center;
	display: grid;
	gap: 11px;
	justify-items: center;
}

/* ---------- Most Wanted slider ---------- */
.wanted { padding-block: clamp(52px, 7vw, 100px); }
.slider-wrap { position: relative; }
.products-row {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 3 * 20px) / 4);
	gap: 20px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-block: 4px;
	cursor: grab;
}
.products-row.dragging { cursor: grabbing; scroll-snap-type: none; scroll-behavior: auto; user-select: none; }
.products-row.dragging a { pointer-events: none; }
.products-row::-webkit-scrollbar { display: none; }
.product-card { scroll-snap-align: start; text-align: start; display: grid; gap: 4px; align-content: start; justify-items: start; }
.product-card .product-media { width: 100%; justify-self: stretch; }
.product-card .product-name a { display: inline-block; }
.product-card .product-name a:hover { color: var(--terra); }
.card-add { margin-top: 3px; }
.card-add.is-loading { opacity: .5; pointer-events: none; }
.product-media {
	position: relative;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: var(--paper);
	border: 1px solid var(--line);
	transition: border-color .35s;
}
.product-card:hover .product-media { border-color: rgba(36, 26, 18, .3); }
.product-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ease), opacity .5s var(--ease); }
.product-media .img-b { opacity: 0; }
.product-card:hover .img-a { transform: scale(1.04); }
.product-card:hover .img-b { opacity: 1; }
.card-cta {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	z-index: 2;
	background: rgba(36, 26, 18, .92);
	color: #F3EADF;
	font-size: 13px;
	letter-spacing: .05em;
	padding-block: 11px;
	transform: translateY(101%);
	transition: transform .4s var(--ease);
}
.product-card:hover .card-cta,
.product-card:focus-visible .card-cta { transform: none; }
.badge {
	position: absolute;
	top: 10px;
	inset-inline-start: 10px;
	z-index: 2;
	background: #111;
	color: #fff;
	font-size: 11.5px;
	letter-spacing: .04em;
	padding: 5px 11px;
}
.badge.oos { background: #fff; color: var(--ink); border: 1px solid var(--line); }
.product-media:has(.badge.oos) img { opacity: .7; }
.product-name { font-size: 14.5px; margin: 10px 0 0; }
.product-price { font-size: 14px; color: var(--brown); }
.product-price del { opacity: .5; }
.product-price ins { text-decoration: none; margin-inline-start: 6px; }
.slider-btn {
	position: absolute;
	top: 34%;
	z-index: 5;
	width: 42px; height: 42px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--line);
	display: grid; place-items: center;
	font-size: 24px;
	line-height: 1;
	transition: background .2s;
}
.slider-btn:hover { background: var(--cream); }
/* מיקום פיזי מוחלט: prev תמיד בימין עם ›, next תמיד בשמאל עם ‹ */
.slider-btn.prev { right: -10px; }
.slider-btn.next { left: -10px; }
.center-link { text-align: center; margin-top: 34px; }

/* ---------- Instagram ---------- */
.insta { padding-block: clamp(52px, 6vw, 84px) 0; }
.insta-grid {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	gap: 2px;
	margin-top: 34px;
}
.insta-grid a { aspect-ratio: 1; overflow: hidden; display: block; }
.insta-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease), opacity .3s; }
.insta-grid a:hover img { transform: scale(1.06); opacity: .85; }

/* ---------- Footer (בהיר) ---------- */
.site-footer { background: var(--cream); color: var(--ink); border-top: 1px solid var(--line); }
.footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
	gap: 40px;
	padding-block: 60px 44px;
}
.footer-logo { width: 210px; height: auto; }
.footer-brand p { color: var(--brown); line-height: 1.9; font-size: 14px; margin: 16px 0 20px; }
.footer-social { display: flex; gap: 10px; }
.footer-social a {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border: 1px solid var(--line);
	color: var(--brown);
	transition: color .25s, border-color .25s, background .25s;
}
.footer-social a:hover { color: #fff; background: var(--terra); border-color: var(--terra); }
.footer-social a:focus-visible { outline: 2px solid var(--terra); outline-offset: 2px; }
.footer-col h3 {
	font-size: 12.5px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--brown);
	margin: 6px 0 16px;
}
.footer-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; font-size: 14.5px; }
.footer-list a:hover { color: var(--terra); }
.footer-bottom { border-top: 1px solid var(--line); }
.footer-bottom-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	padding-block: 16px;
	font-size: 13px;
	color: var(--brown);
}
.footer-bottom a { border-bottom: 1px solid var(--line); }
.footer-bottom a:hover { color: var(--terra); }
.footer-pay { height: 30px; width: auto; }

/* ---------- Generic content pages ---------- */
.content-fallback { padding-block: 48px 80px; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.products-row { grid-auto-columns: calc((100% - 18px) / 2.35); gap: 18px; }
}
@media (max-width: 820px) {
	:root { --header-h: 60px; }
	.site-logo-img { width: 135px; }
	.cats-grid { grid-template-columns: repeat(2, 1fr); gap: 12px 10px; }
	.insta-grid { grid-template-columns: repeat(4, 1fr); }
	.footer-grid { grid-template-columns: 1fr 1fr; gap: 30px; padding-block: 44px 34px; }
	.slider-btn { display: none; }
	.products-row { grid-auto-columns: calc((100% - 14px) / 1.55); gap: 14px; }
	.banner { height: 62vh; min-height: 380px; }
	.floats { bottom: 14px; }
	.floats-contact { inset-inline-start: 12px; }
	.a11y-root { inset-inline-end: 12px; }
	.cart-drawer { width: min(400px, 96vw); }
}
@media (max-width: 560px) {
	.footer-grid { grid-template-columns: 1fr; }
	.hero-content .display { font-size: 34px; }
}

/* ============================================================
   מערכת חשיפות כניסה (data-anim)
   ============================================================ */
.js [data-anim] {
	opacity: 0;
	transition: opacity .8s var(--ease), transform .8s var(--ease), filter .8s var(--ease);
}
.js [data-anim="up"] { transform: translateY(28px); }
.js [data-anim="rise"] { transform: translateY(42px); }
.js [data-anim="scale"] { transform: scale(.965); }
.js [data-anim="blur"] { filter: blur(10px); }
/* עם data-stagger — הפוזה עוברת לילדים */
.js [data-anim][data-stagger] { opacity: 1; transform: none; transition: none; }
.js [data-anim][data-stagger] > * {
	opacity: 0;
	transition: opacity .7s var(--ease), transform .7s var(--ease);
	transition-delay: calc(var(--i, 0) * 80ms);
}
.js [data-anim="up"][data-stagger] > * { transform: translateY(26px); }
.js [data-anim].is-in, .js [data-anim].is-in > * { opacity: 1; transform: none; filter: none; }

/* ============================================================
   לחצנים צפים
   ============================================================ */
.floats {
	position: fixed;
	bottom: 20px;
	z-index: 85;
	display: grid;
	gap: 10px;
	transition: opacity .35s, visibility .35s, transform .35s;
}
.floats-contact { inset-inline-start: 16px; }
.floats.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(10px); }
.float-btn {
	width: 46px;
	height: 46px;
	border-radius: 999px;
	display: grid;
	place-items: center;
	color: #fff;
	box-shadow: 0 6px 18px rgba(20, 12, 6, .22);
	transition: transform .25s var(--ease), box-shadow .25s;
}
.float-btn:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(20, 12, 6, .28); }
.float-wa { background: #25D366; }
.float-call { background: var(--ink); }

/* ============================================================
   נגישות — ת"י 5568
   ============================================================ */
.a11y-root { position: fixed; bottom: 20px; inset-inline-end: 16px; z-index: 86; }
.a11y-launcher { background: var(--ink); }
.a11y-panel {
	position: absolute;
	bottom: 58px;
	inset-inline-end: 0;
	width: 272px;
	background: var(--paper);
	border: 1px solid var(--line);
	box-shadow: 0 16px 44px rgba(20, 12, 6, .18);
	padding: 16px;
	display: grid;
	gap: 8px;
}
.a11y-head { display: flex; justify-content: space-between; align-items: center; font-size: 15px; }
.a11y-close { padding: 2px 8px; font-size: 14px; }
.a11y-actions { display: grid; gap: 6px; }
.a11y-actions button {
	text-align: start;
	padding: 10px 12px;
	border: 1px solid var(--line);
	background: var(--bg);
	font-size: 13.5px;
	transition: background .2s, color .2s, border-color .2s;
}
.a11y-actions button[aria-pressed="true"] { background: var(--ink); color: #F3EADF; border-color: var(--ink); }
.a11y-actions .a11y-reset { color: var(--terra); }
.a11y-size-label { color: var(--terra); font-size: 12px; }
.a11y-actions button[aria-pressed="true"] .a11y-size-label { color: #F3EADF; }
.a11y-statement { font-size: 12.5px; border-bottom: 1px solid var(--line); justify-self: start; }

/* מצבי נגישות על html */
html[data-a11y-size="125"] body { zoom: 1.25; }
html[data-a11y-size="150"] body { zoom: 1.5; }
html[data-a11y-size="175"] body { zoom: 1.75; }
html[data-a11y-contrast] { filter: invert(1) hue-rotate(180deg); background: #000; }
html[data-a11y-contrast] img, html[data-a11y-contrast] video { filter: invert(1) hue-rotate(180deg); }
html[data-a11y-links] a { text-decoration: underline !important; text-underline-offset: 3px; }
html[data-a11y-readable] body, html[data-a11y-readable] body * { font-family: Arial, 'Segoe UI', sans-serif !important; letter-spacing: .01em !important; }
html[data-a11y-still] *, html[data-a11y-still] *::before, html[data-a11y-still] *::after { animation: none !important; transition: none !important; }
html.js[data-a11y-still] [data-anim], html.js[data-a11y-still] [data-anim] > * { opacity: 1 !important; transform: none !important; filter: none !important; }

/* ============================================================
   עגלת צד
   ============================================================ */
.cart-drawer {
	position: fixed;
	inset-block: 0;
	inset-inline-end: 0;
	z-index: 100;
	width: min(430px, 94vw);
	background: var(--bg);
	transform: translateX(-100%);
	transition: transform .38s var(--ease);
	display: flex;
	flex-direction: column;
}
.cart-drawer.open { transform: none; }
.cart-head { display: flex; justify-content: space-between; align-items: center; padding: 19px 24px; border-bottom: 1px solid var(--line); font-size: 16px; }
.cart-head-count { color: var(--brown); font-size: 13px; margin-inline-start: 6px; }
.cart-close { padding: 4px; }
.cart-toast { background: var(--terra); color: #fff; text-align: center; font-size: 13px; letter-spacing: .03em; padding: 9px; }
.cart-freeship { padding: 16px 24px 0; }
.cart-freeship-text { margin: 0 0 10px; font-size: 13.5px; color: var(--brown); }
.cart-freeship-text b { color: var(--ink); font-weight: 400; }
.cart-freeship-bar { height: 3px; background: var(--line); position: relative; overflow: hidden; }
.cart-freeship-bar i { position: absolute; inset-block: 0; inset-inline-start: 0; width: 0; background: var(--terra); transition: width .6s var(--ease); }
.cart-items { flex: 1; overflow-y: auto; padding: 6px 24px; align-content: start; }
.cart-item { display: grid; grid-template-columns: 72px 1fr auto; gap: 14px; padding-block: 16px; border-bottom: 1px solid var(--line); align-items: center; transition: opacity .3s; }
.cart-item.is-busy { opacity: .45; pointer-events: none; }
.cart-item-img { width: 72px; height: 90px; object-fit: cover; background: var(--cream); display: block; }
.cart-item-name { font-size: 14px; line-height: 1.5; margin: 0 0 9px; display: block; }
.cart-item-name:hover { color: var(--terra); }
.cart-qty { display: inline-flex; align-items: center; border: 1px solid var(--line); background: var(--paper); }
.cart-qty button { width: 29px; height: 29px; font-size: 16px; display: grid; place-items: center; transition: background .2s; }
.cart-qty button:hover { background: var(--cream); }
.cart-qty output { min-width: 26px; text-align: center; font-size: 13.5px; }
.cart-item-side { display: grid; justify-items: end; gap: 9px; }
.cart-item-line { font-size: 14px; }
.cart-item-remove { font-size: 12px; color: var(--brown); border-bottom: 1px solid var(--line); padding-bottom: 1px; }
.cart-item-remove:hover { color: var(--terra); }
.cart-empty { padding: 52px 24px; text-align: center; display: grid; gap: 14px; justify-items: center; color: var(--brown); }
.cart-sk { display: grid; grid-template-columns: 72px 1fr; gap: 14px; padding-block: 16px; border-bottom: 1px solid var(--line); }
.cart-sk i { width: 72px; height: 90px; background: var(--cream); animation: skpulse 1.2s ease-in-out infinite; }
.cart-sk span { display: grid; gap: 10px; align-content: center; }
.cart-sk b { height: 13px; background: var(--cream); animation: skpulse 1.2s ease-in-out infinite; }
.cart-sk .w60 { width: 60%; }
@keyframes skpulse { 50% { opacity: .45; } }
.cart-foot { border-top: 1px solid var(--line); padding: 18px 24px 22px; display: grid; gap: 10px; background: var(--paper); }
.cart-subtotal { display: flex; justify-content: space-between; font-size: 15.5px; }
.cart-note { margin: 0; font-size: 12.5px; color: var(--brown); }
.btn-solid {
	display: block;
	text-align: center;
	background: #111;
	color: #fff;
	padding: 13px;
	font-size: 14.5px;
	letter-spacing: .04em;
	transition: background .25s;
}
.btn-solid:hover { background: #000; color: #fff; }
.cart-view-link { justify-self: center; font-size: 13px; }

/* ---------- פס התקדמות לסליידר ---------- */
.slider-progress { height: 2px; background: var(--line); margin-top: 30px; position: relative; overflow: hidden; }
.slider-progress i { position: absolute; inset-block: 0; inset-inline-start: var(--x, 0%); width: var(--w, 25%); background: var(--terra); }

/* ============================================================
   עמוד מוצר
   ============================================================ */
.product-page { padding-block: 22px 60px; }
.crumbs { font-size: 12.5px; color: var(--brown); display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.crumbs a:hover { color: var(--terra); }
.crumbs [aria-current] { color: var(--ink); }

.product-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
	gap: clamp(32px, 4.5vw, 72px);
	align-items: start;
}
/* גלריה בעמודה הימנית (הראשונה ב-RTL), סאמרי בשמאלית — כמו ברפרנס */
.pgal { grid-column: 1; grid-row: 1; }
.p-summary { grid-column: 2; grid-row: 1; }
.p-summary { position: sticky; top: 96px; display: grid; gap: 13px; }
.p-title { font-size: clamp(23px, 2.5vw, 32px); line-height: 1.3; margin: 0; }
.p-price { font-size: 19px; }
.p-price del { opacity: .45; font-size: 16px; }
.p-price ins { text-decoration: none; margin-inline-start: 8px; }
.p-stock { display: flex; align-items: center; gap: 7px; font-size: 13.5px; margin: 0; }
.p-stock.in svg { color: var(--terra); }
.p-stock.out { color: #A33B2A; }
.p-freeship { font-size: 13px; color: var(--brown); margin: 0; padding-inline-start: 12px; border-inline-start: 2px solid var(--terra); }

/* טופס הוספה לסל */
.p-atc form.cart { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
.p-atc .quantity { display: inline-flex; border: 1px solid var(--line); background: var(--paper); }
.p-atc .quantity .qty {
	width: 64px; border: 0; background: transparent; text-align: center;
	font: inherit; font-size: 15px; -moz-appearance: textfield; appearance: textfield;
}
.p-atc .qty::-webkit-outer-spin-button, .p-atc .qty::-webkit-inner-spin-button { -webkit-appearance: none; }
.p-atc .single_add_to_cart_button {
	flex: 1; min-width: 200px; background: #111; color: #fff; border: 0;
	padding: 14px 22px; font: inherit; font-size: 14.5px; letter-spacing: .05em;
	cursor: pointer; transition: background .25s, opacity .2s;
}
.p-atc .single_add_to_cart_button:hover { background: #000; }
.p-atc .single_add_to_cart_button.is-loading { opacity: .55; pointer-events: none; }
/* וריאציות — אותו עיצוב כמו שדות ההתאמה, מאוחדים לכרטיס אחד */
.p-atc .variations { width: 100%; border-collapse: collapse; }
.p-atc .variations, .p-atc .variations tbody, .p-atc .variations tr,
.p-atc .variations th, .p-atc .variations td { display: block; width: 100%; text-align: start; padding: 0; }
.p-atc .variations tr { margin-bottom: 13px; }
.p-atc .variations label { font-size: 13.5px; color: var(--brown); font-weight: 400; display: block; margin-bottom: 5px; }
.p-atc .variations_form .variations {
	background: #fff;
	border: 1px solid var(--line);
	padding: 18px 18px 16px;
	margin: 0;
}
/* כשיש גם טופס התאמה — כרטיס אחד רציף בלי תפר */
.p-atc form.cart.variations_form { row-gap: 0; }
.p-atc .variations_form:has(.wcpa_form_outer) .variations { border-bottom: 0; padding-bottom: 6px; margin-bottom: 0; }
.p-atc .variations_form .wcpa_form_outer { margin-block: 0 14px; }
.p-atc .variations_form .single_variation_wrap { margin-top: 4px; }
.p-atc .variations_form .variations::before {
	content: 'התאמה אישית';
	display: block;
	font-size: 12px;
	letter-spacing: .12em;
	color: var(--terra);
	margin-bottom: 12px;
}
/* כשיש גם וריאציות — טופס ההתאמה ממשיך את אותו כרטיס בלי קו כפול ובלי כותרת כפולה */
.p-atc .variations_form .wcpa_form_outer { border-top: 0; margin-top: 0; }
.p-atc .variations_form .wcpa_form_outer::before { display: none; }
.p-atc .single_variation_wrap { width: 100%; }
.p-atc .variations select {
	width: 100%; padding: 11px 12px; border: 1px solid var(--line); background: var(--paper);
	font: inherit; font-size: 14px; color: var(--ink);
}
.p-atc .reset_variations { font-size: 12px; color: var(--brown); }
/* ווקומרס מדפיס שורת מלאי משלו — יש לנו אחת מעוצבת למעלה */
.p-atc > .stock, .p-atc form.cart > .stock, .p-atc > p.stock { display: none; }
.p-atc .woocommerce-variation-availability .stock { display: block; }
.p-atc .single_variation_wrap .woocommerce-variation-price { margin-bottom: 10px; font-size: 17px; }
.p-atc .woocommerce-variation-availability { font-size: 13px; color: var(--brown); }
.p-atc .stock.out-of-stock { color: #A33B2A; }

.p-trust {
	list-style: none; margin: 4px 0 0; padding: 14px 0;
	border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
	display: flex; flex-wrap: wrap; gap: 10px 22px;
	font-size: 12.5px; color: var(--brown);
}
.p-trust li { display: flex; align-items: center; gap: 8px; }
.p-trust li svg { color: var(--terra); flex: 0 0 auto; }
.p-wa { font-size: 13px; border-bottom: 1px solid var(--line); justify-self: start; padding-bottom: 2px; }
.p-wa:hover { color: var(--terra); }

/* אקורדיונים */
.p-accordions { margin-top: 6px; }
.p-accordions details { border-top: 1px solid var(--line); }
.p-accordions details:last-child { border-bottom: 1px solid var(--line); }
.p-accordions summary {
	list-style: none; cursor: pointer; position: relative;
	padding-block: 15px; padding-inline-end: 30px; font-size: 15px;
}
.p-accordions summary::-webkit-details-marker { display: none; }
.p-accordions summary::after {
	content: ''; position: absolute; inset-inline-end: 4px; top: 21px;
	width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg); transition: transform .25s;
}
.p-accordions details[open] > summary::after { transform: rotate(225deg); top: 25px; }
.acc-body { padding-bottom: 18px; font-size: 14.5px; line-height: 1.85; color: var(--brown); }
.acc-body ul { margin: 0; padding-inline-start: 18px; display: grid; gap: 6px; }
.acc-body p { margin: 0 0 10px; }

/* חוות דעת */
.review { border-bottom: 1px solid var(--line); padding-block: 12px; }
.review-top { display: flex; gap: 12px; align-items: center; font-size: 13.5px; }
.review-stars { color: var(--terra); letter-spacing: 2px; font-size: 13px; }
.review p { margin: 6px 0 0; }
.review-none { margin: 0 0 8px; }
.review-form { display: grid; gap: 10px; margin-top: 16px; }
.review-form-title { margin: 0; font-size: 14.5px; color: var(--ink); }
.review-form label { display: grid; gap: 5px; font-size: 13px; }
.review-form input, .review-form select, .review-form textarea {
	border: 1px solid var(--line); background: var(--paper); padding: 10px 12px; font: inherit; font-size: 14px;
}
.review-form .btn-solid { justify-self: start; padding-inline: 26px; border: 0; cursor: pointer; }

/* גלריה */
.pgal { min-width: 0; }
.pgal-main { position: relative; overflow: hidden; }
.pgal-track {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}
.pgal-track::-webkit-scrollbar { display: none; }
.pgal-slide {
	flex: 0 0 100%;
	margin: 0;
	scroll-snap-align: start;
	overflow: hidden;
	background: var(--cream);
	cursor: zoom-in;
}
.pgal-slide img {
	width: 100%; height: auto; aspect-ratio: 4 / 4.75; object-fit: cover; display: block;
	transition: transform .18s ease-out;
}
.pgal-expand {
	position: absolute; top: 14px; inset-inline-end: 14px; z-index: 3;
	width: 40px; height: 40px; border-radius: 999px;
	background: rgba(255, 255, 255, .92); border: 1px solid var(--line);
	display: grid; place-items: center;
}
.pgal-btn { top: calc(50% - 21px); position: absolute; z-index: 3; }
.pgal-prev { right: 14px; }
.pgal-next { left: 14px; }
.pgal-thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; scrollbar-width: none; }
.pgal-thumbs::-webkit-scrollbar { display: none; }
.pgal-thumb {
	flex: 0 0 64px; height: 80px; overflow: hidden;
	opacity: .5; border: 1px solid transparent; transition: opacity .25s, border-color .25s;
}
.pgal-thumb img { width: 100%; height: 100%; object-fit: cover; }
.pgal-thumb.is-active { opacity: 1; border-color: var(--ink); }

/* קשורים */
.related {
	margin-top: clamp(52px, 7vw, 96px);
	padding-top: clamp(44px, 6vw, 72px);
	border-top: 1px solid var(--line);
}
.related .display { margin-bottom: 42px; }
.related .slider-progress { margin-top: 36px; }

/* ---------- טופס התאמה אישית (WCPA) ---------- */
.p-atc .wcpa_form_outer {
	width: 100%;
	background: #fff;
	border: 1px solid var(--line);
	padding: 18px 18px 20px;
	margin-bottom: 4px;
	position: relative;
}
.p-atc .wcpa_form_outer::before {
	content: 'התאמה אישית';
	display: block;
	font-size: 12px;
	letter-spacing: .12em;
	color: var(--terra);
	margin-bottom: 12px;
}
.p-atc .wcpa_row { margin-bottom: 13px; }
.p-atc .wcpa_field_label,
.p-atc .wcpa_form_outer label { font-size: 13.5px; color: var(--brown); margin-bottom: 5px; display: block; }
.p-atc .wcpa_form_outer input[type="text"],
.p-atc .wcpa_form_outer input[type="email"],
.p-atc .wcpa_form_outer input[type="tel"],
.p-atc .wcpa_form_outer input[type="number"],
.p-atc .wcpa_form_outer input[type="date"],
.p-atc .wcpa_form_outer textarea,
.p-atc .wcpa_form_outer select {
	width: 100%;
	border: 1px solid var(--line);
	background: var(--paper);
	padding: 11px 12px;
	font: inherit;
	font-size: 14px;
	color: var(--ink);
	border-radius: 0;
	box-shadow: none;
}
.p-atc .wcpa_form_outer input:focus,
.p-atc .wcpa_form_outer textarea:focus,
.p-atc .wcpa_form_outer select:focus { border-color: var(--brown); outline: none; }
.p-atc .wcpa_form_outer textarea { min-height: 76px; resize: vertical; }
.p-atc .wcpa_form_outer img { border: 1px solid var(--line); transition: border-color .2s, transform .2s; }
.p-atc .wcpa_form_outer input:checked + img,
.p-atc .wcpa_form_outer .wcpa_checked img,
.p-atc .wcpa_form_outer .selected img { border-color: #111; }
.p-atc .wcpa_skeleton_loader_area { opacity: .4; }

/* בר קנייה דביק */
.buybar {
	position: fixed; inset-inline: 0; bottom: 0; z-index: 70;
	background: #fff; border-top: 1px solid var(--line);
	box-shadow: 0 -8px 30px rgba(20, 12, 6, .08);
	transform: translateY(105%); transition: transform .35s var(--ease);
}
.buybar.show { transform: none; }
.buybar-inner { display: flex; align-items: center; gap: 14px; padding-block: 10px; }
.buybar-img { width: 44px; height: 55px; object-fit: cover; }
.buybar-info { display: grid; gap: 1px; min-width: 0; margin-inline-end: auto; }
.buybar-name { font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.buybar-price { font-size: 12.5px; color: var(--brown); }
.buybar-price del { opacity: .5; }
.buybar-price ins { text-decoration: none; }
.buybar-btn { border: 0; cursor: pointer; padding: 11px 26px; font-size: 13.5px; }
body.has-buybar .floats, body.has-buybar .a11y-root { bottom: 86px; }

/* לייטבוקס */
.lightbox {
	position: fixed; inset: 0; z-index: 120;
	background: rgba(15, 9, 4, .93);
	display: grid; place-items: center;
}
.lightbox-img { max-width: 92vw; max-height: 88vh; object-fit: contain; }
.lightbox-close {
	position: absolute; top: 18px; inset-inline-start: 18px;
	color: #fff; font-size: 22px; padding: 8px; z-index: 2;
}
.lightbox-prev { position: absolute; right: 22px; top: calc(50% - 21px); }
.lightbox-next { position: absolute; left: 22px; top: calc(50% - 21px); }

@media (max-width: 960px) {
	.product-layout { display: flex; flex-direction: column; }
	.pgal { order: -1; }
	.p-summary { position: static; }
	.pgal-btn { display: none; }
	.pgal-slide { cursor: default; }
	.product-page { padding-top: 12px; }
	.buybar-name { max-width: 38vw; }
	.buybar-inner { gap: 10px; padding-block: 8px; }
	.buybar-img { width: 38px; height: 47px; }
	.buybar-btn { padding: 11px 18px; flex: 0 0 auto; }
	body.has-buybar { padding-bottom: 66px; }
}

/* ============================================================
   ארכיון קטגוריה / חנות
   ============================================================ */
.shop-page { padding-block: 22px 60px; }
.shop-head { text-align: center; margin-block: 10px 8px; }
.shop-head .display { margin-bottom: 6px; }
.shop-desc { max-width: 640px; margin-inline: auto; color: var(--brown); font-size: 14.5px; }
.shop-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; }
.shop-chips a {
	border: 1px solid var(--line);
	background: #fff;
	padding: 8px 16px;
	font-size: 13.5px;
	transition: border-color .2s, background .2s;
}
.shop-chips a span { color: var(--brown); font-size: 12px; margin-inline-start: 4px; }
.shop-chips a:hover { border-color: var(--ink); }
.shop-toolbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	border-block: 1px solid var(--line);
	padding-block: 12px;
	margin-block: 26px 30px;
}
.shop-count { font-size: 13px; color: var(--brown); }
.shop-order select {
	border: 1px solid var(--line);
	background: #fff;
	padding: 9px 12px;
	font: inherit;
	font-size: 13.5px;
	color: var(--ink);
}
.shop-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px 20px;
}
.load-more-wrap { text-align: center; margin-top: 46px; }
.load-more.is-loading { opacity: .55; pointer-events: none; }
.shop-pagination { margin-top: 44px; }
.shop-pagination ul { list-style: none; display: flex; justify-content: center; gap: 6px; margin: 0; padding: 0; }
.shop-pagination a, .shop-pagination span {
	display: grid; place-items: center;
	min-width: 38px; height: 38px; padding-inline: 10px;
	border: 1px solid var(--line);
	font-size: 13.5px;
	background: #fff;
}
.shop-pagination .current { background: var(--ink); color: #fff; border-color: var(--ink); }
.shop-pagination a:hover { border-color: var(--ink); }
.shop-empty { text-align: center; padding-block: 70px; color: var(--brown); display: grid; gap: 16px; justify-items: center; }

/* ============================================================
   עמודי תוכן (תקנון, נגישות, אודות)
   ============================================================ */
.page-content { padding-block: 22px 70px; }
.prose { max-width: 820px; margin-inline: auto; }
.prose > .display { margin-bottom: 26px; }
.prose-body { font-size: 15px; line-height: 2; color: #3B2E22; }
.prose-body h2 { font-size: 21px; margin: 34px 0 10px; color: var(--ink); }
.prose-body h3 { font-size: 17px; margin: 24px 0 8px; }
.prose-body p { margin: 0 0 14px; }
.prose-body ul, .prose-body ol { padding-inline-start: 22px; margin: 0 0 16px; display: grid; gap: 7px; }
.prose-body a { color: var(--terra); border-bottom: 1px solid currentColor; }
.prose-body strong { color: var(--ink); }

/* ============================================================
   עמוד סל קניות
   ============================================================ */
.cart-page { padding-block: 22px 60px; }
.cart-page > .display { margin-block: 8px 22px; }
.cartpage-freeship {
	background: #fff;
	border: 1px solid var(--line);
	padding: 16px 20px;
	margin-bottom: 26px;
}
.cartpage-freeship p { margin: 0 0 10px; font-size: 14px; color: var(--brown); }
.cartpage-freeship b { color: var(--ink); font-weight: 400; }
.cartpage-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
	gap: clamp(24px, 3.5vw, 56px);
	align-items: start;
}
.cp-item {
	display: grid;
	grid-template-columns: 104px 1fr auto;
	gap: 18px;
	padding-block: 20px;
	border-bottom: 1px solid var(--line);
	align-items: center;
	transition: opacity .3s;
}
.cp-item:first-child { border-top: 1px solid var(--line); }
.cp-item.is-busy { opacity: .45; pointer-events: none; }
.cp-media img { width: 104px; height: 130px; object-fit: cover; background: var(--cream); display: block; }
.cp-name { font-size: 15.5px; display: inline-block; margin-bottom: 6px; }
.cp-name:hover { color: var(--terra); }
.cp-meta { font-size: 12.5px; color: var(--brown); line-height: 1.7; margin-bottom: 10px; max-width: 420px; }
.cp-controls { display: flex; align-items: center; gap: 16px; }
.cp-line { font-size: 15.5px; align-self: center; }
.cartpage-summary {
	position: sticky;
	top: 96px;
	background: #fff;
	border: 1px solid var(--line);
	padding: 24px;
	display: grid;
	gap: 14px;
}
.cartpage-summary h2 { font-size: 18px; margin: 0 0 4px; }
.cp-row { display: flex; justify-content: space-between; font-size: 15px; }
.cp-row.coupon { color: var(--terra); font-size: 13.5px; }
.cp-coupon summary { font-size: 13.5px; cursor: pointer; color: var(--brown); }
.cp-coupon-form { display: flex; gap: 8px; margin-top: 10px; }
.cp-coupon-form input { flex: 1; border: 1px solid var(--line); padding: 9px 12px; font: inherit; font-size: 13.5px; background: var(--paper); }
.btn-solid.sm { padding: 9px 16px; font-size: 13px; }
.btn-solid.inline { display: inline-block; padding-inline: 30px; }
.cp-continue { justify-self: center; font-size: 13px; }
.cartpage-summary .p-trust { border-bottom: 0; padding-bottom: 4px; }
.cartpage-summary .footer-pay { height: 26px; justify-self: center; }

/* ============================================================
   קופה (Checkout) — עיצוב על גבי הטמפלייט של ווקומרס
   ============================================================ */
.woocommerce-checkout .content-fallback { padding-block: 26px 70px; }
.woocommerce-checkout h1.entry-title, .wc-native h1 { font-size: clamp(24px, 3vw, 34px); font-weight: 400; }
.wc-native form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
	grid-template-rows: auto 1fr;
	gap: 0 clamp(24px, 3.5vw, 60px);
	align-items: start;
	counter-reset: costep;
}
.wc-native #customer_details { grid-area: 1 / 1 / 3 / 2; background: #fff; border: 1px solid var(--line); padding: 26px; }
.wc-native #customer_details .col-1, .wc-native #customer_details .col-2 { float: none; width: 100%; max-width: none; }
.wc-native .woocommerce-additional-fields { margin-top: 24px; }
.wc-native .woocommerce-form-coupon-toggle .woocommerce-info {
	background: transparent; border: 0; padding: 0; margin: 0 0 16px; font-size: 13.5px; color: var(--brown);
}
.wc-native .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none; content: none; }
.wc-native .woocommerce-form-coupon-toggle a { color: var(--terra); border-bottom: 1px solid currentColor; }
.wc-native form.checkout_coupon { border: 1px solid var(--line); background: #fff; padding: 16px; margin-bottom: 18px; display: flex; gap: 10px; flex-wrap: wrap; }
.wc-native form.checkout_coupon .form-row { margin: 0; flex: 1; min-width: 180px; }
.wc-native form.checkout_coupon button { background: #111; color: #fff; border: 0; padding: 11px 22px; font: inherit; font-size: 13.5px; cursor: pointer; }
/* הכותרת בתוך הכרטיס — נראה זהה לסקשן חיוב ומשלוח */
.wc-native #order_review_heading {
	grid-area: 1 / 2;
	font-size: 18px;
	font-weight: 400;
	margin: 0;
	background: #fff;
	border: 1px solid var(--line);
	border-bottom: 0;
	padding: 24px 22px 0;
}
.wc-native #order_review { grid-area: 2 / 2; align-self: start; border-top: 0; padding-top: 14px; margin-top: -1px; }
/* בלי מסגרת פנימית כפולה לטבלת הסיכום */
.wc-native .shop_table, .wc-native .woocommerce-checkout-review-order-table { border: 0 !important; }
.wc-native .shop_table th, .wc-native .shop_table td { border-inline: 0 !important; background: transparent !important; }
/* אזור התשלום — לבן נקי */
.wc-native #payment { background: #fff !important; border: 0 !important; border-radius: 0 !important; }
.wc-native #payment .wc_payment_methods { border: 0; padding: 0; }
.wc-native #payment .wc_payment_method { background: #fff !important; }
.wc-native #payment div.payment_box { background: #fff !important; color: var(--brown); border-radius: 0; }
.wc-native #payment div.payment_box::before { display: none !important; }
.wc-native #payment .place-order { padding: 0; }
.wc-native #order_review {
	background: #fff;
	border: 1px solid var(--line);
	padding: 22px;
	position: sticky;
	top: 96px;
}
.wc-native .woocommerce-billing-fields h3, .wc-native .woocommerce-additional-fields h3 { font-size: 18px; font-weight: 400; margin: 0 0 14px; }
.wc-native .form-row { margin: 0 0 14px; }
.wc-native .form-row label { font-size: 13px; color: var(--brown); display: block; margin-bottom: 5px; }
.wc-native .form-row .required { color: var(--terra); text-decoration: none; }
/* שדות — אותו עיצוב בדיוק כמו טופס ההתאמה האישית בעמוד מוצר.
   ה-important נדרש כי ה-CSS של משולם נטען אחרינו ודורס. */
.wc-native .form-row input.input-text,
.wc-native .form-row input,
.wc-native .form-row select,
.wc-native .form-row textarea,
.wc-native .input-text, .wc-native select, .wc-native textarea {
	width: 100% !important;
	border: 1px solid var(--line) !important;
	background: var(--paper) !important;
	padding: 11px 12px !important;
	height: auto !important;
	font: inherit !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	color: var(--ink) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: border-color .2s;
}
.wc-native .form-row label {
	display: block !important;
	float: none !important;
	font-size: 13.5px !important;
	color: var(--brown) !important;
	margin: 0 0 5px !important;
	font-weight: 400 !important;
}
.wc-native .input-text::placeholder, .wc-native textarea::placeholder { color: #B3A392 !important; }
/* צ'קבוקסים ורדיו — לא נמתחים, צמודים לטקסט שלהם */
.wc-native .form-row input[type="checkbox"], .wc-native .form-row input[type="radio"],
.wc-native input[type="checkbox"], .wc-native input[type="radio"] {
	width: 16px !important;
	height: 16px !important;
	padding: 0 !important;
	display: inline-block !important;
	vertical-align: middle;
	margin: 0 !important;
	margin-inline-end: 8px !important;
	accent-color: #111;
	flex: 0 0 auto;
}
.wc-native label.checkbox, .wc-native .woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: center;
	gap: 4px;
	font-size: 13.5px !important;
	color: var(--ink) !important;
	margin: 0 !important;
}
.wc-native .woocommerce-terms-and-conditions-wrapper { margin-top: 6px; }
.wc-native .woocommerce-privacy-policy-text p { font-size: 12px; color: var(--brown); line-height: 1.7; margin: 0 0 10px; }
.wc-native .form-row input:focus, .wc-native .form-row select:focus, .wc-native .form-row textarea:focus,
.wc-native .input-text:focus { border-color: var(--brown) !important; outline: none !important; background: #fff !important; }
.wc-native .shop_table { width: 100%; border-collapse: collapse; font-size: 14px; }
.wc-native .shop_table th, .wc-native .shop_table td { text-align: start; padding: 9px 0; border-bottom: 1px solid var(--line); font-weight: 400; }
.wc-native .shop_table tfoot .order-total td, .wc-native .shop_table tfoot .order-total th { font-size: 16.5px; border-bottom: 0; }
.wc-native .wc_payment_methods { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 8px; }
.wc-native .wc_payment_method { border: 1px solid var(--line); padding: 12px 14px; background: var(--bg); }
.wc-native .wc_payment_method label { font-size: 14.5px; }
.wc-native .payment_box { font-size: 13px; color: var(--brown); margin-top: 8px; }
.wc-native #place_order {
	/* ווקומרס מטיס את הכפתור (float) ב-woocommerce-layout-rtl.css —
	   הרשימה שאחריו נדחסה לעמודה צרה. מבטלים כאן. */
	float: none !important;
	display: block;
	width: 100%;
	background: #111;
	color: #fff;
	border: 0;
	padding: 15px;
	font: inherit;
	font-size: 15px;
	letter-spacing: .04em;
	cursor: pointer;
	margin-top: 16px;
	transition: background .25s;
}
.wc-native #place_order:hover { background: #000; }
.wc-native #payment .place-order::after { content: ''; display: table; clear: both; }
.wc-native .woocommerce-form-coupon-toggle { font-size: 13.5px; margin-bottom: 16px; }
.wc-native .woocommerce-NoticeGroup, .wc-native .woocommerce-error, .wc-native .woocommerce-message, .wc-native .woocommerce-info {
	list-style: none; margin: 0 0 18px; padding: 13px 16px; border: 1px solid var(--line); background: #fff; font-size: 13.5px;
}
.wc-native .woocommerce-error { border-color: #C4553B; color: #A33B2A; }
/* שם פרטי + משפחה באותה שורה */
.wc-native .form-row-first, .wc-native .form-row-last { width: calc(50% - 7px); display: inline-block; vertical-align: top; }
.wc-native .form-row-first { margin-inline-end: 14px; }
/* פריט בסיכום הזמנה עם תמונה */
.wc-native .co-item { display: inline-flex; align-items: center; gap: 10px; }
.wc-native .co-thumb { width: 42px; height: 52px; object-fit: cover; background: var(--cream); flex: 0 0 auto; }
.wc-native .co-trust { clear: both; border: 0; padding: 14px 0 0; margin: 0; display: grid; gap: 8px; }
.wc-native .co-trust li { align-items: flex-start; line-height: 1.6; }
.wc-native .co-trust li svg { margin-top: 2px; }
.wc-native .co-pay { height: 26px; width: auto; margin-top: 10px; justify-self: center; display: block; margin-inline: auto; }
.wc-native .product-quantity { color: var(--brown); font-size: 13px; }
/* שם המוצר בולט, פרטי ההתאמה קטנים ועדינים */
.wc-native .woocommerce-checkout-review-order-table .product-name { font-size: 15px !important; color: var(--ink); }
.wc-native .shop_table dl.variation { margin: 6px 0 0 !important; display: grid; gap: 1px; }
.wc-native .shop_table dl.variation,
.wc-native .shop_table dl.variation dt,
.wc-native .shop_table dl.variation dd,
.wc-native .shop_table dl.variation dd p {
	font-size: 10.5px !important;
	font-weight: 400 !important;
	color: var(--brown) !important;
	line-height: 1.65 !important;
}
.wc-native .shop_table dl.variation dt { display: inline; margin: 0 !important; }
.wc-native .shop_table dl.variation dd { display: inline; margin: 0 !important; }
.wc-native .shop_table dl.variation dd p { display: inline; margin: 0 !important; }

@media (max-width: 900px) {
	.shop-grid { grid-template-columns: repeat(2, 1fr); gap: 22px 12px; }
	.cartpage-layout { grid-template-columns: 1fr; }
	.cartpage-summary { position: static; }
	.cp-item { grid-template-columns: 84px 1fr; }
	.cp-line { grid-column: 2; justify-self: end; }
	.cp-media img { width: 84px; height: 105px; }
	/* חייבים לאפס גם את השורות, לא רק את העמודה: #customer_details מוגדר
	   grid-area: 1/1/3/2 (שורות 1–2), הכותרת בשורה 1 ו-#order_review בשורה 2.
	   איפוס grid-column בלבד השאיר את שלושתם באותן שורות — הם נערמו זה על זה
	   וסיכום ההזמנה (רקע לבן אטום, אחרון ב-DOM) כיסה לגמרי את שדות החיוב.
	   grid-area: auto מחזיר למיקום אוטומטי לפי סדר ה-DOM. */
	.wc-native form.checkout { grid-template-columns: 1fr; grid-template-rows: none; }
	.wc-native #customer_details, .wc-native #order_review_heading, .wc-native #order_review { grid-area: auto; }
	.wc-native #order_review { position: static; }
}

/* ============================================================
   רק לעסקים
   ============================================================ */
.biz-hero { background: var(--cream); padding-block: clamp(64px, 9vw, 130px); }
.biz-hero-inner { max-width: 760px; text-align: center; display: grid; gap: 16px; justify-items: center; }
.biz-hero-inner .display { font-size: clamp(34px, 4.5vw, 52px); }
.biz-sub { font-size: 16px; line-height: 1.9; color: var(--brown); margin: 0; max-width: 560px; }
.biz-hero-cta { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; justify-content: center; margin-top: 8px; }
.biz-offers { padding-block: clamp(48px, 7vw, 90px); }
.biz-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(14px, 2vw, 26px); }
.biz-card {
	background: #fff;
	border: 1px solid var(--line);
	padding: clamp(22px, 2.5vw, 34px);
	display: grid;
	gap: 10px;
	align-content: start;
	transition: border-color .3s, transform .5s var(--ease);
}
.biz-card:hover { border-color: var(--terra); transform: translateY(-4px); }
.biz-card .kicker { color: var(--terra); letter-spacing: .14em; }
.biz-card h2 { font-size: 19px; margin: 0; }
.biz-card p:not(.kicker) { font-size: 14.5px; line-height: 1.9; color: var(--brown); margin: 0 0 6px; }
.biz-how { background: var(--cream); padding-block: clamp(56px, 8vw, 104px); }
.biz-steps { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 14px; counter-reset: bizstep; text-align: start; }
.biz-steps li { display: flex; gap: 14px; align-items: baseline; font-size: 15px; line-height: 1.85; color: var(--brown); }
.biz-steps li b { color: var(--ink); font-weight: 400; }
.biz-steps li::before {
	counter-increment: bizstep;
	content: counter(bizstep);
	flex: 0 0 26px;
	height: 26px;
	display: grid;
	place-items: center;
	border-radius: 999px;
	background: var(--terra);
	color: #fff;
	font-size: 13px;
}
.biz-cta { padding-block: clamp(56px, 8vw, 104px); }
@media (max-width: 820px) {
	.biz-cards { grid-template-columns: 1fr; }
}

/* ============================================================
   הודעת עוגיות
   ============================================================ */
.cookie-bar {
	position: fixed;
	inset-inline: 0;
	bottom: 0;
	/* מעל הפופאפ — ההסכמה תמיד קודמת ולעולם לא נקברת מתחתיו */
	z-index: 140;
	background: #fff;
	border-top: 1px solid var(--line);
	box-shadow: 0 -12px 40px rgba(20, 12, 6, .09);
	transform: translateY(105%);
	transition: transform .4s var(--ease);
}
.cookie-bar.show { transform: none; }
.cookie-inner {
	max-width: var(--wrap);
	margin-inline: auto;
	padding: 18px clamp(16px, 3vw, 32px);
	display: flex;
	align-items: center;
	gap: clamp(16px, 3vw, 40px);
	flex-wrap: wrap;
}
.cookie-copy { flex: 1 1 380px; }
.cookie-copy strong { display: block; font-weight: 400; font-size: 15px; color: var(--ink); margin-bottom: 4px; }
.cookie-copy p { margin: 0; font-size: 13px; line-height: 1.75; color: var(--brown); max-width: 78ch; }
.cookie-copy a { color: var(--terra); border-bottom: 1px solid currentColor; }
.cookie-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.cookie-btn {
	font: inherit;
	font-size: 13.5px;
	letter-spacing: .03em;
	padding: 11px 22px;
	cursor: pointer;
	border: 1px solid var(--ink);
	background: transparent;
	color: var(--ink);
	transition: background .22s, color .22s;
	white-space: nowrap;
}
.cookie-accept { background: #111; border-color: #111; color: #fff; }
.cookie-accept:hover { background: #000; }
.cookie-min:hover { background: var(--cream); }
.cookie-btn:focus-visible { outline: 2px solid var(--terra); outline-offset: 2px; }
@media (max-width: 700px) {
	.cookie-inner { padding-block: 16px; }
	.cookie-actions { width: 100%; }
	.cookie-btn { flex: 1; text-align: center; padding-inline: 12px; }
}

/* ============================================================
   פופאפ מועדון הלקוחות
   ============================================================ */
.club-scrim {
	position: fixed; inset: 0; z-index: 130;
	background: rgba(22, 14, 7, .5);
	opacity: 0; transition: opacity .35s;
}
.club-scrim.show { opacity: 1; }
.club-modal {
	position: fixed;
	inset: 0;
	z-index: 131;
	display: grid;
	place-items: center;
	padding: clamp(14px, 3vw, 32px);
	opacity: 0;
	transition: opacity .35s var(--ease);
	pointer-events: none;
}
.club-modal.open { opacity: 1; pointer-events: auto; }
.club-box {
	position: relative;
	width: min(880px, 100%);
	max-height: 92svh;
	overflow-y: auto;
	background: var(--bg);
	border: 1px solid var(--line);
	box-shadow: 0 30px 80px rgba(20, 12, 6, .28);
	display: grid;
	grid-template-columns: .8fr 1fr;
	transform: translateY(18px) scale(.985);
	transition: transform .4s var(--ease);
}
.club-modal.open .club-box { transform: none; }
.club-box:not(:has(.club-media)) { grid-template-columns: 1fr; max-width: 560px; }
.club-media { background: var(--cream); }
.club-media img { width: 100%; height: 100%; object-fit: cover; display: block; min-height: 100%; }
.club-close {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	z-index: 2;
	width: 34px; height: 34px;
	display: grid; place-items: center;
	background: rgba(255, 255, 255, .9);
	color: var(--ink);
	transition: background .2s;
}
.club-close:hover { background: #fff; }
.club-body { padding: clamp(24px, 3.4vw, 42px); display: grid; align-content: center; }
.club-body .kicker { margin: 0 0 6px; color: var(--terra); }
.club-body .display { font-size: clamp(26px, 3.2vw, 38px); margin: 0 0 10px; letter-spacing: .02em; }
.club-text { font-size: 14.5px; line-height: 1.85; color: var(--brown); margin: 0 0 20px; }

.club-form { display: grid; gap: 13px; }
.club-form label { display: grid; gap: 5px; font-size: 13px; color: var(--brown); }
.club-lbl { display: block; }
.club-lbl b { font-weight: 400; color: var(--terra); }
.club-form input:not([type="checkbox"]) {
	width: 100%;
	border: 1px solid var(--line);
	background: #fff;
	padding: 11px 12px;
	font: inherit;
	font-size: 14.5px;
	color: var(--ink);
	border-radius: 0;
	transition: border-color .2s;
}
.club-form input:focus { border-color: var(--brown); outline: none; }
.club-form input[type="date"] { font-size: 14px; }
.club-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.club-hint { font-size: 11.5px; color: #9A8975; }
.club-consent { grid-template-columns: auto 1fr; align-items: start; gap: 9px; font-size: 12.5px; line-height: 1.7; margin-top: 2px; }
.club-consent input { width: 16px; height: 16px; margin-top: 2px; accent-color: var(--terra); flex: 0 0 auto; }
/* הקישור נשאר שלם בשורה — "למדיניות הפרטיות" לא נשבר באמצע */
.club-policy { color: var(--terra); border-bottom: 1px solid currentColor; white-space: nowrap; }
.club-error { margin: 0; font-size: 13px; color: #A33B2A; }
.club-form .btn-solid { margin-top: 6px; }
.club-done { display: grid; justify-items: center; gap: 14px; text-align: center; padding-block: 30px; color: #3E7C43; }
.club-done p { margin: 0; font-size: 16px; line-height: 1.8; color: var(--ink); max-width: 34ch; }

@media (max-width: 720px) {
	.club-box { grid-template-columns: 1fr; max-width: 460px; }
	.club-media { display: none; }
	.club-row { grid-template-columns: 1fr; }
}

/* ============================================================
   תודה על ההזמנה
   ============================================================ */
.ty-page { background: var(--bg); }
.ty-wrap { padding-block: clamp(32px, 4.5vw, 64px) clamp(48px, 7vw, 90px); }

.ty-head {
	text-align: center;
	display: grid;
	justify-items: center;
	gap: 12px;
	padding-block: clamp(24px, 3.5vw, 44px) clamp(28px, 4vw, 52px);
	border-bottom: 1px solid var(--line);
	margin-bottom: clamp(26px, 3.5vw, 44px);
}
.ty-mark {
	width: 64px;
	height: 64px;
	display: grid;
	place-items: center;
	border-radius: 999px;
	background: #E7F0E4;
	color: #3E7C43;
	margin-bottom: 4px;
}
.ty-mark-fail { background: #F6E4E0; color: #A33B2A; }
.ty-head .display { font-size: clamp(28px, 3.6vw, 46px); margin: 0; line-height: 1.2; }
.ty-head .kicker { color: var(--terra); margin: 0; }
.ty-sub { font-size: 15.5px; line-height: 1.9; color: var(--brown); margin: 0; max-width: 58ch; }
.ty-mail { font-size: 14px; }
.ty-mail b { color: var(--ink); font-weight: 400; }
.ty-actions { display: flex; gap: 22px; align-items: center; flex-wrap: wrap; justify-content: center; margin-top: 8px; }

.ty-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: clamp(16px, 2vw, 26px); align-items: start; }
.ty-main, .ty-side { display: grid; gap: clamp(16px, 2vw, 26px); }
.ty-side { position: sticky; top: 96px; }

.ty-card { background: #fff; border: 1px solid var(--line); padding: clamp(20px, 2.4vw, 30px); }
.ty-card-title { font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--brown); margin: 0 0 18px; font-weight: 400; }

/* פרטי ההזמנה */
.ty-facts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px 22px; }
.ty-facts li { display: grid; gap: 3px; }
.ty-facts span { font-size: 12.5px; color: var(--brown); }
.ty-facts b { font-size: 15.5px; font-weight: 400; color: var(--ink); }
.ty-facts b .amount { font-weight: 400; }

/* מוצרים */
.ty-items { list-style: none; margin: 0; padding: 0; display: grid; }
.ty-item { display: grid; grid-template-columns: 62px 1fr auto; gap: 14px; align-items: start; padding-block: 16px; border-bottom: 1px solid var(--line); }
.ty-item:first-child { padding-top: 0; }
.ty-item-media img { width: 62px; height: 78px; object-fit: cover; background: var(--cream); display: block; }
.ty-item-body h3 { font-size: 15.5px; font-weight: 400; margin: 0 0 5px; line-height: 1.5; }
.ty-item-body h3 a:hover { color: var(--terra); }
.ty-item-meta, .ty-item-meta p, .ty-item-meta dl, .ty-item-meta dt, .ty-item-meta dd {
	font-size: 11.5px !important;
	color: var(--brown) !important;
	line-height: 1.7 !important;
	margin: 0 !important;
	font-weight: 400 !important;
	display: inline;
}
.ty-item-meta { display: block !important; margin-bottom: 4px !important; }
.ty-item-meta dt { margin-inline-end: 3px !important; }
.ty-item-meta dd::after { content: ' · '; opacity: .5; }
.ty-item-meta dd:last-child::after { content: ''; }
.ty-item-qty { font-size: 12.5px; color: var(--brown); display: block; margin-top: 4px; }
.ty-item-line { font-size: 15px; white-space: nowrap; padding-top: 2px; }

.ty-totals { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 9px; }
.ty-totals li { display: flex; justify-content: space-between; gap: 16px; font-size: 14px; color: var(--brown); }
.ty-totals b { font-weight: 400; color: var(--ink); }
.ty-totals .is-grand { border-top: 1px solid var(--line); padding-top: 12px; margin-top: 4px; font-size: 17px; color: var(--ink); }
.ty-note { font-size: 13.5px; line-height: 1.8; color: var(--brown); margin: 16px 0 0; padding-top: 14px; border-top: 1px solid var(--line); }
.ty-note b { color: var(--ink); font-weight: 400; }

/* כתובות */
.ty-addr-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.ty-addr h3 { font-size: 13px; font-weight: 400; color: var(--brown); margin: 0 0 8px; }
.ty-addr address { font-style: normal; font-size: 14.5px; line-height: 1.85; color: var(--ink); }
.ty-addr-method { font-size: 13px; color: var(--brown); margin: 8px 0 0; }

/* מה קורה עכשיו */
.ty-next { background: var(--cream); border-color: transparent; }
.ty-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 18px; }
.ty-steps li { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: start; }
.ty-step-num {
	width: 28px; height: 28px;
	display: grid; place-items: center;
	border-radius: 999px;
	background: var(--ink);
	color: #fff;
	font-size: 13px;
}
.ty-steps b { font-weight: 400; color: var(--ink); font-size: 14.5px; display: block; margin-bottom: 2px; }
.ty-steps p { font-size: 13.5px; line-height: 1.8; color: var(--brown); margin: 0; }

/* עזרה */
.ty-help-text { font-size: 13.5px; line-height: 1.85; color: var(--brown); margin: 0 0 14px; }
.ty-help-links { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.ty-help-links a { display: flex; align-items: center; gap: 9px; padding-block: 9px; font-size: 14.5px; border-bottom: 1px solid var(--line); transition: color .2s; }
.ty-help-links li:last-child a { border-bottom: 0; }
.ty-help-links a:hover { color: var(--terra); }
.ty-help-links svg { color: var(--terra); flex: 0 0 auto; }
.ty-account { margin-top: 14px; display: inline-block; }

.ty-foot { text-align: center; margin-top: clamp(26px, 3.5vw, 44px); }

@media (max-width: 900px) {
	.ty-grid { grid-template-columns: 1fr; }
	.ty-side { position: static; }
	.ty-facts, .ty-addr-grid { grid-template-columns: 1fr; }
	.ty-item { grid-template-columns: 56px 1fr; }
	.ty-item-media img { width: 56px; height: 70px; }
	.ty-item-line { grid-column: 2; justify-self: end; }
}

/* ============================================================
   אודות
   ============================================================ */
.about-hero { padding-block: clamp(40px, 5vw, 76px) clamp(48px, 6vw, 88px); }
.about-hero-inner {
	display: grid;
	grid-template-columns: 1fr 1.05fr;
	gap: clamp(28px, 5vw, 78px);
	align-items: center;
}
.about-hero.is-solo .about-hero-inner { grid-template-columns: 1fr; max-width: 780px; text-align: center; justify-items: center; }
.about-hero-body { display: grid; gap: 16px; align-content: center; }
.about-hero-body .display { font-size: clamp(32px, 4.4vw, 56px); line-height: 1.14; margin: 0; }
.about-lead { font-size: clamp(15px, 1.35vw, 17.5px); line-height: 1.95; color: var(--brown); margin: 0; max-width: 54ch; }
.about-hero-cta { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; margin-top: 10px; }
.about-hero.is-solo .about-hero-cta { justify-content: center; }
/* התמונה יוצאת מהרשת אל שולי המסך — קו אדיטוריאלי */
.about-hero-media { position: relative; }
.about-hero-media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.about-hero-media::after {
	content: '';
	position: absolute;
	inset-inline-end: -24px;
	bottom: -24px;
	width: 52%;
	height: 46%;
	border: 1px solid var(--terra);
	z-index: -1;
}

/* מספרים */
.about-stats { background: var(--cream); }
.about-stats-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding-block: clamp(32px, 4vw, 54px);
}
.about-stat { text-align: center; padding-inline: 14px; border-inline-start: 1px solid var(--line); display: grid; gap: 6px; }
.about-stat:first-child { border-inline-start: 0; }
.about-stat-num { font-size: clamp(26px, 3.2vw, 42px); line-height: 1.1; color: var(--ink); }
.about-stat-label { font-size: 13px; letter-spacing: .04em; color: var(--brown); }

/* סיפור */
.about-story { padding-block: clamp(56px, 8vw, 110px); }
.about-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 80px); align-items: start; }
.about-story.is-solo .about-story-grid { grid-template-columns: 1fr; max-width: 780px; margin-inline: auto; }
.about-story-body { display: grid; gap: 14px; position: sticky; top: 110px; }
.about-story.is-solo .about-story-body { position: static; }
.about-story-body .display { font-size: clamp(26px, 3.1vw, 40px); margin: 0; line-height: 1.22; }
.about-prose p { font-size: 15.5px; line-height: 2; color: var(--brown); margin: 0 0 16px; }
.about-prose p:last-child { margin-bottom: 0; }
.about-story-media img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; }

/* ערכים */
.about-values { background: var(--cream); padding-block: clamp(56px, 8vw, 104px); }
.about-head { display: grid; gap: 10px; margin-bottom: clamp(28px, 3.5vw, 48px); max-width: 640px; }
.about-head.center { margin-inline: auto; text-align: center; justify-items: center; }
.about-head .display { font-size: clamp(26px, 3.1vw, 40px); margin: 0; }
.about-values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(18px, 2.4vw, 34px); }
.about-value { border-top: 1px solid var(--ink); padding-top: 20px; display: grid; gap: 9px; align-content: start; }
.about-value-idx { font-size: 13px; letter-spacing: .16em; color: var(--terra); }
.about-value h3 { font-size: 19px; font-weight: 400; margin: 0; color: var(--ink); }
.about-value p { font-size: 14.5px; line-height: 1.9; color: var(--brown); margin: 0; }

/* תהליך */
.about-process { padding-block: clamp(56px, 8vw, 104px); }
.about-steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(16px, 2.2vw, 30px);
	position: relative;
}
/* הקו שמחבר בין השלבים */
.about-steps::before {
	content: '';
	position: absolute;
	top: 17px;
	inset-inline: 6%;
	height: 1px;
	background: var(--line);
}
.about-step { display: grid; gap: 9px; align-content: start; text-align: center; justify-items: center; }
.about-step-dot {
	width: 35px;
	height: 35px;
	display: grid;
	place-items: center;
	border-radius: 999px;
	background: var(--ink);
	color: #fff;
	font-size: 14px;
	position: relative;
	z-index: 1;
}
.about-step h3 { font-size: 17px; font-weight: 400; margin: 4px 0 0; }
.about-step p { font-size: 14px; line-height: 1.85; color: var(--brown); margin: 0; max-width: 26ch; }

/* גלריה */
.about-gallery { padding-block: 0 clamp(56px, 8vw, 100px); }
.about-gallery .display { font-size: clamp(24px, 2.8vw, 36px); margin-bottom: clamp(24px, 3vw, 40px); }
.about-gal-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; }
.about-gal-grid figure { margin: 0; overflow: hidden; aspect-ratio: 1; }
.about-gal-grid figure:first-child { grid-column: span 2; grid-row: span 2; aspect-ratio: 1; }
.about-gal-grid img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .9s var(--ease); }
.about-gal-grid figure:hover img { transform: scale(1.05); }

.about-cta { background: var(--cream); padding-block: clamp(56px, 8vw, 104px); }
.about-cta .about-hero-cta { justify-content: center; }

@media (max-width: 900px) {
	.about-hero-inner, .about-story-grid { grid-template-columns: 1fr; }
	.about-hero-media { order: -1; }
	.about-story-body { position: static; }
	.about-values-grid { grid-template-columns: 1fr; }
	.about-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 26px 0; }
	.about-stat:nth-child(odd) { border-inline-start: 0; }
	.about-steps { grid-template-columns: 1fr; gap: 22px; }
	.about-steps::before { display: none; }
	.about-step { grid-template-columns: 35px 1fr; text-align: start; justify-items: start; column-gap: 14px; }
	.about-step-dot { grid-row: span 2; }
	.about-step h3 { margin: 0; align-self: center; }
	.about-step p { grid-column: 2; max-width: none; }
	.about-gal-grid { grid-template-columns: repeat(2, 1fr); }
	.about-gal-grid figure:first-child { grid-column: span 2; grid-row: span 1; }
}

/* ============================================================
   חיפוש
   ============================================================ */
.search-panel {
	position: fixed;
	inset-inline: 0;
	top: 0;
	z-index: 95;
	background: #fff;
	border-bottom: 1px solid var(--line);
	box-shadow: 0 18px 50px rgba(20, 12, 6, .12);
	transform: translateY(-102%);
	transition: transform .35s var(--ease);
}
.search-panel.open { transform: none; }
.search-panel-inner { padding-block: 26px 20px; }
.search-panel form { display: flex; align-items: center; gap: 14px; border-bottom: 1px solid var(--ink); padding-bottom: 12px; }
.search-panel input {
	flex: 1;
	border: 0;
	background: transparent;
	font: inherit;
	font-size: clamp(17px, 2.2vw, 24px);
	color: var(--ink);
	outline: none;
}
.search-panel input::placeholder { color: #B3A392; }
.search-panel input::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.search-close { padding: 4px; }
.search-suggest { display: grid; gap: 0; padding-top: 6px; max-height: 52vh; overflow-y: auto; }
.search-suggest a {
	display: grid;
	grid-template-columns: 44px 1fr auto;
	gap: 14px;
	align-items: center;
	padding: 10px 4px;
	border-bottom: 1px solid var(--line);
}
.search-suggest a:hover { background: var(--bg); }
.search-suggest img { width: 44px; height: 55px; object-fit: cover; background: var(--cream); }
.search-suggest .sname { font-size: 14px; }
.search-suggest .sprice { font-size: 13px; color: var(--brown); }
.search-suggest .sall { grid-template-columns: 1fr; text-align: center; color: var(--terra); font-size: 13.5px; }

/* ============================================================
   צרו קשר / מרכז לידים
   ============================================================ */
.contact-page { padding-block: 22px 70px; }
.contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
	gap: clamp(22px, 3vw, 44px);
	align-items: start;
	margin-top: 34px;
}
.contact-card { background: #fff; border: 1px solid var(--line); padding: clamp(22px, 3vw, 36px); }
.lead-form { display: grid; gap: 15px; }
.lead-form label { display: block; font-size: 13.5px; color: var(--brown); }
.lead-form label span { color: var(--terra); }
.lead-form label input, .lead-form label textarea { width: 100%; margin-top: 6px; display: block; }
.lead-form input, .lead-form textarea {
	border: 1px solid var(--line);
	background: var(--bg);
	padding: 12px;
	font: inherit;
	font-size: 14.5px;
	color: var(--ink);
	transition: border-color .2s, background .2s;
}
.lead-form input:focus, .lead-form textarea:focus { border-color: var(--brown); background: #fff; outline: none; }
.lead-form textarea { resize: vertical; }
.lead-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.lead-form .btn-solid { border: 0; cursor: pointer; justify-self: start; padding-inline: 40px; }
.lead-note { margin: 0; font-size: 12px; color: var(--brown); }
.lead-hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); margin: 0; }
.contact-error { background: #FBEFEA; border: 1px solid #D8A18E; color: #A33B2A; padding: 11px 14px; font-size: 13.5px; margin: 0 0 16px; }
.contact-success { text-align: center; display: grid; gap: 10px; justify-items: center; padding-block: 26px; }
.contact-success svg { color: var(--terra); }
.contact-success h2 { margin: 0; font-weight: 400; font-size: 22px; }
.contact-success p { margin: 0; color: var(--brown); }
.contact-info { display: grid; gap: 16px; }
.contact-info-card { background: #fff; border: 1px solid var(--line); padding: 22px; }
.contact-info-card h2 { font-size: 16px; font-weight: 400; margin: 0 0 12px; }
.contact-info-card p { margin: 0 0 10px; font-size: 14px; color: var(--brown); }
.contact-info-card ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.contact-info-card li { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; font-size: 13.5px; }
.contact-info-card li span { color: var(--brown); }

/* ============================================================
   404 + בלוג
   ============================================================ */
.notfound { padding-block: clamp(60px, 10vw, 130px); text-align: center; display: grid; gap: 16px; justify-items: center; }
.notfound .kicker { color: var(--terra); letter-spacing: .2em; font-size: 16px; }
.notfound-search { display: flex; gap: 10px; width: min(480px, 100%); margin-top: 8px; }
.notfound-search input { flex: 1; border: 1px solid var(--line); background: #fff; padding: 12px 14px; font: inherit; font-size: 14.5px; }
.notfound-search .btn-solid { border: 0; cursor: pointer; }
.notfound-links { display: flex; gap: 22px; align-items: center; margin-top: 6px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 36px; }
.blog-card { background: #fff; border: 1px solid var(--line); display: grid; }
.blog-media { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--cream); }
.blog-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease); }
.blog-card:hover .blog-media img { transform: scale(1.04); }
.blog-body { padding: 20px; display: grid; gap: 8px; justify-items: start; }
.blog-body time { font-size: 12px; color: var(--brown); }
.blog-body h2 { font-size: 18px; font-weight: 400; margin: 0; }
.blog-body p { font-size: 14px; color: var(--brown); margin: 0; line-height: 1.8; }

@media (max-width: 900px) {
	.contact-layout { grid-template-columns: 1fr; }
	.lead-row { grid-template-columns: 1fr; }
	.blog-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   איזור אישי
   ============================================================ */
.wc-native .woocommerce-form-login, .wc-native .woocommerce-form-register {
	max-width: 460px;
	margin-inline: auto;
	background: #fff;
	border: 1px solid var(--line);
	padding: 30px 28px;
}
.wc-native .u-columns, .wc-native #customer_login { display: grid !important; grid-template-columns: 1fr 1fr; gap: 36px; align-items: start; }
.wc-native .u-columns > div, .wc-native #customer_login > div {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
	grid-row: 1;
}
.wc-native .u-columns h2 { font-size: 19px; font-weight: 400; margin: 0 0 14px; text-align: center; }
.wc-native .button, .wc-native button.button {
	background: #111 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 11px 22px !important;
	font: inherit !important;
	font-size: 13.5px !important;
	letter-spacing: .03em;
	cursor: pointer;
	transition: background .25s;
}
.wc-native .button:hover { background: #000 !important; }
.wc-native .lost_password { font-size: 13px; text-align: center; margin: 12px 0 0; }
.wc-native .lost_password a { color: var(--brown); border-bottom: 1px solid var(--line); }

.wc-native .woocommerce:has(.woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: clamp(22px, 3vw, 44px);
	align-items: start;
}
.acct-hello { padding: 4px 2px 14px; }
.acct-hello .kicker { color: var(--ink); font-size: 17px; }
.acct-hello-sub { margin: 4px 0 0; font-size: 13px; color: var(--brown); }
.wc-native .woocommerce-MyAccount-navigation { width: 100%; float: none; }
.wc-native .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; background: #fff; border: 1px solid var(--line); }
.wc-native .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--line); }
.wc-native .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.wc-native .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 13px 16px;
	font-size: 14px;
	border-inline-start: 3px solid transparent;
	transition: background .2s, border-color .2s, color .2s;
}
.wc-native .woocommerce-MyAccount-navigation a:hover { background: var(--bg); color: var(--terra); }
.wc-native .woocommerce-MyAccount-navigation .is-active a {
	border-inline-start-color: var(--terra);
	background: var(--bg);
	color: var(--ink);
}
.wc-native .woocommerce-MyAccount-navigation--customer-logout a { color: var(--terra); }
.wc-native .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid var(--line);
	padding: clamp(20px, 2.5vw, 32px);
	width: 100%;
	float: none;
	font-size: 14.5px;
	line-height: 1.9;
}
.wc-native .woocommerce-MyAccount-content h2, .wc-native .woocommerce-MyAccount-content h3 { font-weight: 400; font-size: 18px; }
.wc-native .woocommerce-MyAccount-content fieldset { border: 0; padding: 0; margin: 18px 0 0; }
.wc-native .woocommerce-MyAccount-content legend { font-size: 15px; color: var(--brown); margin-bottom: 8px; }
.wc-native .woocommerce-orders-table__cell { vertical-align: middle; }
.wc-native .woocommerce-orders-table .button { padding: 8px 14px !important; font-size: 12.5px !important; }
.wc-native .woocommerce-Addresses .title h3 { font-size: 16px; }
.wc-native .woocommerce-Address .edit { font-size: 13px; color: var(--brown); border-bottom: 1px solid var(--line); }
@media (max-width: 900px) {
	.wc-native .woocommerce:has(.woocommerce-MyAccount-navigation) { grid-template-columns: 1fr; }
	.wc-native .u-columns { grid-template-columns: 1fr; }
}

/* ============================================================
   מעברי עמודים — View Transitions (נייטיב, בלי ספריות)
   ============================================================ */
@view-transition { navigation: auto; }
/* ההדר והצפים יציבים בין עמודים — תחושת אפליקציה */
.site-header { view-transition-name: site-header; }
.floats-contact { view-transition-name: mh-floats; }
.a11y-root { view-transition-name: mh-a11y; }
@media (prefers-reduced-motion: no-preference) {
	::view-transition-old(root) { animation: vt-out .2s var(--ease) both; }
	::view-transition-new(root) { animation: vt-in .32s var(--ease) both; }
}
@keyframes vt-out { to { opacity: 0; transform: translateY(-10px); } }
@keyframes vt-in { from { opacity: 0; transform: translateY(16px); } }
html[data-a11y-still] ::view-transition-old(root),
html[data-a11y-still] ::view-transition-new(root),
html[data-a11y-still] ::view-transition-group(*) { animation: none !important; }

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.ticker { animation: none; }
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
	.js [data-anim], .js [data-anim] > * { opacity: 1 !important; transform: none !important; filter: none !important; }
}

/* ============================================================
   מובייל — בלי זום אוטומטי בפוקוס ובלי גלישה אופקית
   ============================================================ */
/* ספארי ב-iOS מזים את כל העמוד ברגע שנוגעים בשדה שהטקסט בו קטן מ-16px,
   ולא חוזר לאחור — הגולש נשאר עם עמוד מוגדל וחתוך. הגדלה ל-16px רק
   מתחת ל-900px; הדסקטופ שומר על הגדלים של חוזה העיצוב.
   הפתרון הנפוץ של maximum-scale=1 בתגית viewport נפסל בכוונה: הוא חוסם
   גם זום ידני ומפיל את ת"י 5568. */
@media (max-width: 900px) {
	/* רשת ביטחון כללית — תופסת גם טפסים בלי כלל ייעודי (התחברות, איזור אישי, WCPA) */
	input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
	input[type="password"], input[type="url"], input[type="date"], input[type="search"],
	textarea, select { font-size: 16px !important; }
	/* הקופה נדרשת במפורש: הכללים שלה כבר !important (בגלל ה-CSS של משולם),
	   ו-!important עם specificity גבוה יותר מנצח גם כלל שמופיע אחריו. */
	.wc-native .form-row input.input-text,
	.wc-native .form-row input,
	.wc-native .form-row select,
	.wc-native .form-row textarea,
	.wc-native .input-text,
	.wc-native select,
	.wc-native textarea { font-size: 16px !important; }
	/* פאנל החיפוש תוכנן גדול מ-16px — לא מקטינים אותו */
	.search-panel input { font-size: clamp(17px, 2.2vw, 24px) !important; }
}
