/* Recircula – Bibliotecarul (modul cadou). Culorile și fonturile site-ului. */
.rc-cadou{--rc-ink:#1F2A2A;--rc-muted:#55605E;--rc-primary:#004343;--rc-teal:#008080;--rc-bg:#F5F0EB;--rc-line:#E3DACE;--rc-mint:#E0F2F1;--rc-gold:#F2C46B;
  max-width:560px;margin:0 auto;background:var(--rc-bg);color:var(--rc-ink);font-family:Sora,system-ui,sans-serif;border-radius:20px;padding:28px 22px 32px;box-sizing:border-box}
.rc-cadou *{box-sizing:border-box}
.rc-screen{display:flex;flex-direction:column;gap:16px}
.rc-h1{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(32px,7vw,42px);line-height:1.08;font-weight:700;color:var(--rc-ink);letter-spacing:-.01em}
.rc-h1 em{font-style:italic;font-weight:600;color:var(--rc-primary)}
.rc-h2{margin:8px 0 0;font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;line-height:1.1;font-weight:700;color:var(--rc-ink)}
.rc-h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;font-weight:700}
.rc-lead{margin:0;font-size:16px;line-height:1.55;color:#33413F}
.rc-sub{margin:0;font-size:14px;line-height:1.5;color:#33413F}
.rc-muted{font-size:13px;color:var(--rc-muted)}
.rc-promis{list-style:none;margin:0;padding:16px;background:#fff;border:1px solid var(--rc-line);border-radius:14px;display:flex;flex-direction:column;gap:10px;font-size:14px}
.rc-promis li{padding-left:24px;position:relative}
.rc-promis li:before{content:"✓";position:absolute;left:0;color:var(--rc-primary);font-weight:700}

.rc-head{display:flex;align-items:center;gap:10px}
.rc-back{width:44px;height:44px;border-radius:22px;border:0;background:transparent;font-size:30px;line-height:1;color:var(--rc-ink);cursor:pointer}
.rc-back:hover{background:var(--rc-mint)}
.rc-bars{flex:1;display:flex;gap:6px}
.rc-bar{flex:1;height:4px;border-radius:2px;background:#BFDCD7}
.rc-bar.on{background:var(--rc-primary)}
.rc-step,.rc-brand{font-size:13px;color:var(--rc-muted)}

.rc-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rc-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rc-rows{display:flex;flex-direction:column;gap:8px}
.rc-pills{display:flex;flex-wrap:wrap;gap:8px}
.rc-chip{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:44px;padding:11px 14px;border-radius:14px;border:1px solid var(--rc-line);background:#fff;color:var(--rc-ink);font:inherit;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}
.rc-chip strong{font-size:15px;font-weight:600}
.rc-chip small{font-size:12.5px;opacity:.85}
.rc-pills .rc-chip{border-radius:22px;padding:10px 16px}
.rc-grid3 .rc-chip{align-items:center;text-align:center}
.rc-chip:hover{border-color:var(--rc-teal)}
.rc-chip.on{background:var(--rc-primary);border-color:var(--rc-primary);color:#fff}
.rc-chip:focus-visible,.rc-cta:focus-visible,.rc-opt:focus-visible,.rc-link:focus-visible{outline:3px solid var(--rc-gold);outline-offset:2px}

.rc-opt{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:18px;border-radius:16px;border:1px solid var(--rc-line);background:#fff;color:var(--rc-ink);font:inherit;text-align:left;cursor:pointer}
.rc-opt strong{font-size:16px}
.rc-opt small{grid-column:1;font-size:13px;color:var(--rc-muted)}
.rc-opt .rc-arrow{grid-column:2;grid-row:1/3;font-size:26px;color:var(--rc-muted)}
.rc-opt:hover{border-color:var(--rc-teal)}

.rc-label{font-size:15px;font-weight:600;margin-top:6px}
.rc-input{width:100%;height:48px;border-radius:12px;border:1px solid #D9D0C3;background:#fff;padding:0 14px;font:inherit;font-size:15px;color:var(--rc-ink)}
.rc-input:focus{outline:2px solid var(--rc-teal);border-color:var(--rc-teal)}
.rc-auto{position:relative}
.rc-sugestii{list-style:none;margin:4px 0 0;padding:0;background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,40,40,.12);overflow:hidden}
.rc-sugestii:empty{display:none}
.rc-sugestii button{display:block;width:100%;text-align:left;padding:10px 14px;border:0;background:#fff;font:inherit;font-size:14px;cursor:pointer;color:var(--rc-ink)}
.rc-sugestii button:hover{background:var(--rc-mint)}

.rc-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin-top:8px;border:0;border-radius:27px;background:var(--rc-primary);color:#fff;font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.rc-cta:hover{background:#003030}
.rc-cta[disabled]{opacity:.45;cursor:not-allowed}
.rc-cta.rc-small{min-height:46px;margin:0;font-size:15px;width:auto;padding:0 20px}
.rc-cta.rc-dark{background:var(--rc-ink)}
.rc-link{background:none;border:0;padding:10px 4px;font:inherit;font-size:14px;color:var(--rc-primary);text-decoration:underline;cursor:pointer}

.rc-tags{display:flex;flex-wrap:wrap;gap:6px}
.rc-tags span{font-size:12.5px;padding:5px 10px;border-radius:12px;background:var(--rc-mint);color:#003030}
.rc-carte{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--rc-line)}
.rc-row{display:flex;gap:14px}
.rc-cover{width:88px;height:128px;object-fit:cover;border-radius:4px;flex-shrink:0;background:#EDE6DC}
.rc-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.rc-badge{align-self:flex-start;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:10px;background:var(--rc-gold);color:#3A2A00}
.rc-titlu{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;line-height:1.15;font-weight:700;color:var(--rc-ink);text-decoration:none}
.rc-titlu:hover{color:var(--rc-primary);text-decoration:underline}
.rc-autor{font-size:14px;color:#33413F}
.rc-pret{font-size:16px;font-weight:600;margin-top:4px}
.rc-dece{margin:0;font-size:14px;line-height:1.5;color:#33413F}
.rc-dece strong{font-weight:600}
.rc-actiuni{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rc-center{justify-content:center}
.rc-pachet{display:flex;flex-direction:column;gap:12px;padding:18px 16px;border-radius:18px;background:#fff;border:2px solid var(--rc-primary)}
.rc-pachet-top{display:flex;justify-content:space-between;align-items:center}
.rc-in-pachet{padding:0 0 12px;border:0;border-bottom:1px solid #EDE6DC;border-radius:0}
.rc-in-pachet .rc-cover{width:64px;height:92px}
.rc-nota{margin:0;padding:12px 14px;border-radius:12px;background:var(--rc-mint);font-size:13.5px;line-height:1.45}
.rc-alert{margin:6px 0 0;font-size:13.5px;color:#8A3D1E}
.rc-anunta{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:16px;border:1px dashed #8FBFB8;margin-top:6px}
.rc-inline{display:flex;gap:8px}
.rc-inline .rc-input{flex:1;min-width:0}
.rc-acord{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:var(--rc-muted)}
.rc-acord input{width:18px;height:18px;margin-top:1px;accent-color:var(--rc-primary);flex-shrink:0}
@media (max-width:420px){.rc-cadou{padding:20px 14px 26px;border-radius:0}.rc-grid2{grid-template-columns:1fr}.rc-inline{flex-direction:column}.rc-cta.rc-small{width:100%}}
.rc-eyebrow{align-self:flex-start;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:14px;background:var(--rc-primary);color:#fff}
.rc-incos{display:inline-flex;align-items:center;min-height:46px;padding:0 16px;border-radius:23px;background:var(--rc-mint);color:#003030;font-weight:600;font-size:15px}
.rc-pachet>.rc-incos{justify-content:center}
.rc-barcos{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border-radius:28px;background:#fff;border:2px solid var(--rc-primary);box-shadow:0 8px 24px rgba(0,40,40,.15);font-size:14px;font-weight:600;color:var(--rc-primary)}

/* ---------- Tema de Crăciun (doar ecranul de start) ---------- */
.rc-cadou.rc-craciun.rc-on-start{background:#004343;color:#F5F0EB;position:relative;overflow:hidden;padding-top:32px}
.rc-craciun.rc-on-start .rc-start{position:relative;z-index:1;align-items:stretch}
.rc-craciun.rc-on-start .rc-eyebrow{background:#F2C46B;color:#2A2000;align-self:center}
.rc-craciun.rc-on-start .rc-h1{color:#F5F0EB;text-align:center}
.rc-craciun.rc-on-start .rc-h1 em{color:#F2C46B}
.rc-craciun.rc-on-start .rc-lead{color:#D6E6E3;text-align:center}
.rc-craciun.rc-on-start .rc-promis{background:rgba(255,255,255,.07);border-color:rgba(242,196,107,.35);color:#F5F0EB}
.rc-craciun.rc-on-start .rc-promis li:before{color:#F2C46B}
.rc-craciun.rc-on-start .rc-cta{background:#F2C46B;color:#1F2A2A}
.rc-craciun.rc-on-start .rc-cta:hover{background:#FFD983}
.rc-art{display:flex;justify-content:center}
.rc-brad{width:120px;height:150px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.25))}
.rc-sneg{position:absolute;inset:-40px 0 0 0;pointer-events:none;z-index:0;opacity:.55;
  background-image:radial-gradient(2px 2px at 20px 30px,#fff 50%,transparent 51%),radial-gradient(2px 2px at 90px 120px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 160px 60px,#fff 50%,transparent 51%),radial-gradient(2.5px 2.5px at 230px 160px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 300px 20px,#fff 50%,transparent 51%),radial-gradient(2px 2px at 360px 100px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 60px 190px,#fff 50%,transparent 51%),radial-gradient(2px 2px at 260px 230px,#fff 50%,transparent 51%);
  background-size:400px 260px;animation:rc-ninge 18s linear infinite}
@keyframes rc-ninge{from{background-position:0 0}to{background-position:40px 260px}}
@media (prefers-reduced-motion:reduce){.rc-sneg{animation:none}}

/* ---------- Două coloane pe ecran lat ---------- */
.rc-layout{display:block}
.rc-poza{display:none;margin:0}
@media (min-width:960px){
  .rc-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;max-width:1240px;margin:0 auto}
  .rc-layout .rc-cadou{margin:0;width:100%;max-width:none}
  /* înălțimea o primește din JS = înălțimea Atelierului; pe ecranele lungi rămâne fixă la derulare */
  .rc-poza{display:block;margin:0;position:sticky;top:120px;height:min(var(--rc-h,640px),calc(100vh - 150px));min-height:420px}
  .rc-poza-in{position:relative;height:100%;border-radius:20px;overflow:hidden;background:#F5F0EB;display:flex;flex-direction:column}
  .rc-poza img{flex:1;min-height:0;width:100%;object-fit:contain;object-position:center}
  .rc-poza figcaption{padding:0 24px 28px;text-align:center;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(22px,2vw,30px);line-height:1.2;color:#004343}
}

/* ---------- Card cadou la final ---------- */
.rc-card{display:flex;gap:16px;align-items:center;padding:18px;border-radius:18px;background:#004343;color:#F5F0EB}
.rc-card .rc-h3{color:#F5F0EB;display:block}
.rc-card .rc-sub{color:#D6E6E3;margin:4px 0 12px}
.rc-card-viz{flex:0 0 112px;height:76px;border-radius:10px;background:#F2C46B;color:#1F2A2A;display:flex;flex-direction:column;justify-content:space-between;padding:10px 12px;box-shadow:0 6px 14px rgba(0,0,0,.25);transform:rotate(-4deg)}
.rc-card-mini{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.rc-card-viz strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:20px}
.rc-cta.rc-gold{background:#F2C46B;color:#1F2A2A}
.rc-cta.rc-gold:hover{background:#FFD983}
@media (max-width:420px){.rc-card{flex-direction:column;align-items:flex-start}.rc-card-viz{transform:none}}
.rc-cadou a.rc-cta{text-decoration:none}
