/* DVS - Modern Editorial Overlay (LUXURY edition)
 * About aside - visual brand tile (replaces text label) */
.dsv-aside-visual {
  position: relative;
  top: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  aspect-ratio: 1 / 1;
  border-radius: 24px;
  background:
    radial-gradient(120% 120% at 15% 10%, rgba(232,93,46,0.14), transparent 55%),
    radial-gradient(120% 120% at 90% 90%, rgba(212,162,74,0.20), transparent 55%),
    #FFFFFF;
  border: 1px solid rgba(10,10,11,0.07);
  box-shadow: 0 24px 60px -30px rgba(10,10,11,0.28);
  overflow: hidden;
}
.dsv-aside-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(10,10,11,0.05) 1px, transparent 1px);
  background-size: 22px 22px;
  -webkit-mask-image: radial-gradient(70% 70% at 50% 50%, #000, transparent);
  mask-image: radial-gradient(70% 70% at 50% 50%, #000, transparent);
}
.dsv-aside-visual img {
  width: 62%;
  height: auto;
  position: relative;
  z-index: 1;
  /* Crop the tiny baked-in subtitle; we render a crisp one below */
  clip-path: inset(0 0 16% 0);
  animation: m-float 6s ease-in-out infinite;
}
.dsv-aside-caption {
  position: relative;
  z-index: 1;
  font-family: "JetBrains Mono", var(--font-mono), monospace;
  font-size: clamp(10px, 1vw, 13px);
  font-weight: 500;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
  color: var(--ink-700);
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .dsv-aside-mark { display: none; }
  .dsv-aside-visual { aspect-ratio: 16 / 9; position: static; width: 100%; }
  .dsv-aside-visual img { width: 120px; }
  .dsv-two-col { display: flex; flex-direction: column; }
}

/* DVS - Modern Editorial Overlay (LUXURY edition)
 * Quiet, premium, monochrome with a single restrained gold accent.
 * Loads AFTER brand-tokens.css, site.css, site-app.css.
 */

:root {
  /* ONE accent only - antique gold. Everything else is ink + bone. */
  --m-gold:    #B08948;   /* warm antique gold - quiet, jewellery */
  --m-gold-soft: #D4B57E; /* lighter gold for hover/secondary */
  --m-ember:   #E85D2E;   /* logo terracotta - flagship accent only */
  --m-ink:     #0A0A0B;
  --m-bone:    #FBFAF6;
  --m-line:    rgba(10,10,11,0.10);
  --m-line-soft: rgba(10,10,11,0.06);

  /* Fonts: sans-serif body for legibility, serif kept for big headlines only */
  --m-font-display: "Cormorant Garamond", "Playfair Display", Georgia, serif;
  --m-font-display-he: "Frank Ruhl Libre", "David Libre", Georgia, serif;
  --m-font-body: "Heebo", "Inter Tight", "Inter", system-ui, -apple-system, sans-serif;
  --m-font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, monospace;
}

/* Warmer canvas */
body.dsv-body {
  background: var(--m-bone);
  font-family: var(--m-font-body);
  font-feature-settings: "kern", "liga", "calt";
}
[lang="he"] body.dsv-body { font-family: var(--m-font-body); }

/* Body text -> sans-serif, never serif italic */
.dsv-page-lede,
.dsv-section-lede,
.dsv-hero-lede,
.dsv-home-lede,
.dsv-service-desc,
.dsv-case-summary,
.dsv-process-desc,
.dsv-principle-desc,
.dsv-stat-label,
.dsv-index-desc,
.dsv-prose p {
  font-family: var(--m-font-body) !important;
  font-weight: 400;
  letter-spacing: -0.005em;
  font-style: normal !important;
}

/* Big titles - editorial display serif, tight and quiet */
.dsv-hero-title,
.dsv-home-title,
.dsv-page-title,
.dsv-section-title,
.dsv-cta-title,
.dsv-index-title,
.dsv-process-title {
  font-family: var(--m-font-display);
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 0.96;
  color: var(--m-ink);
}
[lang="he"] .dsv-hero-title,
[lang="he"] .dsv-home-title,
[lang="he"] .dsv-page-title,
[lang="he"] .dsv-section-title,
[lang="he"] .dsv-cta-title,
[lang="he"] .dsv-index-title,
[lang="he"] .dsv-process-title {
  font-family: var(--m-font-display-he);
  letter-spacing: -0.015em;
  line-height: 1.05;
  font-weight: 500;
}

/* Italic 'em' - single quiet gold accent, no gradients */
.dsv-hero-title em,
.dsv-home-title em,
.dsv-page-title em,
.dsv-section-title em,
.dsv-cta-title em,
.dsv-index-title em {
  font-style: italic;
  color: var(--m-gold);
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
}
[lang="he"] .dsv-hero-title em,
[lang="he"] .dsv-home-title em,
[lang="he"] .dsv-page-title em,
[lang="he"] .dsv-section-title em,
[lang="he"] .dsv-cta-title em,
[lang="he"] .dsv-index-title em { font-style: normal; font-weight: 600; }
/* Hebrew: solid gold accent — no italic, no gradient-clip (which renders skewed/thin on Hebrew glyphs) */
[lang="he"] .dsv-hero-title em,
[lang="he"] .dsv-home-title em,
[lang="he"] .dsv-page-title em,
[lang="he"] .dsv-section-title em,
[lang="he"] .dsv-cta-title em,
[lang="he"] .dsv-index-title em {
  background: none !important;
  -webkit-text-fill-color: currentColor;
  color: var(--m-gold, #C08A2E) !important;
  transform: none !important;
  animation: none !important;
}

/* ===== HERO - soft monochrome wash, no rainbow ===== */
.dsv-hero,
.dsv-home-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: var(--m-bone);
}
/* Tighter top so the headline sits higher now the spec bar is gone */
.dsv-home-hero { padding-top: clamp(48px, 9vh, 96px) !important; }
.dsv-home-title { font-size: clamp(46px, 8.2vw, 132px) !important; }
[lang="he"] .dsv-home-title { font-size: clamp(44px, 7.6vw, 120px) !important; }
/* Bigger, more confident section + card + process titles */
.dsv-section-title { font-size: clamp(34px, 4.4vw, 68px) !important; }
.dsv-index-title { font-size: clamp(24px, 2.4vw, 34px) !important; }
.dsv-process-title { font-size: clamp(22px, 2.1vw, 30px) !important; }
.dsv-case-title { font-size: clamp(24px, 2.4vw, 34px) !important; }
/* Center the section header (eyebrow + title) instead of the 2-col split */
.dsv-section-head {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 18px;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  position: relative;
}
/* Short centered gold accent under the heading — intentional, not a stray rule */
.dsv-section-head::after { content: none; }
.dsv-section-head .dsv-section-title { max-width: 820px; }
.dsv-hero::before,
.dsv-home-hero::before {
  content: "";
  position: absolute;
  inset: -10%;
  z-index: 0;
  background:
    radial-gradient(55% 50% at 20% 25%, rgba(232,93,46,0.10), transparent 65%),
    radial-gradient(50% 45% at 82% 30%, rgba(110,92,255,0.09), transparent 68%),
    radial-gradient(60% 55% at 50% 92%, rgba(14,175,203,0.08), transparent 64%),
    radial-gradient(45% 40% at 88% 82%, rgba(212,162,74,0.09), transparent 64%);
  filter: blur(30px);
  pointer-events: none;
  transform: translate3d(var(--m-px, 0px), calc(var(--m-py, 0px) + var(--m-scroll, 0px)), 0);
  transition: transform 600ms cubic-bezier(0.16,1,0.3,1);
  animation: m-mesh 22s ease-in-out infinite alternate;
}
@keyframes m-mesh {
  0%   { background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%; }
  100% { background-position: 6% -4%, -5% 5%, 4% 3%, -4% -3%; }
}
.dsv-hero > *,
.dsv-home-hero > * { position: relative; z-index: 1; }

/* Subtle dot grid overlay across hero - monochrome only */
.dsv-hero::after,
.dsv-home-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: radial-gradient(rgba(10,10,11,0.06) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,0.4), rgba(0,0,0,0));
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,0.4), rgba(0,0,0,0));
  pointer-events: none;
}

