/* ============================================================
   HelloHuman — sistem de design (v6, septembrie 2026)
   Fundal crem cald + secțiuni dark alternate. Fonturi editoriale.
   Toate clasele din v5 păstrate — doar stilizate modern.
   ============================================================ */

:root{
  /* Culori */
  --pine:#0B2620;
  --pine2:#163A31;
  --pine3:#1B4238;
  --oat:#F7F4ED;
  --oat2:#FDFBF6;
  --ink:#0B2620;
  --mist:#A3B8AE;
  --dim:#6B7A73;
  --grey:#5A6B64;
  --gold:#C8912A;
  --gold2:#8C6114;
  --rust:#C4552F;

  /* Linii */
  --line:rgba(240,235,224,.14);   /* linii pe fundal închis */
  --lined:rgba(11,38,32,.12);      /* linii pe fundal deschis */

  /* Fonturi */
  --disp:'Newsreader',Georgia,serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --brand:'Plus Jakarta Sans',system-ui,sans-serif;

  /* Spațiere */
  --s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:48px;--s6:96px;

  /* Ease */
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--oat);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
::selection{background:var(--gold);color:var(--ink)}

/* ---------- Ritm tipografic ---------- */
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
h1{font-family:var(--disp);font-weight:400;font-size:clamp(38px,6.5vw,72px);
  letter-spacing:-.02em;line-height:1.05;font-optical-sizing:auto}
h2{font-family:var(--disp);font-weight:400;font-size:clamp(26px,4.2vw,44px);
  letter-spacing:-.014em;line-height:1.12;font-optical-sizing:auto}
h3{font-family:var(--disp);font-weight:500;font-size:clamp(18px,2.4vw,22px);
  letter-spacing:-.008em;line-height:1.25;font-optical-sizing:auto}
p{max-width:66ch}
.lead{font-family:var(--disp);font-style:italic;font-weight:400;
  font-size:clamp(17px,2.2vw,22px);color:var(--gold2);line-height:1.48;font-optical-sizing:auto}
.eyebrow{font-family:var(--disp);font-style:italic;font-weight:400;font-size:17px;
  color:var(--gold2);margin-bottom:var(--s3);font-optical-sizing:auto}
.sub{font-size:15.5px;color:var(--dim);line-height:1.7}
.sub2{font-size:15px;color:var(--dim);line-height:1.65}
.mic{font-size:13px;color:var(--dim)}

/* ---------- Secțiuni — alternanță crem/dark ---------- */
section{
  padding:clamp(56px,8.5vw,96px) 0;
  background:var(--oat);
  color:var(--ink);
  position:relative;
}
section.paper{background:var(--oat);color:var(--ink)}
section.sec{background:var(--oat);color:var(--ink)}
section.dark{background:var(--pine);color:var(--oat);border-color:var(--line)}
section.dark h1,section.dark h2,section.dark h3{color:var(--oat)}
section.dark p,section.dark .lead,section.dark .sub,section.dark .sub2{color:var(--mist)}
section.dark .lead,section.dark .eyebrow{color:var(--gold)}
section.dark a{color:var(--gold)}

/* Etichete pe fundal crem */
.paper h2,.sec h2{color:var(--ink)}
.paper .eyebrow,.sec .eyebrow{color:var(--gold2)}
.paper .lead,.sec .lead{color:var(--gold2)}

