
  /* hero: the family grammar — eyebrow → H1 → lead → CTAs, one Noa frame beside it */
  .s-hero {
    padding: clamp(40px, 5vw, 64px) 0 clamp(40px, 5vw, 60px); position: relative; overflow: hidden;
    background: linear-gradient(180deg, #FFFDFB, #FAF4F1);
  }
  .s-hero::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
      radial-gradient(ellipse 700px 500px at 88% 10%, rgba(135,43,100,0.08), transparent 55%),
      radial-gradient(ellipse 600px 500px at 6% 80%, rgba(226,120,58,0.08), transparent 55%);
  }
  .s-hero-in { position: relative; }
  .s-hero-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(28px, 4vw, 56px); align-items: center; }
  .s-hero-photo { position: relative; }
  .s-hero-photo img {
    width: 100%; max-width: 400px; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 28%;
    border-radius: 26px; display: block; margin-inline-start: auto;
    box-shadow: 0 30px 60px -34px rgba(60,30,45,0.45);
  }
  .s-hero-photo .ph-cap {
    position: absolute; bottom: 16px; inset-inline-end: 16px;
    display: flex; flex-direction: column; gap: 1px; text-align: start;
    background: rgba(255,255,255,0.9); backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,0.7);
    border-radius: 16px; padding: 11px 16px; box-shadow: 0 18px 40px -28px rgba(42,24,37,0.5);
  }
  .s-hero-photo .ph-cap strong { font-family: var(--he-font-display); font-weight: 500; font-size: 18px; line-height: 1.2; color: var(--c-ink); }
  .s-hero-photo .ph-cap span { font-family: var(--he-font-sans); font-size: 12.5px; color: var(--he-fg-2); }
  @media (max-width: 900px) {
    .s-hero-grid { grid-template-columns: 1fr; gap: 24px; }
    .s-hero-photo { max-width: 360px; margin: 0 auto; width: 100%; }
    .s-hero-photo img { max-width: none; aspect-ratio: 4 / 4.6; }
  }

  /* Page-scoped: no amber in headline gradients (Noa: הצבעים זוועות) — brand orange→plum only */
  .wc-text-gradient {
    background: linear-gradient(135deg, var(--c-flame) 0%, var(--c-magenta) 55%, var(--c-violet) 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
  }
  .s-hero .h2-sub {
    font-family: var(--he-font-display); font-style: italic; font-weight: 300;
    font-size: clamp(20px, 2.4vw, 28px); line-height: 1.5; color: var(--he-fg-2);
    margin-top: 24px; max-width: 720px;
  }

  /* Lead intro */
  .lead-intro {
    max-width: 780px; margin: 0 auto;
    font-family: var(--he-font-body); font-size: 18px; line-height: 1.9; color: var(--he-fg-1);
  }
  .lead-intro p { margin: 0 0 1.3em; }
  .lead-intro p:last-child { margin-bottom: 0; }
  /* intro and "למי" share one section: a measured breath, not two stacked paddings */
  .s-head-after-intro { margin-top: clamp(44px, 5vw, 72px); padding-top: clamp(36px, 4vw, 56px); border-top: 1px solid var(--he-border); }
  .lead-intro p.italic-block {
    font-family: var(--he-font-display); font-style: italic; font-size: 22px;
    color: var(--c-ink); padding-inline-start: 22px;
    border-inline-start: 2px solid var(--b-magenta);
  }

  /* Who's it for */
  .audience {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px;
    max-width: 1080px; margin: 0 auto;
  }
  .aud-card {
    padding: 32px 30px; border-radius: var(--he-r-md);
    background: linear-gradient(155deg, rgba(135,43,100,0.04), rgba(226,120,58,0.04));
    border: 1px solid var(--he-border);
    transition: all var(--he-t-base);
  }
  .aud-card:hover { transform: translateY(-3px); border-color: var(--b-magenta); }
  .aud-card .label {
    display: inline-block; font-family: var(--he-font-sans); font-size: 11px;
    font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;
    color: var(--b-magenta); margin-bottom: 12px;
  }
  .aud-card h4 {
    font-family: var(--he-font-display); font-style: italic; font-weight: 300;
    font-size: 22px; line-height: 1.2; color: var(--c-ink); margin: 0 0 10px;
  }
  .aud-card p { font-size: 15px; line-height: 1.7; color: var(--he-fg-2); margin: 0; }

  /* Session cards (accordion-style expandable) */
  .sessions-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px;
  }
  .session-card {
    background: var(--he-paper); border: 1px solid var(--he-border);
    border-radius: var(--he-r-md);
    overflow: hidden;
    transition: all var(--he-t-base);
  }
  .session-card:hover { border-color: var(--b-magenta); box-shadow: 0 12px 36px rgba(135,43,100,0.08); }
  .session-card summary {
    list-style: none; cursor: pointer;
    padding: 32px 32px 28px 74px;
    position: relative;
  }
  .session-card summary::-webkit-details-marker { display: none; }
  .session-card .tag {
    display: inline-block; font-family: var(--he-font-sans); font-size: 11px;
    font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
    color: var(--b-magenta); margin-bottom: 14px;
  }
  .session-card h3 {
    font-family: var(--he-font-display); font-style: italic; font-weight: 300;
    font-size: 24px; line-height: 1.22; color: var(--c-ink); margin: 0 0 10px;
  }
  .session-card h3 .pipe { color: var(--he-fg-3); margin: 0 8px; font-weight: 300; }
  .session-card .pitch { font-size: 15.5px; line-height: 1.7; color: var(--he-fg-2); margin: 0; }
  .session-card summary::after {
    content: "+";
    position: absolute; top: 32px; left: 32px;
    font-family: var(--he-font-display); font-size: 26px; color: var(--he-fg-3);
    transition: transform var(--he-t-base);
  }
  .session-card[open] summary::after { content: "−"; color: var(--b-magenta); }
  html[dir="ltr"] .session-card summary::after {
    left: auto;
    right: 32px;
  }
  html[dir="ltr"] .session-card summary {
    padding: 32px 74px 28px 32px;
  }
  .session-card .full-body {
    padding: 0 32px 32px;
    border-top: 1px dashed var(--he-border);
    padding-top: 24px;
  }
  .session-card .full-body p {
    font-size: 15.5px; line-height: 1.85; color: var(--he-fg-1); margin: 0 0 1em;
  }
  .session-card .full-body p:last-child { margin-bottom: 0; }
  .session-card .meta-line {
    display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px;
    padding-top: 16px; border-top: 1px solid var(--he-border);
    font-family: var(--he-font-sans); font-size: 13px; color: var(--he-fg-3);
  }
  .session-card .meta-line span {
    background: var(--he-base-2); padding: 4px 12px; border-radius: var(--he-r-pill);
    font-weight: 500;
  }
  .session-card .meta-line strong { color: var(--c-ink); font-weight: 600; margin-inline-end: 4px; }
  .session-card .testimonials-link {
    margin-top: 16px;
    font-family: var(--he-font-sans); font-size: 13px; color: var(--b-magenta);
    text-decoration: none; font-weight: 600;
  }

  /* Quote band */
  .quote-band {
    text-align: center; max-width: 860px; margin: 0 auto; padding: 56px 40px;
    background: linear-gradient(155deg, rgba(226,120,58,0.07), rgba(135,43,100,0.07));
    border-radius: var(--he-r-md); border: 1px solid var(--he-border-strong);
  }
  .quote-band p {
    font-family: var(--he-font-display); font-style: italic; font-weight: 300;
    font-size: clamp(22px, 2.8vw, 30px); line-height: 1.4; color: var(--c-ink); margin: 0;
  }
  .quote-band em { color: var(--b-magenta); }
  /* the quote leads straight into the form head */
  .s-quote-lead { margin-bottom: clamp(36px, 4vw, 56px); padding: 40px 36px; }

  /* Lead form */
  .lead-form-wrap { max-width: 640px; margin: 0 auto; }
  .lead-form {
    background: var(--he-paper); border: 1px solid var(--he-border-strong);
    padding: 40px 44px; border-radius: var(--he-r-md);
    box-shadow: 0 24px 60px rgba(37,33,35,0.06);
  }
  .lead-form h3 {
    font-family: var(--he-font-display); font-style: italic; font-weight: 300;
    font-size: 28px; line-height: 1.2; margin: 0 0 8px; color: var(--c-ink); text-align: center;
  }
  .lead-form .sub { text-align: center; color: var(--he-fg-2); margin: 0 0 28px; font-size: 15px; }
  .lead-form label {
    display: block; font-family: var(--he-font-sans); font-size: 12px;
    color: var(--he-fg-3); margin-bottom: 6px; letter-spacing: 0.06em;
  }
  .lead-form input, .lead-form select, .lead-form textarea {
    width: 100%; padding: 13px 16px; margin-bottom: 18px;
    border: 1px solid var(--he-border-strong); border-radius: var(--he-r-sm);
    font-family: var(--he-font-sans); font-size: 15px; color: var(--c-ink);
    background: var(--he-paper);
  }
  .lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus {
    outline: none; border-color: var(--b-magenta);
  }
  .lead-form textarea { min-height: 90px; resize: vertical; }
  .lead-form .submit {
    width: 100%;
    min-height: 58px;
    padding: 15px 22px;
    font-size: 15px;
    line-height: 1.28;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  html[dir="ltr"] .lead-form .submit {
    font-size: 14px;
    letter-spacing: 0.02em;
  }

  /* FAQ accordion */
  .faq-list { max-width: 880px; margin: 0 auto; }
  .faq-item {
    border: 1px solid var(--he-border);
    border-radius: var(--he-r-md); margin-bottom: 12px;
    background: var(--he-paper);
    overflow: hidden;
  }
  .faq-item summary {
    padding: 22px 28px; cursor: pointer; list-style: none;
    display: flex; align-items: center; gap: 16px;
    font-family: var(--he-font-display); font-weight: 400; font-size: 18px;
    color: var(--c-ink); line-height: 1.4;
  }
  .faq-item summary::-webkit-details-marker { display: none; }
  .faq-item summary::after {
    content: "+"; margin-inline-start: auto; flex-shrink: 0;
    font-family: var(--he-font-display); font-size: 22px; color: var(--he-fg-3);
  }
  .faq-item[open] summary { background: var(--he-base-2); }
  .faq-item[open] summary::after { content: "−"; color: var(--b-magenta); }
  .faq-item .ans { padding: 4px 28px 26px; color: var(--he-fg-1); font-size: 16px; line-height: 1.85; }
  .faq-item .ans p { margin: 0 0 0.9em; }
  .faq-item .ans p:last-child { margin-bottom: 0; }

  @media (max-width: 900px) {
    .s-hero { padding: 52px 0 42px; }
    .audience { grid-template-columns: 1fr; }
    .sessions-grid { grid-template-columns: 1fr; }
    .session-card summary { padding: 26px 22px 24px 58px; }
    .session-card summary::after { top: 26px; left: 22px; }
    html[dir="ltr"] .session-card summary { padding: 26px 58px 24px 22px; }
    html[dir="ltr"] .session-card summary::after { right: 22px; }
    html[dir="ltr"] .session-card h3 { font-size: 21px; line-height: 1.26; }
    html[dir="ltr"] .session-card .pitch,
    html[dir="ltr"] .lead-intro,
    html[dir="ltr"] .session-card .full-body p { font-size: 15px; line-height: 1.72; }
    html[dir="ltr"] .lead-form label { font-size: 11px; letter-spacing: 0.08em; }
    html[dir="ltr"] .lead-form input,
    html[dir="ltr"] .lead-form select,
    html[dir="ltr"] .lead-form textarea { font-size: 14px; }
    html[dir="ltr"] .lead-form .submit { font-size: 13px; padding-inline: 14px; }
    .lead-form { padding: 28px 20px; }
  }

/* Sapir image12: visible "לפרטים נוספים / קרא עוד" affordance on each session card */
.session-card .pitch::after { content: "לפרטים נוספים +"; display:block; margin-top:12px;
  font-family: var(--he-font-sans); font-size:13.5px; font-weight:700; color: var(--b-magenta); }
.session-card[open] .pitch::after { content: "להסתרה −"; color: var(--he-fg-3); }

/* ===== Sapir 24.8: harmony — every session gets its hue on one shared anatomy ===== */
.sessions-grid { align-items: start; }
.session-card { position: relative; --ses-hue: var(--b-magenta); }
.session-card::before {
  content: ""; position: absolute; top: 0; inset-inline: 0; height: 4px;
  background: linear-gradient(90deg, var(--ses-hue), color-mix(in srgb, var(--ses-hue) 55%, #fff));
  opacity: .9;
}
.sessions-grid .session-card:nth-child(7n+1) { --ses-hue: #E2783A; }
.sessions-grid .session-card:nth-child(7n+2) { --ses-hue: #C94F63; }
.sessions-grid .session-card:nth-child(7n+3) { --ses-hue: #872B64; }
.sessions-grid .session-card:nth-child(7n+4) { --ses-hue: #5B2A86; }
.sessions-grid .session-card:nth-child(7n+5) { --ses-hue: #B45309; }
.sessions-grid .session-card:nth-child(7n+6) { --ses-hue: #A0356F; }
.sessions-grid .session-card:nth-child(7n+7) { --ses-hue: #3C6E71; }
.session-card .tag {
  letter-spacing: .08em; color: var(--ses-hue);
  background: color-mix(in srgb, var(--ses-hue) 9%, #fff);
  border: 1px solid color-mix(in srgb, var(--ses-hue) 22%, transparent);
  border-radius: 999px; padding: 5px 13px; font-size: 11.5px;
}
.session-card:hover { border-color: color-mix(in srgb, var(--ses-hue) 45%, transparent); box-shadow: 0 12px 36px color-mix(in srgb, var(--ses-hue) 12%, transparent); }
.session-card[open] { border-color: color-mix(in srgb, var(--ses-hue) 40%, transparent); }
.session-card[open] summary::after, .session-card summary:hover::after { color: var(--ses-hue); }
.session-card h3 { font-size: 22px; }
.session-card .full-body { border-top: 1px dashed color-mix(in srgb, var(--ses-hue) 25%, var(--he-border)); margin: 0 32px; padding: 20px 0 26px; }
.session-card .full-body > p:first-child { margin-top: 0; }
.session-card .meta-line {
  display: flex; gap: 22px; flex-wrap: wrap; margin-top: 16px;
  font-size: 14px; color: var(--he-fg-2);
  background: color-mix(in srgb, var(--ses-hue) 5%, #fff);
  border-radius: 12px; padding: 12px 16px;
}
.session-card .testimonials-link {
  display: inline-block; margin-top: 14px; font-size: 13.5px; font-weight: 700;
  color: var(--ses-hue);
}
.session-card .elevators-totem { border-color: color-mix(in srgb, var(--ses-hue) 20%, transparent) !important; }
/* odd last card sits centered, not stranded */
.sessions-grid > .session-card:last-child:nth-child(odd) { grid-column: 1 / -1; max-width: 640px; justify-self: center; width: 100%; }
@media (max-width: 860px) { .sessions-grid > .session-card:last-child:nth-child(odd) { max-width: none; } }
