/* Cota — un dosar de șantier: foi roșii și vișinii pe beton, numerotate; pastila „Cuprins” în colț (Herzog Law),
   apartamentele rar, pe două coloane (Arkitektkontoret Vest), etichete-pastilă și linii subțiri (Montamont).
   Fondurile alese cu tools/fonduri.mjs față de toate 15 demo-uri (ΔE ≥ 10): beton, roșu de dosar, vișiniu. */
:root{
  --beton:#98999b; --rosu:#b23a2c; --visin:#3a0f1e; --cerneala:#141414; --alb:#fff;
  --linie:rgba(20,20,20,.38); --raza:22px; --raza-mica:14px;
  --f:"Familjen Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --tab:58px; --sus:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--beton);color:var(--cerneala);font:400 19px/1.45 var(--f);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
h1,h2,h3{font-weight:600;line-height:1.08;letter-spacing:-.02em;margin:0 0 .5em}
h2{font-size:clamp(28px,3vw,38px)}
h3{font-size:22px;letter-spacing:-.01em}
p{margin:0 0 1em}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--cerneala);outline-offset:3px}
.prima__foaie :focus-visible,.fila :focus-visible,.antet-foaie :focus-visible,.chemare :focus-visible,
.subsol :focus-visible,.cuprins :focus-visible,.dosar-vostru :focus-visible,.bara :focus-visible,.pastila:focus-visible{outline-color:var(--alb)}
[hidden]{display:none!important}
.sari{position:absolute;left:12px;top:-60px;z-index:100;background:var(--visin);color:var(--alb);padding:10px 16px;border-radius:999px}
.sari:focus{top:12px}

/* ---------- antetul: marca pe foaie + pastila plutitoare ---------- */
.cap__marca{position:absolute;top:26px;left:52px;z-index:5;color:var(--alb);text-decoration:none;font-weight:600;font-size:20px}
.cap__marca span{font-weight:400}
.pastila{position:fixed;top:14px;right:14px;z-index:50;display:flex;align-items:center;gap:0;background:var(--visin);color:var(--alb);
  border-radius:12px;padding:0;text-decoration:none;font-size:17px;box-shadow:0 1px 0 rgba(0,0,0,.25)}
.pastila span{padding:11px 18px}
.pastila__unde{border-right:1px solid rgba(255,255,255,.45)}
.pastila:hover .pastila__cuv{text-decoration:underline}
.cuprins{position:fixed;inset:0;z-index:60;display:none;background:rgba(20,8,10,.5)}
.cuprins:target,.cuprins.deschis{display:block}
.cuprins__foaie{background:var(--rosu);color:var(--alb);margin:12px 12px 0 auto;max-width:560px;border-radius:var(--raza);padding:28px 32px 32px;position:relative}
.cuprins__titlu{font-size:17px;margin:0 0 18px}
.cuprins__lista{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.55)}
.cuprins__lista li{border-bottom:1px solid rgba(255,255,255,.55)}
.cuprins__lista a{display:flex;gap:18px;align-items:baseline;padding:12px 0;font-size:clamp(26px,3.4vw,34px);font-weight:600;text-decoration:none;letter-spacing:-.02em}
.cuprins__lista a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}
.cuprins__nr{font-size:16px;font-weight:400;min-width:24px}
.cuprins__tel{margin:22px 0 0;display:flex;flex-wrap:wrap;gap:4px 18px;align-items:baseline}
.cuprins__tel a{font-size:24px;font-weight:600}
.cuprins__inchide{position:absolute;top:22px;right:28px;font-size:17px}

/* ---------- butoane, liste, etichete ---------- */
.buton{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:12px;border:0;
  background:var(--visin);color:var(--alb);font:600 18px/1.2 var(--f);text-decoration:none;cursor:pointer}
