/* Vlaicu contabilitate — foi de registru pe fond verde. Un singur font: Atkinson Hyperlegible Next + Mono. */
:root{
  --fond:#D3E6C8;        /* verdele registrului */
  --foaie:#FCFDF8;
  --rigla:#E2EBDC;       /* liniile foii, decor */
  --cerneala:#16241B;
  --sters:#45574B;
  --rosu:#C2382B;        /* linia de margine, decor */
  --rosu-text:#A3271C;
  --verde:#2E6A46;
  --verde-inchis:#1D4430;
  --t-rosu:#C2382B; --t-galben:#E7B32B; --t-albastru:#2F67AE; --t-verde:#2E6A46; --t-roz:#E9A3A0;
  --f:'Atkinson Hyperlegible Next',system-ui,sans-serif;
  --m:'Atkinson Hyperlegible Mono',ui-monospace,monospace;
  --margine:56px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fond);color:var(--cerneala);font:400 1.0625rem/1.6 var(--f);font-variant-numeric:tabular-nums}
img,video{max-width:100%;display:block}
figure{margin:0}
a{color:var(--verde-inchis);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--t-albastru);outline-offset:2px}
button{font:inherit;background:transparent;border:none;appearance:none;color:inherit;cursor:pointer}
h1,h2,h3{line-height:1.15;margin:0 0 .5em;font-weight:800;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,4.6vw,3.9rem);line-height:1.08}
h2{font-size:clamp(1.55rem,2.6vw,2.15rem)}
h3{font-size:1.15rem;line-height:1.3}
p{margin:0 0 1em}
[hidden]{display:none !important}
.mono{font-family:var(--m);font-variant-numeric:tabular-nums}
.mic{font-size:.875rem;color:var(--sters)}
.vizual-ascuns{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sari{position:absolute;top:8px;left:8px;z-index:20;background:var(--cerneala);color:#fff;padding:.5em .8em;clip-path:inset(50%)}
.sari:focus{clip-path:none}
.wrap{width:100%;max-width:1180px;margin-inline:auto;padding-inline:16px}
@media (min-width:768px){.wrap{padding-inline:32px}}

/* ---------- antet: marca + taburi de biblioraft */
.antet{padding-top:20px}
.antet__sus{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding-bottom:18px}
.marca{display:inline-flex;flex-direction:column;text-decoration:none;color:var(--cerneala);line-height:1}
.marca__nume{font-weight:800;font-size:2rem;letter-spacing:-.02em;border-bottom:3px double var(--rosu);padding-bottom:4px}
.marca__sub{font-family:var(--m);font-size:.8rem;color:var(--sters);margin-top:6px;letter-spacing:.02em}
.antet__contact{margin:0;font-family:var(--m);font-size:.95rem}
.antet__contact a{color:var(--cerneala)}
.taburi ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.taburi ul::-webkit-scrollbar{display:none}
.taburi li{flex:0 0 auto}
.taburi a{display:block;padding:10px 18px 9px;border-radius:9px 9px 0 0;text-decoration:none;font-weight:700;font-size:.95rem;color:#fff;position:relative;top:1px;white-space:nowrap}
.taburi li:nth-child(1) a{background:var(--t-rosu)}
.taburi li:nth-child(2) a{background:var(--t-galben);color:var(--cerneala)}
.taburi li:nth-child(3) a{background:var(--t-albastru)}
.taburi li:nth-child(4) a{background:var(--t-verde)}
.taburi li:nth-child(5) a{background:var(--t-roz);color:var(--cerneala)}
.taburi a:hover{text-decoration:underline}
.taburi li a[aria-current="page"]{background:var(--foaie);color:var(--cerneala);padding-bottom:12px;top:0;box-shadow:inset 0 4px 0 var(--rosu)}

/* ---------- foile */
.foi{max-width:1180px;margin:0 auto;padding:0 16px 40px}
@media (min-width:768px){.foi{padding:0 32px 56px}}
.foaie{position:relative;background:var(--foaie);
  background-image:repeating-linear-gradient(to bottom,transparent 0 31px,var(--rigla) 31px 32px);
  padding:40px 24px 40px calc(var(--margine) + 22px);margin-bottom:24px;box-shadow:0 1px 0 rgba(22,36,27,.12),0 8px 24px -16px rgba(22,36,27,.35)}
.foaie::before{content:"";position:absolute;top:0;bottom:0;left:var(--margine);width:5px;border-left:1px solid var(--rosu);border-right:1px solid var(--rosu);pointer-events:none}
.foaie:first-child{border-top-left-radius:0}
@media (max-width:767px){:root{--margine:14px}.foaie{padding:32px 16px 32px 34px}}
@media (min-width:1100px){.foaie{padding-right:48px}}
.cap{max-width:760px;margin-bottom:28px}
.cap p{color:var(--sters);font-size:1.08rem}
.cap--pagina p{color:var(--cerneala)}
.foaie--ingusta>*{max-width:760px}

/* ---------- erou */
.foaie--erou{padding-top:0}
.erou__foto{margin:0 -24px 36px calc(-1 * (var(--margine) + 22px));position:relative;z-index:1}
.erou__foto img{width:100%;height:clamp(220px,40vw,500px);object-fit:cover;object-position:30% 62%}
@media (max-width:767px){.erou__foto{margin:0 -16px 28px -34px}}
@media (min-width:1100px){.erou__foto{margin-right:-48px}}
.erou{display:grid;gap:32px;align-items:start}
@media (min-width:980px){.erou{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:48px}}
.erou__lead{font-size:1.18rem;max-width:40em}
.butoane{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;border-radius:6px;font-weight:700;text-decoration:none;border:2px solid var(--verde-inchis);line-height:1.2}
.btn--plin{background:var(--verde-inchis);color:#fff}
.btn--plin:hover{background:var(--cerneala);border-color:var(--cerneala)}
.btn--contur{background:transparent;color:var(--verde-inchis)}
.btn--contur:hover{background:var(--fond)}
.btn--mic{min-height:40px;padding:6px 14px;font-size:.95rem}

/* chitanța „următorul termen” */
.urm{border:2px solid var(--cerneala);background:var(--foaie);padding:0 0 18px}
.urm__t{font-size:.95rem;font-weight:700;background:var(--cerneala);color:#fff;margin:0 0 14px;padding:8px 16px;letter-spacing:.01em}
.urm p{margin:0;padding:0 16px}
.urm__data{font-size:1.6rem;font-weight:800;line-height:1.2}
.urm__cate{font-size:1.05rem;color:var(--rosu-text);margin-top:4px !important}
.urm__coduri{font-size:1.25rem;font-weight:600;margin:12px 0 10px !important;padding-top:10px !important;border-top:1px dashed var(--sters)}
.urm__pt{font-size:.95rem;color:var(--sters)}

/* ---------- profilul firmei */
.profil{display:grid;gap:18px;align-content:start}
.profil__grup{border:0;margin:0;padding:0;min-width:0}
.profil__grup legend{font-weight:700;margin-bottom:8px;padding:0}
.comutatoare{display:flex;flex-wrap:wrap;gap:6px}
.comutator input{position:absolute;opacity:0;width:1px;height:1px}
.comutator span{display:inline-block;padding:9px 14px;border:2px solid var(--cerneala);border-radius:6px;background:var(--foaie);cursor:pointer;font-size:.98rem;line-height:1.2}
.comutator input:checked+span{background:var(--cerneala);color:#fff}
.comutator input:focus-visible+span{outline:3px solid var(--t-albastru);outline-offset:2px}
.comutator span:hover{background:var(--fond)}
.comutator input:checked+span:hover{background:var(--cerneala)}
.profil__atentie{margin:0;padding:10px 14px;border-left:4px solid var(--rosu);background:#FBEFEC;font-size:.95rem}

/* ---------- lista de termene (registru) */
.termene{list-style:none;margin:0;padding:0;border-top:2px solid var(--cerneala)}
.termen{display:grid;grid-template-columns:9.5rem 4.2rem minmax(0,1fr) auto;gap:4px 16px;align-items:baseline;padding:12px 4px;border-bottom:1px solid #C8D6C0}
.termen__data b{display:block;font-weight:600}
.termen__data span{display:block;font-size:.85rem;color:var(--sters)}
.termen__cod{font-weight:600;color:var(--rosu-text)}
.termen__per{color:var(--sters)}
.mutat,.nota{display:block;font-size:.88rem;color:var(--rosu-text);margin-top:2px}
.nota{color:var(--sters)}
.sursa{font-family:var(--m);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border:1px solid currentColor;border-radius:3px;white-space:nowrap}
.sursa--anaf{color:var(--verde-inchis)}
.sursa--calcul{color:var(--rosu-text)}
.termen.trecut{color:var(--sters)}
.termen.trecut .termen__data b{text-decoration:line-through;text-decoration-thickness:1px}
@media (max-width:640px){
  .termen{grid-template-columns:minmax(0,1fr) auto;gap:2px 12px}
  .termen__data{grid-column:1;grid-row:1}
  .termen__cod{grid-column:2;grid-row:1;text-align:right}
  .termen__ce{grid-column:1 / -1;grid-row:2}
  .termen .sursa{grid-column:1 / -1;grid-row:3;justify-self:start;margin-top:4px}
}
.termene-acasa{display:grid;gap:32px}
@media (min-width:980px){.termene-acasa{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:48px}}
@media (min-width:980px){.termene-acasa .termen{grid-template-columns:9rem 4rem minmax(0,1fr) auto}}
.dupa-lista{margin-top:16px}
.legatura-sageata{font-weight:700}
.legatura-sageata::after{content:" →"}
.termene-pagina{display:grid;gap:32px}
@media (min-width:980px){.termene-pagina{grid-template-columns:minmax(0,3.3fr) minmax(0,8.7fr);gap:48px}
  .termene-pagina__filtre{position:sticky;top:16px;align-self:start}}
.termene-pagina__filtre .btn{margin-top:4px}
.numar{font-weight:600;margin:6px 0 10px}
.luna{margin-bottom:32px}
.luna__t{font-size:1.3rem;margin-bottom:8px}
.luna__gol{color:var(--sters);border-top:2px solid var(--cerneala);padding-top:10px}

/* ---------- o lună, la mine */
.ritm__rigla{display:none}
.ritm__pasi{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.ritm__pas{display:grid;grid-template-columns:3.2rem minmax(0,1fr);column-gap:14px}
.ritm__zi{grid-row:1 / span 2;font-size:1.9rem;font-weight:600;color:var(--rosu-text);line-height:1}
.ritm__pas h3{margin-bottom:.3em}
.ritm__pas p{margin:0;color:var(--sters)}
@media (min-width:900px){
  .ritm__rigla{display:grid;grid-template-columns:repeat(31,1fr);height:26px;border-bottom:2px solid var(--cerneala);margin-bottom:18px}
  .ritm__g{grid-column:var(--zi);align-self:end;justify-self:start;width:1px;height:8px;background:var(--cerneala)}
  .ritm__g--mare{height:20px;width:2px;background:var(--rosu)}
  .ritm__pasi{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
  .ritm__pas{grid-template-columns:1fr;row-gap:8px}
  .ritm__zi{grid-row:auto}
}

/* ---------- text + poză */
.foaie--doua{display:grid;gap:32px;align-items:start}
@media (min-width:980px){.foaie--doua{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px}}
.doua__foto img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.doua__foto figcaption,.scrisoare__foto figcaption{font-family:var(--m);font-size:.78rem;color:var(--sters);margin-top:6px}
.lista-registru{list-style:none;margin:0 0 1.2em;padding:0;border-top:1px solid #C8D6C0}
.lista-registru li{padding:10px 0 10px 22px;border-bottom:1px solid #C8D6C0;position:relative}
.lista-registru li::before{content:"";position:absolute;left:4px;top:1.15em;width:8px;height:2px;background:var(--rosu)}
.lista-registru--nu li::before{content:"×";background:none;width:auto;height:auto;top:.55em;left:2px;color:var(--rosu-text);font-weight:700}

/* ---------- trei date */
.adevaruri{list-style:none;margin:0;padding:0;display:grid;gap:28px}
.adevaruri li{border-top:2px solid var(--cerneala);padding-top:14px}
.adevar__data{color:var(--rosu-text);font-weight:600;margin-bottom:.4em}
.adevaruri p:last-child{color:var(--sters);margin:0}
@media (min-width:900px){.adevaruri{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}}

/* ---------- întrebări */
.intrebari details{border-bottom:1px solid #C8D6C0}
.intrebari details:first-child{border-top:2px solid var(--cerneala)}
.intrebari summary{cursor:pointer;font-weight:700;padding:14px 32px 14px 0;list-style:none;position:relative}
.intrebari summary::-webkit-details-marker{display:none}
.intrebari summary::after{content:"+";position:absolute;right:4px;top:10px;font-size:1.4rem;color:var(--rosu-text);font-weight:400}
.intrebari details[open] summary::after{content:"−"}
.intrebari details p{margin:0 0 16px;max-width:44em}

/* ---------- servicii */
.servicii{display:grid;gap:32px;align-items:start}
@media (min-width:980px){.servicii{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px}}
.registru{width:100%;border-collapse:collapse}
.registru caption{text-align:left;caption-side:bottom;font-size:.9rem;color:var(--sters);padding-top:10px}
.registru th,.registru td{text-align:left;padding:11px 8px;border-bottom:1px solid #C8D6C0;vertical-align:baseline}
.registru thead th{border-bottom:2px solid var(--cerneala);font-size:.9rem}
.registru th[scope="row"]{font-weight:400}
.registru .suma{text-align:right;white-space:nowrap;font-weight:600}
.registru thead th:last-child{text-align:right}
.preturi__plus th,.preturi__plus td{color:var(--sters)}
.preturi__plus tr:first-child th,.preturi__plus tr:first-child td{border-top:2px solid var(--cerneala)}
.servicii__exemplu{border:2px solid var(--cerneala);padding:20px}
.servicii__exemplu h2{font-size:1.3rem}

/* ---------- despre */
.foaie--scrisoare{display:grid;gap:32px;align-items:start}
@media (min-width:980px){.foaie--scrisoare{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:56px}}
.scrisoare{max-width:40em;font-size:1.1rem}
.semnatura{font-weight:800;font-size:1.4rem;margin-top:1.4em;border-top:1px solid var(--cerneala);padding-top:10px;display:inline-block}
.semnatura span{display:block;font-family:var(--m);font-weight:400;font-size:.85rem;color:var(--sters)}
.scrisoare__foto img{width:100%;height:auto}
.reguli{list-style:none;margin:0;padding:0;display:grid;gap:24px}
.reguli li{border-top:2px solid var(--cerneala);padding-top:12px}
.reguli p{margin:0;color:var(--sters)}
@media (min-width:768px){.reguli{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}}
.program{border-collapse:collapse;margin:0 0 1em;font-size:.98rem}
.program th{text-align:left;font-weight:400;padding:3px 24px 3px 0}
.program td{padding:3px 0}
.program tr.azi th,.program tr.azi td{font-weight:700;color:var(--rosu-text)}

/* ---------- contact */
.contact{display:grid;gap:40px;align-items:start}
@media (min-width:980px){.contact{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:56px}}
.formular .profil{margin-bottom:22px}
.formular__grila{display:grid;gap:16px}
@media (min-width:640px){.formular__grila{grid-template-columns:repeat(2,minmax(0,1fr))}.camp--lat{grid-column:1 / -1}}
.camp{display:grid;gap:6px;font-weight:700;min-width:0}
.camp input,.camp select,.camp textarea{font:inherit;font-weight:400;width:100%;padding:10px 12px;border:2px solid var(--cerneala);border-radius:6px;background:#fff;color:var(--cerneala);min-height:48px}
.camp textarea{resize:vertical}
.estimare{margin:0;padding:12px 14px;border:2px dashed var(--verde-inchis);font-family:var(--m);font-size:1rem}
.estimare b{font-size:1.2rem}
.acord{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.acord input{width:20px;height:20px;margin-top:3px;flex:0 0 auto;accent-color:var(--verde-inchis)}
.capcana{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.formular__eroare{color:var(--rosu-text);font-weight:700;margin:12px 0 0;min-height:1px}
.formular__ok{color:var(--verde-inchis);font-weight:700;margin:12px 0 0}
.contact__info h2{font-size:1.2rem;margin-top:.4em}
.mare{font-family:var(--m);font-size:1.35rem;font-weight:600}

/* ---------- chemare */
.chemare{background:var(--verde-inchis);color:#fff;min-height:260px;display:flex;flex-direction:column;justify-content:center;padding:40px 24px}
.chemare__in{width:100%;max-width:760px;margin-inline:auto;text-align:center}
.chemare p{color:#E5EFE0}
.chemare .butoane{justify-content:center}
.chemare a.btn--plin{background:var(--foaie);color:var(--verde-inchis);border-color:var(--foaie)}
.chemare a.btn--plin:hover{background:var(--fond);border-color:var(--fond)}
.chemare a.btn--contur{color:#fff;border-color:#fff}
.chemare a.btn--contur:hover{background:var(--verde)}

/* ---------- subsol */
.subsol{padding:24px 0 40px;font-size:.95rem}
.subsol__grila{display:grid;gap:28px;padding-bottom:24px;position:relative}
.subsol__grila::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;background:var(--cerneala)}
@media (min-width:768px){.subsol__grila::after{left:32px;right:32px}}
@media (min-width:860px){.subsol__grila{grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr)}}
.subsol__t{font-size:1rem;margin-bottom:.6em}
.subsol .mic{color:var(--sters)}
.subsol__jos{padding-top:20px;display:grid;gap:14px}
.subsol__jos p{margin:0}
.subsol__jos nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.sal img{width:250px;height:64px}
.p404{min-height:46vh}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto !important}}

/* =====================================================================
   RITMUL CAIETULUI: fiecare rând de text stă pe o linie a foii.
   --r = distanța dintre linii (30 px). Linia e trasă la --b (21 px) în fiecare bandă:
   acolo cade baza literelor la textul de 17 px cu line-height 30 px (măsurat în Chromium, la fel la Mono).
   Reguli: pe foaie, tot ce are înălțime e multiplu de --r; bordurile devin umbre interioare (nu adaugă înălțime);
   titlurile cu alt corp de literă sunt împinse cu `top` până ajung pe linie (deplasări măsurate, vezi verificare/rand.mjs).
   Casetele cu fond propriu (chitanța, exemplul, câmpurile, pozele) acoperă liniile: înăuntru nu contează, doar înălțimea lor.
   ===================================================================== */
:root{--r:30px;--b:21px}
.foaie{background-image:repeating-linear-gradient(to bottom,transparent 0 var(--b),#D5E2CD var(--b) calc(var(--b) + 1px),transparent calc(var(--b) + 1px) var(--r));
  padding-top:calc(2 * var(--r));padding-bottom:var(--r)}
@media (max-width:767px){.foaie{padding-top:var(--r);padding-bottom:var(--r)}}
.foaie--erou{padding-top:0}
.foaie,.foaie p,.foaie li,.foaie td,.foaie th,.foaie summary,.foaie legend,.foaie label,.foaie figcaption,.foaie caption,.foaie dd{line-height:var(--r)}
.foaie p,.foaie ul,.foaie ol,.foaie table{margin:0 0 var(--r)}
.foaie p:last-child,.foaie ul:last-child,.foaie ol:last-child,.foaie table:last-child{margin-bottom:0}
.foaie h1,.foaie h2,.foaie h3{position:relative;margin:0}
.foaie h1{font-size:40px;line-height:calc(2 * var(--r));top:8px;margin-bottom:var(--r)}
@media (min-width:900px){.foaie h1{font-size:56px;top:3px}}
.foaie h2{font-size:28px;line-height:calc(2 * var(--r));top:12px}
.foaie h3{font-size:18px;line-height:var(--r);top:0}
.foaie .cap{margin-bottom:var(--r)}
.foaie .cap p,.foaie .erou__lead{font-size:17px}
.foaie .erou__lead{font-size:19px}
.foaie .mic{font-size:14px;position:relative;top:1px}
.foaie .mono{line-height:inherit}
.foaie a.mare{line-height:1}

/* erou */
.erou__foto{margin-bottom:var(--r)}
.erou__foto img{height:calc(8 * var(--r))}
@media (min-width:768px){.erou__foto img{height:calc(13 * var(--r))}}
@media (min-width:1100px){.erou__foto img{height:calc(16 * var(--r))}}
.foaie .erou,.foaie .termene-acasa,.foaie .termene-pagina,.foaie--doua,.foaie .servicii,.foaie .contact,.foaie--scrisoare{row-gap:var(--r)}

/* butoane: 48 px + 12 px spațiu = 2 rânduri */
.foaie .butoane{margin-top:0;row-gap:12px;padding-bottom:12px}
.foaie .btn{height:48px;min-height:0;padding-block:0}
.foaie .btn--mic{height:var(--r);padding:0 12px;font-size:15px;line-height:1}

/* chitanța (fond propriu): doar înălțimea contează */
.urm{border:0;box-shadow:inset 0 0 0 2px var(--cerneala);padding:0 0 var(--r)}
.urm__t{line-height:var(--r);padding:0 16px;margin:0 0 var(--r)}
.urm p{line-height:var(--r)}
.urm__data{line-height:var(--r) !important}
.urm__cate{margin-top:0 !important}
.urm__coduri{margin:0 !important;padding-top:0 !important;border-top:0;background:linear-gradient(var(--sters),var(--sters)) 16px 0/calc(100% - 32px) 1px no-repeat}

/* profilul firmei */
.profil{gap:0}
.profil__grup legend{margin-bottom:0;line-height:var(--r)}
.comutatoare{row-gap:0;column-gap:6px}
.comutator{display:block}
.comutator span{display:block;height:26px;margin:2px 0;padding:0 12px;line-height:22px;font-size:15px}
.profil__atentie{padding:0 14px;font-size:15px;line-height:var(--r)}
.formular .profil{margin-bottom:var(--r)}

/* lista de termene: un rând liber între termene, fără borduri (liniile foii despart) */
.foaie .termene{border-top:0;box-shadow:inset 0 2px 0 var(--cerneala)}
.foaie .termen{row-gap:0;padding:0 4px;border-bottom:0;margin-bottom:var(--r);align-items:start}
.foaie .termen:last-child{margin-bottom:0}
.foaie .termen__data span,.foaie .mutat,.foaie .nota{font-size:14px;position:relative;top:1px;margin-top:0}
.foaie .sursa{line-height:1;align-self:start;position:relative;top:6px}
@media (max-width:640px){
  .foaie .termen{grid-template-columns:minmax(0,1fr) auto auto;column-gap:10px}
  .foaie .termen__data{grid-column:1;grid-row:1}
  .foaie .termen__cod{grid-column:2;grid-row:1}
  .foaie .termen .sursa{grid-column:3;grid-row:1;margin-top:0;justify-self:end}
  .foaie .termen__ce{grid-column:1 / -1;grid-row:2}
}
.foaie .dupa-lista{margin:var(--r) 0 0}
.foaie .numar{margin:0}
.foaie .luna{margin-bottom:var(--r)}
.foaie .luna__t{font-size:22px;line-height:var(--r);top:-1px}
.foaie .luna__gol{border-top:0;padding-top:0;box-shadow:inset 0 2px 0 var(--cerneala);margin:0}

/* o lună, la mine */
.ritm__pasi{row-gap:var(--r)}
.ritm__zi{font-size:30px;line-height:var(--r);position:relative;top:-4px}
.ritm__pas h3{margin:0}
@media (min-width:900px){
  .ritm__rigla{height:var(--r);border-bottom:0;box-shadow:inset 0 -2px 0 var(--cerneala);margin-bottom:0}
  .ritm__pas{row-gap:0}
}

/* text + poză */
.doua__foto img{aspect-ratio:auto;height:calc(8 * var(--r))}
@media (min-width:980px){.doua__foto img{height:calc(12 * var(--r))}}
.doua__foto figcaption,.scrisoare__foto figcaption{margin-top:0;font-size:13px;position:relative;top:1px}
.lista-registru{border-top:0}
.lista-registru li{padding:0 0 0 22px;border-bottom:0}
.lista-registru li::before{top:15px}
.lista-registru--nu li::before{top:0;line-height:var(--r)}

/* trei date, regulile biroului */
.adevaruri,.reguli{row-gap:var(--r)}
.adevaruri li,.reguli li{border-top:0;padding-top:0;box-shadow:inset 0 2px 0 var(--cerneala)}
.adevar__data{margin-bottom:0 !important}

/* întrebări */
.intrebari{box-shadow:inset 0 2px 0 var(--cerneala)}
.intrebari details,.intrebari details:first-child{border:0}
.intrebari summary{padding:0 32px 0 0}
.intrebari summary::after{top:0;line-height:var(--r);font-size:22px}
.intrebari details p{margin:0 0 var(--r)}

/* tabele */
.foaie .registru th,.foaie .registru td,.foaie .program th,.foaie .program td{padding-block:0;border-bottom:0;vertical-align:top}
.foaie .registru thead th{font-size:14px;border-bottom:0;box-shadow:inset 0 -2px 0 var(--cerneala)}
.foaie .registru thead th,.foaie .registru caption{position:relative;top:1px}
.foaie .registru caption{padding-top:0;font-size:14px}
.foaie .preturi__plus tr:first-child th,.foaie .preturi__plus tr:first-child td{border-top:0;box-shadow:inset 0 2px 0 var(--cerneala)}
.foaie .program{font-size:17px}
.servicii__exemplu{border:0;box-shadow:inset 0 0 0 2px var(--cerneala);padding:var(--r) 20px}
.servicii__exemplu h2{font-size:22px;line-height:var(--r);top:0}
.servicii__exemplu p{margin-bottom:var(--r) !important}
.servicii__exemplu p:last-child{margin-bottom:0 !important}

/* despre */
.scrisoare{font-size:18px}
.semnatura{display:block;width:fit-content;font-size:18px;margin-top:var(--r) !important;padding-top:0;border-top:0;box-shadow:inset 0 1px 0 var(--cerneala)}
.semnatura span{font-size:14px;position:relative;top:1px}
.scrisoare__foto img{height:calc(12 * var(--r));width:100%;object-fit:cover}
@media (min-width:980px){.scrisoare__foto img{height:calc(16 * var(--r))}}

/* formular: etichetă 30 + câmp 48 + 12 = 3 rânduri; mesajul 3 rânduri */
.formular__grila{row-gap:var(--r)}
.camp{gap:0}
.camp input,.camp select{height:48px;min-height:0;padding-block:0;margin-bottom:12px}
.camp textarea{height:calc(3 * var(--r));min-height:0;resize:none;padding-block:4px;line-height:var(--r)}
.estimare{border:0;outline:2px dashed var(--verde-inchis);outline-offset:-2px;padding:15px 14px;background:var(--foaie);font-size:16px;line-height:var(--r)}
.estimare b{font-size:17px;line-height:1}
.acord{font-size:15px;line-height:var(--r)}
.acord input{margin-top:5px}
.formular__eroare,.formular__ok{margin:0;min-height:0}
.formular__eroare:not(:empty),.formular__ok:not(:empty){margin-top:var(--r)}
.contact__info h2{font-size:19px;line-height:var(--r);top:0;margin:0}
.p404{min-height:0}
/* grilele nu-și întind rândurile interioare (altfel textul coboară între linii) */
.foaie .termene-pagina__filtre .btn{margin-top:0;display:flex;width:fit-content}
.ritm__pasi,.adevaruri,.reguli,.formular__grila{align-items:start}
.ritm__pas,.termen,.camp{align-content:start}
/* titlurile de secțiune: un rând de caiet (26 px pe 30, împinse −3 px pe linie), un rând liber sub ele */
.foaie h2{font-size:26px;line-height:var(--r);top:-3px;margin-bottom:var(--r)}
.foaie .cap h2{margin-bottom:0}
.foaie .urm__t{font-size:15px;line-height:var(--r);top:0;margin:0 0 var(--r)}
.foaie .servicii__exemplu h2{font-size:22px;top:-1px;margin-bottom:0}
.foaie .contact__info h2{font-size:19px;top:0;margin-bottom:0}
@media (min-width:900px){.ritm__rigla{margin-bottom:var(--r)}}

/* =====================================================================
   CASETELE STAU PE LINIE (cerut 8.10.2026, de pe telefon): marginea de jos a fiecărei casete
   cade pe o linie a caietului (--b + 1 px în bandă), iar liniile groase sunt chiar liniile caietului.
   Deplasările se fac cu `top` (nu schimbă locul celorlalte elemente). Control: verificare/rand.mjs, partea „casete”.
   ===================================================================== */
:root{--jos:calc(var(--b) + 1px)}
/* butoanele de alegere: un rând întreg, de sub linia de sus până pe linia de jos */
.comutator span{position:relative;height:var(--r);margin:0;top:-8px;line-height:26px}
/* butoane 48 px: jos pe a doua linie */
.foaie .btn{position:relative;top:4px}
.foaie .btn--contur{background:var(--foaie)}
.foaie .btn--contur:hover{background:var(--fond)}
.foaie .btn--mic{height:26px;margin-bottom:4px;top:-4px}
/* formular: câmpul de 48 px stă pe linie; mesajul ocupă 3 rânduri, de la linie la linie */
.camp input,.camp select{position:relative;top:4px}
.camp textarea{position:relative;top:-8px}
.acord input{margin-top:2px}
/* casete cu fond propriu, înalte de N rânduri: urcă 8 px, de sub o linie până pe alta */
.estimare,.profil__atentie,.urm,.servicii__exemplu,.doua__foto img,.scrisoare__foto img{position:relative;top:-8px}
.doua__foto figcaption,.scrisoare__foto figcaption{top:-7px}
/* poza de sus pornește din marginea foii: îi tai 8 px, ca să se termine pe linie */
.erou__foto{margin-bottom:calc(var(--r) + 8px)}
.erou__foto img{height:calc(8 * var(--r) - 8px)}
@media (min-width:768px){.erou__foto img{height:calc(13 * var(--r) - 8px)}}
@media (min-width:1100px){.erou__foto img{height:calc(16 * var(--r) - 8px)}}
/* insigna ANAF / calculat: jos pe linie */
.foaie .sursa{top:4px}
/* liniile groase = liniile caietului (cu 9 px deasupra elementului, unde e linia din banda precedentă) */
.foaie .termene,.foaie .adevaruri li,.foaie .reguli li,.foaie .intrebari,.foaie .luna__gol,.foaie .semnatura{box-shadow:none;position:relative}
.foaie .termene::before,.foaie .adevaruri li::before,.foaie .reguli li::before,.foaie .intrebari::before,.foaie .luna__gol::before,.foaie .semnatura::before{
  content:"";position:absolute;left:0;right:0;top:calc(var(--b) - var(--r));height:2px;background:var(--cerneala);pointer-events:none}
.foaie .semnatura::before{height:1px}
.foaie .registru thead th{box-shadow:none;background:linear-gradient(var(--cerneala),var(--cerneala)) 0 var(--b)/100% 2px no-repeat}
.foaie .preturi__plus tr:first-child th,.foaie .preturi__plus tr:first-child td{box-shadow:none;background:linear-gradient(var(--cerneala),var(--cerneala)) 0 calc(var(--b) - var(--r))/100% 2px no-repeat}
/* rigla lunii: linia ei groasă pe linia caietului */
@media (min-width:900px){.ritm__rigla{height:var(--jos);margin-bottom:calc(2 * var(--r) - var(--jos));box-shadow:inset 0 -2px 0 var(--cerneala)}}
.foaie .preturi__plus tr:first-child th,.foaie .preturi__plus tr:first-child td{background:none}
.foaie .preturi tbody:first-of-type tr:last-child th,.foaie .preturi tbody:first-of-type tr:last-child td{background:linear-gradient(var(--cerneala),var(--cerneala)) 0 var(--b)/100% 2px no-repeat}
.doua__foto figcaption,.scrisoare__foto figcaption{top:1px}
.foaie .sursa{top:0}
.foaie .termen .sursa{top:4px}
.comutator span{height:26px;top:-4px;line-height:22px;margin-bottom:4px}
.camp textarea{top:0;height:82px;margin-bottom:8px}
