/* === wp-reset.css === */
/* Ambalajele GeneratePress/WordPress în care stă conținutul nu adaugă margini, spațiere sau lățime maximă. */
.site,.site-content,.content-area,.site-main,.inside-article,.entry-content,.entry-header,article.page,.grid-container{margin:0;padding:0;max-width:none;width:auto;float:none;border:0;background:none}

/* === _comun/baza.css === */
/* SEO Factory — „Laborator de vizibilitate”, machete runda 1 (15.10.2026)
   Structura comună celor două variante. Culorile, fonturile și formele vin din <variantă>/viz.css,
   prin variabile; aici stă doar așezarea. Componentele folosesc numai variabile de secțiune
   (--bg, --text, --muted, --line, --surface…), ca să se adapteze singure pe fundal închis sau deschis. */
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--text); font: var(--fs-body, 16px)/1.6 var(--f-body); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
.cif, .bul, .cmp, .bar-v, .tmr, .facts { font-variant-numeric: tabular-nums; }
img { max-width: 100%; height: auto; display: block; }
img.foto { filter: var(--photo, none); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: 0; cursor: pointer; }
.wrap { width: min(var(--wrap, 1240px), 100% - 48px); margin-inline: auto; }
.narrow { width: min(840px, 100% - 48px); margin-inline: auto; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- tipografie ---------- */
h1, h2, h3, h4 { font-family: var(--f-head); font-weight: var(--w-head, 600); letter-spacing: var(--ls-head, -.025em); line-height: 1.06; }
h1 { font-size: var(--fs-h1, clamp(38px, 5vw, 64px)); }
h2 { font-size: var(--fs-h2, clamp(28px, 3.2vw, 42px)); }
h3 { font-size: var(--fs-h3, 20px); line-height: 1.22; letter-spacing: -.01em; }
.lead { font-size: 18px; color: var(--muted); max-width: 620px; }
.muted { color: var(--muted); }
.nota { font-size: 13px; color: var(--dim); }
.ilu { font-size: 12px; color: var(--dim); }
.sec { padding: 104px 0; position: relative; background: var(--bg); color: var(--text); }
.sec-head { margin-bottom: 44px; max-width: 780px; }
.sec-head > p { color: var(--muted); max-width: 600px; margin-top: 16px; font-size: 17px; }
.sec-head .link { margin-top: 16px; }
.split-head { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 44px; }
.split-head .sec-head { margin-bottom: 0; }

/* ---------- butoane, linkuri ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 50px; padding: 0 24px; border-radius: var(--r-btn); font-weight: 700; font-size: 15px; white-space: nowrap; transition: background .15s, color .15s, box-shadow .15s; }
.btn-p { background: var(--btn-bg); color: var(--btn-fg); }
.btn-p:hover { background: var(--btn-bg-h); color: var(--btn-fg-h, var(--btn-fg)); }
.btn-o { box-shadow: inset 0 0 0 1.5px var(--line-2); color: var(--text); }
.btn-o:hover { box-shadow: inset 0 0 0 1.5px var(--text); }
.btn-s { height: 42px; padding: 0 18px; font-size: 14px; }
.link { font-weight: 700; font-size: 15px; color: var(--link); display: inline-flex; gap: 8px; align-items: center; text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 4px; }
.link:hover { text-decoration-thickness: 2.5px; }

/* ---------- antet + mega meniu ---------- */
.hdr { position: sticky; top: 0; z-index: 60; background: var(--hdr-bg); color: var(--hdr-text); border-bottom: 1px solid var(--hdr-line); }
.hdr-in { display: flex; align-items: center; gap: 26px; height: 72px; }
.hdr .logo { flex: none; }
.hdr .logo img { height: 21px; width: auto; }
.nav-w { display: flex; height: 100%; }   /* <nav aria-label="Principal"> în jurul meniului (accesibilitate 19.10.2026, C6) */
.nav { display: flex; height: 100%; align-items: center; gap: 2px; list-style: none; }
.nav > li { display: flex; align-items: center; height: 100%; }
.nav-t { height: 40px; display: flex; align-items: center; gap: 6px; padding: 0 12px; white-space: nowrap; font-size: 15px; font-weight: 600; color: var(--hdr-muted); border-radius: var(--r-nav); position: relative; transition: color .15s, background .15s; }
.nav-t svg { width: 10px; height: 10px; transition: transform .2s; }
.nav > li:hover .nav-t, .nav > li.open .nav-t { color: var(--hdr-text); }
.nav > li.open .nav-t svg { transform: rotate(180deg); }
.hdr-r { margin-left: auto; display: flex; align-items: center; gap: 18px; }
.hdr-r .tel { font-size: 15px; font-weight: 700; white-space: nowrap; color: var(--hdr-text); }
.hdr-r .tel small { display: block; font-size: 11px; font-weight: 600; color: var(--hdr-muted); line-height: 1; }
.hdr-cta { transition: opacity .2s, visibility .2s; }
.hdr.cta-ascuns .hdr-cta { opacity: 0; visibility: hidden; }
.burger .b-x, .burger[aria-expanded="true"] .b-l { display: none; }
.burger[aria-expanded="true"] .b-x { display: inline; }
.burger { display: none; width: 44px; height: 44px; border-radius: var(--r-btn); place-items: center; box-shadow: inset 0 0 0 1.5px var(--hdr-line); color: var(--hdr-text); }

.mega { position: absolute; left: 0; right: 0; top: 72px; opacity: 0; visibility: hidden; transition: opacity .15s, visibility .15s; }
.nav > li.open .mega { opacity: 1; visibility: visible; }
.mega-p { background: var(--mega-bg); color: var(--mega-text); }
.mega-in { display: grid; gap: 36px; padding: 32px 0 34px; }
.mega-h { font-size: 13px; font-weight: 700; color: var(--mega-dim); margin-bottom: 10px; padding-bottom: 10px; }
.m-item { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 10px 0; }
.m-ic { width: 34px; height: 34px; display: grid; place-items: center; }
.m-ic svg { width: 19px; height: 19px; }
.m-item b { display: block; font: 700 15px var(--f-head); }
.m-item span { font-size: 13px; color: var(--mega-dim); line-height: 1.45; }
.m-item small { font: 12px var(--f-code); color: var(--mega-dim); }
.m-list a { display: block; padding: 6px 0; font-size: 15px; color: var(--mega-muted); }
.m-fam a { padding: 8px 0 10px; }
.m-fam img { display: block; height: 16px; width: auto; }
.m-fam span { display: block; margin-top: 5px; font-size: 13px; color: var(--mega-dim); }
.m-plat { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.m-plat a { display: grid; gap: 8px; justify-items: start; padding: 12px; }
.m-plat a b { font-size: 14px; font-weight: 700; line-height: 1.25; }
.m-plat a span { font-size: 12px; color: var(--mega-dim); line-height: 1.4; }
.m-feat { padding: 22px; }
.m-feat b { display: block; font: 700 18px var(--f-head); margin: 10px 0 6px; }
.m-feat p { font-size: 13px; color: var(--mega-dim); margin-bottom: 16px; }
.mega-foot { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; font-size: 13px; color: var(--mega-dim); }
.mega-foot a { font-weight: 700; color: var(--mega-text); text-decoration: underline; text-underline-offset: 3px; }

.drawer { position: fixed; inset: 72px 0 0; background: var(--bg); color: var(--text); z-index: 59; overflow-y: auto; padding: 8px 24px 40px; transform: translateX(100%); visibility: hidden; transition: transform .25s, visibility 0s linear .25s; }
.drawer.open { transform: none; visibility: visible; transition: transform .25s; }   /* închis = invizibil și pentru Tab (accesibilitate 19.10.2026, C1) */
.drawer details { border-bottom: 1px solid var(--line); }
.drawer summary, .drawer > a.d-l { list-style: none; padding: 17px 0; font: 700 19px var(--f-head); display: flex; justify-content: space-between; cursor: pointer; border-bottom: 1px solid var(--line); }
.drawer details summary { border-bottom: 0; }
.drawer summary::after { content: "+"; color: var(--link); }
.drawer details[open] summary::after { content: "−"; }
.drawer details a { display: block; padding: 8px 0 8px 14px; color: var(--muted); }
.drawer .btn { width: 100%; margin-top: 22px; }
.drawer .d-tel { display: block; margin-top: 16px; text-align: center; font-weight: 700; }

/* ---------- formularul de verificare (erou, apel final, pasul 1) ---------- */
.verif { display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr); min-width: 0; }
.dom-f { display: flex; gap: 8px; padding: 6px; border-radius: var(--r-field-wrap); background: var(--field-bg); box-shadow: inset 0 0 0 1.5px var(--field-line); }
.dom-f:focus-within { box-shadow: inset 0 0 0 2px var(--focus-camp, #007783); }
.dom-f > span { display: grid; place-items: center; padding: 0 2px 0 14px; color: var(--dim); font: 15px var(--f-code); }
.dom-f input { flex: 1; min-width: 0; background: none; border: 0; outline: none; color: var(--field-text); font: 17px var(--f-code); padding: 0 6px; }
.plat-f { border: 0; }
#v-alege { margin-top: 16px; }
.plat-f legend { font-size: 13px; font-weight: 700; color: var(--muted); margin-bottom: 8px; }
.plat-row { display: flex; flex-wrap: wrap; gap: 6px; }
.plat-row label { position: relative; cursor: pointer; }
.plat-row input { position: absolute; opacity: 0; pointer-events: none; }
.plat-row .pp { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 12px 0 6px; font-size: 14px; font-weight: 600; border-radius: var(--r-chip); box-shadow: inset 0 0 0 1px var(--line-2); color: var(--muted); transition: background .15s, color .15s, box-shadow .15s; white-space: nowrap; }
.plat-row .pp.nu { padding-left: 12px; }
.plat-row input:checked + .pp { box-shadow: inset 0 0 0 2px var(--accent); color: var(--text); background: var(--chip-on); }
.plat-row input:focus-visible + .pp { outline: 2px solid var(--accent); outline-offset: 2px; }

/* simbolul de platformă: „element” din tabelul laboratorului (nu logo oficial) */
.el { --s: 26px; width: var(--s); height: var(--s); flex: none; display: grid; place-items: center; font: 800 calc(var(--s) * .44)/1 var(--f-head); letter-spacing: -.02em; border-radius: var(--r-el); background: var(--el-bg); color: var(--el-fg); position: relative; }
.el.m { --s: 40px; } .el.l { --s: 64px; }

/* ---------- buletinul de vizibilitate ---------- */
.bul { position: relative; overflow: hidden; text-align: left; }
.bul-top { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; padding: 16px 24px 14px; }
.bul-top b { font: var(--w-head, 600) 17px var(--f-head); }
.bul-top .dom { font-weight: 700; }
.bul-top .st { margin-left: auto; font-size: 13px; font-weight: 700; }
.bul-meta { display: flex; gap: 6px 22px; flex-wrap: wrap; padding: 10px 24px; font-size: 13px; }
.bul-h, .bul-r { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, .9fr); gap: 16px; align-items: center; }
.bul-h { padding: 10px 24px 8px; font-size: 12px; font-weight: 700; }
.bul-h span:not(:first-child), .bul-r > :not(:first-child) { text-align: right; }
.bul-rows { position: relative; }
.bul-g { display: grid; grid-template-columns: 116px minmax(0, 1fr); }
.bul-c { padding: 13px 0 13px 24px; display: flex; gap: 10px; align-items: flex-start; font-weight: 700; font-size: 15px; }
.bul-c .el { --s: 22px; font-size: 10px; margin-top: 1px; }
.bul-g .rr { padding-right: 24px; }
.bul-r { padding: 12px 0; font-size: 15px; transition: background .2s, opacity .3s; }
.bul-r .an small { display: block; font-size: 12px; }
.bul-r .val { font-weight: 700; }
.bul-r .ref { font-size: 13px; }
.bul-r .rec { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.bul-r .rec i { font-style: normal; font-size: 13px; font-weight: 700; padding: 3px 9px; border-radius: var(--r-chip); }
.bul-foot { display: flex; justify-content: space-between; gap: 10px 20px; flex-wrap: wrap; padding: 14px 24px; font-size: 13px; }
.bul-rows.scan::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 100%; border-top: 2px solid var(--accent); pointer-events: none; animation: scanline 4.2s linear forwards; }
@keyframes scanline { 0% { transform: translateY(0); opacity: 1; } 92% { transform: translateY(calc(100% - 2px)); opacity: 1; } 100% { transform: translateY(calc(100% - 2px)); opacity: 0; } }
.bul-r.wait .val, .bul-r.wait .rec { opacity: .25; }
.bul-r.run { background: var(--run-bg); }

/* ---------- comparația pe canale ---------- */
.cmp-g { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.cmp { overflow: hidden; }
.cmp-h, .cmp-r { display: grid; grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, .62fr)) minmax(0, 1.25fr); gap: 14px; align-items: center; }
.cmp-h { padding: 14px 22px 10px; font-size: 13px; font-weight: 700; color: var(--dim); }
.cmp-h > span { display: flex; align-items: center; gap: 8px; }
.cmp-h .el { --s: 22px; font-size: 10px; }
.cmp-r { padding: 13px 22px; font-size: 15px; }
.cmp-r .q { font-weight: 600; }
.cmp-r .q small { display: block; font-size: 12px; font-weight: 500; color: var(--dim); }
.poz { font-weight: 800; font-size: 16px; }
.poz.top { color: var(--ok); } .poz.mid { color: var(--warn); } .poz.out { color: var(--bad); }
.poz small { display: block; font-size: 12px; font-weight: 500; color: var(--dim); }
.cit b { font-weight: 800; }
.cit b.zero { color: var(--bad); }
.cit small { display: block; font-size: 12px; color: var(--dim); }
.cmp-s { display: grid; grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, .62fr)) minmax(0, 1.25fr); gap: 14px; padding: 16px 22px; font-size: 13px; font-weight: 700; }
.cmp-s b { display: block; font: var(--w-head, 600) 22px/1.1 var(--f-head); }
.cmp-why { display: grid; gap: 0; }
.cmp-why div { padding: 18px 0; }
.cmp-why h3 { display: flex; align-items: center; gap: 10px; font-size: 18px; margin-bottom: 6px; }
.cmp-why h3 .el { --s: 24px; font-size: 10px; }
.cmp-why p { font-size: 15px; color: var(--muted); }
.cmp-src { margin-top: 18px; font-size: 13px; color: var(--dim); }
.js-anim [data-nivel] .cmp-r, .js-anim .cmp-r { transition: opacity .5s ease, transform .5s cubic-bezier(.2,.7,.2,1); }

/* ---------- probleme ---------- */
.pb-g { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 48px; align-items: start; }
.pb-list { display: grid; }
.pb { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 16px; align-items: start; padding: 18px 0; }
.pb .pi { width: 40px; height: 40px; display: grid; place-items: center; }
.pb .pi svg { width: 20px; height: 20px; }
.pb h3 { font-size: 19px; }
.pb p { font-size: 15px; color: var(--muted); margin-top: 4px; }
.pb .u { font: 12px var(--f-code); color: var(--dim); margin-top: 6px; display: block; }
.pb .ar { color: var(--link); font-weight: 800; padding-top: 8px; }

/* ---------- fotografie + adnotări ---------- */
.scene { position: relative; overflow: hidden; isolation: isolate; }
.scene > img { width: 100%; height: 100%; object-fit: cover; }
.scene .ov { position: absolute; z-index: 2; }
.chip { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; font-size: 13px; font-weight: 600; }
.fig-cap { font-size: 13px; color: var(--dim); margin-top: 10px; }

/* ---------- platforme (tabelul „elementelor”) ---------- */
.pt { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gap-plates, 16px); }
.pt-el { display: grid; grid-template-rows: auto auto 1fr auto; gap: 10px; padding: 20px; position: relative; }
.pt-el .nr { position: absolute; top: 16px; right: 18px; font-size: 12px; font-weight: 700; color: var(--dim); }
.pt-el h3 { font-size: 18px; }
.pt-el p { font-size: 14px; color: var(--muted); }
.pt-el p b { color: var(--text); font-weight: 700; }
.pt-el .u { font: 12px var(--f-code); color: var(--dim); }
.pt-el.note { align-content: center; }
.pt-el.note p { font-size: 15px; }

/* ---------- dovezi: implementăm noi ---------- */
.dv-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.dv-fotos { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 12px; }
.dv-fotos .scene { aspect-ratio: 4/5; }
.dv-fotos .scene:last-child { margin-top: 64px; }
/* 19.10.2026: trei fotografii (varianta A), cu <picture>: .scene > img nu prinde imaginea dintr-un <picture> */
.dv-fotos picture { display: contents; }
.dv-fotos .scene picture > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dv-fotos.trei .scene:nth-child(2) { margin-top: 48px; }
.dv-fotos.trei .scene.lat { grid-column: 1 / -1; aspect-ratio: 2/1; margin-top: 0; }
.dv-trei { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.dv-trei div h3 { font-size: 17px; }
.dv-trei div p { font-size: 14px; color: var(--muted); margin-top: 4px; }
.fisa { margin-top: 32px; }
.fisa-top { display: flex; justify-content: space-between; gap: 12px; padding: 14px 20px; font-size: 13px; font-weight: 700; flex-wrap: wrap; }
.fisa-r { display: grid; grid-template-columns: 74px minmax(0, 1fr) 110px; gap: 14px; padding: 13px 20px; font-size: 14px; align-items: start; }
.fisa-r .d { color: var(--dim); font-size: 13px; }
.fisa-r b { display: block; font-weight: 700; }
.fisa-r span.c { font-size: 13px; color: var(--muted); }
.fisa-r .rz { text-align: right; font-weight: 800; color: var(--ok); }
.fisa-r .rz small { display: block; font-size: 12px; font-weight: 500; color: var(--dim); }

/* ---------- prețuri pe scurt ---------- */
.pr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gap-plates, 16px); }
.pr-c { display: flex; flex-direction: column; gap: 10px; padding: 26px; }
.pr-c .p { font: var(--w-head, 600) 30px/1.1 var(--f-head); letter-spacing: -.02em; }
.pr-c .p small { font: 600 14px var(--f-body); color: var(--muted); letter-spacing: 0; }
.pr-c ul { list-style: none; display: grid; gap: 6px; font-size: 14px; color: var(--muted); margin: 6px 0 14px; }
.pr-c li::before { content: "✓"; color: var(--ok); font-weight: 800; margin-right: 8px; }
.pr-c .btn, .pr-c .link { margin-top: auto; align-self: flex-start; }
.tbc { font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: var(--r-chip); background: var(--tbc-bg); color: var(--tbc-fg); white-space: nowrap; vertical-align: middle; }

