/* DEALS FLOW: a shared visual system for the clinic's lead journey. */
.flow-site { background-color: #f7faff; }
.flow-site main { isolation: isolate; }
.flow-site main > section { position: relative; }
.flow-site h1, .flow-site h2, .flow-site h3 { text-wrap: balance; }
.flow-site p { text-wrap: pretty; }
.flow-site img { max-width: 100%; }
.flow-site .btn-luxe, .flow-site .btn-ghost-luxe { min-height: 48px; justify-content: center; text-align: center; line-height: 1.5; }
.flow-site header { border-bottom: 1px solid #dce7fb; box-shadow: 0 4px 30px #19365f06; }
.flow-site header button[aria-label="תפריט"] { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; color: #163460; }
@media(min-width:1024px) { .flow-site header button[aria-label="תפריט"] { display: none; } }
.flow-site header.mobile-menu-open button[aria-label="תפריט"] { background: #e8f0ff; }
.flow-site header.mobile-menu-open nav { max-height: min(72dvh, 480px); overflow-y: auto; overscroll-behavior: contain; }
.flow-site header nav a:not(.mobile-booking) { min-height: 44px; display: flex; align-items: center; }
.flow-site footer { margin-top: 64px; background: #eef4ff; border-top: 1px solid #dbe7fb; }
.flow-site footer > .footer-layout { align-items: start; }
.footer-flow-card { position: relative; isolation: isolate; width: 100%; max-width: 360px; overflow: hidden; border: 1px solid #cbdffc; border-radius: 22px; padding: 24px 20px 20px; background: #ffffffb8; }
.footer-flow-card::before { content: ''; position: absolute; z-index: -1; inset: 15% -30% -30%; background: url('/assets/flow-field.svg') center / cover no-repeat; opacity: .55; pointer-events: none; }
.footer-flow-heading { color: #173b72; font-size: 1.15rem; font-weight: 800; line-height: 1.5; }
.footer-flow-stages { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; list-style: none; margin: 23px 0 18px; padding: 0; }
.footer-flow-stages::before { content: ''; position: absolute; z-index: -1; top: 22px; inset-inline: 16%; border-top: 2px dotted #a9c7f6; }
.footer-flow-stages li { min-width: 0; text-align: center; }
.footer-flow-stages li > span { width: 44px; height: 44px; margin: 0 auto 10px; display: grid; place-items: center; border: 1px solid #c7ddff; border-radius: 14px; color: #2465db; background: #f6f9ff; }
.footer-flow-stages li:last-child > span { background: #2563eb; color: #fff; border-color: #2563eb; }
.footer-flow-stages svg { width: 23px; height: 23px; }
.footer-flow-stages p { color: #345780; font-size: .72rem; font-weight: 700; line-height: 1.7; }
.footer-flow-note { padding-top: 15px; border-top: 1px solid #dce8fa; color: #536e8e; font-size: .72rem; line-height: 1.8; }
@media(min-width:768px) {
  .flow-site footer > .footer-layout { grid-template-columns: minmax(0,1.1fr) minmax(130px,.6fr) minmax(0,1fr); }
}
.flow-site .glass { border-color: #dce7fb; box-shadow: 0 10px 36px -20px #1b4c972b; }
.flow-site main > section.py-20 { padding-block: 64px; }
.flow-site main > section > .mb-12 { margin-bottom: 36px; }
.flow-kicker { display: inline-flex; align-items: center; gap: 9px; color: #225bd4; font-size: .78rem; font-weight: 800; letter-spacing: .02em; }
.flow-kicker::before { content: ''; width: 22px; height: 3px; border-radius: 3px; background: #287bfa; }
.flow-hero { gap: 64px; padding-block: 56px 60px; }
.flow-hero::before { content: ''; position: absolute; z-index: -1; inset: -20px -4vw -60px; background: url('/assets/flow-field.svg') center 55% / 125% auto no-repeat; pointer-events: none; opacity: .7; }
.flow-hero > div { min-width: 0; }
.flow-hero h1 { font-size: clamp(2.4rem, 4.3vw, 3.8rem); line-height: 1.18; letter-spacing: -.035em; }
.flow-hero h1 span[dir="ltr"] { display: inline-block; max-width: 100%; letter-spacing: -.025em; }
.flow-hero > div:first-child > p:first-child { border: 1px solid #c9ddff; background: #ffffffc7; line-height: 1.8; font-size: .8rem; padding: 7px 14px; }
.flow-hero > div:first-child > p.mt-6 { font-size: 1.08rem; line-height: 1.9; max-width: 550px; }
.flow-hero-photo > img { height: 560px; border-radius: 32px; object-fit: cover; object-position: center 28%; animation: none; box-shadow: 0 28px 70px -36px #123c9873; }
.flow-hero-photo > .glass { right: 18px; bottom: 96px; border: 1px solid #fff; box-shadow: 0 16px 30px -20px #17397199; }
.flow-hero-flow { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: -36px 22px 0; z-index: 1; padding: 18px 20px; border: 1px solid #d9e7ff; border-radius: 20px; background: #fff; box-shadow: 0 18px 40px -24px #16438580; }
.flow-hero-flow span { display: flex; flex-direction: column; align-items: center; gap: 7px; color: #263f63; font-size: .75rem; font-weight: 700; white-space: nowrap; }
.flow-hero-flow svg { color: #2563eb; width: 23px; height: 23px; }
.flow-hero-flow i { height: 1px; flex: 1; background: #b9d4fc; }
.flow-benefits > .grid > div { position: relative; overflow: hidden; background: #fff; border: 1px solid #e0e9f6; padding: 26px; border-radius: 22px; }
.flow-benefits > .grid > div::after { content: ''; position: absolute; top: -32px; left: -32px; width: 104px; height: 104px; border: 18px solid #f0f5ff; border-radius: 50%; pointer-events: none; }
.flow-benefits > .grid > div > svg { position: relative; z-index: 1; width: 50px; height: 50px; padding: 12px; box-sizing: border-box; border-radius: 15px; background: #eaf2ff; color: #2563eb; margin-bottom: 20px; }
.flow-benefits > .grid h3 { color: #15345c; }
.flow-benefits > .grid p { font-size: .95rem; line-height: 1.85; }
.flow-lead-example { max-width: 1280px; margin-inline: auto; padding: 14px 20px 60px; }
.flow-lead-shell { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 74px); align-items: center; overflow: hidden; border: 1px solid #cfe0fb; border-radius: 32px; padding: clamp(26px, 4.3vw, 56px); background: #eaf2ff; }
.flow-lead-shell::before { content: ''; position: absolute; inset: 0; background: url('/assets/flow-field.svg') center / cover no-repeat; opacity: .5; pointer-events: none; }
.flow-lead-shell > * { position: relative; min-width: 0; }
.flow-lead-copy h2 { max-width: 450px; margin: 18px 0; color: #14335d; font-size: clamp(2rem, 3.4vw, 2.85rem); font-weight: 800; line-height: 1.25; letter-spacing: -.025em; }
.flow-lead-copy > p:not(.flow-kicker) { color: #4e6585; font-size: 1rem; line-height: 1.9; max-width: 470px; }
.flow-lead-copy .btn-ghost-luxe { margin-top: 24px; background: #fff; font-size: .9rem; }
.flow-lead-route { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 28px; padding: 0; }
.flow-lead-route li { border-top: 2px solid #aacbff; padding-top: 13px; color: #31527f; font-size: .78rem; font-weight: 700; line-height: 1.7; }
.flow-lead-route b { display: block; margin-bottom: 5px; color: #1f63e5; font-size: .72rem; font-weight: 800; }
.flow-lead-card { overflow: hidden; border: 1px solid #d5e3f8; border-radius: 24px; background: #fff; box-shadow: 0 24px 60px -28px #194b9573; }
.flow-lead-card-top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding: 16px 22px; background: #f6f9ff; border-bottom: 1px solid #e4ecf8; color: #31527f; font-size: .72rem; font-weight: 800; }
.flow-demo-label { display: inline-flex; border-radius: 20px; background: #e8f0ff; color: #2656a7; padding: 5px 10px; font-size: .7rem; }
.flow-lead-person { display: flex; align-items: center; gap: 14px; padding: 23px 24px 18px; }
.flow-lead-avatar { display: grid; place-items: center; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 18px; color: #2563eb; background: #edf4ff; border: 1px solid #dce9ff; }
.flow-lead-avatar svg { width: 30px; height: 30px; }
.flow-lead-person h3 { color: #14335d; font-size: 1.2rem; font-weight: 800; }
.flow-lead-person p { color: #667d9b; font-size: .76rem; margin-top: 5px; }
.flow-lead-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; margin: 0; padding: 0 24px 20px; }
.flow-lead-details > div { min-width: 0; padding-block: 14px; border-bottom: 1px solid #e9eff8; }
.flow-lead-details .flow-contact-field { grid-column: 1 / -1; }
.flow-lead-details dt { font-size: .72rem; color: #6d7f99; margin-bottom: 7px; }
.flow-lead-details dd { margin: 0; font-size: .88rem; font-weight: 700; color: #18395f; line-height: 1.7; }
.flow-lead-details .flow-contact-field dd { color: #1e5cd5; font-size: 1.45rem; letter-spacing: .03em; }
.flow-lead-next { display: flex; align-items: center; gap: 10px; margin: 0 22px 18px; padding: 12px 14px; border-radius: 12px; background: #edf4ff; color: #2b568e; font-size: .76rem; font-weight: 700; line-height: 1.8; }
.flow-lead-next svg { width: 20px; height: 20px; flex-shrink: 0; }
.flow-lead-disclaimer { border-top: 1px solid #e9eff8; padding: 13px 20px; font-size: .65rem; color: #657a96; text-align: center; line-height: 1.8; }
.flow-stats > div { position: relative; overflow: hidden; background: #174fae; border: 1px solid #184cad; border-radius: 26px; }
.flow-stats > div::before { content: ''; position: absolute; inset: -30%; opacity: .6; background: url('/assets/flow-field.svg') center / cover; pointer-events: none; }
.flow-stats > div > div { position: relative; }
.flow-calculator .glass { background: #fff; border: 1px solid #dce7fb; }
.flow-calculator .calculator-control-row { gap: 12px; flex-wrap: wrap; }
.flow-calculator .calculator-control-row > span { flex: 1 1 130px; font-size: .92rem; }
.flow-calculator .calculator-control-row > div { display: grid; grid-template-columns: 44px minmax(86px, 1fr) 44px; gap: 6px; flex-shrink: 0; }
.flow-calculator .calculator-control-row button { width: 44px; height: 44px; background: #edf3ff; border: 1px solid #d7e5fc; }
.flow-calculator .calculator-control-row button:hover { background: #dceaff; }
.flow-calculator input[type="range"] { min-height: 44px; touch-action: pan-y; }
.flow-calculator .glass > div:nth-child(2) { position: relative; overflow: hidden; background: #174fae; }
.flow-calculator .glass > div:nth-child(2)::before { content: ''; position: absolute; inset: 0; background: url('/assets/flow-field.svg') center / cover; opacity: .5; pointer-events: none; }
.flow-calculator .glass > div:nth-child(2) > * { position: relative; }
.flow-calculator .glass > div:nth-child(2) p.text-4xl { font-size: clamp(2rem, 4vw, 3rem); overflow-wrap: anywhere; }
.flow-deliverables > .grid > div { background: #fff; border: 1px solid #dce7fb; border-radius: 20px; align-items: flex-start; }
.flow-service-symbol { flex: 0 0 55px; width: 55px; height: 66px; display: grid; align-content: center; justify-items: center; gap: 5px; border-radius: 16px; color: #2465dc; background: #edf4ff; }
.flow-service-symbol svg { width: 26px; height: 26px; }
.flow-service-symbol small { font-size: .62rem; font-weight: 800; letter-spacing: .1em; }
.flow-deliverables h3 { margin-bottom: 6px; color: #163762; }
.flow-deliverables p { line-height: 1.85; font-size: .92rem; }
.flow-process > .grid { position: relative; gap: 24px; }
.flow-process > .grid::before { content: ''; position: absolute; inset-inline: 12.5%; top: 39px; border-top: 2px dashed #bad2f8; z-index: -1; }
.flow-process > .grid > div > div { border: 7px solid #f7faff; width: 78px; height: 78px; margin-bottom: 14px; background: #2563eb; box-shadow: 0 0 0 1px #d5e5fe; }
.flow-process h3 { color: #15345c; }
.flow-process p { font-size: .9rem; line-height: 1.85; }
.flow-audience > .grid > div { background: #fff; border-color: #dce7fb; }
.flow-audience > .grid > div > span { width: 42px; height: 42px; background: #edf4ff; color: #2563eb; border: 1px solid #d7e5fc; }
.flow-audience > .grid p { font-size: .92rem; line-height: 1.85; }
.flow-guide .guide-download-panel { position: relative; border-color: #cbdffc; background: linear-gradient(145deg, #fff, #eff5ff); }
.flow-guide .guide-download-panel::before { content: ''; position: absolute; width: 110px; height: 110px; border-radius: 50%; background: #e4eeff; bottom: 16px; left: 16px; pointer-events: none; }
.flow-guide .guide-download-panel > * { position: relative; }
.flow-insights .glass { background: #fff; border-color: #dce7fb; }
.flow-insights .article-card-image { border: 1px solid #e3edfb; }
.flow-faq button[data-radix-collection-item] { min-height: 60px; padding-block: 18px; line-height: 1.65; text-align: start; gap: 16px; }
.flow-faq button[data-radix-collection-item] svg { flex-shrink: 0; }
.flow-cta > div { position: relative; isolation: isolate; overflow: hidden; background: #144da9; border: 1px solid #184ca4; }
.flow-cta > div::before { content: ''; position: absolute; z-index: -1; inset: -60%; background: url('/assets/flow-field.svg') center / cover; opacity: .65; pointer-events: none; }
.flow-cta h2 { max-width: 750px; margin-inline: auto; }
.flow-cta a { min-height: 48px; align-items: center; justify-content: center; }
.flow-page-intro { overflow: hidden; padding-top: 64px; }
.flow-page-intro::before { content: ''; position: absolute; z-index: -1; inset: -10% 0 -30%; background: url('/assets/flow-field.svg') center / cover; opacity: .65; pointer-events: none; }
.flow-site .article-aside a { display: block; padding-block: 5px; }
@media(hover:hover) {
  .flow-benefits > .grid > div:hover, .flow-deliverables > .grid > div:hover { border-color: #abcaf7; box-shadow: 0 18px 36px -22px #1e58ab55; }
}
@media(max-width:1023px) {
  .flow-hero { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 32px; }
  .flow-hero-photo > img { height: 490px; }
  .flow-hero-flow { margin-inline: 10px; padding: 16px 12px; gap: 7px; }
  .flow-lead-shell { gap: 30px; }
}
@media(max-width:767px) {
  .flow-site main > section.py-20 { padding-block: 44px; }
  .flow-site main > section > .mb-12 { margin-bottom: 26px; }
  .flow-site main > section > .mb-12 h2 { font-size: clamp(1.8rem, 6.7vw, 2.3rem); line-height: 1.3; }
  .flow-hero { grid-template-columns: minmax(0,1fr); gap: 30px; padding-top: 30px; padding-bottom: 38px; }
  .flow-hero h1 { font-size: clamp(1.9rem, 7.2vw, 2.8rem); line-height: 1.22; }
  .flow-hero > div:first-child > p.mt-6 { font-size: 1rem; line-height: 1.85; margin-top: 18px; }
  .flow-hero > div:first-child > p:first-child { font-size: .73rem; max-width: 100%; margin-bottom: 18px; }
  .flow-hero > div:first-child > .mt-8 { margin-top: 24px; }
  .flow-hero > div:first-child > .mt-8 a { flex: 1 1 210px; font-size: .92rem; padding-inline: 18px; }
  .flow-hero-photo { max-width: 480px; width: 100%; margin-inline: auto; }
  .flow-hero-photo > img { width: 100%; height: auto; aspect-ratio: 1 / 1.05; max-height: 460px; border-radius: 26px; }
  .flow-hero-photo > .glass { right: 12px; bottom: 94px; padding: 11px 15px; }
  .flow-hero-photo > .glass p.text-2xl { font-size: 1.35rem; }
  .flow-hero-flow { margin: -26px 14px 0; padding: 16px 12px; border-radius: 16px; }
  .flow-hero-flow span { font-size: .7rem; }
  .flow-benefits > .grid { gap: 14px; }
  .flow-benefits > .grid > div { padding: 22px; }
  .flow-lead-example { padding-bottom: 44px; padding-top: 0; }
  .flow-lead-shell { grid-template-columns: minmax(0,1fr); padding: 24px 18px; gap: 26px; border-radius: 26px; }
  .flow-lead-copy h2 { font-size: clamp(1.85rem, 7vw, 2.35rem); }
  .flow-lead-copy > p:not(.flow-kicker) { font-size: .94rem; line-height: 1.85; }
  .flow-lead-route { margin-top: 20px; gap: 8px; }
  .flow-lead-route li { font-size: .7rem; }
  .flow-lead-copy .btn-ghost-luxe { margin-top: 20px; width: 100%; }
  .flow-lead-card { border-radius: 19px; }
  .flow-lead-card-top { padding: 13px 17px; font-size: .67rem; }
  .flow-lead-person { padding: 20px 17px 10px; }
  .flow-lead-details { padding-inline: 17px; gap: 0 12px; }
  .flow-lead-details dd { font-size: .8rem; }
  .flow-lead-details .flow-contact-field dd { font-size: 1.3rem; }
  .flow-lead-next { margin-inline: 15px; font-size: .69rem; }
  .flow-lead-disclaimer { font-size: .63rem; padding-inline: 15px; }
  .flow-stats > div { padding: 28px 16px; gap: 26px 12px; border-radius: 23px; }
  .flow-stats > div > div > p:first-child { font-size: 2rem; }
  .flow-stats > div > div > p:last-child { font-size: .76rem; }
  .flow-calculator .glass { padding: 22px 18px; gap: 24px; border-radius: 22px; }
  .flow-calculator .calculator-control-row { display: grid; grid-template-columns: minmax(0,1fr); gap: 9px; }
  .flow-calculator .calculator-control-row > div { width: 100%; }
  .flow-calculator .calculator-control-row > span { flex: initial; }
  .flow-calculator .glass > div:nth-child(2) { padding: 26px 20px; }
  .flow-deliverables > .grid { gap: 14px; }
  .flow-deliverables > .grid > div { padding: 22px 18px; gap: 14px; }
  .flow-service-symbol { flex-basis: 46px; width: 46px; height: 59px; border-radius: 13px; }
  .flow-service-symbol svg { width: 23px; height: 23px; }
  .flow-deliverables h3 { font-size: 1rem; }
  .flow-deliverables p { font-size: .87rem; }
  .flow-process > .grid { gap: 22px; }
  .flow-process > .grid::before { inset-inline: auto 29px; top: 24px; bottom: 24px; border-top: 0; border-right: 2px dashed #bad2f8; }
  .flow-process > .grid > div { display: grid; grid-template-columns: 60px minmax(0,1fr); gap: 0 18px; text-align: start; }
  .flow-process > .grid > div > div { grid-row: span 2; width: 60px; height: 60px; margin: 0; border-width: 5px; font-size: 1.15rem; }
  .flow-process h3 { align-self: end; font-size: 1.08rem; }
  .flow-process p { margin-top: 5px; }
  .flow-guide .guide-download-panel { padding: 25px 22px; }
  .flow-guide .guide-book { max-width: 170px; }
  .flow-cta > div { padding: 36px 23px; border-radius: 25px; }
  .flow-cta h2 { font-size: clamp(1.8rem, 6.7vw, 2.4rem); line-height: 1.3; }
  .flow-cta a { width: 100%; font-size: .9rem; padding-inline: 14px; }
  .flow-site footer { margin-top: 44px; }
  .flow-page-intro { padding-top: 44px; padding-bottom: 30px; }
  .flow-site .article-aside a { min-height: 36px; }
}
@media(max-width:359px) {
  .flow-lead-example { padding-inline: 14px; }
  .flow-lead-shell { padding-inline: 14px; }
  .flow-lead-card-top { align-items: flex-start; flex-direction: column; gap: 6px; }
  .flow-lead-person { padding-inline: 14px; gap: 10px; }
  .flow-lead-person h3 { font-size: 1.06rem; }
  .flow-lead-details { padding-inline: 14px; }
  .flow-lead-details > div { grid-column: 1 / -1; padding-block: 10px; }
  .flow-lead-route li { font-size: .66rem; }
}
@media(prefers-reduced-motion:reduce) {
  .flow-site *, .flow-site *::before, .flow-site *::after { animation: none !important; transition: none !important; }
}
@media print {
  .flow-lead-shell { background: #fff; }
  .flow-hero::before, .flow-lead-shell::before, .flow-stats > div::before, .flow-cta > div::before { display: none; }
}
