:root{
  --bg:#f4f7fb;
  --bg-soft:#eef3f8;
  --card:#ffffff;
  --ink:#0f1d37;
  --muted:#5f6b81;
  --line:#d7dfeb;
  --primary:#0a6f74;
  --primary-dark:#08575a;
  --accent:#ffb84d;
  --shadow:0 18px 42px rgba(15,29,55,.09);
  --shadow-soft:0 10px 24px rgba(15,29,55,.06);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Heebo","Assistant",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 85% 12%, rgba(58,180,181,.12), transparent 18rem),
    radial-gradient(circle at 12% 18%, rgba(59,130,246,.08), transparent 16rem),
    var(--bg);
  color:var(--ink);
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.shell{width:min(1280px, calc(100% - 32px));margin-inline:auto}
.site-header{
  position:sticky;top:0;z-index:60;
  backdrop-filter:blur(14px);
  background:rgba(244,247,251,.88);
  border-bottom:1px solid rgba(215,223,235,.9);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark,.logo-badge{
  width:48px;height:48px;border-radius:16px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#10949a,#3fd7cc);
  color:#fff;font-weight:900;
  box-shadow:0 12px 28px rgba(16,148,154,.28);
}
.brand-mark{
  width:88px;height:88px;border-radius:22px;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border:1px solid #d5dee7;
  box-shadow:0 18px 44px rgba(15,29,55,.14), 0 2px 0 rgba(255,255,255,.95) inset;
  padding:6px;
  overflow:hidden;
}
.brand strong{font-size:1.22rem}
.brand small{display:block;color:var(--muted);font-size:.82rem;margin-top:-3px;max-width:340px}
.nav-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nav-links a,.ghost,.linklike{
  border:0;background:transparent;color:var(--muted);padding:9px 12px;border-radius:14px;font-weight:700;
}
.nav-links a:hover,.ghost:hover,.linklike:hover{background:#ecf5f6;color:var(--primary)}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;align-items:center;padding:52px 0 28px}
.eyebrow{margin:0 0 12px;color:var(--primary);font-weight:900;letter-spacing:.01em;font-size:.96rem}
h1{margin:0 0 18px;font-size:clamp(2.25rem,5vw,4.15rem);line-height:1.06;letter-spacing:-.02em;max-width:900px}
h2{margin:0;font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.15}
h3{margin:0 0 12px;font-size:1.2rem}
.lead{font-size:1.12rem;color:var(--muted);max-width:860px;margin:0 0 20px}
.hero-actions,.form-actions,.inline-links-row{display:flex;gap:12px;flex-wrap:wrap}
.hero-actions,.form-actions{margin-top:22px}
.primary,.secondary{
  border:0;border-radius:16px;padding:13px 18px;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.primary{background:var(--primary);color:#fff;box-shadow:0 14px 30px rgba(10,111,116,.24)}
.primary:hover{background:var(--primary-dark)}
.secondary{background:#e8f3f4;color:var(--primary)}
.secondary:hover{background:#d9eeef}
button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}
.trust-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.trust-strip span{
  background:#fff;border:1px solid var(--line);padding:8px 13px;border-radius:999px;
  color:var(--muted);font-size:.92rem;font-weight:800;box-shadow:var(--shadow-soft)
}
.hero-card,.form-panel,.side-panel>*,.letter-paper,.company-card{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(215,223,235,.92);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero-card{padding:26px}
.hero-card ol{padding-inline-start:24px;margin:12px 0 0}
.hero-card li{margin-bottom:10px}
.mini-note,.source-note{font-size:.93rem;color:var(--muted)}
.section{padding:34px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px}
.section-head.compact{align-items:center}
.filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
input,select,textarea{
  width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);outline:none;
}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(10,111,116,.11)}
.filters input{min-width:290px}.filters select{min-width:220px}
.company-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.company-card{
  position:relative;overflow:hidden;padding:18px;display:flex;flex-direction:column;gap:12px;min-height:238px;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  isolation:isolate;
  --brand:#0a6f74;
  --brand-soft:#eef7f7;
  --brand-border:#b8dedd;
  --brand-text:#0f1d37;
}
.company-card::before{
  content:"";position:absolute;inset:0 auto auto 0;height:7px;width:100%;background:linear-gradient(90deg,var(--brand), color-mix(in srgb, var(--brand) 55%, #ffffff));
}
.company-card::after{
  content:"";position:absolute;top:-40%;left:-55%;width:36%;height:180%;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.02) 20%, rgba(255,255,255,.55) 48%, rgba(255,255,255,.06) 70%, transparent 100%);
  transform:rotate(18deg);opacity:0;pointer-events:none;
}
.company-card:hover{transform:translateY(-5px);box-shadow:0 24px 52px rgba(15,29,55,.14);border-color:var(--brand-border)}
.company-card:hover::after{opacity:1;animation:shine 900ms ease forwards}
@keyframes shine{from{left:-55%}to{left:130%}}
.company-top{display:flex;align-items:center;gap:14px}
.logo-frame{
  width:64px;height:64px;border-radius:18px;flex:0 0 64px;
  display:grid;place-items:center;overflow:hidden;background:var(--brand-soft);border:1px solid var(--brand-border)
}
.logo-frame img{width:78%;height:78%;object-fit:contain;display:block}
.logo-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:1.05rem;font-weight:900;color:var(--brand);padding:8px;text-align:center;line-height:1.1}
.company-title-row{display:flex;flex-direction:column;gap:4px;min-width:0}
.company-card h3{margin:0;font-size:1.6rem;line-height:1.05}
.company-card .category-label{font-size:.96rem;color:var(--muted);font-weight:600}
.company-card p{margin:0;color:var(--muted)}
.company-card .description{min-height:3.05em}
.badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}
.badge{background:#edf3f7;color:#3a5168;border:1px solid #dce7ef;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:800}
.company-card .choose{margin-top:8px;width:100%;background:color-mix(in srgb, var(--brand) 12%, white);color:var(--brand);border:1px solid color-mix(in srgb, var(--brand) 22%, white)}
.company-card .choose:hover{background:color-mix(in srgb, var(--brand) 18%, white)}
.logo-badge.big{width:58px;height:58px;border-radius:20px;font-size:1.1rem}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}
.form-panel{padding:22px}
.selected-company{display:flex;align-items:center;gap:14px;border-radius:20px;padding:14px;margin-bottom:18px;background:#f1fafb;border:1px solid #cfe4e7}
.selected-company p{margin:0;font-size:1.02rem;font-weight:900}
.selected-company small{color:var(--muted)}
.selected-company .logo-frame,.selected-company .logo-badge.big{width:66px;height:66px;flex:0 0 66px}
.selected-company .logo-frame img{width:78%;height:78%;object-fit:contain}
fieldset{border:1px solid var(--line);border-radius:20px;padding:18px;margin:0 0 16px;background:#fbfcfe}
legend{padding:0 8px;font-weight:900;color:var(--primary)}
label{display:block;color:#26364d;font-weight:800;margin:10px 0}
label input,label textarea,label select{margin-top:6px;font-weight:500;color:var(--ink)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hidden{display:none!important}
.terms-box{background:#fff8e7;border:1px solid #f0d08c;border-radius:18px;padding:14px;margin-top:10px}
.checkline{display:flex;gap:10px;align-items:flex-start;margin:0;color:#4a3d18;font-weight:700}
.checkline input{width:auto;margin-top:6px;accent-color:var(--primary)}
.linklike{padding:4px 0;font-weight:800;color:var(--primary)}
.inline-links-row{margin-top:6px}
.side-panel{display:grid;gap:16px;position:sticky;top:86px}
.side-panel>*{padding:20px}
.contact-head{display:flex;gap:12px;align-items:center;margin-bottom:6px}
.contact-head .logo-frame{width:54px;height:54px;flex:0 0 54px}
.contact-list{display:grid;gap:10px;margin:14px 0}
.contact-item{border:1px solid var(--line);border-radius:16px;padding:10px 12px;background:#fbfdff;overflow-wrap:anywhere}
.contact-item strong{display:block;font-size:.88rem;color:var(--primary);margin-bottom:2px}
.contact-item span{display:block;color:var(--ink)}
.warning{background:#fff1ef;border:1px solid #ffcdc7;color:#7a2418;padding:12px;border-radius:16px;font-weight:700;margin-top:12px}
.contact-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.contact-links a{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:#edf4f7;color:var(--primary);font-weight:800;border:1px solid #d6e4ea}
.privacy-bullets{margin:10px 0;padding-inline-start:22px;color:var(--ink)}
.preview-section{padding-bottom:62px}
.letter-paper{padding:0;overflow:hidden;background:#fff}
.empty-letter{min-height:420px;display:grid;place-items:center;padding:40px;color:var(--muted);font-size:1.08rem;text-align:center}
.letter{
  direction:rtl;
  text-align:right;
  background:#fff;
  color:#111827;
  width:100%;
  max-width:820px;
  margin:auto;
  padding:28px 40px 32px;
  font-family:"Assistant","Arial","Noto Sans Hebrew",sans-serif;
  line-height:1.52;
  font-size:15px;
  unicode-bidi:plaintext;
}
.letter-date-line{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  min-height:24px;
  margin-bottom:10px;
  direction:rtl;
  text-align:right;
  font-size:13px;
  color:#374151;
}
.letter-date-line .letter-label{font-weight:800;white-space:nowrap}
.letter-heading{
  text-align:center;
  direction:rtl;
  margin:0 0 12px;
}
.letter-heading h1{
  margin:0;
  font-family:"Assistant","Arial",sans-serif;
  font-size:24px;
  font-weight:900;
  line-height:1.22;
  letter-spacing:0;
}
.letter-heading p{margin:3px 0 0;font-size:12.5px;color:#4b5563}
.letter-recipient{
  direction:rtl;
  text-align:right;
  margin:0 0 10px;
  font-size:14px;
  line-height:1.45;
}
.letter-rule{border:0;border-top:1.5px solid #1f2937;margin:8px 0 12px}
.letter-kv{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:flex-start;
  gap:7px;
  direction:rtl;
  text-align:right;
  margin:0 0 7px;
}
.letter-kv .letter-label{font-weight:900;white-space:nowrap}
.letter-kv .letter-value{min-width:0}
.letter-subject{font-weight:800;margin-bottom:10px}
.letter-paragraph{margin:0 0 8px;direction:rtl;text-align:right}
.letter-word{
  display:inline-block;
  margin-left:.28em;
  white-space:nowrap;
  direction:rtl;
}
.letter-word:last-child{margin-left:0}
.letter-table{
  width:100%;
  border-collapse:collapse;
  margin:10px 0 12px;
  font-size:13.2px;
  page-break-inside:auto;
  direction:rtl;
  table-layout:fixed;
}
.letter-table tr{page-break-inside:avoid;page-break-after:auto}
.letter-table th,.letter-table td{
  border:1px solid #9ca3af;
  padding:5px 8px;
  text-align:right;
  vertical-align:top;
  line-height:1.38;
  direction:rtl;
}
.letter-table th{background:#f3f4f6;width:32%;font-weight:900}
.letter-closing{margin-top:8px}
.optional-signature{
  display:flex;
  justify-content:flex-start;
  direction:rtl;
  margin-top:26px;
  page-break-inside:avoid;
}
.optional-signature figure{margin:0;width:270px;text-align:center}
.optional-signature img{display:block;max-width:230px;max-height:82px;object-fit:contain;margin:0 auto 5px}
.optional-signature figcaption{border-top:1px solid #111827;padding-top:5px;font-size:12.5px;font-weight:800}
.site-footer{border-top:1px solid var(--line);background:#fff;padding:24px 0;color:var(--muted)}
.footer-grid{display:flex;justify-content:space-between;gap:16px;align-items:center}.footer-grid p{margin:4px 0 0}.footer-grid div:last-child{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.terms-dialog{border:0;border-radius:32px;padding:0;box-shadow:0 35px 90px rgba(0,0,0,.22);max-width:780px;width:min(calc(100% - 28px),780px);direction:rtl}
.terms-dialog::backdrop{background:rgba(15,23,42,.42);backdrop-filter:blur(4px)}
.terms-dialog form{padding:28px}
.dialog-close{float:left;border:0;background:#eef2f7;border-radius:50%;width:38px;height:38px;font-size:26px;line-height:1}
.terms-content{max-height:58vh;overflow:auto;padding-inline-end:4px;color:#334155}
.terms-content p{margin:0 0 14px}
.terms-dialog menu{display:flex;justify-content:flex-start;padding:0;margin:18px 0 0}
.toast{position:fixed;bottom:22px;left:22px;background:#122944;color:#fff;border-radius:16px;padding:12px 16px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.22s ease;z-index:100;max-width:380px}
.toast.show{opacity:1;transform:translateY(0)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}


.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.address-grid>.two-col{grid-column:1/-1}
.input-help{display:block;color:var(--muted);font-size:.82rem;font-weight:700;margin-top:5px;line-height:1.35}
#idNumberInput.id-valid{border-color:#188b47;box-shadow:0 0 0 4px rgba(24,139,71,.12)}
.logo-link{display:grid;place-items:center;border-radius:inherit;color:inherit}
.logo-link:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 45%, #ffffff);outline-offset:3px}
@media (max-width:980px){.address-grid{grid-template-columns:1fr}}

@media (max-width:1120px){
  .company-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:980px){
  .hero,.workspace{grid-template-columns:1fr}
  .company-grid{grid-template-columns:repeat(2,1fr)}
  .side-panel{position:static}
  .nav{align-items:flex-start}
  .section-head{flex-direction:column;align-items:flex-start}
  .filters{width:100%;justify-content:stretch}
  .filters input,.filters select{min-width:0;flex:1}
  .two-col{grid-template-columns:1fr}
}
@media (max-width:620px){
  .shell{width:min(100% - 20px,1280px)}
  .company-grid{grid-template-columns:1fr}
  .hero{padding-top:34px}
  .nav-links{font-size:.92rem}
  .letter{padding:24px 18px;font-size:14.6px}
  .letter-heading{display:block}
  .letter-date-line{text-align:right}
  .footer-grid{display:grid}
  .brand small{display:none}
}
@media print{
  @page{size:A4;margin:14mm}
  body{background:#fff;color:#000}
  .site-header,.hero,.section:not(.preview-section),.site-footer,.toast,.section-head{display:none!important}
  .shell{width:100%;margin:0}
  .preview-section{padding:0}
  .letter-paper{box-shadow:none;border:0;border-radius:0;background:#fff}
  .letter{max-width:none;width:100%;padding:0;font-size:11.2pt;line-height:1.36}
  .letter-date-line{font-size:10pt;margin-bottom:5pt}
  .letter-heading{margin-bottom:7pt}
  .letter-heading h1{font-size:17pt}
  .letter-heading p{font-size:9.8pt}
  .letter-recipient{font-size:10.2pt;margin-bottom:5pt}
  .letter p{margin:0 0 4.2pt}
  .letter-table{font-size:10.2pt;margin:5pt 0 6pt}
  .letter-table th,.letter-table td{font-size:10pt;padding:2.8pt 4pt;line-height:1.22}
  .optional-signature{margin-top:14pt}
  a{color:#000;text-decoration:none}
}

.post-letter-actions{
  display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:flex-start;
  background:#ffffff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft);
  padding:16px;margin:16px 0 0;
}
.delivery-box{
  margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);
  padding:20px;position:relative;overflow:hidden;
}
.delivery-box::before{content:"";position:absolute;inset:0 auto auto 0;height:6px;width:100%;background:linear-gradient(90deg,var(--primary),#55d5cc)}
.delivery-box h3{margin:0 0 8px;font-size:1.35rem}
.delivery-box p{margin:0 0 10px;color:var(--muted)}
.delivery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.delivery-item{background:#fbfdff;border:1px solid var(--line);border-radius:16px;padding:11px 12px;overflow-wrap:anywhere}
.delivery-item strong{display:block;color:var(--primary);font-size:.9rem;margin-bottom:3px}
.delivery-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
@media(max-width:720px){.delivery-grid{grid-template-columns:1fr}}
@media print{.post-letter-actions,.delivery-box{display:none!important}}

/* V5 multilingual UI helpers */
.language-picker{
  display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-weight:800;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 8px;
}
.language-picker select{width:auto;min-width:130px;padding:7px 10px;border-radius:10px;background:#f9fbfd}
.language-note,.form-language-note{
  border:1px solid #cbdff3;background:#f3f8ff;color:#1f3b60;border-radius:18px;
  padding:11px 14px;font-weight:800;margin:12px 0 6px;
}
.form-language-note{margin:0 0 16px;font-size:.95rem}
html[dir="ltr"] body{direction:ltr;text-align:left}
html[dir="ltr"] .letter, html[dir="ltr"] .letter *{direction:rtl;text-align:right}
html[dir="ltr"] .hebrew-required, html[dir="ltr"] input[name="firstName"], html[dir="ltr"] input[name="lastName"], html[dir="ltr"] input[name="address"], html[dir="ltr"] textarea[name="notes"]{direction:rtl;text-align:right}
html[dir="ltr"] .company-card, html[dir="ltr"] .selected-company, html[dir="ltr"] .contact-card, html[dir="ltr"] .delivery-box{direction:rtl;text-align:right}
html[dir="ltr"] .letter-meta{text-align:left}
.hebrew-required.invalid-hebrew{border-color:#b42318;box-shadow:0 0 0 4px rgba(180,35,24,.12)}
.input-help-error{display:block;color:#b42318;font-size:.84rem;font-weight:800;margin-top:4px}
#serviceSelect,#disconnectWhen{direction:rtl;text-align:right}

/* V7: category catalog, live validation and company-specific notices */
.category-chips{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 24px}
.category-chip{
  border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;
  padding:9px 15px;font-weight:800;box-shadow:var(--shadow-soft);transition:.18s ease
}
.category-chip:hover{border-color:#9bc9cb;color:var(--primary);transform:translateY(-1px)}
.category-chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 10px 24px rgba(10,111,116,.22)}
.company-catalog{display:grid;gap:34px}
.catalog-category{display:grid;gap:16px}
.catalog-category-head{display:flex;align-items:center;gap:14px}
.catalog-category-head h3{margin:0;font-size:1.55rem;white-space:nowrap}
.tear-line{height:2px;flex:1;background-image:linear-gradient(90deg,#cbd8dc 0 9px,transparent 9px 18px);background-size:18px 2px;background-repeat:repeat-x}
.category-mini-row{display:flex;gap:6px;flex-wrap:wrap}
.category-mini{font-size:.72rem;font-weight:800;border-radius:999px;padding:3px 8px;background:color-mix(in srgb,var(--brand) 9%,#fff);color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 18%,#fff)}
.company-notice{margin:0 0 16px;padding:13px 15px;border-radius:16px;font-weight:750;line-height:1.55}
.company-notice.insurance{background:#fff3ef;border:1px solid #f5c6b8;color:#7b2e1a}
.company-notice.credit{background:#fff8df;border:1px solid #ead28a;color:#654d00}
.id-status{display:block;min-height:1.25em;margin-top:5px;font-size:.85rem;font-weight:850}
.id-status.ok{color:#168347}
.id-status.bad{color:#b42318}
.contact-note{margin-top:12px;padding:11px 13px;border-radius:14px;background:#fff8df;border:1px solid #ead28a;color:#654d00;font-size:.9rem;font-weight:700;line-height:1.5}
.post-letter-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.post-letter-actions>*{min-width:150px}
@media(max-width:620px){
  .category-chips{display:grid;grid-template-columns:1fr 1fr}
  .category-chip{width:100%}
  .catalog-category-head h3{font-size:1.25rem}
  .post-letter-actions>*{width:100%}
}

/* V8: optional fields, legal help, official address autocomplete, signature and counters */
.site-stats{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin-top:18px}
.stat-box{min-width:132px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:11px 14px;box-shadow:var(--shadow-soft);display:grid;gap:1px}
.stat-box strong{font-size:1.38rem;line-height:1;color:var(--primary)}
.stat-box span{font-size:.82rem;color:var(--muted);font-weight:800}
.stat-help{align-self:center}
.field-label-row{display:flex;align-items:center;gap:7px;justify-content:flex-start;flex-wrap:wrap}
.optional-tag{font-style:normal;font-size:.72rem;font-weight:900;color:#54667a;background:#edf2f6;border:1px solid #d8e2ea;border-radius:999px;padding:2px 7px;white-space:nowrap}
.help-button{width:25px;height:25px;min-width:25px;padding:0;border-radius:50%;border:1px solid #b8c9d6;background:#fff;color:var(--primary);display:inline-grid;place-items:center;font-size:.83rem;font-weight:900;line-height:1;box-shadow:none}
.help-button:hover{background:#eaf5f6;border-color:var(--primary)}
.compact-dialog{max-width:620px}
.compact-dialog .terms-content{font-size:1rem;line-height:1.7}
.compact-dialog .terms-content a{color:var(--primary);font-weight:900;text-decoration:underline}
.signature-fieldset{background:#f7fbfb}
.signature-control{display:flex;align-items:center;justify-content:space-between;gap:16px}
.signature-control p{margin:4px 0 0;color:var(--muted);font-size:.9rem;font-weight:600}
.signature-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.signature-preview{margin-top:12px;border:1px dashed #9bb9bb;border-radius:14px;background:#fff;padding:10px;min-height:80px;display:flex;align-items:center;justify-content:center}
.signature-preview img{max-width:320px;max-height:90px;object-fit:contain}
.signature-dialog{max-width:840px}
#signatureCanvas{display:block;width:100%;height:240px;border:2px dashed #91aaad;border-radius:14px;background:#fff;touch-action:none;cursor:crosshair}
.signature-menu{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start!important}
.law-summary{margin-top:14px;border:1px solid #bfd9dd;border-radius:17px;background:#f2fafb;padding:13px 14px;color:#183c42}
.law-summary h4{margin:0 0 7px;font-size:1rem;color:var(--primary)}
.law-summary p{margin:0 0 7px;color:#304d52;font-size:.92rem;line-height:1.55}
.law-summary strong{color:#15383d}
.law-summary a{display:inline-flex;margin-top:3px;color:var(--primary);font-weight:900;text-decoration:underline}
.city-loading{color:var(--primary)}
.city-error{color:#9a3412}
@media(max-width:720px){.signature-control{align-items:flex-start;flex-direction:column}.signature-buttons{justify-content:flex-start}.site-stats{display:grid;grid-template-columns:1fr 1fr auto}.stat-box{min-width:0}}
@media print{.optional-signature{margin-top:10pt}.optional-signature img{max-height:50pt}.optional-signature figcaption{font-size:9pt}}

/* V9: stable Hebrew spacing and editable Word export */
.letter-export-note{font-size:.82rem;color:var(--muted);margin-top:8px}
@media print{
  .letter-word{margin-left:.25em}
  .letter-date-line,.letter-recipient,.letter-kv,.letter-paragraph,.letter-table{direction:rtl!important;text-align:right!important}
}

/* V10: localized validation and multilingual dialogs */
.invalid-field{border-color:#b42318!important;box-shadow:0 0 0 4px rgba(180,35,24,.12)!important}
.localized-error{display:block;color:#b42318;font-size:.84rem;font-weight:800;margin-top:5px;line-height:1.35}
html[dir="ltr"] .terms-dialog,html[dir="ltr"] .terms-content,html[dir="ltr"] .signature-control{text-align:left;direction:ltr}
html[dir="rtl"] .terms-dialog,html[dir="rtl"] .terms-content,html[dir="rtl"] .signature-control{text-align:right;direction:rtl}

/* V12: logos are displayed inside the existing square only; no click target and no external-link icon */
.logo-frame{position:relative}
.logo-frame::after{content:none!important;display:none!important}
.logo-frame .company-logo-img{
  width:82%;
  height:82%;
  object-fit:contain;
  display:block;
  background:#fff;
  border-radius:12px;
  padding:5px;
  box-shadow:0 4px 12px rgba(15,29,55,.10);
}
.logo-frame.big .company-logo-img{width:82%;height:82%;padding:6px}
.contact-head .logo-frame .company-logo-img{padding:4px}
.logo-frame .logo-fallback{background:transparent}

/* V13: high-quality vector logos inside the existing square; clicking opens the official company website */
.company-logo-link{
  width:100%;height:100%;display:grid;place-items:center;border-radius:inherit;
  text-decoration:none;color:inherit;overflow:hidden;cursor:pointer;
}
.company-logo-link:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 52%,#fff);outline-offset:3px}
.company-logo-link:hover .company-logo-img{transform:scale(1.045)}
.logo-frame .company-logo-img{transition:transform .18s ease;width:92%;height:88%;padding:3px}
.logo-frame.logo-partner .company-logo-img{width:96%;height:92%;padding:1px}
.logo-frame.logo-pelephone .company-logo-img{width:78%;height:92%;padding:2px}
.logo-frame.logo-hotmobile .company-logo-img{width:80%;height:92%;padding:2px}
.logo-frame.logo-hot .company-logo-img{width:80%;height:90%;padding:2px}
.logo-frame.logo-clal .company-logo-img{width:97%;height:68%;padding:2px}
.logo-frame.logo-aig .company-logo-img{width:95%;height:74%;padding:2px}
.logo-frame.logo-cal .company-logo-img{width:96%;height:76%;padding:2px}
.logo-frame.logo-max .company-logo-img{width:96%;height:60%;padding:2px}
.logo-frame.big .company-logo-img{max-width:96%;max-height:94%}
.contact-head .logo-frame .company-logo-img{max-width:94%;max-height:90%}


.counter-status{
  margin:8px 0 0;
  padding:8px 12px;
  border-radius:12px;
  background:#eef8f4;
  color:#23634f;
  font-size:.86rem;
  font-weight:700;
}
.counter-status.error{
  background:#fff1f0;
  color:#9f2d20;
  border:1px solid #ffc9c3;
}


/* V17: light/dark appearance. Light is the explicit default and no preference is stored. */
html[data-theme="light"]{color-scheme:light}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#09111d;
  --bg-soft:#101b2a;
  --card:#121f2f;
  --ink:#edf5ff;
  --muted:#a9b8cb;
  --line:#2b3b50;
  --primary:#55d4cf;
  --primary-dark:#34b7b2;
  --accent:#ffc469;
  --shadow:0 18px 42px rgba(0,0,0,.34);
  --shadow-soft:0 10px 24px rgba(0,0,0,.22);
}
body,.site-header,.hero-card,.form-panel,.side-panel>*,.company-card,input,select,textarea,.trust-strip span,.contact-item,.law-box,.selected-company,.category-chip,.stat-box,.terms-dialog form{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 85% 12%, rgba(56,210,202,.10), transparent 18rem),
    radial-gradient(circle at 12% 18%, rgba(59,130,246,.10), transparent 16rem),
    var(--bg);
}
html[data-theme="dark"] .site-header{background:rgba(9,17,29,.90);border-bottom-color:rgba(43,59,80,.94)}
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .form-panel,
html[data-theme="dark"] .side-panel>*,
html[data-theme="dark"] .company-card,
html[data-theme="dark"] .selected-company,
html[data-theme="dark"] .contact-card,
html[data-theme="dark"] .law-box,
html[data-theme="dark"] .delivery-box,
html[data-theme="dark"] .privacy-short,
html[data-theme="dark"] fieldset,
html[data-theme="dark"] .stat-box,
html[data-theme="dark"] .trust-strip span{background:rgba(18,31,47,.96);border-color:var(--line)}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{background:#0d1826;color:var(--ink);border-color:#35465d}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#7f90a6}
html[data-theme="dark"] .nav-links a:hover,
html[data-theme="dark"] .ghost:hover,
html[data-theme="dark"] .linklike:hover{background:#173344;color:var(--primary)}
html[data-theme="dark"] .secondary{background:#17363f;color:#7ee8e3}
html[data-theme="dark"] .category-chip{background:#142235;border-color:#31435a;color:#c0cee0}
html[data-theme="dark"] .category-chip.active{background:var(--primary);color:#071316;border-color:var(--primary)}
html[data-theme="dark"] .terms-dialog form{background:#111d2c;color:var(--ink)}
html[data-theme="dark"] .dialog-close{background:#223148;color:var(--ink)}
html[data-theme="dark"] .toast{background:#eaf5ff;color:#101827}
html[data-theme="dark"] .letter-paper,
html[data-theme="dark"] .letter{background:#fff;color:#111827;border-color:#d7dfeb}
html[data-theme="dark"] .letter-paper *{--ink:#111827;--muted:#596477;--line:#d7dfeb}
html[data-theme="dark"] .logo-frame{background:#fff;border-color:#dce4ed}
.theme-toggle{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border:1px solid var(--line)!important;background:var(--card)!important;color:var(--ink)!important}
.theme-toggle:hover{border-color:var(--primary)!important;color:var(--primary)!important}
.theme-toggle-icon{font-size:1.1rem;line-height:1;width:1.1em;text-align:center}

/* V17: locally hosted, sharper company marks fitted to the existing square. */
.logo-frame .company-logo-img{image-rendering:auto;transform:translateZ(0)}
.logo-frame.logo-yes .company-logo-img{width:96%;height:92%;padding:2px}
.logo-frame.logo-wecom .company-logo-img{width:94%;height:88%;padding:2px}
.logo-frame.logo-hallo-015 .company-logo-img{width:96%;height:90%;padding:1px}
.logo-frame.logo-triple-c .company-logo-img{width:98%;height:72%;padding:1px}
.logo-frame.logo-ayalon .company-logo-img{width:96%;height:82%;padding:1px}
.logo-frame.logo-pazgas-electric .company-logo-img{width:96%;height:78%;padding:1px}
.logo-frame.logo-tami4 .company-logo-img{width:95%;height:88%;padding:1px}
.logo-frame.logo-hadas-water .company-logo-img{width:96%;height:90%;padding:1px}
.logo-frame.logo-mei-eden .company-logo-img{width:96%;height:88%;padding:1px}

.address-data-source{grid-column:1/-1;margin:2px 0 8px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--bg-soft);color:var(--muted);font-size:.82rem;font-weight:650;line-height:1.5}
.address-data-source a{color:var(--primary);font-weight:900;text-decoration:underline;text-underline-offset:2px;margin-inline:3px}
html[data-theme="dark"] .address-data-source{background:#0e1927}


html[data-theme="dark"] .site-footer{background:#0c1725;border-color:var(--line)}
html[data-theme="dark"] .contact-item,
html[data-theme="dark"] .delivery-item,
html[data-theme="dark"] .signature-preview{background:#0d1927;border-color:var(--line)}
html[data-theme="dark"] .selected-company{background:#102b31;border-color:#28535a}
html[data-theme="dark"] fieldset,
html[data-theme="dark"] .signature-fieldset{background:#0d1826}
html[data-theme="dark"] .badge,
html[data-theme="dark"] .optional-tag{background:#1c2a3c;color:#c3d0df;border-color:#33465c}
html[data-theme="dark"] .help-button{background:#132235;border-color:#496078;color:var(--primary)}
html[data-theme="dark"] .contact-links a{background:#17283a;border-color:#354b61;color:var(--primary)}
html[data-theme="dark"] .terms-box,
html[data-theme="dark"] .company-notice.credit,
html[data-theme="dark"] .contact-note{background:#332b14;border-color:#685929;color:#ffe4a3}
html[data-theme="dark"] .warning,
html[data-theme="dark"] .company-notice.insurance{background:#351d1d;border-color:#70413d;color:#ffc5bd}
html[data-theme="dark"] .law-summary{background:#102a31;border-color:#35626a;color:#d6f5f3}
html[data-theme="dark"] .language-note{background:#14243a;border-color:#35516f;color:#d7e8fb}
html[data-theme="dark"] .privacy-short{background:#102733;border-color:#2c5662;color:#d4edf1}
html[data-theme="dark"] .signature-preview img{filter:none}


.brand-mark img{width:100%;height:100%;object-fit:cover;display:block;border-radius:22px;filter:drop-shadow(0 4px 10px rgba(15,29,55,.08))}
.footer-grid strong{display:block;font-size:1.02rem;color:var(--ink)}
.success-banner{
  position:fixed;top:24px;left:50%;transform:translateX(-50%) translateY(-12px);
  z-index:1200;min-width:min(92vw,560px);max-width:92vw;
  background:linear-gradient(135deg,#0a6f74,#12a2a7);color:#fff;
  border-radius:18px;padding:15px 20px;box-shadow:0 24px 50px rgba(10,111,116,.28);
  text-align:center;font-weight:900;font-size:1rem;opacity:0;pointer-events:none;
}
.success-banner.show{opacity:1;transform:translateX(-50%) translateY(0);transition:all .28s ease}
.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:1190;overflow:hidden}
.confetti-piece{
  position:absolute;top:-24px;width:10px;height:16px;border-radius:3px;opacity:.96;
  animation:confetti-fall linear forwards;
}
@keyframes confetti-fall{
  0%{transform:translate3d(0,0,0) rotate(0deg);opacity:1}
  100%{transform:translate3d(var(--drift,0px),110vh,0) rotate(var(--spin,720deg));opacity:.06}
}
[data-theme="dark"] .success-banner{background:linear-gradient(135deg,#0d8c92,#25c3c9);color:#082225}
@media (max-width:640px){.success-banner{top:14px;font-size:.93rem;padding:13px 16px;border-radius:16px}}

.footer-contact{margin:.38rem 0 0;color:var(--muted);font-size:.93rem;font-weight:700}.footer-contact a{color:var(--primary);text-decoration:none}.footer-contact a:hover{text-decoration:underline}

@media (max-width:900px){.brand-mark{width:78px;height:78px;border-radius:20px;padding:5px}.brand-mark img{border-radius:14px}}
@media (max-width:640px){.brand-mark{width:68px;height:68px;border-radius:18px;padding:4px}.brand-mark img{border-radius:12px}}


.seo-section .marketing-copy{margin-top:18px;display:grid;gap:14px}
.seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
.seo-card,.faq-item{background:rgba(255,255,255,.94);border:1px solid rgba(215,223,235,.92);border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.seo-card{padding:18px}
.seo-card h3{margin:0 0 8px;font-size:1.08rem}
.seo-card p,.marketing-copy p,.faq-item p{margin:0;color:var(--muted);line-height:1.75}
.faq-list{display:grid;gap:12px}
.faq-item{padding:0 18px}
.faq-item summary{cursor:pointer;list-style:none;font-weight:800;padding:18px 0;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item p{padding:0 0 18px}
@media (max-width:900px){.seo-grid{grid-template-columns:1fr}}


.info-page-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.info-page-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.78);color:var(--primary);font-weight:800;box-shadow:var(--shadow-soft)}
.info-page-link:hover{background:#fff;border-color:#b8dedd;transform:translateY(-1px)}
.content-page{padding:42px 0 70px}
.content-page-head{max-width:820px;margin:0 auto 26px;text-align:center}
.content-page-head h1{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:14px}
.content-page-head p{color:var(--muted);font-size:1.08rem;line-height:1.75}
.content-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.content-card{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-soft)}
.content-card h2,.content-card h3{margin:0 0 10px;font-size:1.15rem}
.content-card p{margin:0;color:var(--muted);line-height:1.75}
.content-prose{max-width:900px;margin:22px auto 0;background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-soft)}
.content-prose p{margin:0 0 14px;color:var(--muted);line-height:1.85}
.content-prose p:last-child{margin-bottom:0}
.questions-list{max-width:900px;margin:0 auto;display:grid;gap:12px}
.questions-list details{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:18px;padding:0 18px;box-shadow:var(--shadow-soft)}
.questions-list summary{cursor:pointer;font-weight:900;padding:18px 0;color:var(--ink)}
.questions-list p{margin:0;padding:0 0 18px;color:var(--muted);line-height:1.75}
.page-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.simple-footer{padding:24px 0;border-top:1px solid var(--line);color:var(--muted)}
.simple-footer .shell{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
@media (max-width:900px){.content-page-grid{grid-template-columns:1fr}}