/* ---------- barometrul AI ---------- */
.bm-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 56px; align-items: center; }
.bm-chart { padding: 24px; }
.bm-top { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 13px; font-weight: 700; margin-bottom: 18px; }
.bar-v { display: grid; grid-template-columns: 150px minmax(0, 1fr) 80px; gap: 12px; align-items: center; font-size: 14px; padding: 7px 0; }
.bar-v .t { height: 12px; border-radius: var(--r-bar); background: var(--surface-2); overflow: hidden; }
.bar-v .t i { display: block; height: 100%; width: var(--w); border-radius: var(--r-bar); background: var(--accent); transform-origin: left; }
.bar-v.tu .t i { background: var(--bad-fill, var(--bad)); }
.bar-v b { text-align: right; }
@media (prefers-reduced-motion: no-preference) {
  .js-anim .bm-chart .t i { transform: scaleX(0); transition: transform 1s cubic-bezier(.2,.7,.2,1); }
  .js-anim .bm-chart.in .t i { transform: none; }
}
.bm-chart .bar-v:nth-child(3) i { transition-delay: .08s; } .bm-chart .bar-v:nth-child(4) i { transition-delay: .16s; } .bm-chart .bar-v:nth-child(5) i { transition-delay: .24s; } .bm-chart .bar-v:nth-child(6) i { transition-delay: .32s; }
.abon { display: flex; gap: 8px; margin-top: 24px; max-width: 480px; }
.abon input { flex: 1; min-width: 0; height: 50px; padding: 0 16px; border-radius: var(--r-field); border: 0; background: var(--field-bg); color: var(--field-text); box-shadow: inset 0 0 0 1.5px var(--field-line); outline: none; }
.abon input:focus { box-shadow: inset 0 0 0 2px var(--focus-camp, #007783); }

/* ---------- apel final ---------- */
.cta-band { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; align-items: center; padding: 56px; }
.cta-band p { margin-top: 12px; }
.cta-band .tel-l { margin-top: 18px; font-weight: 700; }

/* ---------- subsol ---------- */
.ftr { padding: 70px 0 30px; font-size: 14px; background: var(--ftr-bg); color: var(--ftr-muted); }
.ftr-g { display: grid; grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr)); gap: 36px; }
.ftr h4, .ftr .ftr-h { font: 700 14px var(--f-body); letter-spacing: 0; color: var(--ftr-h); margin-bottom: 14px; }
.ftr ul { list-style: none; display: grid; gap: 8px; }
.ftr a:hover { color: var(--ftr-text); }
.ftr .about p { margin: 16px 0; max-width: 300px; }
.ftr .about img { height: 19px; width: auto; }
/* 20.10.2026: rețelele sociale din subsol (legături simple, fără scripturi de la rețele); ținta 44×44, focus vizibil */
.ftr .ftr-soc { display: flex; gap: 8px; margin: 0 0 14px; }
.ftr-soc a { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 6px; color: var(--ftr-text, #fff); box-shadow: inset 0 0 0 1px var(--ftr-line); }
.ftr-soc a:hover { background: rgba(255, 255, 255, .08); }
.ftr-soc a:focus-visible { outline: 2px solid var(--ftr-h, #00aebc); outline-offset: 2px; }
.ftr-b { margin-top: 50px; padding-top: 22px; border-top: 1px solid var(--ftr-line); display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; font-size: 13px; }
.fam { display: flex; gap: 16px; flex-wrap: wrap; }

/* ---------- FAQ ---------- */
.faq summary { list-style: none; cursor: pointer; padding: 20px 44px 20px 0; font: 700 18px var(--f-head); position: relative; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; right: 6px; top: 18px; font: 400 24px var(--f-body); color: var(--link); transition: transform .2s; }
.faq details[open] summary::after { transform: rotate(45deg); }
.faq details p { padding: 0 44px 20px 0; color: var(--muted); }

/* ---------- intrări la scroll (doar opacitate/transform; vizibil fără JS) ---------- */
@media (prefers-reduced-motion: no-preference) {
  .js-anim .rv { opacity: 0; transform: translateY(var(--rv-y, 0)); transition: opacity .6s ease, transform .6s cubic-bezier(.2,.7,.2,1); }
  .js-anim .rv.in { opacity: 1; transform: none; }
  .js-anim .rv:focus, .js-anim .rv:focus-within { opacity: 1; transform: none; transition: none; }   /* focus = vizibil imediat (accesibilitate 19.10.2026, C12) */
  .js-anim .rv.d1 { transition-delay: .07s; } .js-anim .rv.d2 { transition-delay: .14s; } .js-anim .rv.d3 { transition-delay: .21s; }
}
/* nivelul 2 (comutatorul din machetă): fără intrări, fără scanare, totul static */
html[data-nivel="2"] .rv { opacity: 1 !important; transform: none !important; transition: none !important; }
html[data-nivel="2"] .bul-rows.scan::after { display: none; }
html[data-nivel="2"] .bm-chart .t i { transform: none !important; transition: none !important; }

/* ---------- bara machetei ---------- */
.mk { position: fixed; left: 12px; bottom: 12px; z-index: 99; display: flex; gap: 4px 12px; align-items: center; flex-wrap: wrap; max-width: calc(100vw - 24px); font: 600 12px/1.3 var(--f-body); padding: 8px 12px; border-radius: var(--r-mk, 8px); background: var(--mk-bg); color: var(--mk-fg); box-shadow: 0 0 0 1px var(--mk-line); }
.mk a { color: var(--mk-a); text-decoration: underline; text-underline-offset: 2px; }
.mk a[aria-current] { color: var(--mk-fg); text-decoration: none; font-weight: 800; }
.mk .sep { opacity: .4; }
@media (max-width: 680px) { .mk .lg { display: none; } }

/* ================= pagina Verificare ================= */
.vhero { padding: 40px 0 56px; }
.crumbs { display: flex; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--dim); }
.crumbs span::before { content: "/"; margin-right: 8px; opacity: .6; }
.vhero h1 { margin: 18px 0 18px; max-width: 16em; font-size: var(--fs-h1-int, clamp(34px, 4.4vw, 56px)); }
.facts { display: flex; flex-wrap: wrap; gap: 10px 36px; margin-top: 28px; }
.facts div small { display: block; font-size: 13px; color: var(--dim); }
.facts div b { font: var(--w-head, 600) 19px var(--f-head); }

.flux-g { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.app { overflow: hidden; }
.steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.steps li { list-style: none; display: flex; align-items: center; gap: 10px; padding: 16px 20px; font-size: 14px; font-weight: 700; color: var(--dim); }
.steps li i { font-style: normal; width: 26px; height: 26px; flex: none; display: grid; place-items: center; font-size: 13px; font-weight: 800; border-radius: 50%; box-shadow: inset 0 0 0 1.5px var(--line-2); }
.steps li.on { color: var(--text); }
.steps li.on i { background: var(--accent); color: var(--on-accent); box-shadow: none; }
.steps li.ok i { background: var(--text); color: var(--bg); box-shadow: none; }
.pane { display: none; padding: 28px; }
.pane.on { display: block; }
.pane h2 { font-size: 26px; margin-bottom: 8px; }
.pane > p.muted { margin-bottom: 22px; font-size: 15px; }
.det { display: flex; gap: 14px; align-items: center; padding: 16px; margin: 18px 0 8px; }
.det p { font-size: 14px; color: var(--muted); }
.det b { color: var(--text); }
.det .ok-ic { color: var(--ok); font-weight: 800; }
.fld-g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.fld-g .full { grid-column: 1 / -1; }
.field { display: grid; gap: 6px; }
.field label, .field .lb { font-size: 13px; font-weight: 700; color: var(--text); }
.field label small, .field .lb small { font-weight: 500; color: var(--dim); }
.field input, .field select { height: 48px; padding: 0 14px; border: 0; border-radius: var(--r-field); background: var(--field-bg); color: var(--field-text); box-shadow: inset 0 0 0 1.5px var(--field-line); outline: none; font-size: 15px; width: 100%; }
.field input:focus, .field select:focus { box-shadow: inset 0 0 0 2px var(--focus-camp, #007783); }   /* accesibilitate 19.10.2026, C5: inelul la 3:1 */
.field .hint { font-size: 12px; color: var(--dim); }
.comp3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.chk-l { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: var(--muted); }
.chk-l input { margin-top: 3px; accent-color: var(--accent); width: 16px; height: 16px; flex: none; }
.chk-l input:focus-visible, .chk-l input[aria-invalid="true"]:focus-visible { outline: 2px solid var(--focus-camp, #007783); outline-offset: 2px; }   /* bifele: focus vizibil peste tot (accesibilitate 19.10.2026, C3) */
.captcha { display: flex; align-items: center; gap: 12px; height: 64px; padding: 0 16px; max-width: 304px; border-radius: var(--r-field); box-shadow: inset 0 0 0 1.5px var(--line-2); font-size: 13px; color: var(--muted); }
.captcha i { width: 24px; height: 24px; border-radius: 3px; box-shadow: inset 0 0 0 2px var(--line-2); flex: none; }
.pane-act { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 24px; }
.pane-act .nota { flex: 1; min-width: 200px; }
.back { font-size: 14px; font-weight: 700; color: var(--muted); text-decoration: underline; text-underline-offset: 3px; }

/* ecranul de așteptare: trei probe care rulează în paralel */
.ast-top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 6px; }
.tmr { font: var(--w-head, 600) 15px var(--f-head); color: var(--muted); }
.tmr b { color: var(--text); }
.ast-bar { height: 4px; margin: 14px 0 22px; background: var(--surface-2); border-radius: var(--r-bar); overflow: hidden; }
.ast-bar i { display: block; height: 100%; background: var(--accent); transform-origin: left; transform: scaleX(0); transition: transform .4s linear; border-radius: var(--r-bar); }
.probe-l { display: grid; gap: 12px; }
.pl { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 14px; padding: 16px; transition: opacity .3s; }
.pl .el { --s: 34px; font-size: 13px; }
.pl h3 { font-size: 16px; display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.pl h3 .s { font: 700 12px var(--f-body); letter-spacing: 0; padding: 3px 9px; border-radius: var(--r-chip); background: var(--surface-2); color: var(--muted); }
.pl.run h3 .s { background: var(--accent); color: var(--on-accent); }
.pl.done h3 .s { background: var(--ok-fill); color: var(--ok-on); }
.pl p { font-size: 14px; color: var(--muted); margin-top: 3px; }
.pl .viz { margin-top: 12px; }
.pl.q { opacity: .55; }
/* proba 1: pagini verificate, ca o bandă de celule */
.cells { display: grid; grid-template-columns: repeat(20, minmax(0, 1fr)); gap: 3px; }
.cells i { aspect-ratio: 1; border-radius: var(--r-cell); background: var(--surface-2); transform: scale(.6); opacity: .5; transition: transform .25s, opacity .25s, background .25s; }
.cells i.v { transform: none; opacity: 1; background: var(--ok); }
.cells i.x { transform: none; opacity: 1; background: var(--bad); }
/* proba 2: aceeași căutare, două liste */
.serp2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.serp2 > div { display: grid; gap: 4px; }
.serp2 small { font-size: 12px; font-weight: 700; color: var(--dim); }
.serp2 span { display: flex; align-items: center; gap: 6px; height: 18px; font-size: 11px; font-weight: 600; color: var(--dim); opacity: 0; transform: translateY(4px); transition: opacity .3s, transform .3s; }
.serp2 span::before { content: ""; height: 6px; width: var(--w, 60%); border-radius: 3px; background: var(--surface-2); flex: none; max-width: 70%; }
.serp2 span.tu { color: var(--link); font-weight: 800; }
.serp2 span.tu::before { background: var(--accent); }
.serp2 span.in { opacity: 1; transform: none; }
/* proba 3: întrebarea și răspunsul */
.ai-q { display: inline-block; font-size: 13px; font-weight: 600; padding: 7px 12px; border-radius: var(--r-bubble) var(--r-bubble) 2px var(--r-bubble); background: var(--accent); color: var(--on-accent); }
.ai-a { margin-top: 8px; font-size: 13px; color: var(--muted); min-height: 2.8em; }
.ai-a mark { background: none; color: var(--text); font-weight: 800; }
.ai-a .lip { color: var(--bad); font-weight: 800; }

/* rezultatul previzualizării */
.rz-h { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.rz-mail { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 14px; padding: 18px; margin-top: 18px; }
.rz-mail .mi { width: 40px; height: 40px; display: grid; place-items: center; }
.rz-mail .mi svg { width: 22px; height: 22px; }
.rz-mail h3 { font-size: 17px; }
.rz-mail p { font-size: 14px; color: var(--muted); margin-top: 4px; }
.tl { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.tl li { padding-top: 12px; font-size: 13px; color: var(--muted); }
.tl li b { display: block; color: var(--text); font-size: 14px; }

/* coloana dreaptă: ce primești și când */
.side { display: grid; gap: 16px; position: sticky; top: 96px; }
.side-c { padding: 24px; }
.side-c h3 { font-size: 18px; margin-bottom: 12px; }
.side-c ol { list-style: none; display: grid; gap: 14px; }
.side-c li { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; font-size: 14px; color: var(--muted); }
.side-c li b { color: var(--text); display: block; }
.side-c li .k { font-size: 12px; font-weight: 800; color: var(--link); padding-top: 2px; }
.side-c ul { list-style: none; display: grid; gap: 8px; font-size: 14px; color: var(--muted); }
.side-c ul li { display: block; }
.side-c ul li::before { content: "·"; font-weight: 800; color: var(--link); margin-right: 8px; }

/* ce conține raportul: cinci foi */
.foi { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--gap-plates, 16px); }
.foaie { display: flex; flex-direction: column; padding: 20px; min-height: 380px; }
.foaie .fh { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.foaie .fh span { font-size: 12px; font-weight: 700; color: var(--dim); }
.foaie h3 { font-size: 18px; margin-bottom: 10px; }
.foaie ul { list-style: none; display: grid; gap: 8px; font-size: 14px; color: var(--muted); }
.foaie ul li::before { content: "—"; color: var(--dim); margin-right: 8px; }
.foaie .mini { margin-top: auto; padding-top: 16px; display: grid; gap: 5px; }
.foaie .mini i { display: block; height: 6px; border-radius: 3px; background: var(--surface-2); }
.foaie .mini i.a { background: var(--accent); }
.foaie .mini i.r { background: var(--bad-fill, var(--bad)); }

.reg { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gap-plates, 16px); }
.reg div { padding: 22px; }
.reg h3 { font-size: 17px; }
.reg p { font-size: 14px; color: var(--muted); margin-top: 6px; }


/* ---------- completări după textele finale (15.10) ---------- */
.sub { font: var(--w-head, 600) clamp(18px, 1.7vw, 24px)/1.3 var(--f-head); color: var(--muted); margin-top: 16px; max-width: 30em; letter-spacing: -.01em; }
.lead-2 { font-size: 15px; color: var(--muted); margin: 12px 0 22px; max-width: 600px; }
.err { font-size: 13px; font-weight: 700; color: var(--bad); }
.cmp-rec { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; padding: 14px 22px; font-size: 13px; font-weight: 700; color: var(--dim); }
.cmp-rec .rec { display: flex; flex-wrap: wrap; gap: 6px; }
.cmp-rec .rec i { font-style: normal; font-size: 13px; font-weight: 700; padding: 3px 10px; border-radius: var(--r-chip); background: var(--rec-bg); color: var(--rec-fg); }
.cmp-ga { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; padding: 16px 22px 18px; font-size: 13px; color: var(--muted); }
.cmp-ga b { display: block; font-size: 14px; color: var(--text); margin-bottom: 2px; }
.ga-ic { width: 36px; height: 36px; display: grid; place-items: center; color: var(--link); }
.ga-ic svg { width: 20px; height: 20px; }
.cmp-why .link { margin-top: 14px; }
.pb .ar { font-size: 13px; white-space: nowrap; }
.pb-more { margin-top: 20px; font-size: 15px; color: var(--muted); }
.pt-el .fx { font-size: 13px; }
.pt-el .u { font-family: var(--f-body); font-weight: 700; color: var(--link); }
.fisa-f { display: flex; justify-content: space-between; gap: 10px 20px; flex-wrap: wrap; align-items: center; padding: 14px 20px; font-size: 13px; color: var(--dim); }
.noi { margin-top: 28px; padding: 22px 24px; }
.noi h3 { font-size: 19px; }
.noi p { font-size: 15px; color: var(--muted); margin: 6px 0 10px; }
.cap-ph { left: 12px; bottom: 12px; font-size: 13px; font-weight: 700; padding: 6px 12px; }
.pd { font-size: 14px; color: var(--muted); margin-bottom: 14px; }
.pr-note { margin-top: 22px; font-size: 15px; color: var(--muted); max-width: 760px; }
.pas-n { font-size: 13px; font-weight: 700; color: var(--link); margin-bottom: 6px; }
.pane h2 { margin-bottom: 18px; }
.pane > p.muted { margin-top: -8px; }
.det { flex-wrap: wrap; }
.det p { flex: 1; min-width: 180px; }
.det-b { display: flex; gap: 8px; flex-wrap: wrap; }
.spin { width: 22px; height: 22px; border-radius: 50%; box-shadow: inset 0 0 0 3px var(--surface-2); border-top: 3px solid var(--accent); animation: spin 1s linear infinite; flex: none; }
@keyframes spin { to { transform: rotate(360deg); } }
.add { font-size: 13px; font-weight: 700; color: var(--link); justify-self: start; padding: 4px 0; }
.u-l { color: var(--link); text-decoration: underline; }
.serp { display: grid; gap: 4px; }
.serp span { display: flex; align-items: center; gap: 8px; height: 18px; font-size: 11px; font-weight: 600; color: var(--dim); opacity: 0; transform: translateY(4px); transition: opacity .3s, transform .3s; }
.serp span::before { content: ""; height: 6px; width: var(--w, 60%); max-width: 70%; border-radius: 3px; background: var(--surface-2); flex: none; }
.serp span.tu { color: var(--link); font-weight: 800; } .serp span.tu::before { background: var(--accent); }
.serp span.lipsa { color: var(--bad); font-weight: 800; } .serp span.lipsa::before { background: none; box-shadow: inset 0 0 0 1px var(--bad); }
.serp span.in { opacity: 1; transform: none; }
.ast-lung { margin-top: 12px; font-size: 14px; color: var(--warn); font-weight: 600; }
.bul-x .bul-h, .bul-x .bul-r { grid-template-columns: minmax(0, .9fr) minmax(0, .8fr) minmax(0, 1.3fr); }
.bul-x .bul-r .ref { text-align: left !important; font-size: 12px; line-height: 1.4; }
.bul-x .bul-h span:last-child { text-align: left; }
.bul-x code { font: 12px var(--f-code); }
.rz-h .muted { font-size: 14px; margin-top: 4px; }
.rz-mail { padding: 22px; }
.rz-mail h3 { font-size: 20px; }
.concl { margin-top: 18px; padding: 22px 24px; display: grid; gap: 10px; }
.concl p { font-size: 16px; max-width: 760px; }
.concl dl { display: flex; gap: 10px 32px; flex-wrap: wrap; font-size: 14px; }
.concl dt { font-size: 12px; color: var(--dim); font-weight: 700; }
.concl dd { font-weight: 700; }
.ga-opt { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; margin-top: 18px; font-size: 14px; color: var(--muted); max-width: 900px; }
.ga-opt b { color: var(--text); }
.foaie p { font-size: 14px; color: var(--muted); }
.cta-band .btn { margin-top: 0; }
@media (max-width: 680px) {
  .bul-x .bul-r { grid-template-columns: minmax(0, 1fr) auto; }
  .cmp-rec, .cmp-ga { padding-left: 16px; padding-right: 16px; }
  .pb { grid-template-columns: 40px minmax(0, 1fr); }
  .pb .ar { grid-column: 2; padding-top: 0; }
}

/* ---------- responsive ---------- */
@media (max-width: 1180px) {
  .hdr-r .tel { display: none; }
}
@media (max-width: 1080px) {
  .nav, .nav-w, .hdr-r .tel { display: none; }
  .burger { display: grid; }
  .cmp-g, .pb-g, .dv-g, .bm-g, .cta-band, .flux-g { grid-template-columns: minmax(0, 1fr); }
  .pt { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pr { grid-template-columns: minmax(0, 1fr); }
  .foi { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reg { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ftr-g { grid-template-columns: 1fr 1fr; }
  .side { position: static; }
  .split-head { display: block; }
  .split-head .link { margin-top: 16px; }
}
@media (max-width: 680px) {
  .sec { padding: 72px 0; }
  .wrap, .narrow { width: min(100% - 32px, 1240px); }
  .hdr-in { gap: 12px; height: 64px; }
  .hdr .logo img { height: 17px; }
  .hdr-cta { display: none; }
  .mega { top: 64px; } .drawer { inset: 64px 0 0; }
  .dom-f { flex-wrap: wrap; } .dom-f > span { display: none; } .dom-f input { padding: 12px 10px; } .dom-f .btn { width: 100%; }
  .bul-top, .bul-meta, .bul-foot { padding-left: 16px; padding-right: 16px; }
  .bul-h { display: none; }
  .bul-g { grid-template-columns: minmax(0, 1fr); }
  .bul-c { padding: 14px 16px 2px; }
  .bul-g .rr { padding: 0 16px; }
  .bul-r { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; }
  .bul-r .ref { grid-column: 1 / -1; text-align: left !important; }
  .bul-r .rec { justify-content: flex-start; grid-column: 1 / -1; }
  .cmp-h { display: none; }
  .cmp-r { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 10px; padding: 14px 16px; }
  .cmp-r .q { grid-column: 1 / -1; }
  .cmp-r > span:not(.q)::before { content: attr(data-l); display: block; font-size: 11px; font-weight: 700; color: var(--dim); }
  .cmp-s { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 14px 16px; }
  .cmp-s > span:first-child { grid-column: 1 / -1; }
  .pt { grid-template-columns: minmax(0, 1fr); }
  .dv-fotos .scene:last-child { margin-top: 36px; }
  .dv-fotos.trei .scene.lat { margin-top: 0; }
  .dv-trei { grid-template-columns: minmax(0, 1fr); }
  .fisa-r { grid-template-columns: minmax(0, 1fr) auto; }
  .fisa-r .d { grid-column: 1 / -1; }
  .bar-v { grid-template-columns: 100px minmax(0, 1fr) 64px; font-size: 13px; }
  .abon { flex-wrap: wrap; } .abon .btn { width: 100%; }
  .cta-band { padding: 30px 20px; gap: 24px; }
  .ftr-g { grid-template-columns: 1fr; }
  .steps li { padding: 12px 10px; font-size: 12px; flex-direction: column; text-align: center; gap: 6px; }
  .pane { padding: 22px 16px; }
  .fld-g, .comp3, .tl { grid-template-columns: minmax(0, 1fr); }
  .foi, .reg { grid-template-columns: minmax(0, 1fr); }
  .foaie { min-height: 0; }
  .cells { grid-template-columns: repeat(10, minmax(0, 1fr)); }
  .plat-row .pp { height: 36px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* corecturi după prima trecere vizuală */
.field .dom-f input { box-shadow: none; background: none; height: auto; padding: 12px 6px; border-radius: 0; }
.foaie .fh .el.fin { color: var(--bg); }
.concl .ilu-t { justify-self: start; }
.pb-foto .aib { right: 20px; bottom: 20px; }
@media (max-width: 680px) { .pb-foto .aib { right: 12px; bottom: 12px; left: 12px; } }
.pl h3 { display: block; }
.pl h3 .s { display: inline-block; margin-left: 6px; vertical-align: 2px; }
.hero-act { display: flex; flex-direction: column; }
@media (max-width: 680px) {
  .hero-act .hero-form { order: -1; margin: 22px 0 26px; }
  .hero-act .lead { font-size: 16px; }
}
.chk-l { display: block; position: relative; padding-left: 26px; }
.chk-l input { position: absolute; left: 0; top: 1px; margin: 0; }

/* ---------- Fundal de erou cu fotografie sau video (candidații din _sursa/fundaluri.json) ----------
   Fără [data-fundal] nu se aplică nimic. Voalul și filtrul vin din viz.css-ul fiecărei variante. */
[data-fundal] { position: relative; isolation: isolate; }
.hm { position: absolute; inset: 0; z-index: -1; overflow: hidden; background: var(--bg); pointer-events: none; }
.hm picture { display: contents; }
.hm-img, .hm-vid { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: var(--hm-pos, 50% 50%); filter: var(--hm-filtru, none); }
.hm-vid { opacity: 0; transition: opacity .8s ease; }
.hm-vid.ruleaza { opacity: 1; }
.hm-voal { position: absolute; inset: 0; background: var(--hm-voal); }
/* 19.10.2026: voal mai dens pe desktop pentru fotografiile unde textul lung din erou (lead, faptele) trece peste zone închise
   ale imaginii; candidatul îl cere cu "voal": "dens" în fundaluri.json. Pe mobil rămâne --hm-voal-mobil. */
.hm[data-voal="dens"] { --hm-voal: linear-gradient(0deg, #eaf5f6 0, rgba(234,245,246,0) 160px), linear-gradient(90deg, rgba(234,245,246,.97) 0, rgba(234,245,246,.95) 56%, rgba(234,245,246,.8) 76%, rgba(234,245,246,.55) 100%); }
.hm-pauza { position: absolute; z-index: 2; top: 14px; right: 16px; height: 32px; padding: 0 12px; border: 0; border-radius: var(--r-btn, 8px); font: 600 13px var(--f-body); cursor: pointer;
  background: var(--hm-pauza-bg); color: var(--hm-pauza-fg); box-shadow: inset 0 0 0 1px var(--hm-pauza-line, transparent); }
.hm-pauza:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
[data-fundal] .plat-row .pp { background: var(--hm-chip-bg); }
@media (max-width: 767px) { .hm-voal { background: var(--hm-voal-mobil); } .hm-pauza { display: none; } }
@media (prefers-reduced-motion: reduce) { .hm-vid { display: none; } }
@media (max-width: 900px) { .dv-fotos.trei .scene:nth-child(2) { margin-top: 28px; } .dv-fotos.trei .scene.lat { aspect-ratio: 16/9; } }

/* ---------- accesibilitate (19.10.2026, audit P3/P4): la 320-400 px textul butoanelor se rupe pe rânduri în loc să iasă din
   pagină (1.4.10 Reflow, 1.4.12 Spațierea textului). Butoanele care încap pe un rând rămân la fel. ---------- */
@media (max-width: 400px) {
  .btn { white-space: normal; height: auto; min-height: 50px; padding-top: 8px; padding-bottom: 8px; text-align: center; line-height: 1.3; }
  .btn-s { min-height: 42px; }
  /* cuvintele lungi (ex. „confidențialitate” în H1) se rup în loc să împingă pagina în lateral, la spațiere mărită */
  main :is(h1, h2, h3, h4, p, li, b, strong, dd, dt, a, span) { overflow-wrap: break-word; }
  main .sf-case b { white-space: normal; }
}

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text body { font-size: calc(var(--fs-body, 16px) * var(--a11y-k, 1)); }
.a11y-text button, .a11y-text input, .a11y-text select, .a11y-text textarea { font-size: inherit; }
.a11y-text h1 { font-size: calc(var(--fs-h1, clamp(38px, 5vw, 64px)) * var(--a11y-k, 1)); }
.a11y-text h2 { font-size: calc(var(--fs-h2, clamp(28px, 3.2vw, 42px)) * var(--a11y-k, 1)); }
.a11y-text h3 { font-size: calc(var(--fs-h3, 20px) * var(--a11y-k, 1)); }
.a11y-text .lead { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .nota { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .ilu { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .sec-head > p { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .btn { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .btn-s { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .link { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .nav-t { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .hdr-r .tel { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .hdr-r .tel small { font-size: calc(11px * var(--a11y-k, 1)); }
.a11y-text .mega-h { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .m-item b { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .m-item span { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .m-item small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .m-list a { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .m-fam span { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .m-plat a b { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .m-plat a span { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .m-feat b { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .m-feat p { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .mega-foot { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .drawer summary, .a11y-text .drawer > a.d-l { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .dom-f > span { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .dom-f input { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .plat-f legend { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .plat-row .pp { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .el { font-size: calc(var(--s) * .44); }
.a11y-text .bul-top b { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .bul-top .st { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .bul-meta { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .bul-h { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .bul-c { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .bul-c .el { font-size: calc(10px * var(--a11y-k, 1)); }
.a11y-text .bul-r { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .bul-r .an small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .bul-r .ref { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .bul-r .rec i { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .bul-foot { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-h { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-h .el { font-size: calc(10px * var(--a11y-k, 1)); }
.a11y-text .cmp-r { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .cmp-r .q small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .poz { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .poz small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .cit small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .cmp-s { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-s b { font-size: calc(22px * var(--a11y-k, 1)); }
.a11y-text .cmp-why h3 { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .cmp-why h3 .el { font-size: calc(10px * var(--a11y-k, 1)); }
.a11y-text .cmp-why p { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .cmp-src { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pb h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .pb p { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pb .u { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .chip { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .fig-cap { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pt-el .nr { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .pt-el h3 { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .pt-el p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .pt-el .u { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .pt-el.note p { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .dv-trei div h3 { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .dv-trei div p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .fisa-top { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .fisa-r { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .fisa-r .d { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .fisa-r span.c { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .fisa-r .rz small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .pr-c .p { font-size: calc(30px * var(--a11y-k, 1)); }
.a11y-text .pr-c .p small { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .pr-c ul { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .tbc { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .bm-top { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .bar-v { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .ftr { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .ftr h4, .a11y-text .ftr .ftr-h { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .ftr-b { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .faq summary { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .faq summary::after { font-size: calc(24px * var(--a11y-k, 1)); }
.a11y-text .mk { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .crumbs { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .vhero h1 { font-size: calc(var(--fs-h1-int, clamp(34px, 4.4vw, 56px)) * var(--a11y-k, 1)); }
.a11y-text .facts div small { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .facts div b { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .steps li { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .steps li i { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pane h2 { font-size: calc(26px * var(--a11y-k, 1)); }
.a11y-text .pane > p.muted { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .det p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .field label, .a11y-text .field .lb { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .field input, .a11y-text .field select { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .field .hint { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .chk-l { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .captcha { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .back { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .tmr { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pl .el { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pl h3 { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .pl h3 .s { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .pl p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .serp2 small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .serp2 span { font-size: calc(11px * var(--a11y-k, 1)); }
.a11y-text .ai-q { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .ai-a { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .rz-mail h3 { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .rz-mail p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .tl li { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .tl li b { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .side-c h3 { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .side-c li { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .side-c li .k { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .side-c ul { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .foaie .fh span { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .foaie h3 { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .foaie ul { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .reg h3 { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .reg p { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .sub { font-size: calc(clamp(18px, 1.7vw, 24px) * var(--a11y-k, 1)); }
.a11y-text .lead-2 { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .err { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-rec { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-rec .rec i { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-ga { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .cmp-ga b { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .pb .ar { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pb-more { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pt-el .fx { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .fisa-f { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .noi h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .noi p { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .cap-ph { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pd { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .pr-note { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pas-n { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .add { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .serp span { font-size: calc(11px * var(--a11y-k, 1)); }
.a11y-text .ast-lung { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .bul-x .bul-r .ref { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .bul-x code { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .rz-h .muted { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .rz-mail h3 { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .concl p { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .concl dl { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .concl dt { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .ga-opt { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .foaie p { font-size: calc(14px * var(--a11y-k, 1)); }
@media (max-width: 680px) {
.a11y-text .cmp-r > span:not(.q)::before { font-size: calc(11px * var(--a11y-k, 1)); }
.a11y-text .bar-v { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .steps li { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .plat-row .pp { font-size: calc(13px * var(--a11y-k, 1)); }
}
@media (max-width: 680px) {
.a11y-text .hero-act .lead { font-size: calc(16px * var(--a11y-k, 1)); }
}
.a11y-text .hm-pauza { font-size: calc(13px * var(--a11y-k, 1)); }

/* === _comun/fonturi.css === */
/* generat de _sursa/r1d/active.py: perechile A (Libre Franklin + Source Sans 3), B (Fira Sans), C (Barlow). OFL-1.1 */
/* Libre Franklin — OFL-1.1, prin Fontsource (https://github.com/google/fonts) */
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-ext-600-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-ext-700-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Franklin';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/libre-franklin/libre-franklin-latin-ext-800-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Source Sans 3 — OFL-1.1, prin Fontsource (https://github.com/google/fonts) */
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-ext-600-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/source-sans-3/source-sans-3-latin-ext-700-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Fira Sans — OFL-1.1, prin Fontsource (https://github.com/google/fonts) */
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-ext-600-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-ext-700-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/fira-sans/fira-sans-latin-ext-800-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Barlow — OFL-1.1, prin Fontsource (https://github.com/google/fonts) */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-ext-600-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-ext-700-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:800;font-display:swap;src:url('../media/_comun/fonturi/barlow/barlow-latin-ext-800-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}


/* === inspirat-webfx/viz.css === */
/* Varianta INSPIRAT-WEBFX — limbajul vizual al unei agenții de performanță (referință: webfx.com, analizat 15.10.2026).
   Preluat: ierarhia „dovadă înainte de promisiune”, bara de sus cu cifra de impact, eroul cu câmp + buton lipit,
   banda de 4 dovezi sub erou, unealta proprie ca argument, cazuri cu cifră mare și impact în business,
   formularul repetat la capăt de capitol, secțiuni albe / nuanță / bleumarin, subsol bleumarin cu cifre.
   Lăsat deoparte: grila de fundal, cuvântul colorat din titluri, numărătoarele animate, logourile de clienți,
   premiile, majusculele de pe etichete. Brandul rămâne SEO Factory: turcoazul mărcii pe bleumarin. */
@font-face { font-family: "Plus Jakarta Sans"; src: url('../media/_propunere/assets/fonts/plus-jakarta-sans-700.woff2') format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Plus Jakarta Sans"; src: url('../media/_propunere/assets/fonts/plus-jakarta-sans-800.woff2') format("woff2"); font-weight: 800 900; font-display: swap; }
@font-face { font-family: "Inter"; src: url('../media/_propunere/assets/fonts/InterVariable.woff2') format("woff2"); font-weight: 100 900; font-display: swap; }

:root {
  --wrap: 1240px;
  --navy: #1d2327; --navy-2: #2c3338; --tint: #eaf5f6; --tint-2: #f3f8f9; --btn: #007783;
  --bg: #ffffff; --text: #1d2327; --muted: #3f5260; --dim: #586b78; --line: #dbe4e8; --line-2: #c4d1d7;
  --surface: #ffffff; --surface-2: #e7eef1;
  --accent: #00aebc; --on-accent: #1d2327; --link: #00727c;
  --bad: #c0283b; --warn: #925400; --ok: #0b7a52; --bad-fill: #d9364a; --ok-fill: #0b7a52; --ok-on: #fff;
  --run-bg: #e3f4f6; --rec-bg: #fde7ea; --rec-fg: #b0202f;
  --f-head: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-body: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-code: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;
  --w-head: 800; --ls-head: -.032em; --fs-h1: clamp(38px, 4.8vw, 64px); --fs-h2: clamp(28px, 3.1vw, 42px); --fs-h3: 19px; --fs-h1-int: clamp(34px, 4.2vw, 58px);
  --r-btn: 6px; --r-nav: 6px; --r-chip: 6px; --r-el: 6px; --r-field: 6px; --r-field-wrap: 8px; --r-bar: 3px; --r-cell: 3px; --r-bubble: 12px; --r-mk: 8px;
  --btn-bg: #007783; --btn-fg: #fff; --btn-bg-h: #1d2327;
  --field-bg: #fff; --field-line: #b9c8cf; --field-text: #1d2327; --chip-on: #e3f4f6;
  --el-bg: #e3f4f6; --el-fg: #1d2327;
  --tbc-bg: #fff0d6; --tbc-fg: #6b3e00;
  --hdr-bg: #ffffff; --hdr-text: #1d2327; --hdr-muted: #31444f; --hdr-line: #dbe4e8;
  --mega-bg: #ffffff; --mega-text: #1d2327; --mega-muted: #3f5260; --mega-dim: #586b78;
  --ftr-bg: #1d2327; --ftr-text: #fff; --ftr-muted: #c3d0d6; --ftr-h: #00aebc; --ftr-line: rgba(255,255,255,.14);
  --mk-bg: #1d2327; --mk-fg: #c3d0d6; --mk-a: #00aebc; --mk-line: transparent;
  --photo: none; --gap-plates: 20px;
  /* ritmul vertical (19.10.2026): o singură scară pentru secțiuni și eroii interiori; se micșorează pe tabletă și mobil */
  --sec-y: 96px; --hero-pt: 24px; --hero-pb: 56px; --fir-h1: 12px;
  --shadow: 0 1px 2px rgba(29,35,39,.06), 0 10px 28px rgba(29,35,39,.07);
}
.alt { --bg: #f3f8f9; }
/* secțiunile bleumarin */
.sf-dark, .sf-mid-sec {
  --bg: #1d2327; --text: #fff; --muted: #c3d0d6; --dim: #a6b6be; --line: rgba(255,255,255,.14); --line-2: rgba(255,255,255,.24);
  --link: #4fd3de; --surface: #2c3338; --surface-2: #3c434a; --el-bg: #3c434a; --el-fg: #fff;
  --btn-bg: #00aebc; --btn-fg: #1d2327; --btn-bg-h: #ffffff; --field-bg: #fff; --field-line: #fff;
}
/* plăcile albe își păstrează tonurile de bază */
.plate, .sheet, .plate-s, .sf-panel { --text: #1d2327; --muted: #3f5260; --dim: #586b78; --line: #dbe4e8; --line-2: #c4d1d7; --link: #00727c; --surface-2: #e7eef1; --el-bg: #e3f4f6; --el-fg: #1d2327; }

/* ---------- tipografie ---------- */
.eyebrow { font: 700 15px/1.4 var(--f-head); color: var(--link); letter-spacing: -.005em; }
.sub { color: var(--text); font-weight: 700; }
.lead { color: var(--muted); }
.ilu-t { display: inline-block; font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 4px; background: #fff0d6; color: #6b3e00; }
.sec { padding: var(--sec-y) 0; }
/* două secțiuni la rând pe același fundal: fără al doilea padding, ca golul dintre ele să fie tot o treaptă din scară */
.sec:not(.alt):not(.sf-dark):not(.hero):not(.vhero) + .sec:not(.alt):not(.sf-dark):not(.cta-sec),
.sec.alt + .sec.alt { padding-top: 0; }
/* eroii interiori: .sec de mai sus anula .vhero din baza.css (96 sus și jos); firul stă aproape de antet, H1 strâns sub fir */
.sec.vhero { padding: var(--hero-pt) 0 var(--hero-pb); }
.vhero .crumbs { margin-bottom: var(--fir-h1); }
.vhero .crumbs + h1 { margin-top: 0; }
.tag { display: inline-block; font: 700 12px var(--f-body); padding: 3px 9px; border-radius: 4px; background: #e3f4f6; color: #00535b; }

/* ---------- antet pe două rânduri, ca la agențiile de performanță ---------- */
.hdr { box-shadow: 0 2px 12px rgba(29,35,39,.06); }
.sf-util { background: var(--tint); border-bottom: 1px solid var(--line); }
.sf-util-in { display: flex; justify-content: space-between; align-items: center; height: 40px; font-size: 13px; }
.sf-cnt { display: flex; align-items: baseline; gap: 8px; }
.sf-cnt small { font-size: 12px; font-weight: 700; color: #31444f; }
.sf-cnt b { font: 800 15px var(--f-head); color: var(--navy); }
.sf-util-r { display: flex; gap: 22px; align-items: center; }
.sf-util-r a { font-weight: 600; color: #31444f; }
.sf-util-r .tel-u { font-weight: 800; color: var(--navy); }
.hdr-in { height: 76px; gap: 22px; }
.sf-desc { font: 700 12px/1.25 var(--f-head); color: #31444f; border-left: 1px solid var(--line); padding-left: 14px; white-space: nowrap; }
.hdr-r .tel { display: none; }
.nav-t:hover, .nav > li.open .nav-t { background: var(--tint); }
.mega { top: 116px; }
.mega-p { box-shadow: 0 18px 40px rgba(29,35,39,.14); border-top: 1px solid var(--line); }
.mega-h { color: var(--link); display: flex; gap: 6px; align-items: center; border-bottom: 1px solid var(--line); }
.mega-h .el { --s: 20px; font-size: 9px; }
.mega-f { background: var(--tint); }
.m-ic { border-radius: 6px; background: var(--tint); color: var(--link); }
.m-item:hover b, .m-plat a:hover b { color: var(--link); }
.m-plat a { border-radius: 8px; border: 1px solid var(--line); }
.m-plat a:hover { border-color: var(--link); }
.m-hub { background: var(--navy); color: #fff; border-color: var(--navy) !important; }
.m-hub span { color: #c3d0d6 !important; }
.m-feat { border-radius: 10px; background: var(--navy); color: #fff; --mega-dim: #c3d0d6; }
.m-feat .link { color: #4fd3de; }
.drawer { inset: 116px 0 0; }

/* ---------- simbolurile: plăcuțe cu colț mic, nuanța mărcii ---------- */
.el { font-weight: 800; }
.el.g2 { background: var(--navy); color: #fff; }
.sf-dark .el.g2 { background: #fff; color: var(--navy); }
.el.ch-google, .el.ch-bing { background: var(--navy); color: #fff; }
.el.ch-ai { background: var(--btn); color: #fff; }
.sf-dark .el.ch-google, .sf-dark .el.ch-bing { background: #fff; color: var(--navy); }
.el.fin { background: var(--accent); color: var(--navy); }
.plat-row .pp { background: #fff; box-shadow: inset 0 0 0 1px var(--line-2); color: var(--navy); }
.plat-row input:checked + .pp { box-shadow: inset 0 0 0 2px var(--btn); background: #e3f4f6; }

/* ---------- formularul: câmp + buton lipite ---------- */
.dom-f { padding: 0; gap: 0; box-shadow: inset 0 0 0 1.5px var(--field-line); overflow: hidden; }
.dom-f > span { padding-left: 16px; }
.dom-f input { height: 58px; font-size: 17px; }
.dom-f .btn { height: 58px; border-radius: 0; padding: 0 26px; font-size: 16px; }
.btn { font-family: var(--f-head); font-weight: 800; }
.btn-o { box-shadow: inset 0 0 0 1.5px currentColor; }

/* ---------- erou: nuanță plată (fără grilă), câmpul în față, buletinul ca „motorul” din dreapta ---------- */
.hero { background: var(--tint); padding: 40px 0 0; }
.sf-hero { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.hero h1 { margin: 12px 0 0; }
.hero .sub { font-size: clamp(18px, 1.6vw, 22px); margin-top: 14px; }
.hero .lead { font-size: 16px; margin-top: 18px; }
.hero .lead-2 { margin: 10px 0 22px; }
.hero-nota { margin-top: 12px; font-weight: 600; }
.sf-engine .bul { border-radius: 12px; box-shadow: var(--shadow); }
.sf-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 64px; background: #fff; border-radius: 12px 12px 0 0; padding: 26px 0; box-shadow: 0 -1px 0 var(--line); }
.sf-stats div { padding: 0 26px; text-align: center; }
.sf-stats div + div { border-left: 1px solid var(--line); }
.sf-stats b { display: block; font: 800 22px/1.15 var(--f-head); letter-spacing: -.02em; color: var(--navy); }
.sf-stats span { font-size: 13px; color: var(--muted); }

/* ---------- buletinul ---------- */
.bul { background: #fff; }
.bul-top { background: var(--navy); color: #fff; }
.bul-top .st { background: #00aebc; color: var(--navy); padding: 4px 10px; border-radius: 4px; }
.bul-meta { color: var(--muted); border-bottom: 1px solid var(--line); }
.bul-h { color: var(--dim); border-bottom: 1px solid var(--line); background: var(--tint-2); }
.bul-g + .bul-g { border-top: 1px solid var(--line); }
.bul-r + .bul-r { border-top: 1px dashed var(--line); }
.bul-r .an small, .bul-r .ref { color: var(--dim); }
.bul-r .val { font-family: var(--f-head); font-weight: 800; }
.bul-r.out .val { color: var(--bad); }
.bul-r.mid .val { color: var(--warn); }
.bul-r .rec i { background: var(--rec-bg); color: var(--rec-fg); }
.bul-r .rec i.no { background: var(--navy); color: #fff; }
.bul-foot { background: var(--tint-2); border-top: 1px solid var(--line); color: var(--dim); }

/* ---------- comparația ---------- */
.cmp { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.cmp-h { background: var(--navy); color: #c3d0d6; border-radius: 12px 12px 0 0; }
.cmp-h .el.ch-google, .cmp-h .el.ch-bing { background: #fff; color: var(--navy); }
.cmp-r { border-bottom: 1px solid var(--line); }
.poz, .cit b { font-family: var(--f-head); }
.cmp-s { background: var(--tint); color: var(--muted); }
.cmp-s b { color: var(--navy); }
.cmp-rec { border-top: 1px solid var(--line); }
.cmp-ga { border-top: 1px solid var(--line); background: var(--tint-2); border-radius: 0 0 12px 12px; }
.ga-ic { border-radius: 6px; background: #fff; box-shadow: inset 0 0 0 1px var(--line); }
.cmp-why div { background: #fff; border-radius: 10px; padding: 18px 20px; margin-bottom: 12px; box-shadow: var(--shadow); }

/* ---------- unealta proprie ---------- */
.sf-tool { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.sf-tool .lead { margin-top: 16px; }
.sf-feat { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; margin: 28px 0 24px; }
.sf-feat li { font-size: 14px; color: var(--muted); }
.sf-feat li > span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 6px; background: #3c434a; color: #4fd3de; margin-bottom: 10px; }
.sf-feat li > span svg { width: 20px; height: 20px; }
.sf-feat b { display: block; color: #fff; font: 800 16px var(--f-head); margin-bottom: 2px; }
.sf-panel { background: #fff; color: var(--navy); border-radius: 12px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,.35); }
.sf-panel-top { display: flex; justify-content: space-between; align-items: center; padding: 14px 20px; background: var(--tint); font-size: 14px; }
.sf-row { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 13px 20px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
.sf-row .el { --s: 26px; font-size: 11px; }
.sf-row b { display: block; font-size: 14px; color: var(--navy); }
.sf-row i { font-style: normal; font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 4px; background: #e2f3ea; color: var(--ok); }
.sf-imp { padding: 16px 20px 18px; background: var(--navy); color: #fff; display: grid; gap: 2px; }
.sf-imp span { font-size: 12px; font-weight: 700; color: #4fd3de; }
.sf-imp b { font: 800 19px var(--f-head); }
.sf-imp small { font-size: 12px; color: #c3d0d6; }

/* ---------- probleme ---------- */
.pb-list { gap: 10px; }
.pb { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 16px 18px; transition: border-color .15s, box-shadow .15s; }
.pb:hover { border-color: var(--link); box-shadow: var(--shadow); }
.pb .pi { border-radius: 8px; background: var(--tint); color: var(--link); }
.pb-foto { aspect-ratio: 4/5; border-radius: 12px; position: sticky; top: 140px; }
.aib { max-width: 290px; font-size: 14px; line-height: 1.45; }
.aib .q { background: var(--navy); color: #fff; font-weight: 600; padding: 10px 14px; border-radius: 12px 12px 3px 12px; margin-left: auto; width: max-content; max-width: 100%; margin-bottom: 8px; }
.aib .a { background: #fff; padding: 12px 14px; border-radius: 12px 12px 12px 3px; color: var(--muted); box-shadow: var(--shadow); }
.aib .a mark { background: #fde7ea; color: #b0202f; font-weight: 800; padding: 0 4px; border-radius: 4px; }

/* ---------- platforme ---------- */
.pt-el { background: #fff; border-radius: 12px; box-shadow: var(--shadow); padding: 24px; border-top: 4px solid var(--accent); transition: transform .15s; }
a.pt-el:hover { border-top-color: var(--navy); }
.pt-el.note { background: var(--navy); color: #fff; box-shadow: none; border-top-color: var(--accent); }
.pt-el.note p { color: #fff; }
.pt-el.note .link { color: #4fd3de; }
.pt-leg { display: flex; gap: 18px; font-size: 13px; font-weight: 600; color: var(--muted); }
.pt-leg span { display: flex; align-items: center; gap: 8px; }
.pt-leg i { width: 14px; height: 14px; border-radius: 3px; background: #e3f4f6; box-shadow: inset 0 0 0 1px var(--line-2); }
.pt-leg i.lg2 { background: var(--navy); }

/* ---------- formular repetat la capăt de capitol ---------- */
.sf-mid-sec { padding: 64px 0; }
.sf-mid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.sf-mid h2 { font-size: clamp(26px, 2.6vw, 34px); }
.sf-mid p { color: var(--muted); margin-top: 10px; }
.sf-mid .dom-f { box-shadow: none; }

/* ---------- dovezi: cazuri cu cifră mare și impactul în business ---------- */
.sf-cases { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.sf-case { background: #fff; border-radius: 12px; box-shadow: var(--shadow); padding: 20px; border-top: 4px solid var(--accent); }
.sf-case .ilu-t { margin-bottom: 8px; }
.sf-case b { display: block; font: 800 34px/1.05 var(--f-head); letter-spacing: -.03em; color: var(--link); }
.sf-case .m { display: block; font-size: 13px; font-weight: 600; color: var(--muted); margin-top: 4px; }
.sf-case p { font-size: 13px; color: var(--muted); margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--line); }
.sf-case p strong { color: var(--navy); }
.plate-l { background: var(--tint-2); border-radius: 10px; padding: 18px; }
.dv-fotos .scene { border-radius: 12px; }
.cap-ph { background: var(--navy); color: #fff; border-radius: 4px; }
.fisa { background: #fff; border-radius: 12px; box-shadow: var(--shadow); overflow: hidden; }
.fisa-top { background: var(--navy); color: #fff; }
.fisa-r + .fisa-r { border-top: 1px solid var(--line); }
.fisa-f { background: var(--tint-2); border-top: 1px solid var(--line); }
.noi { background: var(--tint); border-radius: 12px; border-left: 4px solid var(--accent); }

/* ---------- prețuri: mesajul despre timp devine blocul principal ---------- */
.pr-c { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.pr-c:first-child { border-top: 4px solid var(--accent); }
.pr-c .p { color: var(--navy); }
.pr-note { margin-top: 24px; max-width: none; padding: 26px 30px; border-radius: 12px; background: var(--navy); color: #fff; font: 700 clamp(17px, 1.7vw, 21px)/1.45 var(--f-head); letter-spacing: -.01em; }
.pr-note .tbc { font-family: var(--f-body); }

/* ---------- barometru ---------- */
.bm-chart { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.bm-top { color: var(--muted); padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.bar-v b { font-family: var(--f-head); }

/* ---------- FAQ ---------- */
.faq { display: grid; gap: 10px; }
.faq details { background: #fff; border-radius: 10px; padding: 0 22px; border: 1px solid var(--line); }
.faq summary { font-family: var(--f-head); font-weight: 800; }

/* ---------- apel final: card nuanțat cu formularul, ca un capăt de pagină care cere acțiune ---------- */
.cta-sec { padding-top: 24px; padding-bottom: 64px; }
.cta-band { border-radius: 14px; background: var(--tint); border: 1px solid var(--line); }
.cta-band .tel-l a { color: var(--link); text-decoration: underline; }

/* ---------- subsol bleumarin cu cifrele casei ---------- */
.sf-ftr-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-top: 48px; padding: 26px 0; border-top: 1px solid var(--ftr-line); border-bottom: 1px solid var(--ftr-line); }
.sf-ftr-stats b { display: block; font: 800 30px/1.1 var(--f-head); color: #fff; }
.sf-ftr-stats span { font-size: 13px; color: #c3d0d6; }
.ftr-b { border-top: 0; margin-top: 24px; }
.ftr .tbc { background: #3a2a10; color: #ffd38a; }

/* ---------- verificare ---------- */
.vhero { background: var(--tint); }
.facts div { background: #fff; border-radius: 8px; padding: 12px 16px; box-shadow: var(--shadow); }
.flux-sec { padding-top: 48px; }
.app { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.steps { background: var(--navy); }
.steps li { color: #a6b6be; }
.steps li i { box-shadow: inset 0 0 0 1.5px #a6b6be; }
.steps li.on { color: #fff; box-shadow: inset 0 -3px 0 var(--accent); }
.steps li.on i { background: var(--accent); color: var(--navy); }
.steps li.ok { color: #fff; } .steps li.ok i { background: #fff; color: var(--navy); }
.pas-n { color: var(--link); }
.plate-s { background: var(--tint-2); border-radius: 10px; box-shadow: inset 0 0 0 1px var(--line); }
.det { background: var(--tint); }
.pl.run { box-shadow: inset 0 0 0 2px var(--accent); background: #fff; }
.pl.done h3 .s { background: #e2f3ea; color: var(--ok); }
.cells i.v { background: var(--ok); } .cells i.x { background: var(--bad-fill); }
.rz-mail { background: var(--navy); --text: #fff; --muted: #c3d0d6; }
.rz-mail .mi { border-radius: 8px; background: #00aebc; color: var(--navy); }
.tl li { background: var(--tint-2); border-radius: 8px; padding: 12px; }
.side-c { background: #fff; border-radius: 12px; box-shadow: var(--shadow); border-top: 4px solid var(--accent); }
.foaie { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.concl { background: #fff; border-radius: 12px; box-shadow: var(--shadow); border-left: 4px solid var(--accent); }
.reg div { background: #fff; border-radius: 12px; box-shadow: var(--shadow); }
.captcha { background: #f9fbfc; }

@media (max-width: 1340px) { .sf-desc { display: none; } }
/* coloanele dezechilibrate (19.10.2026, aprobat): coloana scurtă cu text stă lipită lângă cea lungă, doar pe desktop;
   top = antetul lipicios (40 + 76 px) + 24 px aer */
@media (min-width: 1081px) { #canale .cmp-g > .cmp-why { position: sticky; top: 140px; } }
@media (min-width: 901px) { .dp-g > .dp-txt { position: sticky; top: 140px; } }
/* titlu → conținut tot 44 px când .r2-doua se stivuiește (32 gap + 12) */
@media (max-width: 900px) { .r2-doua > .sec-head:first-child { margin-bottom: 12px; } }
@media (max-width: 1080px) { :root { --sec-y: 80px; --hero-pb: 48px; } }
@media (max-width: 680px) { :root { --sec-y: 64px; --hero-pt: 20px; --hero-pb: 40px; } }
@media (max-width: 680px) { .field .dom-f input { box-shadow: inset 0 0 0 1.5px var(--field-line); background: #fff; border-radius: 6px; padding: 12px 14px; } }
@media (max-width: 1080px) {
  .sf-hero, .sf-tool, .sf-mid { grid-template-columns: minmax(0, 1fr); }
  .sf-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 20px; }
  .sf-stats div:nth-child(3) { border-left: 0; }
  .sf-cases { grid-template-columns: minmax(0, 1fr); }
  .pb-foto { position: static; aspect-ratio: 4/3; }
  .sf-ftr-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .sf-util-in { height: 36px; }
  .sf-cnt small { display: none; }
  .sf-util-r a:not(.tel-u) { display: none; }
  .mega { top: 100px; } .drawer { inset: 100px 0 0; }
  .hero { padding-top: 28px; }
  .sf-stats { grid-template-columns: minmax(0, 1fr); padding: 18px 0; }
  .sf-stats div, .sf-stats div + div { border-left: 0; text-align: left; padding: 10px 18px; }
  .sf-feat { grid-template-columns: minmax(0, 1fr); }
  .dom-f { box-shadow: none; background: none; gap: 8px; overflow: visible; }
  .dom-f input { background: #fff; border-radius: 6px; box-shadow: inset 0 0 0 1.5px var(--field-line); padding: 0 14px; }
  .dom-f .btn { border-radius: 6px; }
  .pr-note { padding: 20px; }
}
.sf-panel .el.ch-google, .sf-panel .el.ch-bing { background: var(--navy); color: #fff; }
.sf-case b { font-size: clamp(26px, 2.4vw, 32px); white-space: nowrap; }
.rz-mail { color: var(--text); } .rz-mail h3 { color: #fff; }
.hdr-cta { transition: none; }

/* fundal de erou: fotografia în culori, voal în nuanța eroului #eaf5f6 dinspre text */
:root { --hm-voal: linear-gradient(0deg, #eaf5f6 0, rgba(234,245,246,0) 160px), linear-gradient(90deg, rgba(234,245,246,.97) 0, rgba(234,245,246,.95) 46%, rgba(234,245,246,.62) 62%, rgba(234,245,246,.4) 100%);
  --hm-voal-mobil: rgba(234,245,246,.96);
  --hm-chip-bg: #fff;
  --hm-pauza-bg: #1d2327; --hm-pauza-fg: #fff; }

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .eyebrow { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .ilu-t { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .tag { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .sf-util-in { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-cnt small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .sf-cnt b { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .sf-desc { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .mega-h .el { font-size: calc(9px * var(--a11y-k, 1)); }
.a11y-text .dom-f input { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .dom-f .btn { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .hero .sub { font-size: calc(clamp(18px, 1.6vw, 22px) * var(--a11y-k, 1)); }
.a11y-text .hero .lead { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .sf-stats b { font-size: calc(22px * var(--a11y-k, 1)); }
.a11y-text .sf-stats span { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-feat li { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .sf-feat b { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .sf-panel-top { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .sf-row { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-row .el { font-size: calc(11px * var(--a11y-k, 1)); }
.a11y-text .sf-row b { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .sf-row i { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .sf-imp span { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .sf-imp b { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .sf-imp small { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .aib { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .pt-leg { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-mid h2 { font-size: calc(clamp(26px, 2.6vw, 34px) * var(--a11y-k, 1)); }
.a11y-text .sf-case b { font-size: calc(34px * var(--a11y-k, 1)); }
.a11y-text .sf-case .m { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-case p { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .pr-note { font-size: calc(clamp(17px, 1.7vw, 21px) * var(--a11y-k, 1)); }
.a11y-text .sf-ftr-stats b { font-size: calc(30px * var(--a11y-k, 1)); }
.a11y-text .sf-ftr-stats span { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-case b { font-size: calc(clamp(26px, 2.4vw, 32px) * var(--a11y-k, 1)); }

/* === _comun/r1d.css === */
/* Runda 1d (15.10.2026): fără elemente comune cu grafica generată de AI; logouri oficiale, ferestre de browser reale,
   iconițe WordPress, fonturi cu sursă reală. Se încarcă după viz.css și suprascrie ce era „de AI” în toate trei variantele.
   Auditul complet (element → de ce → cu ce l-am înlocuit): INTEGRARE.md, „Runda 1d”. */

/* ---------- 1. Fonturi: trei perechi, comutator ?font=a|b|c (A implicit) ---------- */
html[data-font="a"] { --f-head: "Libre Franklin", "Helvetica Neue", Arial, sans-serif; --f-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif; --w-head: 800; --ls-head: -.02em; }
html[data-font="b"] { --f-head: "Fira Sans", "Helvetica Neue", Arial, sans-serif; --f-body: "Fira Sans", "Helvetica Neue", Arial, sans-serif; --w-head: 700; --ls-head: -.01em; }
html[data-font="c"] { --f-head: "Barlow", "Helvetica Neue", Arial, sans-serif; --f-body: "Barlow", "Helvetica Neue", Arial, sans-serif; --w-head: 800; --ls-head: -.005em; }
html[data-font] body { font-family: var(--f-body); }
html[data-font="a"] body { font-size: 17.5px; }
/* „https://” și domeniul rămân în fontul de sistem monospațiat (așa arată un câmp de adresă real) */

/* ---------- 2. Colțuri mici și fără umbre moi: plăci plate, despărțite prin linii ---------- */
:root:root { --r-btn: 4px; --r-nav: 4px; --r-chip: 3px; --r-el: 3px; --r-field: 4px; --r-field-wrap: 4px; --r-bar: 2px; --r-cell: 2px; --r-bubble: 4px; --r-mk: 4px; --shadow: none; }
.plate, .sheet, .plate-s, .plate-l, .pt-el, .sf-case, .pr-c, .foaie, .concl, .cta-band, .side-c, .app, .fisa, .bm-chart, .cmp, .sf-panel,
.m-plat a, .m-feat, .m-item, .steps li, .facts div, .pb, .noi, .reg div, .faq details, .cmp-why div, .cmp-ga, .cmp-rec, .cmp-s, .pr-note,
.bul, .bul-g, .bul-r, .scene, .foto, .bench-foto, .pb-foto, .dv-fotos .scene, .cap-ph, .sf-stats, .tl li, .aib .q, .aib .a, .captcha, .ga-opt {
  border-radius: 4px !important; }
.plate, .sheet, .plate-s, .pt-el, .sf-case, .pr-c, .foaie, .concl, .side-c, .fisa, .bm-chart, .cmp, .sf-panel, .m-plat a, .pb, .cmp-why div, .noi, .sf-stats {
  box-shadow: none !important; }
.pt-el, .sf-case, .pr-c, .foaie { border-top-width: 1px !important; }

/* ---------- 3. Fără supratitluri, numerotări în colț, săgeți după linkuri, pastile ---------- */
.eyebrow, .pt-el .nr, .pt-leg, .m-feat .tag { display: none !important; }
.link { gap: 0; }
.link:hover { text-decoration-thickness: 2px; }
/* butoanele de platformă devin un câmp radio obișnuit, ca într-un formular de WordPress */
.plat-row { gap: 6px 18px; }
.plat-row label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.plat-row input { position: static !important; opacity: 1 !important; pointer-events: auto !important; width: 16px; height: 16px; margin: 0; accent-color: var(--btn-bg); flex: none; }
.plat-row .pp, .plat-row .pp.nu { height: auto; padding: 4px 0; background: none !important; box-shadow: none !important; border-radius: 0 !important; color: var(--text); font-weight: 400; gap: 6px; }
.plat-row input:checked + .pp { font-weight: 700; background: none !important; box-shadow: none !important; color: var(--text) !important; }
.plat-row input:focus-visible + .pp { outline: none; }
.plat-row input:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
[data-fundal] .plat-row .pp { background: none !important; }
.facts div { background: none !important; padding: 0 !important; box-shadow: none !important; }
.facts { gap: 6px 28px; }
.facts div b::before { content: "✓ "; color: var(--link); font-weight: 700; }
.cmp-rec .rec i, .bul-r .rec i, .rec i { background: none !important; padding: 0 !important; box-shadow: none !important; color: var(--bad); }
.rec { gap: 2px 14px !important; }
.steps li { box-shadow: none !important; }

/* ---------- 4. Logouri oficiale: fără plăci colorate, cu spațiu liber în jur ---------- */
.lgo { --lg-h: 20px; display: inline-flex; align-items: center; gap: calc(var(--lg-h) * .45); flex: none; line-height: 0; vertical-align: middle; }
.lgo .lg-svg { height: var(--lg-h); width: auto; display: block; overflow: visible; }
.lgo .lg-ic { display: grid; place-items: center; color: var(--text); }
.lgo .lg-ic svg { width: calc(var(--lg-h) * 1.15); height: calc(var(--lg-h) * 1.15); }
.lgo.ch-ai { gap: calc(var(--lg-h) * .4); }
.lgo.ch-ai .lg-svg { height: calc(var(--lg-h) * .9); }
.lg-woocommerce { height: calc(var(--lg-h) * .62) !important; }   /* bula Woo e lată și joasă: aceeași greutate vizuală */
.lg-opencart { height: calc(var(--lg-h) * 1.05) !important; }
.plat-row .lgo { --lg-h: 16px; }
.cmp-h .lgo, .bul-c .lgo, .mega-h .lgo, .sf-row .lgo { --lg-h: 16px; }
.cmp-why h3 .lgo, .foaie .fh .lgo { --lg-h: 22px; }
.pl .lgo, .det .lgo { --lg-h: 26px; }
.m-plat .lgo { --lg-h: 24px; }
.ga-ic .lgo, .ga-ic { --lg-h: 22px; }
.ga-ic { width: auto !important; height: auto !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; padding: 2px 4px 0 0; }
.bul-c, .cmp-h > span, .cmp-why h3, .mega-h { gap: 10px !important; align-items: center !important; }
.bul-c { align-items: flex-start !important; }
.bul-c .lgo { margin-top: 3px; }
.foaie .fh { min-height: 26px; }

/* ---------- 5. Iconițe WordPress fără plăcuță sub ele ---------- */
.m-ic, .pb .pi, .rz-mail .mi, .sf-feat li > span, .fh-ic, .lg-ic { background: none !important; border-radius: 0 !important; box-shadow: none !important; }
.m-ic { color: var(--mega-text); width: 26px; height: 26px; }
.m-ic svg, .pb .pi svg, .rz-mail .mi svg, .sf-feat li > span svg, .fh-ic svg { width: 24px; height: 24px; }
.pb .pi { color: var(--text); width: 30px; height: 30px; }
.rz-mail .mi { color: var(--text); width: 30px; height: 30px; }
.fh-ic { color: var(--text); display: inline-grid; }
.sf-feat li > span { width: auto !important; height: auto !important; color: #fff !important; margin: 0 !important; }

/* ---------- 6. Platformele: listă cu rânduri, nu 8 carduri egale ---------- */
.pt { display: block !important; border-top: 1px solid var(--line-2); }
.pt .pt-el { display: grid !important; grid-template-columns: 132px minmax(0, 1fr) minmax(0, 1.5fr) minmax(0, 1.4fr); gap: 6px 32px; align-items: start; padding: 22px 0 !important;
  background: none !important; border: 0 !important; border-bottom: 1px solid var(--line-2) !important; border-radius: 0 !important; box-shadow: none !important; color: var(--text); transform: none !important; }
.pt .pt-el > .lgo { grid-area: 1 / 1 / 3 / 2; --lg-h: 30px; margin-top: 2px; }
.pt .pt-el > h3 { grid-area: 1 / 2; font-size: 20px; }
.pt .pt-el > .u { grid-area: 2 / 2; font: 600 15px var(--f-body); color: var(--link); text-decoration: underline; text-underline-offset: 3px; }
.pt .pt-el > p:not(.fx) { grid-area: 1 / 3 / 3 / 4; font-size: 15px; color: var(--muted); }
.pt .pt-el > .fx { grid-area: 1 / 4 / 3 / 5; font-size: 15px; }
a.pt-el:hover h3 { color: var(--link); }
.pt .pt-el.note { display: block !important; background: none !important; color: var(--text) !important; padding: 18px 0 !important; border-bottom: 0 !important; }
.pt .pt-el.note p { color: var(--muted) !important; display: inline; margin-right: 10px; }
.pt .pt-el.note .link { color: var(--link) !important; }
@media (max-width: 860px) {
  .pt .pt-el { grid-template-columns: minmax(0, 1fr); }
  .pt .pt-el > * { grid-area: auto !important; }
  .pt .pt-el > .lgo { --lg-h: 26px; }
}

/* ---------- 7. Meniul Platforme: listă, nu grilă de plăci ---------- */
.m-plat { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 0 28px !important; }
.m-plat a { display: flex !important; align-items: center; gap: 12px !important; padding: 11px 0 !important; background: none !important; border: 0 !important; border-top: 1px solid var(--line) !important; border-radius: 0 !important; }
.m-plat a.m-hub { display: block !important; }

/* ---------- 8. WebFX: fără banda de 4 cifre în carduri, fără grila 2×2 de iconițe ---------- */
.sf-stats { display: flex !important; flex-wrap: wrap; gap: 10px 40px; background: none !important; border-radius: 0 !important; padding: 22px 0 !important; border-top: 1px solid var(--line-2); margin-top: 48px !important; }
.sf-stats div { padding: 0 !important; text-align: left !important; border: 0 !important; }
.sf-stats b { display: inline !important; font-size: 17px !important; margin-right: 6px; }
.sf-stats span { font-size: 15px !important; }
.sf-feat { display: block !important; margin: 24px 0 !important; }
.sf-feat li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 2px 14px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.16); }
.sf-feat li > span { grid-row: span 2; padding-top: 2px; }
.sf-feat b { margin: 0 !important; }
.sf-cases { gap: 0 !important; }
.sf-case { background: none !important; border: 0 !important; border-left: 1px solid var(--line-2) !important; border-radius: 0 !important; padding: 4px 22px !important; }
.sf-case:first-child { border-left: 0 !important; padding-left: 0 !important; }

/* ---------- 9. Prețuri și cele trei „În cod / Pe server / În Google”: coloane cu linie sus, nu carduri ---------- */
.pr-c, .plate-l { background: none !important; box-shadow: none !important; border: 0 !important; border-top: 2px solid var(--text) !important; border-radius: 0 !important; padding: 16px 0 0 !important; }
.alt .pr-c, .alt .plate-l { background: none !important; }

/* ---------- 10. Ferestre de browser reale (macOS Safari / Chrome, Windows 11 Edge) ---------- */
.br { --br-frame: #f6f6f6; --br-bar: #f6f6f6; --br-line: rgba(0,0,0,.14); --br-fg: #4a4a4a; --br-addr: rgba(0,0,0,.065); --br-addr-fg: #1d1d1f; --br-page: var(--surface, #fff);
  position: relative; border-radius: 10px; overflow: hidden; background: var(--br-page); container-type: inline-size;
  box-shadow: 0 0 0 .5px rgba(0,0,0,.28), 0 10px 30px rgba(0,0,0,.18); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
.br[data-mod="dark"] { --br-frame: #323232; --br-bar: #323232; --br-line: rgba(0,0,0,.6); --br-fg: #c8c8c8; --br-addr: rgba(255,255,255,.1); --br-addr-fg: #f5f5f7;
  box-shadow: 0 0 0 .5px rgba(255,255,255,.18), 0 0 0 1px rgba(0,0,0,.6), 0 10px 30px rgba(0,0,0,.5); }
.br-bar { color: var(--br-fg); user-select: none; }
.br-row { display: flex; align-items: center; gap: 10px; }
.br-tl { display: inline-flex; gap: 8px; flex: none; }
.br-tl i { width: 12px; height: 12px; border-radius: 50%; display: block; }
.br-tl i:nth-child(1) { background: #ff5f57; box-shadow: inset 0 0 0 .5px #e2463f; }
.br-tl i:nth-child(2) { background: #febc2e; box-shadow: inset 0 0 0 .5px #e1a116; }
.br-tl i:nth-child(3) { background: #28c840; box-shadow: inset 0 0 0 .5px #14ae2c; }
.br-ico, .br-nav { display: inline-flex; align-items: center; gap: 14px; flex: none; }
.br-nav svg + svg { opacity: .45; }
.br-fav { width: 14px; height: 14px; flex: none; }
/* Safari 18 (macOS 15), bara unificată de 52 px, câmpul de adresă centrat cu doar domeniul */
.br[data-os="safari"] .br-bar { background: var(--br-bar); border-bottom: 1px solid var(--br-line); }
.br-row.sf { height: 52px; padding: 0 14px 0 20px; gap: 16px; }
.br-row.sf .br-tl { margin-right: 6px; }
.br-addr { flex: 1; min-width: 0; height: 34px; border-radius: 9px; background: var(--br-addr); color: var(--br-addr-fg); display: flex; align-items: center; justify-content: center; gap: 7px; font-size: 13px; position: relative; max-width: 560px; margin: 0 auto; }
.br-addr .br-rl { position: absolute; right: 10px; display: inline-flex; color: var(--br-fg); }
.br-row.sf .br-r { gap: 18px; }
/* Chrome (macOS): bandă de file + bara de instrumente albă cu omnibox rotunjit */
.br[data-os="chrome"] { --br-frame: #dfe3e7; --br-bar: #fff; --br-addr: #eef1f4; --br-addr-fg: #1f1f1f; --br-fg: #474747; }
.br[data-os="chrome"][data-mod="dark"] { --br-frame: #1f1f1f; --br-bar: #3c3c3c; --br-addr: #282828; --br-addr-fg: #e3e3e3; --br-fg: #c7c7c7; }
.br[data-os="chrome"] .br-bar, .br[data-os="edge"] .br-bar { background: var(--br-frame); }
.ch-tabs { height: 40px; padding: 0 10px 0 14px; align-items: flex-end; }
.ch-tabs .br-tl { align-self: center; margin-right: 12px; }
.br-tab { position: relative; display: flex; align-items: center; gap: 8px; height: 34px; padding: 0 10px 0 12px; width: 236px; max-width: 46%; background: var(--br-bar); border-radius: 9px 9px 0 0; font-size: 12px; color: var(--br-addr-fg); }
.br-tab .br-tt { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.br-tab .br-tx { display: inline-flex; opacity: .75; }
.br-tab .br-tx svg { width: 14px; height: 14px; }
.br-new { display: inline-flex; align-self: center; padding: 0 6px; }
.br-sp { flex: 1; }
.ch-bar, .ed-bar { height: 40px; padding: 0 10px; background: var(--br-bar); border-bottom: 1px solid var(--br-line); gap: 12px; }
.ch-bar .br-nav, .ed-bar .br-nav { gap: 16px; padding: 0 4px; }
.ch-bar .br-nav svg + svg, .ed-bar .br-nav svg + svg { opacity: 1; }
.ch-bar .br-nav svg:nth-child(2) { opacity: .4; }
.br-omni { flex: 1; min-width: 0; height: 30px; border-radius: 15px; background: var(--br-addr); color: var(--br-addr-fg); display: flex; align-items: center; gap: 10px; padding: 0 12px; font-size: 13px; }
.br-omni > span:not(.br-tune):not(.br-star) { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.br-tune, .br-star { display: inline-flex; color: var(--br-fg); }
.br-prof { width: 22px; height: 22px; border-radius: 50%; background: #9aa4ad; flex: none; }
/* Edge (Windows 11): butoanele de fereastră de 46 px în dreapta, colțuri de 8 px, fără semafor */
.br[data-os="edge"] { border-radius: 8px; --br-frame: #f3f3f3; --br-bar: #f9f9f9; --br-addr: #fff; --br-addr-fg: #1a1a1a; --br-fg: #424242;
  box-shadow: 0 0 0 1px rgba(0,0,0,.1), 0 8px 24px rgba(0,0,0,.16); }
.br[data-os="edge"][data-mod="dark"] { --br-frame: #202020; --br-bar: #2b2b2b; --br-addr: #3b3b3b; --br-addr-fg: #fff; --br-fg: #d0d0d0; }
.br[data-os="edge"] .br-tl { display: none; }
.ed-tabs { height: 40px; padding: 0 0 0 10px; align-items: flex-end; gap: 8px; }
.ed-tabs > .br-ico { align-self: center; padding: 0 6px; }
.br[data-os="edge"] .br-tab { border-radius: 8px 8px 0 0; height: 32px; width: 220px; }
.br-win { align-self: flex-start; display: flex; height: 32px; }
.br-win > span { width: 46px; display: grid; place-items: center; color: var(--br-addr-fg); }
.ed-bar .br-omni { border-radius: 4px; height: 30px; box-shadow: inset 0 0 0 1px rgba(0,0,0,.06); }
.ed-bar .br-omni svg { flex: none; }
/* conținutul din fereastră: fără ramă proprie, fără margini negative */
.br > .bul, .br > .cmp, .br > .sf-panel { border-radius: 0 !important; box-shadow: none !important; margin: 0 !important; width: auto !important; border: 0 !important; }
@container (max-width: 520px) {
  .br-row.sf .br-r, .br-row.sf > .br-ico:first-of-type, .br-new, .br-star, .ed-tabs > .br-ico { display: none; }
  .br-tab, .br[data-os="edge"] .br-tab { width: auto; flex: 1; max-width: none; }
  .br-row.sf { gap: 10px; padding-left: 14px; }
  .br-win > span { width: 36px; }
}
/* poziția ferestrei în erou, pe fiecare variantă */
.hero-bul .br-erou { border-radius: 10px 10px 0 0; }
.bench .br-erou { position: relative; margin: -150px 0 0 auto; width: min(640px, 92%); }
@media (max-width: 1080px) { .bench .br-erou { margin: -90px 0 0 0; width: 100%; } }
@media (max-width: 680px) { .bench .br-erou { margin-top: -48px; } }
[data-fundal] .bench .br-erou { margin: 0 0 0 auto; }

/* ---------- 11. Mărci de machetă (de confirmat / ilustrativ) rămân, dar ca note, nu pastile ---------- */
.tbc, .ilu-t { border-radius: 2px !important; }

/* ---------- 12. Deschis: câmpurile pline de turcoaz devin secțiuni albe; turcoazul rămâne accentul mărcii ---------- */
body[data-var="deschis"] .alt { --bg: #ffffff; --text: #0f1b1d; --muted: #45555a; --dim: #5a696d; --line: rgba(15,27,29,.12); --line-2: rgba(15,27,29,.22);
  --link: #00727c; --surface-2: #e6eeec; --ok: #0b7a52; --warn: #9a5a00; border-top: 1px solid rgba(15,27,29,.1); border-bottom: 1px solid rgba(15,27,29,.1); }
body[data-var="deschis"] .alt .link:hover { color: var(--probe); }
.sf-row > span:first-child .lgo { --lg-h: 18px; }
.foaie .mini { display: none !important; }   /* barele-schelet „de UI” scoase: erau decor, nu date */
/* plăcile „inversate” (cerneală + text alb) își pierd fundalul în 1d, deci își recapătă culorile de text ale secțiunii */
body[data-var="deschis"] .pr-c:first-child, body[data-var="deschis"] .pt .pt-el.note { color: #0f1b1d; --muted: #45555a; --ok: #0b7a52; --link: #00727c; }
body[data-var="deschis"] .pt .pt-el.note p { color: #45555a !important; }
/* fix 1d: pe mobil fotografia din „Recunoști problema?” nu mai e lipită (sticky → static), iar bulele AI
   ieșeau din ea și acopereau „Nu știi care e problema?”; figura rămâne bloc de poziționare */
@media (max-width: 1080px) { .pb-foto { position: relative !important; top: auto !important; } }
body[data-tema="sf"] .dom-f > span { color: #50575e; }
.cta-band .tbc { background: #031416; color: #ffb547; }

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
html.a11y-text[data-font="a"] body { font-size: calc(17.5px * var(--a11y-k, 1)); }
.a11y-text .pt .pt-el > h3 { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .pt .pt-el > .u { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pt .pt-el > p:not(.fx) { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .pt .pt-el > .fx { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .sf-stats b { font-size: calc(17px * var(--a11y-k, 1)) !important; }
.a11y-text .sf-stats span { font-size: calc(15px * var(--a11y-k, 1)) !important; }
.a11y-text .br-addr { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .br-tab { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .br-omni { font-size: calc(13px * var(--a11y-k, 1)); }

/* === _comun/r2.css === */
/* Runda 2 (15.10.2026): componentele paginilor Magento, „Nu apar în ChatGPT”, Prețuri și Barometrul AI.
   Aceleași reguli ca în r1d: fără plăci colorate sub iconițe, liste cu linii în loc de carduri egale, colțuri mici,
   fără umbre, fără pastile. Culorile vin din variabilele fiecărei variante (viz.css). */

/* ---------- erou cu formular ---------- */
.r2-hero-g { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 56px; align-items: end; }
.r2-hero h1 { max-width: 20em; }
.r2-hero .lead { max-width: 720px; }
.r2-hero .lead-2 { max-width: 700px; }
.r2-form { border-top: 2px solid var(--text); padding-top: 18px; }
.r2-form-t { font-size: 20px; margin-bottom: 14px; }
.lb-f { display: block; font-size: 14px; font-weight: 700; color: var(--muted); margin-bottom: 6px; }
.r2-form .plat-f { margin-top: 16px; }
.r2-form .nota { margin-top: 14px; }
.r2-dovezi { display: flex; flex-wrap: wrap; gap: 6px 26px; margin-top: 22px; font-weight: 700; color: var(--text); }
.r2-dovezi > span::before { content: "✓ "; color: var(--link); }
.r2-asist { display: inline-flex; gap: 14px; align-items: center; margin-top: 18px; vertical-align: middle; }
.r2-asist .lgo { --lg-h: 22px; }
.r2-cifre .r2-asist { margin: 0 0 0 6px; gap: 8px; }
.r2-cifre .r2-asist .lgo { --lg-h: 16px; }
.r2-salt { display: flex; flex-wrap: wrap; gap: 8px 26px; margin-top: 22px; }

/* ---------- liste cu linii (probleme, cauze, factori, metodă) ---------- */
.r2-lista { border-top: 1px solid var(--line-2); list-style: none; padding: 0; }
.r2-rand { display: grid; grid-template-columns: 32px minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, 1.15fr); gap: 6px 28px; padding: 22px 0; border-bottom: 1px solid var(--line-2); align-items: start; }
.r2-rand h3 { font-size: 19px; }
.r2-rand p { color: var(--muted); font-size: 16px; }
.r2-rand .fx { color: var(--text); }
.r2-rand .fx b { font-weight: 700; }
.r2-ic { color: var(--text); display: grid; padding-top: 2px; }
.r2-ic svg { width: 24px; height: 24px; }
.r2-ol { counter-reset: c; }
.r2-ol .r2-rand h3::before { counter-increment: c; content: counter(c) ". "; color: var(--muted); }
.r2-lista-2 .r2-rand { grid-template-columns: 32px minmax(0, .8fr) minmax(0, 2fr); }
@media (max-width: 900px) {
  .r2-rand, .r2-lista-2 .r2-rand { grid-template-columns: 30px minmax(0, 1fr); }
  .r2-rand > p { grid-column: 2; }
}

/* ---------- două coloane, text lung ---------- */
.r2-doua { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: start; }
.r2-doua h2 { margin-bottom: 14px; }
.r2-doua .link { margin-top: 16px; }
.r2-text p + p { margin-top: 14px; }
.r2-text p { font-size: 18px; color: var(--muted); }
.r2-nota { margin-top: 22px; color: var(--muted); max-width: 760px; }
.r2-inrudite { margin-top: 28px; color: var(--muted); }
.r2-inrudite a { color: var(--link); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) { .r2-hero-g, .r2-doua { grid-template-columns: minmax(0, 1fr); gap: 32px; } }

/* ---------- banda foto fără text (între secțiuni și, pe mobil, sub erou) ---------- */
.r2-banda { line-height: 0; }
.r2-banda img, .hm-banda img { width: 100%; height: clamp(220px, 32vw, 420px); object-fit: cover; display: block; }
.hm-banda { display: none; line-height: 0; }
.hm-banda { position: relative; }
.hm-banda img, .hm-banda .hm-img { position: static; inset: auto; height: 240px; width: 100%; filter: var(--hm-filtru, none); object-position: var(--hm-pos, 50% 50%); }
@media (max-width: 767px) {
  [data-mobil-banda] > .hm { display: none; }
  .hm-banda { display: block; }
}

/* ---------- autodiagnostic ---------- */
.r2-diag { padding: 8px 24px 20px; }
.r2-diag fieldset { border: 0; border-bottom: 1px solid var(--line); padding: 16px 0; display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: center; }
.r2-diag legend { float: left; width: 100%; font-weight: 700; margin-bottom: 8px; color: var(--text); }
.r2-diag label { display: inline-flex; gap: 8px; align-items: center; cursor: pointer; color: var(--text); }
.r2-diag input { width: 16px; height: 16px; accent-color: var(--btn-bg); }
.r2-dacanu { width: 100%; color: var(--bad); font-size: 15px; }
.r2-verdict { padding-top: 16px; font-weight: 700; color: var(--text); }
.r2-verdict .link { margin-top: 10px; }

/* ---------- calculul ratei de citare (în fereastră) ---------- */
.r2-calc { padding: 0 0 4px; }
.r2-calc-top { display: flex; justify-content: space-between; align-items: center; padding: 14px 22px; border-bottom: 1px solid var(--line); }
.r2-calc-r { display: flex; justify-content: space-between; gap: 16px; padding: 14px 22px; border-bottom: 1px solid var(--line); color: var(--muted); }
.r2-calc-r b { color: var(--text); }
.r2-calc-r b.r2-rau { color: var(--bad); }
.r2-calc-ga { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 12px; padding: 16px 22px; font-size: 14px; color: var(--muted); }
.r2-calc-ga b { color: var(--text); }
.r2-calc-ga .lgo { --lg-h: 22px; }

/* ---------- prețuri ---------- */
.r2-lat { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px 48px; align-items: center; border-top: 2px solid var(--text); border-bottom: 1px solid var(--line-2); padding: 24px 0; }
.r2-lat h2 { font-size: clamp(24px, 2.6vw, 32px); margin-bottom: 8px; }
.r2-lat p { color: var(--muted); max-width: 760px; }
.r2-lat-s { border-top-width: 1px; margin-top: 28px; }
.r2-lat-s h3 { font-size: 19px; margin-bottom: 6px; }
@media (max-width: 680px) { .r2-lat { grid-template-columns: minmax(0, 1fr); } }
.r2-tab { overflow-x: auto; margin-top: 8px; }
.r2-tab table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 16px; }
.r2-tab th, .r2-tab td { text-align: left; vertical-align: top; padding: 14px 16px 14px 0; border-bottom: 1px solid var(--line-2); color: var(--text); }
.r2-tab thead th { font-size: 14px; color: var(--muted); border-bottom: 2px solid var(--text); }
.r2-tab tbody th { font-weight: 700; }
.r2-tab td { color: var(--muted); }
.r2-tab td.r2-pret { color: var(--text); font-weight: 800; font-family: var(--f-head); font-size: 19px; }
.r2-pachete thead th { font-family: var(--f-head); font-size: 20px; color: var(--text); }
.r2-tab .nota { margin-top: 10px; }
.r2-sub { margin-top: 26px; align-items: center; }
.r2-bife { list-style: none; padding: 0; }
.r2-bife li { padding: 8px 0 8px 26px; position: relative; color: var(--text); border-bottom: 1px solid var(--line); }
.r2-bife li::before { content: "✓"; position: absolute; left: 0; color: var(--link); font-weight: 700; }
.r2-liniute li::before { content: "–"; color: var(--muted); }

/* ---------- barometru ---------- */
.r2-cifre { display: flex; flex-wrap: wrap; gap: 14px 48px; margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--line-2); }
.r2-cifre div { display: flex; align-items: baseline; gap: 10px; }
.r2-cifre b { font: var(--w-head, 800) clamp(28px, 3vw, 40px)/1 var(--f-head); color: var(--text); }
.r2-cifre span { color: var(--muted); }
.r2-constatari { counter-reset: c; list-style: none; padding: 0; border-top: 1px solid var(--line-2); }
.r2-constatari li { counter-increment: c; display: grid; grid-template-columns: 44px minmax(0, 1fr); padding: 18px 0; border-bottom: 1px solid var(--line-2); font: 700 20px/1.35 var(--f-head); color: var(--text); }
.r2-constatari li::before { content: counter(c); color: var(--muted); }
.r2-filtru { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-bottom: 16px; }
.r2-filtru label { display: inline-flex; gap: 10px; align-items: center; font-weight: 700; color: var(--text); }
.r2-filtru select, .r2-abon select { height: 40px; padding: 0 10px; border-radius: 4px; border: 1px solid var(--field-line); background: var(--field-bg); color: var(--field-text); font: inherit; }
#rezultate .r2-tab { margin-top: 28px; }
.r2-gol { padding: 0; }
.r2-gol .bm-top { padding: 14px 20px; border-bottom: 1px solid var(--line); }
.r2-gol-z { height: 200px; margin: 0 20px 20px; display: grid; place-items: center; color: var(--muted); border-left: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); }
.r2-abon { flex-wrap: wrap; }
.r2-abon select { height: 50px; flex: 1 1 220px; }
/* 19.10.2026: abonarea funcțională (double opt-in, seo-factory-core): eroarea și informarea pe rând propriu, sub câmpuri */
.r2-abon .sf-eroare, .r2-abon .nota { flex: 1 1 100%; margin: 4px 0 0; }
.r2-abon[data-sf-form] input[type="email"], .r2-abon[data-sf-form] select { flex: 1 1 100%; min-width: 0; max-width: 100%; }
.r2-abon .sf-acord, .r2-abon .sf-eroare-acord, .r2-abon .sf-eroare-comunicare { flex: 1 1 100%; }
.r2-abon .sf-eroare:not([hidden]) { margin-top: 4px; }

.crumbs a + a::before { content: "/"; margin-right: 8px; opacity: .6; }
.noi { border-left: 0 !important; border-top: 2px solid var(--text) !important; padding-left: 0 !important; background: none !important; }
/* cu fundal foto în erou, formularul stă pe o placă plină în culoarea secțiunii: rămâne cel mai lizibil element */
[data-fundal] .r2-form { background: var(--bg); padding: 18px 22px 20px; border-top-width: 2px; }
.r2-plat-logo { margin: 14px 0 -4px; } .r2-plat-logo .lgo { --lg-h: 34px; }
body[data-var="inchis"] .r2-banda img, body[data-var="inchis"] .hm-banda img { filter: var(--hm-filtru, grayscale(1)); }
.lg-et { font: 700 11px/1 var(--f-body); color: var(--muted); white-space: nowrap; margin-left: calc(var(--lg-h) * -.25); letter-spacing: 0; }
.lg-gai { display: inline-flex; align-items: center; gap: calc(var(--lg-h) * .3); white-space: nowrap; }
.lg-gai .lg-et { margin-left: 0; }
.lgo.ch-ai { flex-wrap: wrap; row-gap: 6px; max-width: 100%; }
.bul-c { flex-wrap: wrap; row-gap: 4px; }
.cmp-h .lg-et, .sf-dark .lg-et, .mega .lg-et { color: inherit; }
.sf-dark .tbc, .cta-band .tbc { background: #fff0d6 !important; color: #6b3e00 !important; }
/* Acasă, secțiunea #barometru (19.10.2026): abonarea reală, cu cele două bife obligatorii. Emailul și butonul stau pe un rând,
   bifele, erorile și informarea dedesubt. În HTML bifele sunt înaintea butonului (regula din 19.10), iar pe mobil butonul
   coboară sub bife, în ordinea din HTML. */
.r2-abon-acasa[data-sf-form] { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 8px; align-items: start; max-width: 520px; }
.r2-abon-acasa[data-sf-form] > * { grid-column: 1 / -1; margin: 0; }
.r2-abon-acasa[data-sf-form] > input[type="email"] { grid-column: 1; grid-row: 1; flex: none; max-width: none; }
.r2-abon-acasa[data-sf-form] > button[type="submit"] { grid-column: 2; grid-row: 1; }
.r2-abon-acasa .sf-eroare-acord:not([hidden]), .r2-abon-acasa .sf-eroare-comunicare:not([hidden]) { margin-top: -4px; }
@media (max-width: 680px) { .r2-abon-acasa[data-sf-form] > button[type="submit"] { grid-column: 1 / -1; grid-row: auto; } }

/* 20.10.2026: huburile Platforme și Probleme (serviciu.py, blocul „carduri”) */
.r2-grup { margin: 32px 0 0; }
.r2-grup + .r2-lista { margin-top: 4px; }
.r2-cit { color: var(--text) !important; font-style: italic; margin-bottom: 6px; }
.r2-ic-lg { display: flex; gap: 3px; align-items: center; padding-top: 2px; }
.r2-ic-lg svg { width: 22px; height: 22px; }
.r5-serv.r2-hub .r2-rand { grid-template-columns: 32px minmax(0, .9fr) minmax(0, 2fr) minmax(0, 1fr); }
.r5-serv.r2-hub .r2-rand .link { justify-self: end; text-align: right; white-space: normal; }
@media (max-width: 900px) { .r5-serv.r2-hub .r2-rand { grid-template-columns: 30px minmax(0, 1fr); } .r5-serv.r2-hub .r2-rand .link { justify-self: start; text-align: left; } }
.narrow .lead + .lead { margin-top: 12px; }

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .r2-form-t { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .lb-f { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r2-rand h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .r2-rand p { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .r2-text p { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .r2-dacanu { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .r2-calc-ga { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r2-lat h2 { font-size: calc(clamp(24px, 2.6vw, 32px) * var(--a11y-k, 1)); }
.a11y-text .r2-lat-s h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .r2-tab table { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .r2-tab thead th { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r2-tab td.r2-pret { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .r2-pachete thead th { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .r2-cifre b { font-size: calc(clamp(28px, 3vw, 40px) * var(--a11y-k, 1)); }
.a11y-text .r2-constatari li { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .r2-filtru select, .a11y-text .r2-abon select { font-size: inherit; }
.a11y-text .lg-et { font-size: calc(11px * var(--a11y-k, 1)); }

/* === _comun/r5.css === */
/* Runda 5 (16.10.2026): serviciile în față, verificarea ca acțiune secundară, oameni pe site.
   Aceleași reguli „fără aer de AI”: liste cu linii, colțuri mici, fără umbre, fără carduri egale. */

/* ---------- acțiunea principală și cea secundară ---------- */
.r5-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 26px; }
.r5-sec, .m-sec { color: var(--link); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.r5-sec-l { margin-top: 12px; }
.btn.btn-o { background: transparent; color: var(--btn-bg); box-shadow: inset 0 0 0 2px var(--btn-bg); }
.btn.btn-o:hover { background: var(--btn-bg); color: var(--btn-fg); }

/* ---------- eroul Acasă: o singură coloană, oamenii din fundal se văd în dreapta ---------- */
.r5-hero { max-width: 760px; padding-bottom: 8px; }
.r5-hero h1 { margin-top: 0; }
.r5-hero .sub { margin-top: 16px; }
.r5-hero .lead { margin-top: 16px; font-size: 18px; max-width: 680px; }

/* ---------- serviciile: rânduri, cu legătura în ultima coloană ---------- */
.r5-serv .r2-rand { grid-template-columns: 32px minmax(0, 1fr) minmax(0, 2fr) auto; align-items: baseline; }
.r5-serv .r2-rand .link { white-space: nowrap; }
@media (max-width: 900px) { .r5-serv .r2-rand { grid-template-columns: 30px minmax(0, 1fr); } .r5-serv .r2-rand > * { grid-column: 2; } .r5-serv .r2-ic { grid-column: 1; grid-row: 1; } }

/* ---------- pașii „Cum începem” ---------- */
.r5-pasi { list-style: none; padding: 0; counter-reset: p; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 2px solid var(--text); }
.r5-pasi li { counter-increment: p; padding: 18px 22px 6px 0; }
.r5-pasi li + li { padding-left: 22px; border-left: 1px solid var(--line-2); }
.r5-pasi h3::before { content: counter(p) ". "; color: var(--muted); }
.r5-pasi h3 { font-size: 19px; margin-bottom: 6px; }
.r5-pasi p { color: var(--muted); }
@media (max-width: 900px) { .r5-pasi { grid-template-columns: minmax(0, 1fr); } .r5-pasi li + li { padding-left: 0; border-left: 0; border-top: 1px solid var(--line-2); } }

/* ---------- „Cum măsurăm”: formularul de verificare (secundar) lângă buletin ---------- */
.r5-masura { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 48px; align-items: start; margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--line-2); }
.r5-masura-f h3 { font-size: 21px; margin-bottom: 14px; }
.r5-masura-f .plat-f { margin-top: 14px; }
.r5-masura-f .nota { margin-top: 12px; }
@media (max-width: 1000px) { .r5-masura { grid-template-columns: minmax(0, 1fr); } }

/* ---------- formularul de verificare mutat după problemele platformei ---------- */
.r5-verif { margin-top: 36px; padding: 24px 0 0; border-top: 2px solid var(--text); max-width: 760px; }
.r5-verif h3 { font-size: 21px; margin-bottom: 12px; }
.r5-verif .plat-f { margin-top: 14px; }
.r5-verif .nota { margin-top: 12px; }

/* ---------- formularul „Discută cu un specialist” (loc rezervat) ---------- */
.r5-final { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important; align-items: start !important; }
.r5-disc-g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.r5-disc .field { display: grid; gap: 6px; }
.r5-disc label { font-size: 14px; font-weight: 700; color: var(--text); }
.r5-disc input, .r5-disc select { height: 46px; padding: 0 12px; border-radius: 4px; border: 0; box-shadow: inset 0 0 0 1.5px var(--field-line); background: var(--field-bg); color: var(--field-text); font: inherit; width: 100%; }
.r5-disc-act { display: flex; flex-wrap: wrap; gap: 10px 20px; align-items: center; margin-top: 16px; }
.r5-disc .nota { margin-top: 12px; }
/* runda 19 (18.10.2026): stările formularelor funcționale (forms.js din seo-factory-core). În repaus nu se vede nimic:
   .sf-eroare are atributul hidden, iar aria-invalid apare doar după o trimitere greșită. Prefixul sf-, nu sf-. */
.sf-eroare:not([hidden]) { margin-top: 12px; font-size: 13px; font-weight: 700; line-height: 1.45; color: var(--bad); }
/* Mesajul de după o cerere fără redirect (cererea GDPR): ia locul formularului, cu numărul de înregistrare. */
.sf-succes { margin: 0; padding: 16px 18px; border-left: 4px solid var(--ok, #1a7f4b); background: rgba(26, 127, 75, .08); font-weight: 600; line-height: 1.5; }
.sf-succes:focus { outline: 2px solid var(--ok, #1a7f4b); outline-offset: 2px; }
/* 19.10.2026: bifa obligatorie de acord pe toate formularele (decizia operatorului). În grila .r5-disc ocupă tot rândul;
   regula .r5-disc input (înălțime 46 px, lățime 100%) nu are voie să atingă bifele. */
.r5-disc .sf-acord, .r5-disc .sf-eroare-acord, .r5-disc .sf-eroare-comunicare { grid-column: 1 / -1; }
.sf-acord { font-weight: 400; }
.r5-disc .chk-l input, .abon .chk-l input, .verif-f .chk-l input { width: 16px; height: 16px; flex: none; padding: 0; margin-top: 3px; border-radius: 0; box-shadow: none; background: none; accent-color: var(--accent); }
.sf-eroare-acord:not([hidden]), .sf-eroare-comunicare:not([hidden]) { margin: 4px 0 0; font-size: 13px; font-weight: 700; line-height: 1.45; color: var(--bad); }
form[data-sf-form] input[aria-invalid="true"], form[data-sf-form] select[aria-invalid="true"], form[data-sf-form] textarea[aria-invalid="true"] { box-shadow: inset 0 0 0 2px var(--bad); }
form[data-sf-form] input[type="checkbox"][aria-invalid="true"] { box-shadow: none; outline: 2px solid var(--bad); outline-offset: 2px; }
/* accesibilitate 19.10.2026 (C3, C5): un câmp greșit care primește focus primește și inelul de focus (exterior), ca focusul să se vadă și peste roșu */
form[data-sf-form] input[aria-invalid="true"]:not([type="checkbox"]):focus, form[data-sf-form] select[aria-invalid="true"]:focus, form[data-sf-form] textarea[aria-invalid="true"]:focus { box-shadow: inset 0 0 0 2px var(--bad), 0 0 0 2px var(--focus-camp, #007783); }
form[data-sf-form] input[type="checkbox"][aria-invalid="true"]:focus-visible { outline-color: var(--focus-camp, #007783); }
form[data-sf-form] .btn[disabled] { opacity: .8; cursor: progress; background: var(--btn-bg); color: var(--btn-fg); }
@media (max-width: 900px) { .r5-final { grid-template-columns: minmax(0, 1fr) !important; } .r5-disc-g { grid-template-columns: minmax(0, 1fr); } }

/* ---------- oameni: fotografie lângă text, alternând părțile ---------- */
.om-al { padding: 56px 0; }
.om-al-g { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.om-al[data-parte="stanga"] .om-al-g { grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); }
.om-al[data-parte="stanga"] .om-foto { order: 2; }
.om-foto { margin: 0; }
.om-foto img, .om-r1 img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; display: block; }
.om-t { font-size: clamp(22px, 2.2vw, 30px); margin-bottom: 12px; }
.om-txt p { color: var(--muted); font-size: 17px; }
.om-nota { margin-top: 14px; }
.om-marcaj { font-size: 12px; }
@media (max-width: 900px) { .om-al-g, .om-al[data-parte="stanga"] .om-al-g { grid-template-columns: minmax(0, 1fr); gap: 20px; } .om-al[data-parte="stanga"] .om-foto { order: 0; } }

/* ---------- oameni: bandă foto cu o frază sub ea ---------- */
.om-banda { padding: 0 0 8px; }
.om-banda-f { margin: 0; line-height: 0; }
.om-banda-f img { width: 100%; height: clamp(240px, 34vw, 460px); object-fit: cover; display: block; }
.om-banda-c { display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: baseline; padding-top: 12px; color: var(--muted); }

/* ---------- „Cine lucrează pe site-ul tău”: un rol mare, două pe rânduri (nu trei carduri egale) ---------- */
.om-trio-g { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.om-r1 figure, .om-r figure { margin: 0; }
.om-r1 h3, .om-r h3 { font-size: 20px; margin: 14px 0 6px; }
.om-r1 p, .om-r p { color: var(--muted); }
.om-rest { border-top: 1px solid var(--line-2); }
.om-r { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 18px; padding: 18px 0; border-bottom: 1px solid var(--line-2); align-items: start; }
.om-r img { width: 150px; height: 112px; object-fit: cover; border-radius: 4px; display: block; }
.om-r h3 { margin-top: 0; }
.om-trio .om-nota { margin-top: 18px; }
@media (max-width: 900px) { .om-trio-g { grid-template-columns: minmax(0, 1fr); } .om-r { grid-template-columns: 110px minmax(0, 1fr); } .om-r img { width: 110px; height: 82px; } }

/* ---------- barometrul pe Acasă: bandă îngustă ---------- */
.r5-bm h2 { font-size: clamp(24px, 2.6vw, 32px); margin-bottom: 10px; }

/* ---------- meniul Servicii: caseta „Nu știi de unde să începi?” ---------- */
.m-feat .btn { margin-top: 12px; }
.m-feat .m-sec { display: block; margin-top: 10px; font-size: 14px; }
/* marcajul vizibil pe fotografiile de stoc puse în locul echipei (R3: nicio poză de stoc nu ajunge live lângă un rol) */
.om-foto, .om-banda-f, .om-r1 figure, .om-r figure { position: relative; }
.om-prov { position: absolute; left: 10px; top: 10px; max-width: calc(100% - 20px); padding: 4px 8px; border-radius: 2px; background: #fff0d6; color: #6b3e00; font: 700 12px/1.3 var(--f-body); line-height: 1.3; }
.om-banda-f .om-prov { left: 16px; top: 16px; }
.om-prov-s { left: 4px; top: 4px; font-size: 10px; padding: 2px 5px; }
.om-marcaj, .om-nota .tbc { white-space: normal; display: inline; }
body[data-tema="sf"] .pr-note .link { color: #4fd3de; }

/* ---------- runda 20 (18.10.2026): blocurile de date despre piață, în locul celor „Pentru cine lucrăm” cu fotografie ilustrativă.
   Același loc și același fundal ca .om-al (fără fundal propriu, padding 56px). Textul în stânga, cifrele în dreapta, pe rânduri
   despărțite de linii subțiri (ca .om-rest), nu carduri. Bara apare doar când cifra e o pondere și e calculată din ea. ---------- */
.dp-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 56px; align-items: start; }
.dp-txt p { color: var(--muted); font-size: 17px; max-width: 520px; }
.dp-l { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line-2); }
.dp-i { padding: 20px 0 22px; border-bottom: 1px solid var(--line-2); }
.dp-n { font: var(--w-head, 700) clamp(36px, 4.2vw, 56px)/1.02 var(--f-head); letter-spacing: var(--ls-head, -.02em); color: var(--text); font-variant-numeric: tabular-nums lining-nums; }
.dp-w { font-size: .5em; font-weight: 600; letter-spacing: 0; }
.dp-e { margin-top: 8px; font-size: 17px; line-height: 1.45; color: var(--text); max-width: 560px; }
.dp-s { margin-top: 8px; font-size: 13px; line-height: 1.45; color: var(--muted); max-width: 560px; }
.dp-bare { display: grid; gap: 6px; margin-top: 12px; max-width: 560px; }
.dp-b { display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; }
.dp-bare-2 .dp-b { grid-template-columns: 72px minmax(0, 1fr); gap: 10px; }
.dp-b i { font-style: normal; font-size: 12px; line-height: 1; color: var(--muted); }
.dp-t { display: block; height: 6px; background: var(--line); border-radius: 1px; overflow: hidden; }
.dp-f { display: block; height: 100%; background: var(--link); }
@media (max-width: 900px) { .dp-g { grid-template-columns: minmax(0, 1fr); gap: 24px; } .dp-n { font-size: clamp(32px, 9vw, 44px); } }

/* ---------- runda etichetelor (19.10.2026, G1): echipa pe ROLURI, fără fotografii.
   Coloane despărțite de linii subțiri sub o linie groasă (ca .r5-pasi), nu carduri. Iconița stă într-un pătrat cu
   contur; la Asistentul AI conturul e punctat, ca să se vadă că e o unealtă, nu un om. ---------- */
.om-rl { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); border-top: 2px solid var(--text); }
.om-rl[data-n="3"] { --n: 3; } .om-rl[data-n="5"] { --n: 5; }
.om-rol { padding: 22px 22px 8px 0; }
.om-rol + .om-rol { padding-left: 22px; border-left: 1px solid var(--line-2); }
.om-ic { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 4px; box-shadow: inset 0 0 0 1.5px var(--line-2); color: var(--link); flex: none; }
.om-ic svg { width: 24px; height: 24px; }
.om-rol h3 { font-size: 19px; margin: 14px 0 6px; }
.om-rol p { color: var(--muted); }
.om-rol-ai .om-ic { box-shadow: none; outline: 1.5px dashed var(--line-2); outline-offset: -1.5px; color: var(--muted); }
.om-transp { display: flex; gap: 10px; align-items: center; margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--line-2); color: var(--muted); font-size: 15px; }
.om-ic-s { width: 28px; height: 28px; box-shadow: none; outline: 1.5px dashed var(--line-2); outline-offset: -1.5px; color: var(--muted); }
.om-ic-s svg { width: 18px; height: 18px; }
.om-trio .om-link { margin-top: 14px; }
@media (max-width: 1100px) { .om-rl, .om-rl[data-n] { --n: 2; } .om-rol:nth-child(odd) { padding-left: 0; border-left: 0; } .om-rol:nth-child(n+3) { border-top: 1px solid var(--line-2); } }
@media (max-width: 640px) { .om-rl, .om-rl[data-n] { --n: 1; } .om-rol, .om-rol + .om-rol { padding: 18px 0 6px; border-left: 0; } .om-rol + .om-rol { border-top: 1px solid var(--line-2); } .om-transp { align-items: flex-start; } }

/* sloturile de echipă fără fotografie: titlul cu iconița în stânga, textul în dreapta */
.om-fara-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 48px; align-items: start; padding-top: 28px; border-top: 1px solid var(--line-2); }
.om-fara-h { display: flex; gap: 16px; align-items: flex-start; }
.om-fara-h .om-t { margin: 6px 0 0; }
@media (max-width: 900px) { .om-fara-g { grid-template-columns: minmax(0, 1fr); gap: 14px; } }
/* fosta bandă foto cu o frază: rămâne fraza, pe o linie, între secțiuni */
.om-fraza { padding: 8px 0 24px; }
.om-fraza-p { display: flex; gap: 16px; align-items: center; padding: 18px 0; border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); font: var(--w-head, 700) clamp(19px, 1.8vw, 24px)/1.35 var(--f-head); letter-spacing: var(--ls-head, -.02em); color: var(--text); }

/* ---------- 19.10.2026: blocul TheFactory (după modelul de pe ads-factory.ro), pe fundal deschis înaintea subsolului închis.
   Patru plăci egale sunt aici intenționate: sunt patru firme-soră, iar placa curentă se deosebește prin contur și „Ești aici”. ---------- */
.eco-head { max-width: 720px; margin: 0 auto 36px; text-align: center; }
.eco-h { margin: 0 0 16px; line-height: 0; }
.eco-h img { height: 52px; width: auto; display: inline-block; }
.eco-head p { color: var(--muted); font-size: 17px; }
.eco-g { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.eco-c { position: relative; background: var(--surface, #fff); border: 1px solid var(--line-2); border-radius: var(--r-el, 6px); }
.eco-c > a, .eco-aici { display: flex; flex-direction: column; height: 100%; padding: 24px 22px 20px; color: inherit; text-decoration: none; }
.eco-c > a:hover, .eco-c > a:focus-visible { box-shadow: inset 0 0 0 1px var(--link); border-radius: inherit; }
.eco-c > a:hover .eco-d { text-decoration: underline; text-underline-offset: 3px; }
.eco-aici { border: 2px solid var(--accent, #00aebc); padding: 23px 21px 19px; }
.eco-chip { position: absolute; top: -11px; left: 20px; padding: 2px 9px; border-radius: 3px; background: var(--btn-bg); color: var(--btn-fg); font: 700 12px/1.5 var(--f-body); }
.eco-lg { height: 20px; width: auto; max-width: 100%; align-self: flex-start; }
.eco-c h3 { font-size: 18px; margin: 18px 0 6px; }
.eco-c p { color: var(--muted); font-size: 15px; flex: 1; }
.eco-d { margin-top: 16px; font-size: 14px; font-weight: 600; color: var(--link); }
.eco-aici .eco-d { color: var(--muted); }
@media (max-width: 1000px) { .eco-g { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 24px; } }
@media (max-width: 560px) { .eco-g { grid-template-columns: minmax(0, 1fr); } .eco-head { text-align: left; } .eco-h img { height: 40px; } }
.v-info { margin-top: 14px; max-width: 640px; }

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .r5-hero .lead { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .r5-pasi h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .r5-masura-f h3 { font-size: calc(21px * var(--a11y-k, 1)); }
.a11y-text .r5-verif h3 { font-size: calc(21px * var(--a11y-k, 1)); }
.a11y-text .r5-disc label { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r5-disc input, .a11y-text .r5-disc select { font-size: inherit; }
.a11y-text .sf-eroare:not([hidden]) { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .sf-eroare-acord:not([hidden]), .a11y-text .sf-eroare-comunicare:not([hidden]) { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .om-t { font-size: calc(clamp(22px, 2.2vw, 30px) * var(--a11y-k, 1)); }
.a11y-text .om-txt p { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .om-marcaj { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .om-r1 h3, .a11y-text .om-r h3 { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .r5-bm h2 { font-size: calc(clamp(24px, 2.6vw, 32px) * var(--a11y-k, 1)); }
.a11y-text .m-feat .m-sec { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .om-prov { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .om-prov-s { font-size: calc(10px * var(--a11y-k, 1)); }
.a11y-text .dp-txt p { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .dp-n { font-size: calc(clamp(36px, 4.2vw, 56px) * var(--a11y-k, 1)); }
.a11y-text .dp-w { font-size: .5em; }
.a11y-text .dp-e { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .dp-s { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .dp-b i { font-size: calc(12px * var(--a11y-k, 1)); }
@media (max-width: 900px) {
.a11y-text .dp-n { font-size: calc(clamp(32px, 9vw, 44px) * var(--a11y-k, 1)); }
}
.a11y-text .om-rol h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .om-transp { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .om-fraza-p { font-size: calc(clamp(19px, 1.8vw, 24px) * var(--a11y-k, 1)); }
.a11y-text .eco-head p { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .eco-chip { font-size: calc(12px * var(--a11y-k, 1)); }
.a11y-text .eco-c h3 { font-size: calc(18px * var(--a11y-k, 1)); }
.a11y-text .eco-c p { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .eco-d { font-size: calc(14px * var(--a11y-k, 1)); }

/* === _comun/consimtamant.css === */
/* Runda 15 (17.10.2026): stratul comun tuturor paginilor. Bannerul de cookie-uri și panoul de setări (texte/25),
   plus linkurile legale și programul din subsol. Folosește doar culorile și butoanele setului (viz.css, baza.css). */

/* ---------- subsolul: linkurile legale, butonul „Setări cookie-uri”, programul ---------- */
.ftr .about .ftr-prog { display: block; margin-top: 4px; }
.ftr-b { align-items: baseline; }
.ftr-legal { gap: 8px 16px; }
.ftr-ck { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.ftr-ck:hover { color: var(--ftr-text, #fff); }

/* ---------- fereastra de consimțământ ---------- */
.ck-deschis, .ck-deschis body { overflow: hidden; }
.ck-strat { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 16px;
  background: rgba(0, 0, 0, .6); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  opacity: 0; transition: opacity .3s ease; overflow-y: auto; }
.ck-strat.ck-vizibil { opacity: 1; }
.ck-strat[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .ck-strat { transition: none; } }

.ck-card { width: min(670px, 100%); background: #fff; color: #1d2327; border: 1px solid #dbe4e8; border-radius: 16px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .12), 0 24px 64px rgba(0, 0, 0, .35); padding: 32px; font: 16px/1.6 var(--f-body, system-ui, sans-serif); }
.ck-card:focus, .ck-card:focus-visible { outline: none; }   /* fereastra primește focusul doar ca să fie anunțată; butoanele au inelul lor */
.ck-cap { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.ck-ic { flex: none; width: 44px; height: 44px; border-radius: 10px; display: grid; place-items: center; background: #e3f4f6; color: #007783; }
.ck-titlu { font: 800 22px/1.25 var(--f-head, system-ui, sans-serif); letter-spacing: -.01em; margin: 0; color: #1d2327; }
.ck-text { margin: 0; color: #3f5260; font-size: 15px; }
.ck-link { color: #00727c; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }

.ck-act { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 12px; align-items: center; margin-top: 24px; }
.ck-card .btn { width: 100%; height: 48px; padding: 0 18px; cursor: pointer; font-size: 15px; border: 0; }
.ck-card .btn-o { background: #fff; color: #1d2327; box-shadow: inset 0 0 0 1.5px #1d2327; }
.ck-card .btn-o:hover { background: #eaf5f6; }
.ck-setari { display: inline-flex; align-items: center; gap: 6px; justify-self: end; background: none; border: 0; padding: 8px 4px; cursor: pointer;
  font: 600 15px var(--f-body, system-ui, sans-serif); color: #00727c; text-decoration: underline; text-underline-offset: 3px; }
.ck-card button:focus-visible, .ck-card a:focus-visible, .ck-sw:focus-visible { outline: 2px solid #007783; outline-offset: 2px; }   /* 3:1 pe alb (accesibilitate 19.10.2026, C5) */

/* panoul de setări */
.ck-cap-p { margin-bottom: 18px; }
.ck-ic-s { width: 36px; height: 36px; border-radius: 8px; }
.ck-x { margin-left: auto; width: 40px; height: 40px; display: grid; place-items: center; border: 0; border-radius: 8px; background: none; color: #1d2327; cursor: pointer; }
.ck-x:hover { background: #eaf5f6; }
.ck-lista { display: grid; gap: 10px; }
.ck-rand { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 14px 16px; border: 1px solid #dbe4e8; border-radius: 10px; transition: border-color .15s; }
.ck-rand:hover { border-color: #00aebc; }
.ck-rt { margin: 0; font-weight: 700; color: #1d2327; }
.ck-rd { margin: 2px 0 0; font-size: 13px; line-height: 1.5; color: #3f5260; }
.ck-mereu { font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: #007783; color: #fff; white-space: nowrap; }
.ck-sw { appearance: none; -webkit-appearance: none; flex: none; width: 44px; height: 24px; margin: 0; border-radius: 999px; background: #8a9ba5; position: relative; cursor: pointer; transition: background .15s; }
.ck-sw::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .25); transition: transform .15s; }
.ck-sw:checked { background: #007783; }
.ck-sw:checked::after { transform: translateX(20px); }
@media (prefers-reduced-motion: reduce) { .ck-sw, .ck-sw::after, .ck-rand { transition: none; } }
.ck-act-p { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); margin-top: 20px; }

@media (max-width: 560px) {
  .ck-card { padding: 22px 18px; border-radius: 14px; }
  .ck-titlu { font-size: 20px; }
  .ck-act, .ck-act-p { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .ck-setari { justify-self: center; }
  .ck-rand { padding: 12px 14px; }
}

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .ftr-ck { font-size: inherit; }
.a11y-text .ck-card { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .ck-titlu { font-size: calc(22px * var(--a11y-k, 1)); }
.a11y-text .ck-text { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .ck-card .btn { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .ck-setari { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .ck-rd { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .ck-mereu { font-size: calc(12px * var(--a11y-k, 1)); }
@media (max-width: 560px) {
.a11y-text .ck-titlu { font-size: calc(20px * var(--a11y-k, 1)); }
}

/* === _comun/panou-a11y.css === */
/* Panoul de accesibilitate (20.10.2026): butonul din colțul stânga-jos, panoul și cele cinci moduri.
   Comun tuturor paginilor (build.py îl leagă după consimtamant.css; în temă intră în sf.css prin pachet.py).
   Textele stau în panou-a11y.js (TEXTE); aplicarea la încărcare, fără clipire, în panou-a11y-cap.js.
   Dreapta-jos e insigna reCAPTCHA; sertarul mobil (z 59) și bannerul de cookie-uri (z 1000) acoperă butonul. */

/* ---------- butonul ---------- */
.a11y { position: fixed; left: 16px; bottom: 16px; z-index: 58; font: 16px/1.5 var(--f-body, system-ui, sans-serif); color: #1d2327; }
.a11y-btn { width: 48px; height: 48px; display: grid; place-items: center; padding: 0; border: 2px solid #fff; border-radius: 50%;
  background: #1d2327; color: #fff; cursor: pointer; box-shadow: 0 1px 3px rgba(29, 35, 39, .35); }
.a11y-btn svg { width: 28px; height: 28px; display: block; }
.a11y-btn:hover, .a11y-btn[aria-expanded="true"] { background: #007783; }
/* inelul de focus al site-ului (#007783, 2 px, decalat), cu un spațiu alb ca să se vadă și peste subsolul bleumarin */
.a11y-btn:focus-visible, .a11y-panou button:focus-visible, .a11y-panou a:focus-visible, .a11y-panou input:focus-visible + .a11y-opt {
  outline: 2px solid #007783; outline-offset: 2px; box-shadow: 0 0 0 2px #fff; }
html { scroll-padding-bottom: 80px; }   /* elementul care primește focus nu ajunge sub buton (2.4.11) */

/* ---------- panoul (non-modal) ---------- */
.a11y-panou { position: fixed; left: 16px; bottom: 76px; width: min(360px, calc(100vw - 32px)); max-height: calc(100vh - 96px); max-height: calc(100dvh - 96px);
  overflow-y: auto; overscroll-behavior: contain; background: #fff; color: #1d2327; border: 1px solid #c4d1d7; border-radius: 8px;
  box-shadow: 0 2px 6px rgba(29, 35, 39, .12), 0 16px 40px rgba(29, 35, 39, .18); padding: 18px 20px 20px; }
.a11y-panou[hidden] { display: none; }
.a11y-cap { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; }
.a11y-titlu { margin: 0; min-width: 0; overflow-wrap: anywhere; font: 800 20px/1.25 var(--f-head, system-ui, sans-serif); letter-spacing: -.01em; color: #1d2327; }
.a11y-titlu:focus { outline: none; }
.a11y-x { margin-left: auto; min-height: 44px; padding: 0 12px; border: 0; border-radius: 6px; background: none; color: #00727c;
  font: 700 15px var(--f-body, system-ui, sans-serif); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.a11y-x:hover { background: #eaf5f6; }
.a11y-intro { margin: 2px 0 14px; font-size: 14px; color: #3f5260; }

.a11y-grup { margin: 0 0 6px; padding: 0; border: 0; min-width: 0; }
.a11y-grup legend { padding: 0; margin-bottom: 8px; font-weight: 700; font-size: 15px; }
.a11y-marimi { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.a11y-marimi label { position: relative; display: block; }
.a11y-marimi input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.a11y-opt { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 4px 6px; text-align: center; border-radius: 6px;
  box-shadow: inset 0 0 0 1.5px #b9c8cf; font-size: 15px; font-weight: 600; line-height: 1.2; cursor: pointer; overflow-wrap: anywhere; }
.a11y-marimi input:checked + .a11y-opt { background: #1d2327; color: #fff; box-shadow: inset 0 0 0 1.5px #1d2327; }

.a11y-lista { list-style: none; margin: 10px 0 0; padding: 0; border-top: 1px solid #dbe4e8; }
.a11y-lista li { padding: 10px 0; border-bottom: 1px solid #dbe4e8; }
.a11y-com { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 44px; padding: 2px 0; border: 0; background: none; color: inherit;
  font: 700 15px/1.3 var(--f-body, system-ui, sans-serif); text-align: left; cursor: pointer; }
.a11y-com span:first-child { flex: 1; min-width: 0; overflow-wrap: anywhere; }
/* comutatorul desenat: forma, nu doar culoarea, arată starea (bila trece în dreapta, apare bifa) */
.a11y-sw { flex: none; position: relative; width: 44px; height: 26px; border-radius: 13px; background: #fff; box-shadow: inset 0 0 0 2px #586b78; }
.a11y-sw::after { content: ""; position: absolute; top: 5px; left: 5px; width: 16px; height: 16px; border-radius: 50%; background: #586b78; }
.a11y-com[aria-pressed="true"] .a11y-sw { background: #007783; box-shadow: inset 0 0 0 2px #007783; }
.a11y-com[aria-pressed="true"] .a11y-sw::after { left: 23px; background: #fff; }
.a11y-expl { margin: 2px 0 0; font-size: 13px; line-height: 1.4; color: #3f5260; }

.a11y-jos { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-top: 14px; }
.a11y-reset { min-height: 44px; padding: 0 16px; border: 0; border-radius: 6px; background: #fff; color: #1d2327; box-shadow: inset 0 0 0 1.5px #1d2327;
  font: 700 15px var(--f-body, system-ui, sans-serif); cursor: pointer; }
.a11y-reset:hover { background: #eaf5f6; }
.a11y-despre { color: #00727c; font-weight: 700; font-size: 15px; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.a11y-anunt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* pe telefon: foaie de jos, pe toată lățimea, sub antet */
@media (max-width: 560px) {
  .a11y { left: 12px; bottom: 12px; }
  .a11y-panou { position: fixed; left: 0; right: 0; bottom: 0; width: auto; max-height: calc(100vh - 80px); max-height: calc(100dvh - 80px);
    border-radius: 12px 12px 0 0; border-width: 1px 0 0; padding: 16px 16px 20px; }
}
@media print { .a11y { display: none !important; } }

/* ---------- modurile (clase pe <html>, puse de panou-a11y-cap.js înainte de randare) ---------- */
/* Mărimea textului: --a11y-k înmulțește gemenii de font-size (_sursa/panou_a11y.py → _comun/text-mare/*.css, în temă lipiți în sf.css). */
html.a11y-t2 { --a11y-k: 1.15; }
html.a11y-t3 { --a11y-k: 1.3; }

/* Subliniază legăturile */
html.a11y-sub a:not(.btn):not(.logo) { text-decoration-line: underline !important; text-decoration-thickness: 1.5px !important; text-underline-offset: 3px !important; }

/* Oprește animațiile: ca prefers-reduced-motion (viz.js / sf.js citesc data-nivel="2", pus odată cu clasa) */
html.a11y-miscare { scroll-behavior: auto !important; }
html.a11y-miscare *, html.a11y-miscare *::before, html.a11y-miscare *::after {
  animation-duration: .01ms !important; animation-iteration-count: 1 !important; animation-delay: 0s !important;
  transition-duration: .01ms !important; transition-delay: 0s !important; scroll-behavior: auto !important; }
html.a11y-miscare .hm-vid { display: none !important; }

/* Spațiere mărită: valorile din WCAG 1.4.12 */
html.a11y-spatiere body *:not(svg):not(svg *) { line-height: 1.5 !important; letter-spacing: .12em !important; word-spacing: .16em !important; }
html.a11y-spatiere body p { margin-bottom: 2em !important; }
html.a11y-spatiere .btn { height: auto !important; min-height: 50px; padding-top: 8px; padding-bottom: 8px; white-space: normal; }

/* Contrast mărit: textele la cel puțin 7:1; fundalurile peste fotografie devin pline, video-ul nu se mai arată */
html.a11y-contrast, html.a11y-contrast .alt, html.a11y-contrast .plate, html.a11y-contrast .sheet, html.a11y-contrast .plate-s, html.a11y-contrast .sf-panel {
  --muted: #1d2327; --dim: #1d2327; --link: #00535b; --line: #586b78; --line-2: #1d2327; --accent: #00535b;
  --hdr-muted: #1d2327; --mega-muted: #1d2327; --mega-dim: #1d2327; --field-line: #1d2327;
  --btn: #00535b; --btn-bg: #00535b; --btn-fg: #fff; --btn-bg-h: #1d2327; --focus-camp: #00535b;
  --ftr-muted: #fff; --ftr-h: #7fe3ea; --hm-voal: #eaf5f6; --hm-voal-mobil: #eaf5f6;
  --bad: #8f1726; --rec-fg: #8f1726; --warn: #6b3e00; --ok: #055c3c; --tbc-fg: #5a3400; }
html.a11y-contrast .sf-dark, html.a11y-contrast .sf-mid-sec {
  --muted: #fff; --dim: #fff; --link: #7fe3ea; --line: rgba(255, 255, 255, .5); --line-2: #fff; --accent: #7fe3ea;
  --btn-bg: #7fe3ea; --btn-fg: #1d2327; --btn-bg-h: #fff; }
html.a11y-contrast .hm-voal { background: #eaf5f6 !important; }
/* zonele cu paleta lor proprie: vizualele explicative, graficele Barometrului, evidențierile din exemplul de răspuns AI */
html.a11y-contrast .vx { --muted: #1d2327; --dim: #1d2327; --link: #00535b; --line: #586b78; }
html.a11y-contrast .bz, html.a11y-contrast [data-pagina="barometru-ai"] { --bz-ink-2: #1d2327; --bz-ink-3: #1d2327; --bz-s1: #6aa5ea; --bz-s2: #f08a60; }
html.a11y-contrast .aib .a mark { color: #8f1726; }
html.a11y-contrast .hm-vid { display: none !important; }
html.a11y-contrast .a11y-intro, html.a11y-contrast .a11y-expl { color: #1d2327; }
html.a11y-contrast .a11y-x, html.a11y-contrast .a11y-despre { color: #00535b; }

/* doar în machete: bara machetei (.mk, stânga-jos) se mută la dreapta butonului */
.mk { left: 76px !important; max-width: calc(100vw - 88px) !important; }

/* text mărit pe desktop: antetul își strânge spațiile ca să încapă meniul, telefonul și butonul */
html.a11y-text .hdr-in { gap: 14px; }
html.a11y-text .hdr-r { gap: 12px; }
html.a11y-text .nav-t { padding: 0 8px; }
@media (max-width: 1240px) { html.a11y-t3 .hdr { --a11y-k: 1.15; } }   /* între 1081 și 1240 px meniul complet încape doar la „Mare” */
/* text mărit pe ecrane înguste: cuvintele și sumele lungi se rup în loc să iasă din pagină */
html.a11y-text main :is(td, th, h1, h2, h3, h4, li, dd, dt, label, .btn) { overflow-wrap: anywhere; }
html:is(.a11y-text, .a11y-spatiere) :is(.vx-harta .vx-rand small, .vx-harta .vx-pasi em) { white-space: normal; }

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .a11y { font-size: calc(16px * var(--a11y-k, 1)); }
.a11y-text .a11y-titlu { font-size: calc(20px * var(--a11y-k, 1)); }
.a11y-text .a11y-x { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .a11y-intro { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .a11y-grup legend { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .a11y-opt { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .a11y-com { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .a11y-expl { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .a11y-reset { font-size: calc(15px * var(--a11y-k, 1)); }
.a11y-text .a11y-despre { font-size: calc(15px * var(--a11y-k, 1)); }