.buton:hover{background:#000}
.buton--alb{background:var(--alb);color:var(--cerneala)}
.buton--alb:hover{background:#f0eeee;color:var(--cerneala)}
.legatura{display:inline-block;font-weight:600;margin-top:20px}
.lista{margin:0 0 1em;padding-left:1.1em}
.lista li{margin:.25em 0}
.eticheta{display:inline-block;border-radius:999px;padding:5px 14px;font-size:16px;font-weight:600;border:2px solid var(--cerneala)}
.eticheta--liber{background:var(--alb);color:var(--cerneala)}
.eticheta--autorizatie{background:var(--rosu);color:var(--alb);border-color:var(--rosu)}
.eticheta--depinde{background:var(--visin);color:var(--alb);border-color:var(--visin)}

/* ---------- Acasă: foaia cu numele + poza ---------- */
.prima{padding:12px 12px 0}
.prima__foaie{background:var(--rosu);color:var(--alb);border-radius:var(--raza);padding:var(--sus) 40px 0;min-height:min(70vh,760px);
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.prima__sus{display:grid;grid-template-columns:minmax(0,34ch) 1fr;gap:24px;align-items:start}
.prima__intro{font-size:21px;margin:0}
.prima__fapte{justify-self:end;text-align:right;margin:0}
.nume{font-size:clamp(130px,30vw,470px);line-height:.8;letter-spacing:-.06em;margin:40px 0 .07em -.04em;font-weight:600}
.prima__poza{margin-top:12px}
.prima__poza img{width:100%;height:clamp(300px,62vh,760px);object-fit:cover;border-radius:var(--raza)}

/* ---------- Acasă: dosarul în patru foi ---------- */
.dosar{padding:0 12px 12px}
.dosar__titlu{padding:88px 28px 28px;margin:0}
.fila{background:var(--visin);color:var(--alb);border-radius:var(--raza) var(--raza) 0 0;margin-top:-14px}
.fila:first-of-type{margin-top:0}
.fila:last-of-type{border-radius:var(--raza)}
.fila--2,.fila--4{background:var(--rosu)}
.fila__tab{height:var(--tab);display:flex;align-items:center;gap:16px;padding:0 28px;margin:0;font-size:21px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.4)}
.fila__tab span{font-weight:400}
.fila__corp{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:28px 28px 40px;align-items:start}
.fila__corp--trei{grid-template-columns:1.15fr 1fr 1fr}
.fila__text{max-width:52ch}
.fila__text h3{font-size:26px}
.fila__poza{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--raza-mica)}
.fila--4 .fila__poza{object-position:20% 100%}
.fila__poza--inalta{aspect-ratio:4/5;max-height:62vh;width:auto;justify-self:end}
.fila figure img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--raza-mica)}
.fila figcaption{font-size:16px;margin-top:8px}
@media (min-width:900px) and (min-height:720px){
  .fila{position:sticky;top:calc(var(--i) * var(--tab) + 12px)}
  .fila__corp{max-height:calc(100vh - (var(--i) + 1) * var(--tab) - 24px);overflow:hidden}
  .fila__poza,.fila figure img{max-height:calc(100vh - (var(--i) + 1) * var(--tab) - 110px)}
}

/* ---------- Acasă: predate, Irina, chemarea ---------- */
.recente{padding:96px 40px 72px}
.recente__grila{display:grid;grid-template-columns:1fr 1fr;gap:28px 56px;margin-top:28px}
.predat{text-decoration:none;display:block}
.predat img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--raza-mica)}
.predat__txt{display:block;font-size:16px;margin-top:10px}
.predat__txt b{display:block;font-size:19px}
.predat--1{width:74%;justify-self:end;margin-top:200px}
.predat--2{width:62%;margin-left:14%}
.predat:hover .predat__txt b{text-decoration:underline}
.eu{display:grid;grid-template-columns:1fr 1fr;gap:12px 56px;padding:24px 40px 96px;align-items:start}
.eu__text{font-size:clamp(23px,2.2vw,30px);line-height:1.3;letter-spacing:-.01em;margin:0}
.eu__semn{grid-column:1;margin:0}
.eu__poza{grid-column:2;grid-row:1 / span 3}
.eu__poza img{border-radius:var(--raza-mica);width:100%;aspect-ratio:3/2;height:auto;object-fit:cover}
.eu .legatura{grid-column:1;margin-top:0}
.chemare{margin:0 12px 12px;background:var(--rosu);color:var(--alb);border-radius:var(--raza);padding:56px 40px}
.chemare h2{margin-bottom:.3em}
.chemare__tel{font-size:clamp(40px,6vw,76px);font-weight:600;letter-spacing:-.03em;line-height:1;margin:18px 0 24px}
.chemare__tel a{text-decoration:none}