/* Spec strip - quiet card */
.dsv-hero-spec,
.dsv-home-spec,
.lh-spec-strip {
  border-color: var(--m-line) !important;
  background: rgba(255,255,255,0.6) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* ===== Page hero (inner pages) - soft monochrome ===== */
.dsv-page-hero {
  background: var(--m-bone);
  border-bottom: none !important;
  position: relative;
  overflow: hidden;
}
.dsv-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(60% 60% at 80% 0%, rgba(176,137,72,0.06), transparent 65%);
  pointer-events: none;
}
.dsv-page-hero::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--m-line), transparent);
}

/* Eyebrow: quiet pill, single tiny gold dot (no blinking) */
.dsv-page-eyebrow,
.dsv-section-mark,
.dsv-hero-eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  padding: 6px 14px;
  background: rgba(255,255,255,0.6);
  backdrop-filter: blur(6px);
  border: 1px solid var(--m-line);
  border-radius: 999px;
  font-family: var(--m-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  font-weight: 500 !important;
  color: var(--m-ink) !important;
  text-transform: uppercase;
  opacity: 0.85;
}
.dsv-page-eyebrow::before,
.dsv-section-mark::before,
.dsv-hero-eyebrow::before {
  content: "";
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--m-gold);
}

/* ===== Buttons - restrained, no scale jumps ===== */
.dsv-btn,
.lh-btn {
  border-radius: 999px;
  font-weight: 500;
  letter-spacing: -0.005em;
  transition: background 220ms, color 220ms, border-color 220ms, transform 220ms;
}
.dsv-btn-primary,
.lh-btn-primary {
  background: linear-gradient(135deg, var(--m-brass, #D4A24A) 0%, #C2873A 100%);
  color: #FFF8EC;
  box-shadow: 0 6px 18px -6px rgba(196,135,58,0.55);
}
.dsv-btn-primary:hover,
.lh-btn-primary:hover {
  background: linear-gradient(135deg, #E0B45E 0%, #C2873A 100%);
  color: #2A1C06;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px -8px rgba(196,135,58,0.6);
}
.dsv-btn-primary-light,
.lh-btn-primary-light {
  background: var(--m-bone);
  color: var(--m-ink);
}
.dsv-btn-primary-light:hover,
.lh-btn-primary-light:hover {
  background: var(--m-gold);
  color: var(--m-ink);
  transform: translateY(-1px);
}
.dsv-btn-ghost,
.dsv-btn-outline,
.lh-btn-ghost {
  border: 1px solid var(--m-line);
  background: transparent;
}
.dsv-btn-ghost:hover,
.dsv-btn-outline:hover,
.lh-btn-ghost:hover {
  border-color: var(--m-ink);
  background: var(--m-ink);
  color: var(--m-bone);
}

/* ===== Cards - quiet white, subtle gold underline on hover ===== */
.dsv-case-card,
.dsv-product-card,
.dsv-principle-card,
.dsv-index-card,
.dsv-service-row {
  border-radius: 14px !important;
  border: 1px solid var(--m-line-soft);
  background: #FFFFFF;
  transition: border-color 280ms cubic-bezier(0.16,1,0.3,1),
              box-shadow 280ms,
              transform 280ms;
  position: relative;
  overflow: hidden;
}
.dsv-case-card::before,
.dsv-product-card::before,
.dsv-index-card::before {
  content: "";
  position: absolute;
  bottom: 0; left: 0;
  width: 100%;
  height: 1px;
  background: var(--m-gold);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 320ms cubic-bezier(0.16,1,0.3,1);
}
[dir="rtl"] .dsv-case-card::before,
[dir="rtl"] .dsv-product-card::before,
[dir="rtl"] .dsv-index-card::before {
  transform-origin: right center;
}

.dsv-case-card:hover,
.dsv-product-card:hover,
.dsv-principle-card:hover,
.dsv-index-card:hover,
.dsv-service-row:hover {
  transform: translateY(-3px);
  border-color: var(--m-line);
  box-shadow: 0 12px 30px -16px rgba(10,10,11,0.18);
}
.dsv-case-card:hover::before,
.dsv-product-card:hover::before,
.dsv-index-card:hover::before {
  transform: scaleX(1);
}
/* Keep index cards light on hover so the dark text stays readable (override base dark-invert) */
.dsv-index-card:hover { background: #FFFFFF !important; color: var(--m-ink) !important; }

/* ===== Two-product flagship grid ===== */
.dsv-products-2 {
  display: grid !important;
  grid-template-columns: 1.25fr 1fr !important;
  gap: 24px !important;
}
@media (max-width: 820px) {
  .dsv-products-2 { grid-template-columns: 1fr !important; }
}
/* ===== Product grid: flagship spans full top row, 4 cards below in 2x2 ===== */
.dsv-products-4 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 22px !important;
}
.dsv-products-4 .dsv-flagship { grid-column: 1 / -1; }
@media (max-width: 980px) {
  .dsv-products-4 { grid-template-columns: 1fr 1fr !important; }
  .dsv-products-4 .dsv-flagship { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .dsv-products-4 { grid-template-columns: 1fr !important; }
}
.dsv-flagship {
  position: relative;
  background:
    radial-gradient(120% 120% at 100% 0%, rgba(232,93,46,0.10), transparent 55%),
    #FFFFFF !important;
  border-color: rgba(232,93,46,0.30) !important;
}
.dsv-flagship::before { height: 4px !important; opacity: 1 !important; background: linear-gradient(90deg, var(--m-ember), var(--m-gold)) !important; }
.dsv-flag-badge {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  padding: 6px 14px;
  border-radius: 999px;
  background: #E85D2E !important;
  background-image: linear-gradient(120deg, #E85D2E, #B08948) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: var(--m-font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  box-shadow: 0 6px 16px -6px rgba(232,93,46,0.5);
}
/* Flagship row on the services list */
.dsv-flagship-row {
  overflow: visible !important;
  margin-top: 16px;
  background:
    radial-gradient(120% 130% at 100% 0%, rgba(232,93,46,0.08), transparent 55%),
    #fff !important;
}
.dsv-flagship-row .dsv-flag-badge { z-index: 3; box-shadow: 0 8px 20px -8px rgba(232,93,46,0.55); }
.dsv-service-list { overflow: visible; padding-top: 6px; }
.dsv-flagship-row::before {
  content: "";
  position: absolute;
  top: 0; inset-inline-start: 0;
  width: 4px; height: 100%;
  border-radius: 14px 0 0 14px;
  background: linear-gradient(180deg, #E85D2E, #B08948);
}
[dir="rtl"] .dsv-flagship-row::before { border-radius: 0 14px 14px 0; }
.dsv-index-card:hover .dsv-index-title { color: var(--m-ink) !important; }
.dsv-index-card:hover .dsv-index-desc { color: var(--ink-700) !important; }
.dsv-index-card:hover .dsv-index-arrow { color: var(--m-ember) !important; }

/* All numeric labels: quiet ink mono, no rainbow */
.dsv-case-num,
.dsv-service-num,
.dsv-index-num,
.dsv-process-num {
  font-family: var(--m-font-mono) !important;
  color: var(--m-ink) !important;
  opacity: 0.55;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase;
}

/* Service tags */
.dsv-tag {
  background: transparent !important;
  border: 1px solid var(--m-line) !important;
  border-radius: 999px !important;
  padding: 5px 12px !important;
  font-family: var(--m-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.04em !important;
  color: var(--m-ink) !important;
  font-weight: 500 !important;
  text-transform: none !important;
  opacity: 0.85;
  transition: all 180ms;
}
.dsv-tag:hover {
  background: var(--m-ink) !important;
  color: var(--m-bone) !important;
  border-color: var(--m-ink) !important;
  opacity: 1;
}

/* ===== Stats - quiet ink display, gold underline ===== */
.dsv-stat-num,
.lh-stat-num {
  font-family: var(--m-font-display) !important;
  font-style: italic !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  color: var(--m-ink) !important;
  font-weight: 500 !important;
}
[lang="he"] .dsv-stat-num,
[lang="he"] .lh-stat-num {
  font-family: var(--m-font-display-he) !important;
  font-style: normal !important;
  font-weight: 600 !important;
}
.dsv-stat {
  border-bottom: 1px solid var(--m-line-soft);
  padding-bottom: 18px;
  position: relative;
}
.dsv-stat::after {
  content: "";
  position: absolute;
  bottom: -1px; left: 0;
  width: 32px; height: 1px;
  background: var(--m-gold);
}
[dir="rtl"] .dsv-stat::after { left: auto; right: 0; }

/* ===== Clients strip ===== */
.dsv-clients,
.lh-clients {
  background: transparent !important;
  border: none !important;
}
.dsv-client-mark,
.lh-client-mark {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  background: transparent;
  border: 1px solid var(--m-line);
  border-radius: 999px;
  font-family: var(--m-font-display) !important;
  font-style: italic !important;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.01em;
  color: var(--m-ink);
}
[lang="he"] .dsv-client-mark,
[lang="he"] .lh-client-mark {
  font-family: var(--m-font-body) !important;
  font-style: normal !important;
  font-weight: 600;
}
.dsv-client-mark:hover,
.lh-client-mark:hover {
  border-color: var(--m-gold);
  color: var(--m-gold);
}

/* ===== CTA card - pure ink, single hairline gold accent ===== */
.dsv-cta-card {
  background: var(--m-ink) !important;
  position: relative;
  overflow: hidden;
}
.dsv-cta-card::before {
  content: "";
  position: absolute;
  top: 0; left: 50%;
  transform: translateX(-50%);
  width: 80px; height: 1px;
  background: var(--m-gold);
}

/* ===== Footer - pure ink with single hairline gold rule ===== */
.dsv-footer,
.lh-footer {
  background: var(--m-ink);
  position: relative;
}
.dsv-footer::before,
.lh-footer::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--m-gold) 50%, transparent 100%);
}

/* ===== Form fields ===== */
.dsv-input,
.dsv-textarea,
.dsv-select,
.lh-field input,
.lh-field select,
.lh-field textarea {
  border-radius: 8px !important;
  border: 1px solid var(--m-line) !important;
  background: #FFFFFF !important;
  transition: border-color 220ms, box-shadow 220ms;
}
.dsv-input:focus,
.dsv-textarea:focus,
.dsv-select:focus,
.lh-field input:focus,
.lh-field select:focus,
.lh-field textarea:focus {
  border-color: var(--m-gold) !important;
  box-shadow: 0 0 0 3px rgba(176,137,72,0.12) !important;
  outline: none !important;
}

.lh-chip,
.dsv-form-chip {
  border-radius: 999px !important;
  border: 1px solid var(--m-line) !important;
}
.lh-chip.is-active,
.dsv-form-chip.is-active {
  background: var(--m-ink) !important;
  color: var(--m-bone) !important;
  border-color: var(--m-ink) !important;
}

/* ===== Top bar - soft glass ===== */
.dsv-topbar {
  background: rgba(251, 250, 246, 0.82) !important;
  border-bottom: 1px solid var(--m-line-soft) !important;
}
.dsv-nav a.is-current::after {
  background: var(--m-gold) !important;
  height: 1px !important;
}
.dsv-nav a:hover { color: var(--m-ink); }

/* ===== Language switcher ===== */
.dsv-lang {
  background: transparent !important;
  border: 1px solid var(--m-line) !important;
  border-radius: 999px !important;
  padding: 3px !important;
}
.dsv-lang button {
  border-radius: 999px !important;
  font-family: var(--m-font-mono) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  padding: 5px 11px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--m-ink) !important;
  opacity: 0.55;
  cursor: pointer;
  transition: all 180ms;
}
.dsv-lang button:hover { opacity: 1; }
.dsv-lang button.is-active {
  background: var(--m-ink) !important;
  color: var(--m-bone) !important;
  opacity: 1;
}

/* Logo preserved */
.dsv-brand img { filter: none; }

/* ===== Home hero title: line-by-line animated entrance ===== */
.dsv-home-title span { display: block; }
.m-loaded .dsv-home-title span {
  animation: m-title-line 1000ms cubic-bezier(0.16,1,0.3,1) both;
}
.m-loaded .dsv-home-title span:nth-child(1) { animation-delay: 120ms; }
.m-loaded .dsv-home-title span:nth-child(2) { animation-delay: 300ms; }
.m-loaded .dsv-home-title span:nth-child(3) { animation-delay: 480ms; }
@keyframes m-title-line {
  from { opacity: 0; transform: translateY(38px) rotate(1.2deg); filter: blur(10px); }
  to   { opacity: 1; transform: translateY(0) rotate(0); filter: blur(0); }
}
/* Keep the gradient accent line glowing in as it lands */
.m-loaded .dsv-home-title em { animation: m-title-accent 1400ms ease 560ms both; }
@keyframes m-title-accent {
  0%   { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}
@media (prefers-reduced-motion: reduce) {
  .m-loaded .dsv-home-title span,
  .m-loaded .dsv-home-title em { animation: none; }
}

/* ===== Pillars (replaces stats below the intro headline) ===== */
.dsv-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 8px;
}
@container site (max-width: 880px) { .dsv-pillars { grid-template-columns: 1fr; } }
@media (max-width: 880px) { .dsv-pillars { grid-template-columns: 1fr; } }
.dsv-pillar {
  background: #fff;
  border: 1px solid rgba(10,10,11,0.08);
  border-radius: 18px;
  padding: 32px 28px;
  position: relative;
  overflow: hidden;
  transition: transform 280ms cubic-bezier(0.16,1,0.3,1), box-shadow 280ms, border-color 280ms;
}
.dsv-pillar::before {
  content: "";
  position: absolute; top: 0; inset-inline-start: 0;
  width: 100%; height: 3px;
  background: linear-gradient(90deg, var(--m-ember), var(--m-gold));
  opacity: 0; transition: opacity 280ms;
}
.dsv-pillar:nth-child(2)::before { background: linear-gradient(90deg, var(--m-gold), var(--m-ember)); }
.dsv-pillar:nth-child(3)::before { background: linear-gradient(90deg, var(--m-ember), #C0443B); }
.dsv-pillar:hover { transform: translateY(-5px); border-color: rgba(10,10,11,0.16); box-shadow: 0 22px 46px -22px rgba(10,10,11,0.22); }
.dsv-pillar:hover::before { opacity: 1; }
.dsv-pillar-icon {
  display: inline-flex;
  width: 30px;
  height: 30px;
  line-height: 1;
  color: var(--m-ember);
  margin-bottom: 18px;
}
.dsv-pillar-icon svg { width: 30px; height: 30px; display: block; }
.dsv-pillar:nth-child(2) .dsv-pillar-icon { color: var(--m-gold); }
.dsv-pillar:nth-child(3) .dsv-pillar-icon { color: #C0443B; }
.dsv-pillar-title {
  font-family: var(--m-font-display-he);
  font-size: 24px;
  font-weight: 600;
  margin: 0 0 10px;
  color: var(--m-ink);
}
.dsv-pillar-desc {
  font-family: var(--m-font-body);
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink-700);
  margin: 0;
}

/* ===== Typewriter line ===== */
.dsv-type-line {
  align-items: center;
  gap: 10px;
  margin: 6px 0 26px;
  font-family: var(--m-font-body);
  font-weight: 600;
  font-size: clamp(18px, 2.4vw, 30px);
  letter-spacing: -0.01em;
  color: var(--m-ink);
  min-height: 1.4em;
}
.dsv-type-prefix { color: var(--ink-700); font-weight: 500; }
.dsv-type {
  background: linear-gradient(120deg, var(--m-ember), var(--m-gold));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-weight: 700;
}
.dsv-type-caret {
  display: inline-block;
  width: 3px;
  height: 1.05em;
  margin-inline-start: 2px;
  background: var(--m-ember);
  border-radius: 2px;
  animation: m-caret 1s steps(1) infinite;
  transform: translateY(3px);
}
@keyframes m-caret { 0%,50% { opacity: 1; } 50.01%,100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .dsv-type-caret { animation: none; }
}

/* ===== Scroll-SCRUBBED reveal: --m-p (0→1) drives the build, set by JS per frame.
   This makes content assemble in lockstep with scroll position (slow scroll =
   slow build), and reverse on scroll-up. ===== */
[data-reveal].m-scrub {
  --m-p: 0;
  opacity: calc(0.05 + 0.95 * var(--m-p));
  transform:
    translateY(calc((1 - var(--m-p)) * 40px))
    scale(calc(0.965 + 0.035 * var(--m-p)));
  filter: blur(calc((1 - var(--m-p)) * 9px));
  transition: none;            /* position is driven directly by scroll, not time */
  will-change: opacity, transform, filter;
}
[data-reveal="left"].m-scrub  { transform: translateX(calc((1 - var(--m-p)) * -52px)) translateY(calc((1 - var(--m-p)) * 12px)) scale(calc(0.97 + 0.03 * var(--m-p))); }
[data-reveal="right"].m-scrub { transform: translateX(calc((1 - var(--m-p)) * 52px))  translateY(calc((1 - var(--m-p)) * 12px)) scale(calc(0.97 + 0.03 * var(--m-p))); }
[dir="rtl"] [data-reveal="left"].m-scrub  { transform: translateX(calc((1 - var(--m-p)) * 52px))  translateY(calc((1 - var(--m-p)) * 12px)) scale(calc(0.97 + 0.03 * var(--m-p))); }
[dir="rtl"] [data-reveal="right"].m-scrub { transform: translateX(calc((1 - var(--m-p)) * -52px)) translateY(calc((1 - var(--m-p)) * 12px)) scale(calc(0.97 + 0.03 * var(--m-p))); }
[data-reveal="pop"].m-scrub   { transform: scale(calc(0.78 + 0.22 * var(--m-p))); filter: blur(calc((1 - var(--m-p)) * 5px)); }
[data-reveal="rise"].m-scrub  { transform: translateY(calc((1 - var(--m-p)) * 66px)) scale(calc(0.955 + 0.045 * var(--m-p))); }
[data-reveal="clip"].m-scrub  {
  opacity: 1; filter: none;
  transform: translateY(calc((1 - var(--m-p)) * 14px));
  clip-path: inset(0 0 calc((1 - var(--m-p)) * 100%) 0);
}
.dsv-section-title[data-reveal].m-scrub { filter: blur(calc((1 - var(--m-p)) * 11px)); }

/* Warm up the About prose with brass accents instead of all-black ink */
.dsv-prose p:first-child::first-letter { color: var(--m-brass) !important; }
.dsv-prose blockquote {
  border-inline-start-color: var(--m-brass) !important;
  color: var(--m-ink) !important;
}
.dsv-prose blockquote::before {
  content: "\201D";
  color: var(--m-brass);
  font-family: var(--m-font-display);
  font-size: 1.4em;
  line-height: 0;
  margin-inline-end: 6px;
  vertical-align: -0.18em;
}
.dsv-aside-mark strong { color: var(--m-brass) !important; }
.dsv-prose strong { color: var(--m-brass); font-weight: 700; }

/* ===== About vision band ===== */
.dsv-vision { padding: clamp(40px,7vw,90px) 0; }
.dsv-vision-card {
  background: linear-gradient(135deg, #FBF4E4 0%, #F6EAD0 100%);
  border: 1px solid rgba(196,135,58,0.25);
  border-radius: 26px;
  padding: clamp(32px,5vw,64px);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.dsv-vision-card::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(60% 80% at 50% 0%, rgba(212,162,74,0.18), transparent 70%);
  pointer-events: none;
}
.dsv-vision-eyebrow {
  font-family: var(--m-font-mono);
  font-size: 12px; letter-spacing: 0.2em;
  color: #B07F2E; font-weight: 600;
  margin-bottom: 18px; position: relative;
}
.dsv-vision-title {
  font-family: var(--m-font-display-he, var(--m-font-display));
  font-size: clamp(26px,4vw,52px);
  line-height: 1.15; font-weight: 600;
  color: var(--m-ink); margin: 0 auto 20px;
  max-width: 860px; position: relative;
}
.dsv-vision-title em { font-style: normal; color: #C2873A; }
.dsv-vision-text {
  font-family: var(--m-font-body);
  font-size: clamp(16px,1.5vw,20px);
  line-height: 1.7; color: #5C4A2A;
  max-width: 720px; margin: 0 auto 32px;
  position: relative;
}
.dsv-vision-actions {
  display: flex; gap: 14px; justify-content: center;
  flex-wrap: wrap; position: relative;
}
.dsv-btn-gold-soft {
  background: rgba(196,135,58,0.12);
  color: #9C6E26;
  border: 1px solid rgba(196,135,58,0.4);
}
.dsv-btn-gold-soft:hover {
  background: rgba(196,135,58,0.22);
  color: #7A5418;
  transform: translateY(-2px);
}

/* Safety net: once IntersectionObserver marks it in-view, force fully built */
[data-reveal].m-scrub.is-visible { --m-p: 1 !important; }

@media (prefers-reduced-motion: reduce) {
  [data-reveal].m-scrub { opacity: 1 !important; transform: none !important; filter: none !important; clip-path: none !important; }
}

/* ===== Reveal on scroll - Apple style (blur + scale + rise) ===== */
[data-reveal] {
  opacity: 0;
  transform: translateY(34px) scale(0.97);
  filter: blur(8px);
  transition:
    opacity 950ms cubic-bezier(0.16,1,0.3,1),
    transform 950ms cubic-bezier(0.16,1,0.3,1),
    filter 760ms cubic-bezier(0.16,1,0.3,1);
  transition-delay: var(--m-reveal-delay, 0ms);
  will-change: opacity, transform, filter;
}
[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0) scale(1) translateX(0) rotate(0);
  filter: blur(0);
}

/* --- Directional / complex reveal variants (assigned by JS) --- */
[data-reveal="left"]  { transform: translateX(-46px) translateY(10px); filter: blur(8px); }
[data-reveal="right"] { transform: translateX(46px)  translateY(10px); filter: blur(8px); }
[dir="rtl"] [data-reveal="left"]  { transform: translateX(46px)  translateY(10px); }
[dir="rtl"] [data-reveal="right"] { transform: translateX(-46px) translateY(10px); }
[data-reveal="pop"]   { transform: scale(0.8); filter: blur(4px); }
[data-reveal="pop"].is-visible { transform: scale(1); }
[data-reveal="clip"]  { clip-path: inset(0 0 100% 0); transform: translateY(0); filter: blur(0); opacity: 1; transition: clip-path 1000ms cubic-bezier(0.16,1,0.3,1); transition-delay: var(--m-reveal-delay,0ms); }
[data-reveal="clip"].is-visible { clip-path: inset(0 0 0 0); }
[data-reveal="rise"]  { transform: translateY(60px) scale(0.96); }

@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1 !important; transform: none !important; filter: none !important; clip-path: none !important; }
}

/* Section titles: a word-mask rise feel via stronger blur + larger travel */
.dsv-section-title[data-reveal] { transform: translateY(40px) scale(0.985); filter: blur(10px); }

/* Stagger children inside grids/process when their parent is visible */
.dsv-products-4.is-row [data-reveal],
.dsv-process.is-row [data-reveal] { transition-delay: var(--m-reveal-delay,0ms); }

/* ===== Hero load cascade (first paint) — TRANSFORM ONLY, never touches opacity.
   Children are always fully opaque; we only slide them up a touch on first paint. ===== */
.m-loaded .dsv-home-hero-inner > *,
.m-loaded .dsv-page-hero-inner > * {
  animation: m-hero-rise 800ms cubic-bezier(0.16,1,0.3,1) both;
}
.m-loaded .dsv-home-hero-inner > *:nth-child(2) { animation-delay: 90ms; }
.m-loaded .dsv-home-hero-inner > *:nth-child(3) { animation-delay: 180ms; }
.m-loaded .dsv-home-hero-inner > *:nth-child(4) { animation-delay: 260ms; }
.m-loaded .dsv-page-hero-inner > *:nth-child(2) { animation-delay: 90ms; }
.m-loaded .dsv-page-hero-inner > *:nth-child(3) { animation-delay: 180ms; }
@keyframes m-hero-rise {
  from { transform: translateY(18px); }
  to   { transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .m-loaded .dsv-home-hero-inner > *, .m-loaded .dsv-page-hero-inner > * { animation: none; }
}
/* Safety: if JS is disabled/blocked, never keep content hidden */
@media (scripting: none) {
  [data-reveal],
  .dsv-home-hero-inner > *,
  .dsv-page-hero-inner > * {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/* Selection - quiet ink, no purple */

/* ===== Scroll progress bar ===== */
.m-progress {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 3px;
  z-index: 200;
  transform: scaleX(0);
  transform-origin: 0 50%;
  background: linear-gradient(90deg, var(--m-ember), var(--m-gold));
  will-change: transform;
  pointer-events: none;
}
[dir="rtl"] .m-progress { transform-origin: 100% 50%; }

/* ===== Subtle logo float ===== */
.dsv-brand img { animation: m-float 5.5s ease-in-out infinite; }
@keyframes m-float {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-3px); }
}

/* ===== Shimmer sweep on gradient title accents ===== */
.dsv-home-title em,
.dsv-page-title em,
.dsv-hero-title em {
  background-size: 220% 100%;
  animation: m-shimmer 6s ease-in-out infinite;
}
@keyframes m-shimmer {
  0%, 100% { background-position: 0% 50%; }
  50%      { background-position: 100% 50%; }
}

/* ===== Magnetic buttons need smooth return ===== */
.dsv-btn, .lh-btn { transition: transform 240ms cubic-bezier(0.16,1,0.3,1), box-shadow 200ms, background 180ms, color 180ms; }

@media (prefers-reduced-motion: reduce) {
  .dsv-brand img { animation: none; }
  .dsv-home-title em, .dsv-page-title em, .dsv-hero-title em { animation: none; }
  .m-progress { display: none; }
}

/* ===== CTA: contained rounded gradient panel (distinct from flat footer) ===== */
.dsv-cta {
  background: transparent !important;
  color: var(--ink-950) !important;
  padding: 40px 24px 160px !important;
}
.dsv-cta-inner {
  background: linear-gradient(155deg, #16161c 0%, var(--m-ink) 60%);
  color: var(--m-bone);
  max-width: 1180px !important;
  border-radius: 30px;
  padding: clamp(56px, 8vw, 110px) 32px !important;
  box-shadow: 0 40px 90px -44px rgba(10,10,11,0.55);
  border: 1px solid rgba(255,255,255,0.06);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
/* single hairline gold accent along the top — matches the premium editorial system */
.dsv-cta-inner::after {
  content: "";
  position: absolute;
  top: 0; left: 12%; right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--m-gold, #D4A24A), transparent);
}
.dsv-cta-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: radial-gradient(rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 24px 24px;
  mask-image: radial-gradient(80% 80% at 50% 25%, #000, transparent 78%);
  -webkit-mask-image: radial-gradient(80% 80% at 50% 25%, #000, transparent 78%);
}
.dsv-cta-title { color: var(--m-bone) !important; }
.dsv-cta-title em {
  -webkit-text-fill-color: var(--m-gold, #D4A24A);
  color: var(--m-gold, #D4A24A) !important;
  background: none !important;
}
.dsv-cta-sub { color: rgba(255,255,255,0.72) !important; }
/* Eyebrow: a small centered pill, not a full-width bar */
.dsv-cta-eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  width: auto !important;
  margin: 0 auto 22px !important;
  padding: 6px 16px !important;
  background: rgba(255,255,255,0.10) !important;
  color: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: 999px !important;
  font-family: var(--m-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
}
.dsv-cta-eyebrow::before {
  content: "";
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--m-gold);
  box-shadow: 0 0 0 3px rgba(212,162,74,0.22);
}
.dsv-cta-watermark { display: none !important; }
/* Contact channel row inside CTA panel */
.dsv-cta-channels {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: 40px;
  padding-top: 32px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.dsv-cta-chan {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  text-decoration: none;
  color: var(--m-bone);
  text-align: start;
  transition: background 200ms, transform 200ms, border-color 200ms;
}
.dsv-cta-chan:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(212,162,74,0.5);
  transform: translateY(-3px);
}
.dsv-cta-chan svg { width: 22px; height: 22px; flex-shrink: 0; color: var(--m-gold, #D4A24A); }
.dsv-cta-chan div { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.dsv-cta-chan strong { font-size: 13px; font-weight: 600; }
.dsv-cta-chan span { font-size: 12px; opacity: 0.65; font-family: "JetBrains Mono", monospace; direction: ltr; }
@media (max-width: 860px) { .dsv-cta-channels { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .dsv-cta-channels { grid-template-columns: 1fr; } }
/* primary button on the panel: warm solid */
.dsv-cta .dsv-btn-primary-light {
  background: #fff !important;
  color: var(--ink-950) !important;
}
.dsv-cta .dsv-btn-primary-light:hover { background: #FFE9B0 !important; }
.dsv-cta .dsv-btn-outline-light {
  border-color: rgba(255,255,255,0.5) !important;
  color: #fff !important;
}
.dsv-cta .dsv-btn-outline-light:hover { background: #fff !important; color: var(--ink-950) !important; }

/* ===== Cursor-driven build: tilt + glow + proximity assemble ===== */
.m-tilt {
  transform-style: preserve-3d;
  transition: transform 320ms cubic-bezier(0.16,1,0.3,1), box-shadow 320ms;
  position: relative;
}
.m-tilt.m-tilt-on {
  transform: perspective(900px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg)) translateZ(0);
}
/* cursor-follow glow inside the block */
.m-tilt::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition: opacity 320ms;
  background: radial-gradient(220px circle at var(--gx, 50%) var(--gy, 50%),
              rgba(232,93,46,0.10), transparent 60%);
  z-index: 0;
}
.m-tilt.m-tilt-on::after { opacity: 1; }
.m-tilt > * { position: relative; z-index: 1; }

/* Proximity assemble: items lift + sharpen as the cursor nears */
.m-build {
  --m-near: 0;
  transition: transform 220ms cubic-bezier(0.16,1,0.3,1), filter 220ms;
  transform: translateY(calc(var(--m-near) * -6px)) scale(calc(1 + var(--m-near) * 0.03));
}
.m-build .dsv-stat-num { transition: filter 220ms; }
@media (prefers-reduced-motion: reduce) {
  .m-tilt, .m-build { transform: none !important; }
  .m-tilt::after { display: none; }
}
@media (pointer: coarse) {
  .m-tilt.m-tilt-on { transform: none; }
  .m-build { transform: none; }
}

/* About vision badges */
.dsv-vision-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid rgba(196,135,58,0.25);
}
.dsv-vision-badge {
  font-family: "JetBrains Mono", var(--font-mono), monospace;
  font-size: 12px;
  letter-spacing: 0.02em;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(196,135,58,0.12);
  border: 1px solid rgba(196,135,58,0.35);
  color: #6B4A18;
}
.dsv-footer-name { font-family: var(--font-hebrew); font-weight: 700; }
/* About: stack prose then decorative tile below (full width) */
.dsv-two-col-stack {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
}
.dsv-two-col-stack .dsv-aside-visual {
  aspect-ratio: 21 / 8;
  width: 100%;
}
.dsv-two-col-stack .dsv-aside-visual img { width: 150px; }
/* About: prose + decorative tile below it (full width). Tile desktop-only. */
.dsv-two-col-stack {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
}
.dsv-two-col-stack .dsv-aside-visual {
  aspect-ratio: 21 / 8;
  width: 100%;
}
.dsv-two-col-stack .dsv-aside-visual img { width: 150px; }
@media (max-width: 900px) {
  .dsv-two-col-stack .dsv-aside-mark { display: none; }
}
/* Contact form — clean static border, no beam. */
.dsv-form {
  border-radius: 22px !important;
  position: relative;
  border: 1px solid rgba(10,10,11,0.12) !important;
  background: #fff;
}
/* Designed thank-you overlay */
.dsv-form-success {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 16px;
  padding: 40px;
  border-radius: 22px;
  background: linear-gradient(160deg, #fff 0%, #FBF6EC 100%);
  opacity: 0;
  visibility: hidden;
  transform: scale(0.98);
  transition: opacity .4s ease, transform .4s cubic-bezier(0.16,1,0.3,1), visibility .4s;
}
.dsv-form-success.is-visible { opacity: 1; visibility: visible; transform: scale(1); }
.dsv-form-success-mark {
  width: 88px; height: 88px;
  border-radius: 50%;
  display: grid; place-items: center;
  color: #fff;
  background: radial-gradient(120% 120% at 30% 20%, #E8B85C, #C08A2E);
  box-shadow: 0 12px 30px -8px rgba(192,138,46,0.6);
  animation: dsv-pop .5s cubic-bezier(0.16,1,0.3,1) both;
}
.dsv-form-success-mark svg { animation: dsv-check .5s .2s ease both; stroke-dasharray: 40; stroke-dashoffset: 40; }
@keyframes dsv-pop { from { transform: scale(0); } 60% { transform: scale(1.12); } to { transform: scale(1); } }
@keyframes dsv-check { to { stroke-dashoffset: 0; } }
.dsv-form-success h3 {
  font-family: var(--font-hebrew, "Frank Ruhl Libre"), serif;
  font-size: 30px; font-weight: 600; margin: 0; color: var(--ink-950, #0A0A0B);
}
.dsv-form-success p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--ink-700, #444); }
@media (prefers-reduced-motion: reduce) {
  .dsv-form-success, .dsv-form-success-mark, .dsv-form-success-mark svg { animation: none; transition: none; }
}
/* Scrollbar */
html { scrollbar-color: rgba(10,10,11,0.25) transparent; }

/* ===== Mobile hardening (≤600px) ===== */
.dsv-mobile-lang { display: none; }
@media (max-width: 880px) {
  .dsv-mobile-cta { display: inline-flex !important; margin-top: 8px; justify-content: center; }
}
@media (max-width: 880px) {
  .dsv-mobile-menu.is-open .dsv-mobile-lang,
  .dsv-mobile-menu:not([hidden]) .dsv-mobile-lang { display: flex; }
  .dsv-mobile-lang {
    gap: 8px;
    margin-top: 8px;
    padding-top: 14px;
    border-top: 1px solid rgba(10,10,11,0.1);
  }
  .dsv-mobile-lang button {
    flex: 1;
    padding: 10px 0;
    border-radius: 10px;
    border: 1px solid rgba(10,10,11,0.14);
    background: transparent;
    font-family: "JetBrains Mono", monospace;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    color: var(--ink-700);
    cursor: pointer;
  }
  .dsv-mobile-lang button.is-active {
    background: var(--m-ink, #0A0A0B);
    color: #fff;
    border-color: var(--m-ink, #0A0A0B);
  }
  /* Hide the cramped inline lang switcher in the top bar on mobile — the menu owns it now */
  .dsv-top-actions .dsv-lang { display: none; }
}

/* ===== Mobile hardening (≤600px) — layout ===== */
@media (max-width: 600px) {
  /* Prevent any horizontal overflow */
  html, body { max-width: 100%; overflow-x: hidden; }
  /* Tighter gutters */
  .dsv-topbar-inner { padding: 12px 16px; gap: 12px; }
  .dsv-section-inner,
  .dsv-page-hero-inner,
  .dsv-home-hero-inner,
  .dsv-cta { padding-left: 18px !important; padding-right: 18px !important; }
  /* Brand lockup smaller so it never collides with the actions */
  .dsv-brand-name { font-size: 15px; }
  .dsv-brand-sub { font-size: 8px; letter-spacing: 0.16em; }
  .dsv-brand img { width: 26px; height: 26px; }
  /* Section vertical rhythm */
  .dsv-section { padding: 56px 0 !important; }
  .dsv-home-hero { padding-top: 40px !important; }
  /* Stats to 2-col with lighter dividers */
  .dsv-stats { grid-template-columns: repeat(2, 1fr) !important; }
  .dsv-stat { padding: 24px 16px !important; }
  /* CTA panel breathing room */
  .dsv-cta-inner { padding: 44px 20px !important; border-radius: 22px; }
  /* Keep floating widgets from overlapping: a11y left, contact right, both raised */
  .dvs-a11y-btn { left: 12px !important; bottom: 12px !important; }
  .dvs-fab { right: 12px !important; bottom: 12px !important; }
  /* Vision card padding */
  .dsv-vision-card { padding: 32px 22px !important; }
}

/* ===========================================================================
   "Make it simple" — company motto band.
   Dark editorial panel matching the CTA system: ink gradient, single gold
   hairline, dot-grid, mono eyebrow, serif Hebrew display, one gold accent.
   =========================================================================== */
.dsv-simple-section { padding-block: clamp(36px, 5vw, 88px) !important; }
.dsv-simple {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 30px;
  padding: clamp(44px, 6vw, 88px) clamp(24px, 5vw, 72px);
  background: linear-gradient(155deg, #16161c 0%, var(--m-ink) 60%);
  color: var(--m-bone);
  border: 1px solid rgba(255,255,255,0.06);
  box-shadow: 0 40px 90px -46px rgba(10,10,11,0.55);
}
/* gold hairline along the top — the house signature */
.dsv-simple::after {
  content: "";
  position: absolute;
  top: 0; left: 12%; right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--m-gold, #D4A24A), transparent);
}
/* faint dot-grid, masked to fade toward the edges */
.dsv-simple::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: radial-gradient(rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 24px 24px;
  -webkit-mask-image: radial-gradient(85% 85% at 50% 18%, #000, transparent 78%);
  mask-image: radial-gradient(85% 85% at 50% 18%, #000, transparent 78%);
}
.dsv-simple-head { text-align: center; margin-bottom: clamp(34px, 5vw, 58px); }
.dsv-simple-eyebrow {
  display: inline-block;
  font-family: var(--m-font-mono);
  font-size: 12px;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  color: var(--m-gold-soft, #D4B57E);
  padding-inline-start: 0.42em;   /* optically re-centre the tracked-out text */
  margin-bottom: 18px;
}
.dsv-simple-title {
  font-family: var(--m-font-display-he);
  font-weight: 600;
  font-size: clamp(36px, 6vw, 78px);
  line-height: 1.03;
  letter-spacing: -0.01em;
  margin: 0;
  color: var(--m-bone);
}
.dsv-simple-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 3vw, 40px);
}
.dsv-simple-item {
  position: relative;
  padding: 6px 8px 8px;
  text-align: center;
}
/* hairline separators between the three proof points */
.dsv-simple-item + .dsv-simple-item::before {
  content: "";
  position: absolute;
  inset-block: 6px;
  inset-inline-start: calc(-1 * clamp(10px, 1.5vw, 20px));
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(255,255,255,0.14), transparent);
}
.dsv-simple-metric {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 10px;
  margin-bottom: 12px;
}
.dsv-simple-num {
  font-family: var(--m-font-display);   /* Cormorant — elegant Latin numerals */
  font-style: italic;
  font-weight: 500;
  font-size: clamp(58px, 8vw, 104px);
  line-height: 1;
  color: var(--m-gold, #D4A24A);
}
.dsv-simple-unit {
  font-family: var(--m-font-mono);
  font-size: 13px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.58);
}
.dsv-simple-name {
  font-family: var(--m-font-display-he);
  font-weight: 600;
  font-size: clamp(22px, 2.4vw, 30px);
  margin: 0 0 8px;
  color: var(--m-bone);
}
.dsv-simple-desc {
  font-family: var(--m-font-body) !important;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255,255,255,0.66);
  margin: 0 auto;
  max-width: none;   /* short single-line sentences, no forced wrap */
}
.dsv-simple-foot {
  margin: clamp(34px, 5vw, 56px) auto 0;
  padding-top: clamp(26px, 3vw, 38px);
  border-top: 1px solid rgba(255,255,255,0.10);
  text-align: center;
  max-width: 60ch;
  font-family: var(--m-font-body);
  font-size: clamp(15px, 1.5vw, 19px);
  line-height: 1.6;
  color: rgba(255,255,255,0.80);
}
@media (max-width: 760px) {
  .dsv-simple-grid { grid-template-columns: 1fr; gap: 26px; }
  .dsv-simple-item { padding-bottom: 4px; }
  /* separators become horizontal between stacked items */
  .dsv-simple-item + .dsv-simple-item::before {
    inset-block: auto;
    top: -13px;
    inset-inline: 22%;
    width: auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.14), transparent);
  }
}