/* ---------- Butoane ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  background:var(--gold);border:1px solid var(--gold);color:var(--ink);
  font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;padding:16px 32px;cursor:pointer;text-decoration:none;
  transition:all .3s var(--ease);border-radius:2px;
  box-shadow:0 10px 28px -12px rgba(200,145,42,.4);
  -webkit-tap-highlight-color:transparent;
}
.btn:hover:not(:disabled){
  background:var(--pine);border-color:var(--pine);color:var(--oat);
  transform:translateY(-2px);box-shadow:0 16px 34px -12px rgba(11,38,32,.35);
}
.btn:disabled{opacity:.34;cursor:default;box-shadow:none;transform:none}
.btn.ghost{background:transparent;border:1px solid var(--lined);color:var(--ink);box-shadow:none}
.btn.ghost:hover{background:var(--pine);border-color:var(--pine);color:var(--oat);transform:translateY(-2px)}
section.dark .btn.ghost{border-color:rgba(240,235,224,.28);color:var(--oat)}
section.dark .btn.ghost:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.btn.small{padding:11px 18px;font-size:13px;letter-spacing:.12em}
.btn.wide{width:100%}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:clamp(24px,3.4vw,34px)}

/* ---------- Bară de sus ---------- */
.bar{
  position:sticky;top:0;z-index:60;
  background:rgba(247,244,237,.94);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--lined);
  padding:0;
}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px}
.logo{font-family:var(--brand);font-weight:600;font-size:19px;letter-spacing:-.02em;
  text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:10px}
.logo svg{width:30px;height:30px;flex:none;display:block}
.logo span{color:var(--gold2)}
.barnav{display:flex;align-items:center;gap:8px}
.barnav a{font-size:14.5px;font-weight:500;text-decoration:none;color:var(--dim);
  padding:8px 10px;transition:color .2s}
.barnav a:hover{color:var(--ink)}
.lang{
  background:transparent;border:1px solid var(--lined);color:var(--dim);
  font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.2em;
  padding:7px 13px;cursor:pointer;transition:.3s;border-radius:3px;
  -webkit-tap-highlight-color:transparent;
}
.lang:hover{border-color:var(--gold);color:var(--gold)}
.bizlink{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--dim);
  text-decoration:none;padding:9px 0;transition:color .2s}
.bizlink:hover{color:var(--ink)}
@media(max-width:820px){.barnav a.hidem{display:none}}

/* ---------- Hero ---------- */
.hero{
  padding:clamp(20px,3vw,40px) 0 clamp(56px,8vw,88px);
  background:var(--oat);
}
.hero .wrap{display:block;max-width:820px}
.heroimg{margin:0 0 clamp(20px,3vw,32px);width:100%}
.heroimg img{
  width:100%;height:clamp(260px,50vh,520px);object-fit:cover;
  border-radius:3px;display:block;
}
@media(max-width:700px){.heroimg img{height:240px}}
.hero h1{margin:0 0 clamp(12px,1.8vw,20px);max-width:18ch}
.hero .lead{margin:0 0 clamp(18px,2.4vw,28px);max-width:46ch;color:var(--gold2)}
.hero .lead2{
  font-family:var(--disp);font-size:clamp(16px,1.9vw,19px);
  color:var(--ink);line-height:1.55;max-width:46ch;margin:0 0 clamp(16px,2vw,24px);
}
.hero .cta{margin-top:clamp(16px,2vw,24px)}

/* ---------- Pași (numerotați) ---------- */
.steps{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:clamp(22px,3vw,40px);margin-top:clamp(30px,4vw,48px);
}
@media(max-width:820px){.steps{grid-template-columns:1fr;gap:26px}}
.step{padding-top:22px;border-top:1px solid var(--lined);position:relative}
.step .n{
  font-family:var(--disp);font-weight:900;
  font-size:clamp(38px,5vw,54px);line-height:1;
  color:var(--gold);letter-spacing:-.04em;margin-bottom:14px;
  font-optical-sizing:auto;
}
.step h3{margin-bottom:9px;color:var(--ink)}
.step p{font-size:15px;color:var(--dim);line-height:1.65;max-width:none}
section.dark .step{border-top-color:var(--line)}
section.dark .step h3{color:var(--oat)}
section.dark .step p{color:var(--mist)}

/* ---------- Biletul cu masa ---------- */
.bilet{
  max-width:360px;margin:clamp(28px,4vw,44px) auto 0;
  padding:clamp(22px,3.2vw,30px);
  background:var(--oat2);border:1px solid var(--lined);
  border-radius:3px;color:var(--ink);
  box-shadow:0 20px 50px -25px rgba(11,38,32,.22);
}
.bilet .bk{font-family:var(--sans);font-size:10.5px;font-weight:500;
  letter-spacing:.24em;text-transform:uppercase;color:var(--gold2);margin:0 0 6px}