/* ---------- foaia de sus a paginilor interioare ---------- */
.antet-foaie{margin:12px;background:var(--rosu);color:var(--alb);border-radius:var(--raza);padding:150px 40px 40px}
.antet-foaie h1{font-size:clamp(44px,6.4vw,92px);letter-spacing:-.04em;line-height:.95;max-width:14ch}
.antet-foaie p{font-size:21px;max-width:58ch}
.antet-foaie--scurt{padding-top:130px}
.antet-foaie__surse{font-size:17px!important;margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.5)}

/* ---------- Acte: lista de bifat, răspunsul legii, bara, dosarul ---------- */
.acte{margin:0 12px}
.acte fieldset{border:0;margin:0;padding:0;min-width:0}
.acte legend{font-size:clamp(26px,2.6vw,34px);font-weight:600;letter-spacing:-.02em;padding:56px 28px 20px}
.randuri{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--linie)}
.rand{border-top:1px solid var(--linie)}
.rand__cap{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:center;padding:18px 28px;cursor:pointer;position:relative}
.rand__cap input{position:absolute;z-index:1;opacity:0;width:30px;height:30px;margin:0;left:28px;top:50%;transform:translateY(-50%);cursor:pointer}
.rand__bifa{width:30px;height:30px;border:2px solid var(--cerneala);border-radius:8px;background:rgba(255,255,255,.35);position:relative}
.rand__cap input:checked + .rand__bifa{background:var(--visin);border-color:var(--visin)}
.rand__cap input:checked + .rand__bifa::after{content:"";position:absolute;left:8px;top:2px;width:8px;height:16px;border:solid var(--alb);border-width:0 3px 3px 0;transform:rotate(45deg)}
.rand__cap input:focus-visible + .rand__bifa{outline:3px solid var(--cerneala);outline-offset:3px}
.rand__nume{font-size:clamp(20px,2vw,25px);font-weight:600;letter-spacing:-.01em}
.raspuns{display:none;padding:0 28px 28px 88px;max-width:900px}
.rand:has(input:checked) .raspuns,.rand.bifat .raspuns{display:block}
.raspuns__expl{margin:14px 0 6px}
.citat{margin:16px 0 0;padding:2px 0 2px 18px;border-left:3px solid var(--visin)}
.citat p{margin:0 0 6px;font-size:18px}
.citat footer{font-size:16px}
.citat a{font-weight:600}
.bara{position:sticky;bottom:12px;z-index:20;margin:24px 0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--visin);color:var(--alb);
  border-radius:999px;padding:8px 8px 8px 26px}
.bara__rezumat{flex:1 1 220px;margin:0;font-weight:600;font-size:19px}
.bara .buton:not(.buton--alb){background:var(--rosu)}
.bara .buton:not(.buton--alb):hover{background:#8d2c21}
.dosar-vostru{margin:12px;background:var(--rosu);color:var(--alb);border-radius:var(--raza);padding:48px 40px;scroll-margin-top:12px}
.dosar-vostru .grupuri{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:28px}
.dosar-vostru .grup h3{font-size:19px;margin-bottom:.4em}
.dosar-vostru ul,.dosar-vostru ol{margin:0;padding-left:1.1em}
.dosar-vostru .acte-de-cerut{border-top:1px solid rgba(255,255,255,.5);padding-top:24px}
.pe-scurt{padding:72px 40px 24px}
.pe-scurt__grila{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:24px 0 48px}
.scurt{border-top:3px solid var(--cerneala);padding-top:14px}
.scurt--autorizatie{border-color:var(--rosu)}
.scurt--depinde{border-color:var(--visin)}
.scurt h3{font-size:20px}
.scurt ul{margin:0;padding-left:1.1em}
.acte-lista{max-width:76ch;padding-left:1.3em}
.acte-lista li{margin:.4em 0}
.exceptie{padding:24px 40px 80px;max-width:calc(76ch + 80px)}

/* ---------- Apartamente ---------- */
.ap{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;padding:72px 40px;border-top:1px solid var(--linie);scroll-margin-top:12px}
.ap:first-of-type{border-top:0}
.ap--1 .ap__poze{order:2}
.ap__poze{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}
.ap__poza img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--raza-mica)}
.ap__poza--0{grid-column:1 / -1}
.ap__poza--1{margin-top:40px}
.ap__poza--2{width:82%;justify-self:end}
.ap__fapte{font-weight:600}
.ap__acte{border-left:3px solid var(--visin);padding-left:16px}
.ap h3{margin-top:32px}
.bara-cost{display:flex;height:26px;border-radius:999px;overflow:hidden;margin:14px 0 18px;gap:2px}
.bara-cost__p{flex-basis:0;min-width:3px}
.bara-cost__p--0,.capitol__semn--0{background:var(--visin)}
.bara-cost__p--1,.capitol__semn--1{background:var(--rosu)}
.bara-cost__p--2,.capitol__semn--2{background:var(--cerneala)}
.capitole{list-style:none;margin:0;padding:0;border-top:1px solid var(--linie)}
.capitol{display:grid;grid-template-columns:14px minmax(0,1fr) auto auto;gap:4px 14px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--linie)}
.capitol__semn{width:14px;height:14px;border-radius:4px;align-self:center}
.capitol__nume{font-weight:600}
.capitol__cant{font-size:16px;text-align:right}
.capitol__lei{font-weight:600;text-align:right;min-width:7ch}
.capitol__reper{grid-column:2 / -1;font-size:15px}
.ap__total{font-size:17px;margin-top:16px}
.nota-poze{padding:0 40px 48px;font-size:16px;max-width:80ch}

/* ---------- Echipa ---------- */
.oameni{display:grid;grid-template-columns:1fr 1fr;gap:28px 56px;padding:72px 40px}
.oameni__poza img,.oameni__poze img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:var(--raza-mica)}
.oameni__irina p{font-size:22px;line-height:1.35}
.oameni__lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--linie);grid-column:1}
.oameni__lista li{padding:14px 0;border-bottom:1px solid var(--linie)}
.oameni__poze{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.oameni__poze figcaption{font-size:16px;margin-top:8px}
.reguli{margin:0 12px 12px;background:var(--visin);color:var(--alb);border-radius:var(--raza);padding:48px 40px}
.reguli .lista{max-width:70ch;font-size:20px}

/* ---------- Vizită ---------- */
.vizita{margin:0 12px 12px;padding:24px 28px 48px;max-width:1040px}
.vizita fieldset{border:0;margin:0 0 30px;padding:0;min-width:0}
.vizita legend{font-size:24px;font-weight:600;letter-spacing:-.01em;margin-bottom:12px;padding:0}
.vizita legend a{font-size:17px;font-weight:400}
.zile{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.zile__fara{grid-column:1 / -1;margin:0}
.zi{position:relative;display:block;cursor:pointer}
.zi input,.optiune input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.zi span{display:block;border:2px solid var(--cerneala);border-radius:var(--raza-mica);padding:12px 14px;background:rgba(255,255,255,.35);line-height:1.2}
.zi b{display:block;font-size:22px}
.zi input:checked + span{background:var(--visin);border-color:var(--visin);color:var(--alb)}
.zi input:focus-visible + span,.optiune input:focus-visible + span{outline:3px solid var(--cerneala);outline-offset:3px}
.optiune{position:relative;display:inline-block;margin:0 8px 8px 0;cursor:pointer}
.optiune span{display:block;border:2px solid var(--cerneala);border-radius:999px;padding:10px 20px;background:rgba(255,255,255,.35)}
.optiune input:checked + span{background:var(--visin);border-color:var(--visin);color:var(--alb)}
.vizita__loc,.vizita__voi{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:30px}
.vizita__voi{grid-template-columns:1fr 1fr}
.camp span{display:block;font-size:17px;margin-bottom:6px}
.camp input{width:100%;font:inherit;color:var(--cerneala);background:var(--alb);border:2px solid var(--cerneala);border-radius:12px;padding:12px 14px;min-height:50px}
.camp input::placeholder{color:#5a5b5d}
.bife{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}
.bifa,.acord{display:flex;gap:12px;align-items:flex-start;padding:7px 0;cursor:pointer}
.bifa input,.acord input{width:22px;height:22px;margin:3px 0 0;flex:none;accent-color:var(--visin)}
.acord{max-width:60ch}
.capcana{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.eroare{min-height:1.5em;margin:6px 0 0;color:var(--visin);font-weight:600}
.vizita__trimite{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.vizita__nota{font-size:16px;margin-top:14px}
.text-lung{padding:48px 40px 80px;max-width:calc(70ch + 80px)}

/* ---------- subsolul ---------- */
.subsol{background:var(--visin);color:var(--alb);margin:12px;border-radius:var(--raza);padding:48px 40px 28px}
.subsol__sus{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 1.2fr;gap:32px;align-items:start}
.subsol__nume{font-size:40px;font-weight:600;letter-spacing:-.04em;line-height:1;margin:0}
.subsol__pagini{list-style:none;margin:0;padding:0}
.subsol__pagini li{margin:0 0 6px}
.subsol__jos{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.45);font-size:15px}
.subsol__jos p{margin:0;max-width:70ch}
.subsol__sal img{background:var(--alb);border-radius:8px;width:180px;height:auto}

/* ---------- telefon și tabletă ---------- */
@media (max-width:899px){
  :root{--sus:64px}
  body{font-size:18px}
  .cap__marca{left:34px;top:22px;font-size:18px}
  .cap__marca span{display:none}
  .pastila{top:10px;right:10px;font-size:16px}
  .pastila span{padding:10px 14px}
  .prima__foaie{padding:var(--sus) 22px 0;min-height:0}
  .prima__sus{grid-template-columns:1fr}
  .prima__fapte{justify-self:start;text-align:left}
  .nume{font-size:clamp(110px,38vw,300px);margin-top:36px}
  .prima__poza img{height:clamp(260px,52vh,520px)}
  .dosar__titlu{padding:64px 12px 20px}
  .fila__tab{padding:0 20px}
  .fila__corp,.fila__corp--trei{grid-template-columns:1fr;padding:22px 20px 32px;gap:22px}
  .fila__poza--inalta{width:100%;justify-self:stretch;max-height:none}
  .recente{padding:72px 22px 56px}
  .recente__grila{grid-template-columns:1fr}
  .predat--1,.predat--2{width:100%;margin:0}
  .eu{grid-template-columns:1fr;padding:12px 22px 72px}
  .eu__poza{grid-column:1;grid-row:auto}
  .chemare{padding:44px 22px}
  .antet-foaie{padding:110px 22px 32px}
  .antet-foaie--scurt{padding-top:100px}
  .acte legend{padding:44px 10px 16px}
  .rand__cap{padding:16px 10px;grid-template-columns:36px 1fr;gap:12px}
  .rand__cap input{left:10px}
  .raspuns{padding:0 10px 24px 58px}
  .bara{border-radius:18px;padding:12px 12px 12px 18px}
  .bara__rezumat{flex-basis:100%}
  .dosar-vostru{padding:36px 22px}
  .dosar-vostru .grupuri,.pe-scurt__grila{grid-template-columns:1fr}
  .pe-scurt{padding:56px 22px 16px}
  .exceptie{padding:16px 22px 64px}
  .ap{grid-template-columns:1fr;gap:28px;padding:56px 22px}
  .ap--1 .ap__poze{order:0}
  .capitol{grid-template-columns:14px minmax(0,1fr) auto}
  .capitol__cant{grid-column:2;grid-row:2;text-align:left}
  .capitol__lei{grid-column:3;grid-row:1}
  .capitol__reper{grid-column:2 / -1;grid-row:3}
  .nota-poze{padding:0 22px 40px}
  .oameni{grid-template-columns:1fr;padding:56px 22px}
  .oameni__lista,.oameni__poze{grid-column:1}
  .reguli{padding:40px 22px}
  .vizita{padding:20px 10px 40px}
  .vizita__loc,.vizita__voi,.bife{grid-template-columns:1fr}
  .text-lung{padding:40px 22px 64px}
  .subsol{padding:40px 22px 24px}
  .subsol__sus{grid-template-columns:1fr 1fr;gap:24px}
  .subsol__sus > p:nth-child(2){grid-column:1 / -1;grid-row:2}
  .subsol__jos{flex-direction:column;align-items:flex-start}
}
@media (max-width:420px){
  .subsol__sus{grid-template-columns:1fr}
  .subsol__sus > p:nth-child(2){grid-row:auto}
  .zile{grid-template-columns:1fr 1fr}
}