.bilet .bn{font-family:var(--disp);font-weight:500;font-size:clamp(52px,10vw,72px);
  line-height:1;letter-spacing:-.03em;color:var(--ink);margin:0}
.bilet .br{height:1px;background:var(--lined);margin:16px 0}
.bilet .bl{display:flex;justify-content:space-between;gap:14px;padding:7px 0;align-items:baseline}
.bilet .bl span{font-family:var(--sans);font-size:12.5px;color:var(--dim);flex:none}
.bilet .bl b{font-family:var(--disp);font-weight:500;font-size:14.5px;
  text-align:right;color:var(--ink);font-optical-sizing:auto}
.bilet .bt{font-family:var(--sans);font-size:13px;color:var(--dim);margin:0;letter-spacing:.06em}
.bsub{text-align:center;font-family:var(--disp);font-style:italic;font-size:14.5px;
  color:var(--dim);margin:16px 0 0}

/* ---------- Cartonașul (pentru app) ---------- */
.card{
  background:var(--oat2);color:var(--ink);border-radius:3px;
  padding:32px 30px 26px;position:relative;
  border:1px solid var(--lined);
  box-shadow:0 24px 60px -20px rgba(11,38,32,.2);
  transform:rotate(-1.6deg);
}
.card::after{content:"";position:absolute;inset:8px;border:1px solid rgba(11,38,32,.08);
  border-radius:3px;pointer-events:none}
.card .kk{font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold2);font-weight:700}
.card .no{font-family:var(--disp);font-weight:900;
  font-size:clamp(80px,14vw,120px);line-height:.85;letter-spacing:-.05em;
  margin:10px 0 4px;color:var(--ink)}
.card .rule{height:1px;background:var(--lined);margin:22px 0 16px}
.card .row{display:flex;justify-content:space-between;gap:16px;padding:6px 0;font-size:15px}
.card .row b{font-weight:500;text-align:right;color:var(--ink)}
.card .tick{font-family:var(--disp);font-weight:500;font-size:34px;letter-spacing:-.02em;
  text-align:center;margin-top:14px;font-variant-numeric:tabular-nums;font-optical-sizing:auto}
@media(prefers-reduced-motion:no-preference){
  .card{animation:land .7s cubic-bezier(.2,.8,.25,1) both}
  @keyframes land{from{opacity:0;transform:rotate(-6deg) translateY(26px) scale(.96)}to{opacity:1;transform:rotate(-1.6deg)}}
}

/* ---------- Listă de rânduri (ctx / rand) ---------- */
.ctx{margin-top:clamp(30px,4vw,48px);border-top:1px solid var(--lined)}
section.dark .ctx{border-top-color:var(--line)}
.ctxrow{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);
  gap:clamp(16px,3vw,40px);
  padding:clamp(22px,3vw,32px) 0;
  border-bottom:1px solid var(--lined);
  align-items:baseline;
}
section.dark .ctxrow{border-bottom-color:var(--line)}
@media(max-width:700px){.ctxrow{grid-template-columns:1fr;gap:6px}}
.ctxrow h3{color:var(--ink);margin:0;font-size:clamp(18px,2.4vw,22px)}
section.dark .ctxrow h3{color:var(--oat)}
.ctxrow p{font-size:15px;color:var(--dim);line-height:1.7;max-width:none;margin:0}
section.dark .ctxrow p{color:var(--mist)}

/* rand — fallback pentru pagini vechi */
.rand{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);
  gap:clamp(16px,3vw,40px);padding:18px 0;
  border-top:1px solid var(--lined);align-items:start;
}
.rand:first-of-type{margin-top:28px}
.rand b{font-family:var(--disp);font-weight:500;font-size:19px;line-height:1.25;color:var(--ink)}
.rand span{font-size:14.5px;color:var(--dim);line-height:1.65}
@media(max-width:700px){.rand{grid-template-columns:1fr;gap:5px}}

/* ---------- Note ---------- */
.note{
  background:rgba(11,38,32,.04);border-left:2px solid var(--gold);
  padding:16px 18px;font-size:15px;color:var(--dim);line-height:1.6;
  border-radius:0 2px 2px 0;margin-bottom:12px;
}
.note b{color:var(--ink);display:block;margin-bottom:4px;font-weight:600;font-style:normal}
section.dark .note{background:rgba(240,235,224,.04);color:var(--mist)}
section.dark .note b{color:var(--oat)}

/* ---------- Formular ---------- */
form{margin-top:clamp(24px,3vw,36px)}
.lb{
  display:block;font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--dim);margin:22px 0 6px;
}
.lb:first-child{margin-top:0}
.lb2{display:block;font-size:11px;font-weight:500;letter-spacing:.16em;
  color:var(--dim);margin:18px 0 5px}
input,textarea,select{
  width:100%;background:var(--oat2);border:1px solid var(--lined);
  border-radius:3px;color:var(--ink);font-family:var(--sans);
  font-size:16px;font-weight:400;padding:14px 16px;
  outline:none;transition:border-color .3s var(--ease);
}
section.dark input,section.dark textarea,section.dark select{
  background:rgba(240,235,224,.06);border-color:var(--line);color:var(--oat);
}
input::placeholder,textarea::placeholder{color:var(--dim);opacity:.7}
input:focus,textarea:focus,select:focus{border-color:var(--gold)}
textarea{resize:vertical;min-height:70px;line-height:1.6;font-family:var(--sans)}
input.big{
  background:transparent;border:0;border-bottom:2px solid var(--lined);
  border-radius:0;font-family:var(--disp);font-weight:500;
  font-size:clamp(22px,3vw,28px);padding:6px 0 12px;
}
section.dark input.big{border-bottom-color:var(--line)}
input.big::placeholder{color:var(--dim);font-weight:400}
input.big:focus{border-bottom-color:var(--gold)}
select{cursor:pointer;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7A73' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}

/* Mesaje */
.msg,.msg2,.msg3{font-size:13.5px;margin-top:12px;min-height:1.3em;color:var(--dim);line-height:1.5}
.msg.err,.msg2.err,.msg3.err{color:#B4443A}
.msg.ok,.msg2.ok,.msg3.ok{color:var(--gold2)}

/* Checkbox-uri */
.check{display:flex;gap:11px;align-items:flex-start;margin-top:16px;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:3px}
.check span{font-size:14px;color:var(--dim);line-height:1.5;max-width:52ch}

/* ---------- Subsol ---------- */
.foot{
  background:var(--pine);color:var(--oat);
  padding:clamp(48px,6vw,80px) 0 clamp(36px,4vw,56px);
  border-top:1px solid var(--line);
}
.foot .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
@media(max-width:760px){.foot .wrap{grid-template-columns:1fr;gap:26px}}
.foot .brand{font-family:var(--brand);font-weight:600;font-size:22px;
  color:var(--oat);letter-spacing:-.02em;margin-bottom:12px}
.foot h4{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--gold);
  margin-bottom:12px;letter-spacing:.1em;text-transform:uppercase}
.foot ul{list-style:none;padding:0;margin:0}
.foot li{margin-bottom:10px;font-size:15px}
.foot a{color:var(--oat);text-decoration:none;transition:color .2s;border-bottom:1px solid transparent;padding-bottom:1px}
.foot a:hover{color:var(--gold);border-bottom-color:var(--gold)}
.foot p{font-size:14px;color:var(--mist);line-height:1.65;max-width:38ch;margin:0}
.footlogo{display:block;margin-bottom:16px}
.footlogo img{width:140px;height:auto;opacity:.7;transition:opacity .3s}
.footlogo:hover img{opacity:1}

/* ---------- Aplicația (flow-ul participantului) ---------- */
#app{font-family:var(--sans);color:var(--ink);background:var(--oat)}
#app .sc{display:none}
#app .sc.on{display:block;animation:in .42s var(--ease)}
@keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sheet{max-width:520px;margin:0 auto;padding:26px 22px 34px;min-height:100dvh;display:flex;flex-direction:column}
.opts{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.opt{
  display:block;width:100%;text-align:left;background:var(--oat2);
  border:1px solid var(--lined);color:var(--ink);
  font-family:var(--sans);font-size:15.5px;font-weight:400;line-height:1.5;
  padding:16px 18px;cursor:pointer;transition:all .22s var(--ease);
  border-radius:3px;-webkit-tap-highlight-color:transparent;
}
.opt:hover{border-color:var(--gold);background:#fff}
.opt.sel,.opt.on{border-color:var(--gold);background:rgba(200,145,42,.09);
  color:var(--ink);font-weight:500}
.push{margin-top:auto;padding-top:22px;display:flex;flex-direction:column;gap:9px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;
  background:var(--lined);margin-top:14px;border-radius:3px;overflow:hidden}
.st{background:var(--oat2);padding:15px 10px;text-align:center}
.st .n{font-family:var(--disp);font-weight:500;font-size:26px;color:var(--gold2);line-height:1}
.st .t{font-size:12px;color:var(--dim);margin-top:5px}
.link{background:var(--oat2);border:1px solid var(--lined);border-radius:3px;
  padding:13px 15px;font-size:13px;color:var(--gold2);word-break:break-all;
  line-height:1.6;margin-top:10px}
.tabs{display:flex;gap:2px;margin-top:22px;background:var(--lined);border-radius:3px;overflow:hidden}
.tab{flex:1;background:var(--oat2);border:0;color:var(--dim);
  font-family:var(--sans);font-size:14px;font-weight:600;padding:13px 8px;cursor:pointer}
.tab.on{background:var(--pine);color:var(--oat)}
.tab:hover:not(.on){color:var(--ink)}
.wait{display:flex;flex-direction:column;align-items:center;justify-content:center;
  flex:1;text-align:center;gap:8px}
.wait .cnt{font-family:var(--disp);font-weight:900;font-size:76px;
  color:var(--gold2);line-height:1;letter-spacing:-.04em}
.ring{width:34px;height:34px;border:2px solid var(--lined);
  border-top-color:var(--gold);border-radius:50%;margin-bottom:6px}
@media(prefers-reduced-motion:no-preference){
  .ring{animation:sp 1s linear infinite}
  @keyframes sp{to{transform:rotate(360deg)}}
}
.qwrap{background:var(--oat2);border-radius:3px;padding:20px;
  display:flex;flex-direction:column;align-items:center;gap:12px;
  margin:12px 0;border:1px solid var(--lined)}
.qwrap canvas,.qwrap img{display:block}
.qcap{color:var(--ink);font-family:var(--disp);font-weight:500;
  font-size:17px;text-align:center}
.qsub{color:var(--dim);font-size:11px;text-align:center;word-break:break-all;line-height:1.5}
.tblk{background:var(--oat2);border:1px solid var(--lined);border-radius:3px;
  padding:15px 16px;margin-bottom:8px}
.tblk .n{font-size:13px;color:var(--gold2);font-weight:700;margin-bottom:5px}
.tblk .p{font-size:15px;line-height:1.6}
.tblk .q{font-size:14px;color:var(--dim);margin-top:8px;
  border-top:1px solid var(--lined);padding-top:8px}

/* ---------- Micro-animații reveal ---------- */
.rv{opacity:0;transform:translateY(22px);
  transition:opacity 1s var(--ease),transform 1s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1!important;transform:none!important;transition:none!important}
  *{animation:none!important;transition:none!important}
}

/* ---------- Pagini de aplicație (crm, partener) ---------- */
.appbody{background:var(--oat)}
.appbody .app{display:block;max-width:560px;margin:0 auto;
  padding:26px 20px 60px;min-height:100vh}
.sc{display:none}.sc.on{display:block}
.sc h2{margin-bottom:4px}
.prow{display:grid;grid-template-columns:1fr auto;gap:12px;
  padding:14px 0;border-bottom:1px solid var(--lined);align-items:center}
.prow .nm{font-weight:500}
.prow .sub{font-size:13px;color:var(--dim);margin-top:2px}
.prow .num{font-family:var(--disp);font-weight:500;
  font-size:22px;color:var(--gold2);text-align:right;line-height:1}
.prow .numt{font-size:11px;color:var(--dim);text-align:right}
.prow.off .nm{text-decoration:line-through;color:var(--dim)}
.prow.tap{cursor:pointer;transition:background .12s}
.prow.tap:hover{background:rgba(11,38,32,.04)}
.bif{width:22px;height:22px;border:2px solid var(--lined);border-radius:3px;
  flex-shrink:0;margin-top:2px;display:inline-block}
.bif.on{background:var(--gold);border-color:var(--gold);position:relative}
.bif.on::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;
  border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.list{margin-top:14px;border-top:1px solid var(--lined);max-height:250px;overflow-y:auto}
.li{display:flex;justify-content:space-between;padding:12px 0;
  border-bottom:1px solid var(--lined);font-size:15px;gap:12px}
.li b{color:var(--gold2);font-weight:500;flex-shrink:0;font-size:13px}
.li.tap{cursor:pointer}
.li.tap:hover{color:var(--gold2)}

/* ---------- Print ---------- */
@media print{
  .bar,.cta,.sig,.foot,.push,.asst,.bubble{display:none!important}
  body{background:#fff;color:#000}
  .app .sc:not(.on){display:none}
  .appbody{background:#fff}
  .link{color:#000;border-color:#999}
}

/* ---------- Cuprins / doors (pentru parteneri) ---------- */
.doors{
  display:block;background:transparent;
  margin-top:clamp(30px,4vw,48px);
  border-top:1px solid var(--lined);
}
section.dark .doors{border-top-color:var(--line)}
.door{
  background:transparent;color:inherit;text-decoration:none;
  display:grid;grid-template-columns:1fr auto;align-items:baseline;
  gap:clamp(14px,3vw,40px);padding:clamp(20px,2.6vw,30px) 0;
  border-bottom:1px solid var(--lined);transition:padding-left .18s ease;
}
section.dark .door{border-bottom-color:var(--line)}
.door:hover{background:transparent;padding-left:10px}
.door h3{color:var(--ink);margin:0;font-size:clamp(20px,2.4vw,27px);
  line-height:1.2;grid-column:1}
section.dark .door h3{color:var(--oat)}
.door p{color:var(--dim);font-size:14px;margin:7px 0 0;
  grid-column:1;max-width:46ch;line-height:1.5}
section.dark .door p{color:var(--mist)}
.door span{
  grid-column:2;grid-row:1 / span 2;align-self:center;
  color:var(--gold2);font-family:var(--sans);font-size:13px;font-weight:600;
  padding:0;white-space:nowrap;opacity:.75;transition:opacity .18s;
}
section.dark .door span{color:var(--gold)}
.door:hover span{opacity:1}
@media(max-width:560px){
  .doors{grid-template-columns:1fr}
  .door{grid-template-columns:1fr;gap:0;padding:20px 0}
  .door span{grid-column:1;grid-row:auto;margin-top:10px;display:block}
  .door h3{font-size:20px}
}

/* ---------- Imagini full-width ---------- */
figure.plin{margin:0;width:100%}
figure.plin img{width:100%;height:clamp(300px,50vh,540px);object-fit:cover;display:block;border-radius:3px}
figure.plin figcaption{padding:clamp(16px,2.4vw,26px) 0 0;font-size:13px;color:var(--dim);font-style:italic}

/* ---------- Utilitare ---------- */
.sm{font-size:14px;color:var(--dim)}
.aici{color:var(--gold2);opacity:.9;cursor:default}
.txt-c{text-align:center}