@font-face { font-family: 'Petit Formal Script'; font-weight: 400; font-display: swap;
  src: url(fonturi/petit-formal-script-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: 'Petit Formal Script'; font-weight: 400; font-display: swap;
  src: url(fonturi/petit-formal-script-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+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: 'EB Garamond'; font-weight: 500; font-display: swap;
  src: url(fonturi/eb-garamond-latin-500-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: 'EB Garamond'; font-weight: 500; font-display: swap;
  src: url(fonturi/eb-garamond-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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: 'EB Garamond'; font-weight: 600; font-display: swap;
  src: url(fonturi/eb-garamond-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: 'EB Garamond'; font-weight: 600; font-display: swap;
  src: url(fonturi/eb-garamond-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+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: 'Source Sans'; font-weight: 400; font-display: swap;
  src: url(fonturi/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'; font-weight: 400; font-display: swap;
  src: url(fonturi/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+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: 'Source Sans'; font-weight: 600; font-display: swap;
  src: url(fonturi/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'; font-weight: 600; font-display: swap;
  src: url(fonturi/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+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

:root {
  --cerneala: #1d1b18;        /* negru cald, pentru titluri */
  --text: #2f2c28;
  --text-slab: #6d675f;
  --fundal: #f6f3ed;          /* ivoriu */
  --alb: #ffffff;
  --linie: #e3ddd2;
  --accent: #2b6a62;          /* verde-turcoaz închis, pentru legături și accente */
  --accent-inchis: #1f5049;
  --accent-deschis: #eaf4f2;
  --turcoaz: #4f9f94;         /* verdele blând, satinat, al butoanelor și decorațiunilor */
  --turcoaz-deschis: #9fd6cc;
  --turcoaz-inchis: #2f7169;
  --cardinal: #b3182f;        /* butoanele */
  --cardinal-inchis: #8e1226;
  --auriu: #a68a55;
  --noapte: #1d1b18;
  --hartie: #f2e7cf;          /* foaia veche a scrisorii */
  --cerneala-stilou: #2a1c10;
  --umbra: 0 1px 2px rgba(29,27,24,.05), 0 10px 30px rgba(29,27,24,.07);
  --raza: 14px;
  --serif: 'EB Garamond', 'Palatino Linotype', Georgia, serif;
  --sans: 'Source Sans', 'Segoe UI', system-ui, sans-serif;
  --mana: 'Petit Formal Script', 'Palace Script MT', cursive;
  color-scheme: light;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0; background: var(--fundal); color: var(--text);
  font: 400 18px/1.6 var(--sans);
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; }
a { color: var(--accent); }
a:hover { color: var(--accent-inchis); }
h1, h2, h3 { font-family: var(--serif); color: var(--cerneala); font-weight: 600; line-height: 1.15; margin: 0 0 .5em; }
h1 { font-size: clamp(2.3rem, 5.5vw, 3.6rem); letter-spacing: -.01em; }
h2 { font-size: clamp(1.8rem, 4vw, 2.5rem); }
h3 { font-size: 1.45rem; }
p { margin: 0 0 1em; }
.continut { max-width: 1080px; margin: 0 auto; padding: 0 20px; }
.ingust { max-width: 760px; }
.lipsa { background: #fff3b0; color: #6b5300; padding: 0 .3em; border-radius: 4px; font-style: normal; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.ico { display: inline-block; width: 1em; height: 1em; vertical-align: -.15em; }
.ico svg { width: 100%; height: 100%; display: block; }

/* Motto */
.motto { font-family: var(--serif); font-weight: 600; letter-spacing: .32em; text-transform: uppercase; color: var(--auriu); font-size: .82rem; display: inline-flex; align-items: center; gap: .9em; }
.motto::before, .motto::after { content: ''; width: 34px; height: 1px; background: currentColor; opacity: .7; }

/* Antet */
.antet { background: rgba(246,243,237,.92); backdrop-filter: blur(8px); position: sticky; top: 0; z-index: 10; border-bottom: 1px solid var(--linie); }
.antet .continut { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; max-width: 1400px; }
.marca { text-decoration: none; color: var(--cerneala); display: flex; align-items: center; gap: 12px; line-height: 1.1; }
.marca img { width: 46px; height: auto; }
.marca span { display: flex; flex-direction: column; }
.marca b { font-family: var(--serif); font-size: 1.55rem; font-weight: 600; }
.marca small { font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; color: var(--text-slab); }
.meniu { display: flex; gap: 4px; align-items: center; }
.meniu a { text-decoration: none; color: var(--text); padding: 8px 12px; border-radius: 8px; font-size: .98rem; }
.meniu a:hover { background: var(--alb); color: var(--cerneala); }
.meniu a[aria-current="page"] { color: var(--accent); font-weight: 600; }
.meniu a.spre-formular { color: var(--accent); font-weight: 600; }
.buton-meniu { display: none; background: none; border: 1px solid var(--linie); border-radius: 8px; font: inherit; padding: 6px 12px; cursor: pointer; color: var(--cerneala); }
@media (max-width: 900px) {
  .buton-meniu { display: block; }
  .meniu { display: none; position: absolute; left: 0; right: 0; top: 72px; background: var(--fundal); flex-direction: column; align-items: stretch; padding: 8px 16px 16px; border-bottom: 1px solid var(--linie); box-shadow: var(--umbra); }
  .meniu.deschis { display: flex; }
  .meniu a { padding: 12px; font-size: 1.05rem; }
}

/* Butoane */
.buton { display: inline-flex; align-items: center; justify-content: center; gap: .5em; text-decoration: none; font: 600 1.05rem/1 var(--sans); border-radius: 999px; padding: 16px 28px; border: 2px solid transparent; cursor: pointer; transition: transform .15s ease, background .15s ease, box-shadow .15s ease; }
.buton:active { transform: translateY(1px); }
.buton-principal { background: var(--cardinal); color: #fff; box-shadow: 0 8px 22px rgba(179,24,47,.28); }
.buton-principal:hover { background: var(--cardinal-inchis); color: #fff; box-shadow: 0 10px 26px rgba(179,24,47,.36); }
.buton-mare { font-size: 1.25rem; padding: 22px 44px; }
.buton-discret { background: transparent; color: var(--cerneala); border-color: #c9c1b3; }
.buton-discret:hover { background: var(--alb); color: var(--cerneala); border-color: var(--cerneala); }
.buton:focus-visible, .meniu a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, .carte:focus-visible { outline: 3px solid var(--auriu); outline-offset: 3px; }

/* Cele două butoane rotunde de pe prima pagină: egale, roșu cardinal, „respiră” discret */
.cele-doua { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.buton-rotund { width: 148px; height: 148px; padding: 0 14px; border-radius: 50%; text-align: center; line-height: 1.2; font: 600 1.12rem/1.2 var(--sans); letter-spacing: .01em;
  background: radial-gradient(circle at 32% 28%, #d23048 0%, var(--cardinal) 48%, var(--cardinal-inchis) 100%); color: #fff;
  box-shadow: 0 10px 28px rgba(179,24,47,.32), inset 0 1px 0 rgba(255,255,255,.25);
  animation: respira 2.8s ease-in-out infinite; }
.buton-rotund + .buton-rotund { animation-delay: 1.4s; }
.buton-rotund:hover { color: #fff; animation-play-state: paused; transform: scale(1.07); box-shadow: 0 14px 34px rgba(179,24,47,.42); }
@keyframes respira { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.055); } }

/* Prima pagină: scrisoarea în stânga (1/3), restul în dreapta */
.acasa { display: grid; grid-template-columns: minmax(340px, 1fr) 2fr; grid-template-areas: "scrisoare erou" "scrisoare rest"; gap: 28px 34px; max-width: 1400px; margin: 0 auto; padding: 24px 24px 0; align-items: start; }
.celula-scrisoare { grid-area: scrisoare; align-self: stretch; }
.celula-erou { grid-area: erou; }
.celula-rest { grid-area: rest; display: grid; gap: 28px; }

/* Foaia veche de scrisoare: fără linii, hârtie îngălbenită, margini mai închise */
.foaie {
  position: sticky; top: 92px; height: calc(100vh - 112px); min-height: 480px; overflow-y: auto; overscroll-behavior: contain;
  background-color: var(--hartie);
  background-image:
    radial-gradient(ellipse at 18% 12%, rgba(255,250,235,.55), transparent 55%),
    radial-gradient(ellipse at 85% 88%, rgba(160,115,55,.16), transparent 50%),
    radial-gradient(ellipse at 70% 30%, rgba(170,130,70,.07), transparent 40%),
    radial-gradient(ellipse at 50% 50%, transparent 58%, rgba(125,88,40,.26) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");
  background-attachment: local;
  border-radius: 3px; box-shadow: 0 1px 2px rgba(60,40,15,.12), 0 16px 38px rgba(60,40,15,.16);
  scrollbar-width: thin; scrollbar-color: rgba(90,65,30,.3) transparent;
}
.scrisoare { position: relative; padding: 34px 34px 36px 38px; font: 400 1.62rem/1.42 var(--mana); color: var(--cerneala-stilou); cursor: default; }
.scrisoare p { margin: 0 0 .5em; text-indent: 1.4em; }
.scrisoare .adresare { text-indent: 0; font-size: 1.12em; margin-bottom: .7em; }
.scrisoare .semnatura { margin-top: .9em; text-align: right; }
.scrisoare .semnatura span { display: block; }
.scrisoare .semnatura b { display: block; font-weight: 400; font-size: 1.3em; line-height: 1.3; }
.scrisoare .pecete { display: block; width: 104px; margin: 10px 0 0 auto; transform: rotate(-8deg); opacity: .82; transition: opacity .9s ease, transform .9s cubic-bezier(.2,1.4,.4,1); }
.scrisoare .pecete svg { width: 100%; display: block; }
.scrisoare.se-scrie .pecete { opacity: 0; transform: rotate(-8deg) scale(1.6); }
.scrisoare.scrisa .pecete { opacity: .82; transform: rotate(-8deg) scale(1); }
.scrisoare .lit { animation: cerneala .45s ease-out both; }
@keyframes cerneala { from { opacity: 0; filter: blur(.7px); } to { opacity: 1; filter: none; } }
.indiciu { position: sticky; top: 0; z-index: 2; font: 400 .8rem var(--sans); color: #7a6a52; text-align: center; padding: 7px 0; background: linear-gradient(rgba(242,231,207,.95) 60%, rgba(242,231,207,0)); transition: opacity .6s; }
.indiciu.gata { opacity: 0; pointer-events: none; }
/* Stiloul: alunecă lin de la o literă la alta */
.stilou { position: absolute; left: 0; top: 0; width: 78px; height: 70px; pointer-events: none; z-index: 1; transition: transform .11s linear; will-change: transform; }
.stilou svg { display: block; width: 100%; height: 100%; filter: drop-shadow(2px 5px 4px rgba(40,25,10,.22)); }
.stilou.ascuns-stilou { opacity: 0; transition: opacity .6s; }

/* Titlul, alături de portret */
.erou { position: relative; display: grid; grid-template-columns: 1.35fr 1fr; gap: 10px 26px; align-items: center; background: var(--alb); border: 1px solid var(--linie); border-radius: 18px; padding: 40px 30px 36px 44px; box-shadow: var(--umbra); overflow: hidden; }
.erou .supratitlu { color: var(--accent); }
.erou h1 { font-size: clamp(2.1rem, 3.4vw, 3.05rem); margin-bottom: .4em; }
.erou .subtitlu { font-size: 1.12rem; color: var(--text); margin-bottom: .9em; max-width: 32em; }
.erou .citat { font: italic 500 1.18rem/1.5 var(--serif); color: var(--text-slab); border-left: 2px solid var(--auriu); padding-left: 14px; margin: 0 0 1.2em; }
.erou .motto { margin-top: 26px; }
.erou-poza { align-self: stretch; display: flex; align-items: flex-end; justify-content: center; margin: -40px -30px -36px 0; }
.erou-poza img { width: 100%; max-width: 360px; height: auto; mix-blend-mode: multiply; display: block; }
.incredere { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: .95rem; color: var(--text-slab); margin-bottom: 28px; }
.incredere span::before { content: '◆'; color: var(--auriu); font-size: .6em; margin-right: 8px; vertical-align: middle; }
.supratitlu { font-size: .85rem; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); font-weight: 600; margin-bottom: 16px; }

.panou { background: var(--alb); border: 1px solid var(--linie); border-radius: 18px; padding: 36px 36px 34px; box-shadow: var(--umbra); }
.panou > h2 { font-size: clamp(1.6rem, 3vw, 2.1rem); }
.panou > .introducere { color: var(--text-slab); margin-top: -.3em; }

.trei-pasi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; counter-reset: pas; padding: 0; margin: 0; }
.trei-pasi li { list-style: none; background: var(--fundal); border: 1px solid var(--linie); border-radius: 12px; padding: 24px 20px; counter-increment: pas; position: relative; }
.trei-pasi li::before { content: counter(pas); display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; border: 1.5px solid var(--cerneala); color: var(--cerneala); font: 600 1.25rem var(--serif); margin-bottom: 12px; }
.trei-pasi .ico { position: absolute; top: 22px; right: 18px; width: 34px; height: 34px; color: var(--cerneala); opacity: .75; }
.trei-pasi h3 { font-size: 1.3rem; margin-bottom: .3em; }
.trei-pasi p { margin: 0; color: var(--text-slab); font-size: 1rem; }

.instrumente { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; margin: 0; padding: 0; }
.instrumente li { list-style: none; text-align: center; padding: 20px 10px 16px; border-radius: 12px; background: var(--fundal); border: 1px solid var(--linie); }
.instrumente .ico { width: 50px; height: 50px; color: var(--cerneala); margin-bottom: 10px; }
.instrumente b { display: block; font: 600 1.12rem var(--serif); color: var(--cerneala); }
.instrumente span { display: block; font-size: .9rem; color: var(--text-slab); line-height: 1.35; margin-top: 4px; }

.cabinetul { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; align-items: center; }
.cabinetul .text p { color: var(--text-slab); }

/* Portretul, pe pagina Despre */
.portret { position: relative; max-width: 300px; }
.portret img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; }

/* Cartea de vizită, care se întoarce */
.carte { perspective: 1200px; width: 100%; max-width: 420px; aspect-ratio: 813 / 458; cursor: pointer; margin: 6px 0 0; }
.carte-interior { position: relative; width: 100%; height: 100%; transform-style: preserve-3d; transition: transform .9s cubic-bezier(.3,.7,.2,1); transform: rotateX(8deg) rotateY(-12deg) rotateZ(-2deg); }
.carte:hover .carte-interior { transform: rotateX(0) rotateY(0) rotateZ(0); }
.carte.intoarsa .carte-interior { transform: rotateY(180deg); }
.carte-fata, .carte-spate { position: absolute; inset: 0; border-radius: 10px; backface-visibility: hidden; -webkit-backface-visibility: hidden; overflow: hidden; box-shadow: 0 2px 3px rgba(0,0,0,.08), 0 24px 40px rgba(29,27,24,.2); }
.carte-fata img { width: 100%; height: 100%; display: block; object-fit: cover; }
.carte-spate { transform: rotateY(180deg); background: radial-gradient(120% 120% at 30% 0%, #3a3631, var(--noapte) 65%); color: #ece4d3; display: grid; place-items: center; text-align: center; }
.carte-spate img { width: 30%; display: block; margin: 0 auto 8px; opacity: .92; }
.carte-spate .motto { font-size: .68rem; letter-spacing: .24em; white-space: nowrap; gap: .6em; }
.carte-spate .motto::before, .carte-spate .motto::after { width: 16px; }
.carte-spate small { display: block; margin-top: 8px; font-size: .66rem; letter-spacing: .12em; text-transform: uppercase; color: #b5ab99; }
.sub-carte { font-size: .85rem; color: var(--text-slab); margin-top: 10px; }

.domenii { display: flex; flex-wrap: wrap; gap: 10px; padding: 0; margin: 0; }
.domenii li { list-style: none; background: var(--fundal); border: 1px solid var(--linie); border-radius: 999px; padding: 8px 18px; font-size: 1rem; color: var(--cerneala); }

@media (max-width: 1180px) {
  .erou { grid-template-columns: 1fr; padding: 36px 32px; }
  .erou-poza { order: -1; margin: -36px -32px 0; max-height: 360px; overflow: hidden; }
  .erou-poza img { max-width: 300px; }
  .instrumente { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 960px) {
  .acasa { grid-template-columns: 1fr; grid-template-areas: "erou" "scrisoare" "rest"; padding: 16px 16px 0; gap: 22px; }
  .foaie { position: relative; top: 0; height: auto; min-height: 0; overflow: visible; }
  .cabinetul { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .trei-pasi { grid-template-columns: 1fr; }
  .instrumente { grid-template-columns: repeat(2, 1fr); }
  .panou { padding: 26px 20px; }
  .erou { padding: 28px 20px; }
  .erou-poza { margin: -28px -20px 0; }
  .erou-poza img { max-width: 250px; }
  .cele-doua { justify-content: center; gap: 18px; }
  .buton-rotund { width: 132px; height: 132px; font-size: 1.02rem; }
  .scrisoare { font-size: 1.5rem; padding: 26px 20px 28px; }
}

/* Pagini interioare */
.cap-pagina { padding: 56px 0 24px; text-align: center; }
.cap-pagina p { color: var(--text-slab); font-size: 1.15rem; max-width: 34em; margin: 0 auto; }
.sectiune { padding: 64px 0; }
.sectiune-alba { background: var(--alb); border-top: 1px solid var(--linie); border-bottom: 1px solid var(--linie); }
.titlu-sectiune { text-align: center; margin-bottom: 40px; }
.titlu-sectiune p { color: var(--text-slab); max-width: 34em; margin: 0 auto; }

.scara { list-style: none; margin: 0 auto; padding: 0; max-width: 760px; counter-reset: treapta; }
.scara li { counter-increment: treapta; display: grid; grid-template-columns: 64px 1fr; gap: 0 20px; position: relative; padding-bottom: 28px; }
.scara li::before { content: counter(treapta); grid-row: span 2; width: 64px; height: 64px; border-radius: 50%; background: var(--alb); border: 1.5px solid var(--cerneala); color: var(--cerneala); display: grid; place-items: center; font: 600 1.7rem var(--serif); position: relative; z-index: 1; }
.scara li:not(:last-child)::after { content: ''; position: absolute; left: 31px; top: 64px; bottom: 0; width: 1.5px; background: linear-gradient(var(--cerneala), var(--linie)); }
.scara h3 { margin: 14px 0 .2em; display: flex; align-items: center; gap: 10px; }
.scara h3 .ico { width: 26px; height: 26px; color: var(--cerneala); }
.scara p { margin: 0; color: var(--text-slab); }
.scara li:last-child::before { background: var(--cardinal); border-color: var(--cardinal); color: #fff; }
.final-pagina { text-align: center; padding: 24px 0 72px; }
.final-pagina p { color: var(--text-slab); }

.carduri { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 20px; }
.card { background: var(--alb); border: 1px solid var(--linie); border-radius: var(--raza); padding: 26px 26px 18px; box-shadow: var(--umbra); }
.card h3 { margin-bottom: .4em; }
.card ul { padding-left: 1.1em; margin: 0 0 .6em; }
.card li { margin-bottom: .3em; }
.card .nota { font-size: .95rem; color: var(--text-slab); }

.doua-coloane { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
@media (max-width: 760px) { .doua-coloane { grid-template-columns: 1fr; } }
.lista-bife { list-style: none; padding: 0; margin: 0; }
.lista-bife li { padding-left: 1.8em; position: relative; margin-bottom: .55em; }
.lista-bife li::before { content: '✓'; position: absolute; left: 0; color: var(--accent); font-weight: 600; }
.lista-minus li::before { content: '–'; color: var(--text-slab); }

.pret { display: flex; align-items: baseline; gap: 10px; font-family: var(--serif); color: var(--cerneala); }
.pret b { font-size: 2.6rem; font-weight: 600; }

.profil { display: grid; grid-template-columns: 300px 1fr; gap: 48px; align-items: start; }
.profil .carte { margin-top: 30px; max-width: 300px; }
@media (max-width: 760px) { .profil { grid-template-columns: 1fr; } .profil > div:first-child { display: grid; justify-items: center; } .profil .portret { max-width: 250px; } }
.fapte { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; margin: 24px 0; }
.fapte div { background: var(--alb); border: 1px solid var(--linie); border-radius: 12px; padding: 16px 18px; }
.fapte b { display: block; font: 600 1.6rem var(--serif); color: var(--cerneala); }
.fapte span { font-size: .95rem; color: var(--text-slab); }

/* Întrebări */
.intrebari details { background: var(--alb); border: 1px solid var(--linie); border-radius: 12px; margin-bottom: 12px; padding: 0 22px; }
.intrebari summary { cursor: pointer; padding: 18px 0; font-weight: 600; color: var(--cerneala); list-style: none; position: relative; padding-right: 32px; }
.intrebari summary::-webkit-details-marker { display: none; }
.intrebari summary::after { content: '+'; position: absolute; right: 0; top: 14px; font-size: 1.5rem; color: var(--accent); }
.intrebari details[open] summary::after { content: '–'; }
.intrebari details > div { padding-bottom: 18px; }
.contact { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.contact div { background: var(--alb); border: 1px solid var(--linie); border-radius: 12px; padding: 18px 20px; }
.contact small { display: block; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; color: var(--text-slab); margin-bottom: 4px; }

/* Formular */
.formular { background: var(--alb); border: 1px solid var(--linie); border-radius: var(--raza); padding: 34px; box-shadow: var(--umbra); }
.formular fieldset { border: 0; padding: 0; margin: 0 0 30px; }
.formular legend { font: 600 1.45rem var(--serif); color: var(--cerneala); margin-bottom: 14px; padding: 0; }
.randuri { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.randuri .tot { grid-column: 1 / -1; }
@media (max-width: 640px) { .randuri { grid-template-columns: 1fr; } .formular { padding: 22px 18px; } }
.camp label, .camp .eticheta { display: block; font-weight: 600; font-size: .98rem; margin-bottom: 6px; color: var(--cerneala); }
.camp .ajutor { font-size: .9rem; color: var(--text-slab); margin: -2px 0 6px; }
.camp input[type=text], .camp input[type=email], .camp input[type=tel], .camp input[type=date], .camp select, .camp textarea {
  width: 100%; font: inherit; font-size: 1rem; padding: 12px 14px; border: 1px solid #cdc5b6; border-radius: 10px; background: #fff; color: var(--text);
}
.camp textarea { min-height: 150px; resize: vertical; }
.camp .eroare { color: #b3261e; font-size: .9rem; margin-top: 4px; display: none; }
.camp.gresit input, .camp.gresit textarea, .camp.gresit select, .camp.gresit .zona-fisiere { border-color: #b3261e; }
.camp.gresit .eroare { display: block; }
.optiuni { display: flex; flex-wrap: wrap; gap: 10px; }
.optiuni label { display: inline-flex; align-items: center; gap: 8px; font-weight: 400; border: 1px solid #cdc5b6; border-radius: 999px; padding: 8px 16px; cursor: pointer; margin: 0; }
.optiuni input { accent-color: var(--accent); }
.optiuni label:has(input:checked) { border-color: var(--accent); background: var(--accent-deschis); color: var(--accent-inchis); }

.zona-fisiere { border: 2px dashed #cdc5b6; border-radius: 12px; padding: 26px; text-align: center; background: var(--fundal); cursor: pointer; transition: border-color .15s, background .15s; }
.zona-fisiere.peste { border-color: var(--accent); background: var(--accent-deschis); }
.zona-fisiere b { color: var(--accent); }
.zona-fisiere .ico { width: 42px; height: 42px; color: var(--cerneala); display: block; margin: 0 auto 8px; }
.zona-fisiere input { display: none; }
.lista-fisiere { list-style: none; padding: 0; margin: 12px 0 0; }
.lista-fisiere li { display: flex; justify-content: space-between; align-items: center; gap: 12px; border: 1px solid var(--linie); border-radius: 10px; padding: 8px 12px; margin-bottom: 6px; font-size: .97rem; }
.lista-fisiere li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lista-fisiere button { background: none; border: 0; color: #b3261e; cursor: pointer; font: inherit; font-size: .9rem; flex: none; }
.total-fisiere { font-size: .9rem; color: var(--text-slab); margin-top: 4px; }

.bifa { display: flex; gap: 12px; align-items: flex-start; font-weight: 400 !important; margin-bottom: 10px; }
.bifa input { width: 20px; height: 20px; margin-top: 4px; accent-color: var(--accent); flex: none; }

.ce-primesti { background: var(--fundal); border: 1px solid var(--linie); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; }
.ce-primesti h3 { font-size: 1.35rem; margin-bottom: .4em; }
.ce-primesti .lista-bife { margin-bottom: .4em; }
.ce-primesti .nota { font-size: .92rem; color: var(--text-slab); margin: 0; }
.trimite { text-align: center; margin-top: 22px; }
.trimite .buton { width: 100%; max-width: 440px; }
.mesaj { border-radius: 12px; padding: 18px 22px; margin-top: 20px; display: none; }
.mesaj.vizibil { display: block; }
.mesaj.bun { background: #eaf4ec; border: 1px solid #b9d9c0; }
.mesaj.atentie { background: #fff7e0; border: 1px solid #ecd796; }
.mesaj.rau { background: #fbeaea; border: 1px solid #e8bcbc; }
.ascuns { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Text juridic */
.text-juridic h2 { font-size: 1.6rem; margin-top: 1.6em; }
.text-juridic li { margin-bottom: .4em; }
.proiect { background: #fff7e0; border: 1px solid #ecd796; border-radius: 12px; padding: 14px 18px; font-size: .98rem; margin-bottom: 24px; }

/* Subsol */
.subsol { background: var(--noapte); color: #cfc8bb; padding: 48px 0 28px; font-size: .95rem; margin-top: 48px; }
.subsol a { color: #fff; }
.subsol .continut { max-width: 1400px; }
.subsol .coloane { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 28px; }
.subsol h4 { color: #fff; font: 600 1.25rem var(--serif); margin: 0 0 10px; }
.subsol ul { list-style: none; padding: 0; margin: 0; }
.subsol li { margin-bottom: 6px; }
.subsol .motto { margin-bottom: 14px; color: #c2a875; }
.subsol .jos { border-top: 1px solid rgba(255,255,255,.12); margin-top: 28px; padding-top: 18px; font-size: .85rem; color: #968e80; }
@media (max-width: 760px) { .subsol .coloane { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .buton, .carte-interior, .stilou { transition: none; }
  .buton-rotund, .scrisoare .lit { animation: none; }
}
@media print { .antet, .subsol, .cele-doua { display: none; } body { background: #fff; } .foaie { position: static; height: auto; overflow: visible; } }

/* ===== Eleganță: fundalul cu Facultatea de Drept, desenată doar în linii, foarte stinsă ===== */
:root { --alb: rgba(255,255,255,.86); }
.meniu a { position: relative; }
.meniu a:hover { background: transparent; }
.meniu a::after { content: ''; position: absolute; left: 12px; right: 12px; bottom: 4px; height: 1px; background: var(--auriu); transform: scaleX(0); transform-origin: left; transition: transform .4s cubic-bezier(.2,.7,.2,1); }
.meniu a:hover::after, .meniu a[aria-current="page"]::after { transform: scaleX(1); }

/* Butoanele rotunde, puțin mai mici */
.buton-rotund { width: 120px; height: 120px; font-size: .98rem; }

/* ===== Diapozitivele primei pagini: fără derulare; săgeata trece la următorul ===== */
.acasa { grid-template-areas: "scrisoare erou"; }
.cu-diapozitive, .cu-diapozitive body { overflow: hidden; height: 100%; }
.cu-diapozitive .diapozitive { position: fixed; top: 73px; left: 0; right: 0; bottom: 0; overflow: hidden; }
.cu-diapozitive .pista { height: 100%; transition: transform 1.15s cubic-bezier(.77,0,.18,1); will-change: transform; }
.cu-diapozitive .diapozitiv { height: 100%; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.cu-diapozitive .acasa { height: 100%; width: 100%; padding: 20px 96px 20px 24px; grid-template-rows: 100%; align-items: stretch; }
.cu-diapozitive .celula-erou { align-self: center; }
.cu-diapozitive .foaie { position: relative; top: 0; height: 100%; min-height: 0; }
.cu-diapozitive .erou { padding: clamp(22px, 4vh, 40px) 30px clamp(20px, 3.6vh, 36px) 44px; }
.cu-diapozitive .erou h1 { font-size: clamp(1.9rem, min(3.3vw, 5.4vh), 3.05rem); }
.cu-diapozitive .erou .subtitlu { font-size: clamp(.98rem, 2.1vh, 1.12rem); }
.cu-diapozitive .erou .incredere { margin-bottom: clamp(14px, 3vh, 28px); }
.cu-diapozitive .erou .motto { margin-top: clamp(14px, 2.6vh, 26px); }
.cu-diapozitive .erou-poza img { max-height: calc(100vh - 150px); width: auto; }

.scena { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 96px 0 60px; }
.diapozitiv { position: relative; }
.eticheta-sectiune { display: flex; align-items: center; gap: 14px; font: 600 .8rem var(--sans); letter-spacing: .22em; text-transform: uppercase; color: var(--text-slab); }
.eticheta-sectiune span { font: 500 1.05rem var(--serif); letter-spacing: .06em; color: var(--accent); }
.eticheta-sectiune::after { content: ''; width: 70px; height: 1px; background: var(--auriu); }
.titlu-mare { font-size: clamp(2.1rem, min(4.4vw, 7vh), 3.7rem); font-weight: 500; letter-spacing: -.015em; line-height: 1.12; max-width: 19em; margin: 20px 0 clamp(24px, 5vh, 48px); }
.titlu-mare em { font-style: italic; color: var(--text-slab); }
.pasi-mari { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; padding: 0; counter-reset: pm; border-top: 1px solid var(--cerneala); }
.pasi-mari li { list-style: none; position: relative; counter-increment: pm; padding: 26px 34px 0 0; }
.pasi-mari li + li { padding-left: 30px; border-left: 1px solid var(--linie); }
.pasi-mari li::before { content: counter(pm, decimal-leading-zero); display: block; font: 500 clamp(2.4rem, 6vh, 3.4rem)/1 var(--serif); color: var(--auriu); margin-bottom: 14px; }
.pasi-mari .ico { position: absolute; top: 30px; right: 30px; width: 30px; height: 30px; color: var(--cerneala); opacity: .7; }
.pasi-mari h3 { font-size: 1.4rem; }
.pasi-mari p { color: var(--text-slab); margin: 0; }
.legatura-fina { display: inline-flex; align-items: center; gap: 10px; margin-top: clamp(22px, 5vh, 44px); color: var(--cerneala); text-decoration: none; font-weight: 600; letter-spacing: .02em; position: relative; padding-bottom: 4px; }
.legatura-fina::after { content: '→'; transition: transform .3s; }
.legatura-fina::before { content: ''; position: absolute; left: 0; right: 22px; bottom: 0; height: 1px; background: var(--auriu); transform-origin: left; transition: transform .4s; }
.legatura-fina:hover { color: var(--accent); }
.legatura-fina:hover::after { transform: translateX(5px); }
.scena .instrumente { gap: 0; border-top: 1px solid var(--cerneala); }
.scena .instrumente li { background: transparent; border: 0; border-radius: 0; text-align: left; padding: 26px 22px 6px 0; }
.scena .instrumente li + li { border-left: 1px solid var(--linie); padding-left: 22px; }
.scena .instrumente .ico { width: 42px; height: 42px; }
.nota-scena { margin-top: clamp(22px, 5vh, 44px); color: var(--text-slab); font: italic 500 1.2rem var(--serif); }
.diapozitiv-final .scena { flex: 1; display: flex; flex-direction: column; justify-content: center; }
.diapozitiv-final .titlu-mare { font-size: clamp(1.9rem, min(3.4vw, 5.6vh), 3rem); margin-bottom: 18px; }
.diapozitiv-final .cabinetul { margin-top: clamp(14px, 3vh, 30px); }
.diapozitiv-final .text p { color: var(--text-slab); }
.diapozitiv-final .motto { margin-top: 22px; }
.diapozitiv .subsol { margin-top: 0; padding: 26px 0 16px; }
.cu-diapozitive .diapozitiv .subsol .coloane { gap: 18px; }
.cu-diapozitive .diapozitiv .subsol .jos { margin-top: 14px; padding-top: 12px; }

/* Intrarea în scenă: textele apar pe rând, lin */
.intra { opacity: 0; transform: translateY(26px); filter: blur(5px);
  transition: opacity .9s ease, transform 1.1s cubic-bezier(.2,.7,.2,1), filter .9s ease;
  transition-delay: calc(var(--i, 0) * 120ms + 280ms); }
.intra-poza { transform: translateX(34px) scale(1.02); transition-duration: 1.4s, 1.6s, 1.2s; }
.intra-foaie { transform: translateY(14px) rotate(-.6deg); }
.diapozitiv.activ .intra { opacity: 1; transform: none; filter: none; }

/* Punctele de navigare, contorul și săgeata */
.puncte, .contor, .sageata { display: none; }
.cu-diapozitive .puncte { display: flex; flex-direction: column; gap: 14px; position: fixed; right: 30px; top: 50%; transform: translateY(-50%); z-index: 6; }
.puncte button { position: relative; width: 10px; height: 10px; padding: 0; border-radius: 999px; border: 1px solid var(--cerneala); background: transparent; cursor: pointer; transition: height .4s cubic-bezier(.2,.7,.2,1), background .3s; }
.puncte button.activ { height: 30px; background: var(--cerneala); }
.puncte button span { position: absolute; right: 22px; top: 50%; transform: translate(6px, -50%); white-space: nowrap; font: 600 .72rem var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--text-slab); opacity: 0; pointer-events: none; transition: opacity .3s, transform .3s; }
.puncte button:hover span, .puncte button:focus-visible span { opacity: 1; transform: translate(0, -50%); }
.cu-diapozitive .contor { display: flex; align-items: center; gap: 12px; position: fixed; left: 28px; bottom: 26px; z-index: 6; font: 500 .95rem var(--serif); color: var(--text-slab); }
.contor b { color: var(--cerneala); font-weight: 600; }
.contor span { position: relative; width: 70px; height: 1px; background: var(--linie); overflow: hidden; }
.contor span::after { content: ''; position: absolute; inset: 0; background: var(--auriu); transform-origin: left; transform: scaleX(var(--progres, .25)); transition: transform 1s cubic-bezier(.77,0,.18,1); }
.contor i { font-style: normal; }
.cu-diapozitive .sageata { display: grid; place-items: center; position: fixed; left: 50%; bottom: 22px; z-index: 6; width: 52px; height: 52px; margin-left: -26px; border-radius: 50%; border: 1px solid rgba(29,27,24,.45); background: rgba(246,243,237,.75); backdrop-filter: blur(4px); color: var(--cerneala); cursor: pointer; transition: background .3s, border-color .3s, transform .6s; animation: pluteste 2.4s ease-in-out infinite; }
.sageata svg { width: 22px; height: 22px; transition: transform .6s; }
.sageata:hover { background: var(--cerneala); color: #fff; border-color: var(--cerneala); }
.sageata.sus svg { transform: rotate(180deg); }
@keyframes pluteste { 0%, 100% { translate: 0 0; } 50% { translate: 0 6px; } }

/* Fără diapozitive (ecrane mici): pagina curge normal, iar textele intră când ajung pe ecran */
html:not(.cu-diapozitive) .diapozitiv { padding: 34px 0; }
html:not(.cu-diapozitive) .diapozitiv-final { padding-bottom: 0; }
html:not(.cu-diapozitive) .scena { padding: 0 20px; }
@media (max-width: 960px) {
  .acasa { grid-template-areas: "erou" "scrisoare"; }
  .pasi-mari, .scena .instrumente { grid-template-columns: 1fr; }
  .pasi-mari li + li, .scena .instrumente li + li { padding-left: 0; border-left: 0; border-top: 1px solid var(--linie); }
  .pasi-mari li { padding-bottom: 22px; }
}
@media (max-width: 700px) { .buton-rotund { width: 110px; height: 110px; font-size: .95rem; } }

/* Paginile interioare: elementele apar lin, pe măsură ce ajung pe ecran */
.apare { opacity: 0; transform: translateY(18px); transition: opacity .8s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.apare.vizibil { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .intra, .apare { opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important; }
  .cu-diapozitive .pista { transition: none; }
  .sageata { animation: none; }
}

/* Loc pentru săgeată și contor; fundalul, încă mai stins */
.cu-diapozitive .acasa { padding: 16px 96px 84px 24px; }
.cu-diapozitive .contor { left: auto; right: 28px; bottom: 30px; }
.buton-rotund { padding: 0 10px; font-size: .92rem; }
.cu-diapozitive .sageata.sus { left: auto; right: 24px; margin-left: 0; background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.45); }
.cu-diapozitive .sageata.sus:hover { background: #fff; color: var(--cerneala); }
.cu-diapozitive.pe-final .contor { opacity: 0; }
.contor { transition: opacity .5s; }
@media (max-height: 820px) {
  .cu-diapozitive .erou .citat { display: none; }
  .cu-diapozitive .buton-rotund { width: 104px; height: 104px; font-size: .86rem; }
  .cu-diapozitive .erou h1 { font-size: clamp(1.7rem, min(3.1vw, 4.9vh), 2.6rem); }
}

/* Formular: disponibilitatea și plata */
.ajutor-fieldset { color: var(--text-slab); font-size: .98rem; margin: -6px 0 14px; }
.plata { border-top: 1px solid var(--linie); margin-top: 22px; padding-top: 22px; }
.plata > .eticheta { display: block; font: 600 1.25rem var(--serif); color: var(--cerneala); margin-bottom: 12px; }
.metode { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 640px) { .metode { grid-template-columns: 1fr; } }
.metoda { display: flex; gap: 12px; align-items: flex-start; border: 1px solid #cdc5b6; border-radius: 12px; padding: 16px; cursor: pointer; transition: border-color .2s, background .2s, box-shadow .2s; }
.metoda input { margin-top: 4px; accent-color: var(--accent); }
.metoda b { display: flex; align-items: center; gap: 8px; color: var(--cerneala); }
.metoda .ico { width: 26px; height: 26px; color: var(--cerneala); }
.metoda small { display: block; color: var(--text-slab); font-size: .88rem; line-height: 1.4; margin-top: 4px; }
.metoda.aleasa { border-color: var(--cerneala); background: #fff; box-shadow: 0 6px 18px rgba(29,27,24,.08); }
.detalii-plata { margin-top: 14px; padding: 18px 20px; background: var(--fundal); border: 1px solid var(--linie); border-radius: 12px; }
.detalii-plata p { margin: 0 0 12px; color: var(--text-slab); }
.stare-plata { margin: 12px 0 0 !important; font-weight: 600; color: var(--text-slab); }
.stare-plata.confirmata { color: #2e7d4f; }
.cont-bancar { display: grid; grid-template-columns: 110px 1fr; gap: 6px 14px; margin: 0 0 16px; }
.cont-bancar dt { color: var(--text-slab); font-size: .9rem; }
.cont-bancar dd { margin: 0; font-weight: 600; color: var(--cerneala); }
.plata > .eroare { color: #b3261e; font-size: .9rem; margin-top: 8px; display: none; }
.plata.gresit > .eroare { display: block; }
.buton[disabled] { opacity: .45; cursor: not-allowed; box-shadow: none; }
.lacat { font-size: .9rem; color: var(--text-slab); margin: 10px 0 0; }
.lacat::before { content: '🔒 '; }
.lacat.deblocat { color: #2e7d4f; }
.lacat.deblocat::before { content: '✓ '; }

/* ===== Fundalurile diapozitivelor: gravuri vechi, ușor translucide ===== */
.diapozitiv::before { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: center / cover no-repeat; mix-blend-mode: multiply; }
.diapozitiv > * { position: relative; z-index: 1; }
#d-scrisoarea::before { background-image: url(imagini/fundal-1.jpg); opacity: .30; }
#d-cum::before { background-image: linear-gradient(100deg, rgba(246,243,237,.75) 25%, rgba(246,243,237,.15) 80%), url(imagini/fundal-2.jpg); opacity: .34; }
#d-distanta::before { background-image: linear-gradient(100deg, rgba(246,243,237,.6) 20%, rgba(246,243,237,.1) 85%), url(imagini/fundal-3.jpg); opacity: .32; }

/* ===== Butoanele: verde blând, satinat, spre turcoaz; puțin mai mici ===== */
.buton-rotund, .cu-diapozitive .buton-rotund { width: 100px; height: 100px; padding: 0 8px; font-size: .84rem; letter-spacing: .02em;
  background: radial-gradient(circle at 32% 24%, #c4ebe4 0%, #7dc2b7 22%, var(--turcoaz) 55%, var(--turcoaz-inchis) 100%);
  box-shadow: inset 0 2px 5px rgba(255,255,255,.55), inset 0 -8px 14px rgba(20,60,55,.22), 0 10px 24px rgba(47,113,105,.28);
  text-shadow: 0 1px 1px rgba(20,60,55,.35); }
.buton-rotund:hover { box-shadow: inset 0 2px 5px rgba(255,255,255,.6), inset 0 -8px 14px rgba(20,60,55,.25), 0 14px 30px rgba(47,113,105,.36); }
@media (max-height: 820px) { .cu-diapozitive .buton-rotund { width: 92px; height: 92px; font-size: .8rem; } }
@media (max-width: 700px) { .buton-rotund { width: 96px; height: 96px; } }
.buton-principal { background: linear-gradient(160deg, #7dc2b7 0%, var(--turcoaz) 45%, var(--turcoaz-inchis) 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 8px 22px rgba(47,113,105,.28); text-shadow: 0 1px 1px rgba(20,60,55,.3); }
.buton-principal:hover { background: linear-gradient(160deg, #6cb6aa 0%, #448f85 45%, #275f58 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 10px 26px rgba(47,113,105,.36); }
.scara li:last-child::before { background: var(--turcoaz); border-color: var(--turcoaz); }

/* Aceeași culoare, în decorațiuni discrete */
.meniu a::after, .eticheta-sectiune::after, .legatura-fina::before, .contor span::after { background: var(--turcoaz); }
.erou .citat { border-left-color: var(--turcoaz); }
.incredere span::before { color: var(--turcoaz); }
.puncte button { border-color: var(--turcoaz-inchis); }
.puncte button.activ { background: var(--turcoaz); border-color: var(--turcoaz); }
.sageata:hover { background: var(--turcoaz-inchis); border-color: var(--turcoaz-inchis); }
.trei-pasi li::before, .scara li::before { border-color: var(--turcoaz-inchis); }
.scena .instrumente, .pasi-mari { border-top-color: var(--turcoaz-inchis); }
.instrumente .ico, .pasi-mari .ico, .scara h3 .ico { color: var(--turcoaz-inchis); }
.motto::before, .motto::after { background: var(--turcoaz); opacity: .8; }

/* Motivul robei de avocat */
.incredere .cu-roba::before { content: none; }
.incredere .cu-roba .ico { width: 1.15em; height: 1.15em; color: var(--turcoaz-inchis); margin-right: 6px; vertical-align: -.2em; }
.roba-decor { position: absolute; right: 4%; bottom: 6%; width: min(30vw, 340px); color: var(--turcoaz); opacity: .14; pointer-events: none; }
.roba-decor svg { width: 100%; height: auto; display: block; }
.diapozitiv-final .scena { position: relative; }
.fapte .ico { float: right; width: 30px; height: 30px; color: var(--turcoaz-inchis); opacity: .8; }

/* Portretul are fundal transparent: nu mai e nevoie de amestec */
.erou-poza img, .portret img { mix-blend-mode: normal; }

/* Roba: filigran discret, în colțul diapozitivului */
.roba-decor { right: -1%; bottom: -2%; width: min(22vw, 250px); opacity: 1; z-index: 0; }
.roba-decor svg { opacity: .11; }
.diapozitiv-final .cabinetul { position: relative; z-index: 1; }

/* Scrisoarea: hârtie mai deschisă, scris caligrafic ușor de citit */
:root { --hartie: #faf5ea; --cerneala-stilou: #2b2015; }
.foaie {
  background-image:
    radial-gradient(ellipse at 20% 10%, rgba(255,255,255,.6), transparent 55%),
    radial-gradient(ellipse at 85% 90%, rgba(170,130,70,.08), transparent 50%),
    radial-gradient(ellipse at 50% 50%, transparent 66%, rgba(140,105,55,.14) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");
}
.indiciu { background: linear-gradient(rgba(250,245,234,.96) 60%, rgba(250,245,234,0)); }
.scrisoare { font-size: 1.08rem; line-height: 1.85; padding: 30px 30px 32px 32px; letter-spacing: .01em; }
.scrisoare p { margin: 0 0 .65em; text-indent: 1.6em; }
.scrisoare .adresare { font-size: 1.05em; }
.scrisoare .semnatura b { font-size: 1.25em; }
@media (max-width: 700px) { .scrisoare { font-size: 1.02rem; padding: 24px 18px 26px; } }
.roba-decor .ico svg { width: 100%; height: auto; aspect-ratio: 1; }
html:not(.cu-diapozitive) .diapozitiv { overflow-x: clip; }

/* ===== Prima pagină, aerisită: fundalul se vede și prin scrisoare, și în jurul titlului ===== */
#d-scrisoarea::before { background-image: linear-gradient(100deg, rgba(246,243,237,.35) 0%, rgba(246,243,237,.55) 45%, rgba(246,243,237,.2) 90%), url(imagini/fundal-1.jpg); opacity: .36; }
.cu-diapozitive .erou, .erou { background: transparent; border: 0; box-shadow: none; grid-template-columns: 1.6fr 1fr; }
.foaie { background-color: rgba(251,247,238,.62); box-shadow: 0 1px 2px rgba(60,40,15,.08), 0 12px 30px rgba(60,40,15,.08); backdrop-filter: blur(.6px); }
.indiciu { background: linear-gradient(rgba(251,247,238,.85) 55%, rgba(251,247,238,0)); }
.erou-roba { display: flex; justify-content: center; align-items: center; }
.erou-roba img { height: min(56vh, 430px); width: auto; filter: drop-shadow(0 14px 22px rgba(29,27,24,.18)); }
.ico-roba { height: 1.25em; width: auto; vertical-align: -.3em; margin-right: 7px; }
.incredere .cu-roba::before { content: none; }
.fapte .ico-roba.fapt { float: right; height: 46px; margin: -4px -4px 0 6px; }
@media (max-width: 1180px) { .erou { grid-template-columns: 1fr; } .erou-roba { order: 0; } .erou-roba img { height: 240px; } }

/* ===== Fundalurile continuă pe paginile din meniu ===== */
body:not([data-pagina="acasa"])::before { content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .26; mix-blend-mode: multiply;
  background: linear-gradient(100deg, rgba(246,243,237,.55), rgba(246,243,237,.15)), var(--fundal-pagina, url(imagini/fundal-1.jpg)) center / cover no-repeat; }
body[data-pagina="pasii"] { --fundal-pagina: url(imagini/fundal-2.jpg); }
body[data-pagina="servicii"] { --fundal-pagina: url(imagini/fundal-3.jpg); }
body[data-pagina="despre"] { --fundal-pagina: url(imagini/fundal-1.jpg); }
body[data-pagina="intrebari"] { --fundal-pagina: url(imagini/fundal-2.jpg); }
body[data-pagina="formular"], body[data-pagina="semnare"] { --fundal-pagina: url(imagini/fundal-3.jpg); }
body[data-pagina="confidentialitate"], body[data-pagina="termeni"] { --fundal-pagina: url(imagini/fundal-1.jpg); }
body:not([data-pagina="acasa"])::before { background-image: linear-gradient(100deg, rgba(246,243,237,.55), rgba(246,243,237,.15)), var(--fundal-pagina); }
:root { --alb: rgba(255,255,255,.8); }
.sectiune-alba { background: rgba(255,255,255,.55); }

/* Meniul are acum un nume mai lung: se strânge mai devreme */
@media (max-width: 1240px) {
  .buton-meniu { display: block; }
  .meniu { display: none; position: absolute; left: 0; right: 0; top: 72px; background: var(--fundal); flex-direction: column; align-items: stretch; padding: 8px 16px 16px; border-bottom: 1px solid var(--linie); box-shadow: var(--umbra); }
  .meniu.deschis { display: flex; }
  .meniu a { padding: 12px; font-size: 1.05rem; }
  .meniu a::after { display: none; }
}

/* Ghidurile din pagina mandatului digital */
.scara-detaliata li { padding-bottom: 34px; }
.ghid { margin-top: 14px; background: rgba(255,255,255,.72); border: 1px solid var(--linie); border-radius: 12px; padding: 0 20px; }
.ghid summary { cursor: pointer; padding: 14px 0; font-weight: 600; color: var(--accent); list-style: none; }
.ghid summary::-webkit-details-marker { display: none; }
.ghid summary::before { content: '+'; display: inline-block; width: 1.2em; color: var(--turcoaz); font-weight: 600; }
.ghid[open] summary::before { content: '–'; }
.ghid-coloane { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding: 4px 0 18px; }
.ghid-coloane.doua { grid-template-columns: 1fr 1fr; }
.ghid h4 { font: 600 1.15rem var(--serif); color: var(--cerneala); margin: 0 0 8px; }
.ghid ul, .ghid ol { margin: 0; padding-left: 1.1em; color: var(--text); font-size: .97rem; }
.ghid li { margin-bottom: .45em; }
.ghid p { font-size: .97rem; color: var(--text); }
.ghid .nota { font-size: .88rem; color: var(--text-slab); margin-top: 10px; }
@media (max-width: 760px) { .ghid-coloane, .ghid-coloane.doua { grid-template-columns: 1fr; } }
.scara-detaliata li { display: block; padding-left: 84px; }
.scara-detaliata li::before { position: absolute; left: 0; top: 0; }
.scara-detaliata li:not(:last-child)::after { left: 31px; }
.scara-detaliata h3 { margin-top: 16px; }
@media (max-width: 560px) { .scara-detaliata li { padding-left: 62px; } .scara-detaliata li::before { width: 46px; height: 46px; font-size: 1.3rem; } .scara-detaliata li:not(:last-child)::after { left: 22px; top: 46px; } }

/* Semnarea contractului */
.progres-semnare { display: flex; gap: 6px; list-style: none; padding: 0; margin: 0 0 28px; counter-reset: ps; }
.progres-semnare li { flex: 1; counter-increment: ps; font-size: .82rem; color: var(--text-slab); text-align: center; padding-top: 30px; position: relative; }
.progres-semnare li::before { content: counter(ps); position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 24px; height: 24px; border-radius: 50%; border: 1px solid var(--turcoaz-inchis); display: grid; place-items: center; font: 600 .8rem var(--sans); background: #fff; }
.progres-semnare li.gata { color: var(--accent); }
.progres-semnare li.gata::before { content: '✓'; background: var(--turcoaz); border-color: var(--turcoaz); color: #fff; }
.contract-text { max-height: 340px; overflow-y: auto; background: #fff; border: 1px solid #cdc5b6; border-radius: 10px; padding: 22px 24px; font: 400 1.02rem/1.65 var(--serif); }
.contract-text h3 { font-size: 1.35rem; text-align: center; }
.contract-text h4 { font: 600 1.05rem var(--serif); margin: 1.1em 0 .3em; color: var(--cerneala); }
.sfarsit-contract { text-align: center; color: var(--text-slab); font-style: italic; margin: 1.4em 0 0; }
.stare-citire { font-size: .92rem; color: var(--text-slab); margin: 8px 0 0; font-weight: 600; }
.stare-citire.confirmata { color: #2e7d4f; }
.chenar-semnatura { position: relative; height: 190px; border: 1px solid #cdc5b6; border-radius: 12px; background: #fff; touch-action: none; }
.chenar-semnatura canvas { width: 100%; height: 100%; display: block; cursor: crosshair; touch-action: none; border-radius: 12px; }
.linie-semnatura { position: absolute; left: 24px; right: 24px; bottom: 40px; border-top: 1px dashed #cdc5b6; font-size: .75rem; color: var(--text-slab); padding-top: 4px; pointer-events: none; letter-spacing: .1em; text-transform: uppercase; }
.sterge-semnatura { position: absolute; top: 8px; right: 10px; background: none; border: 0; color: var(--accent); font: 600 .88rem var(--sans); cursor: pointer; }
.camp.gresit .chenar-semnatura { border-color: #b3261e; }
.nota-semnare { font-size: .88rem; color: var(--text-slab); margin: 16px 0 0; }
.camp.gresit input[type=file] { outline: 1px solid #b3261e; }
/* Listele din ghiduri nu sunt pași mari */
.scara .ghid li { counter-increment: none; display: list-item; position: static; padding: 0; grid-template-columns: none; }
.scara .ghid li::before, .scara .ghid li::after { content: none; display: none; }
.scara .ghid ol li { list-style: decimal; }
.scara .ghid ul li { list-style: disc; }

/* ===== Cele două butoane, pe talerele unei balanțe care se leagănă ușor ===== */
.balanta-butoane { position: relative; width: 340px; height: 240px; display: block; margin: 4px 0 0 -10px; flex: none; }
.balanta-butoane .stalp { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.balanta-butoane .grinda { position: absolute; left: 20px; top: 22px; width: 300px; height: 20px; transform-origin: 150px 8px; animation: balans 7s ease-in-out infinite; }
.balanta-butoane .bara { width: 100%; height: 100%; display: block; overflow: visible; }
.balanta-butoane .taler { position: absolute; top: 8px; width: 130px; height: 156px; transform-origin: 65px 4px; animation: contrabalans 7s ease-in-out infinite; }
.balanta-butoane .taler-st { left: -57px; }
.balanta-butoane .taler-dr { left: 227px; }
.balanta-butoane .sfori { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund { position: absolute; left: 21px; top: 44px; width: 88px; height: 88px; font-size: .8rem; animation: none; z-index: 1; }
.balanta-butoane .buton-rotund:hover { transform: scale(1.06); }
@keyframes balans { 0%, 100% { transform: rotate(-2.6deg); } 50% { transform: rotate(2.6deg); } }
@keyframes contrabalans { 0%, 100% { transform: rotate(2.6deg); } 50% { transform: rotate(-2.6deg); } }
/* talerul pe care stă mouse-ul coboară, ca și cum ar fi mai greu */
.balanta-butoane:has(.taler-st a:hover) .grinda { animation: none; transform: rotate(-7deg); transition: transform .8s cubic-bezier(.3,.7,.2,1); }
.balanta-butoane:has(.taler-st a:hover) .taler { animation: none; transform: rotate(7deg); transition: transform .8s cubic-bezier(.3,.7,.2,1); }
.balanta-butoane:has(.taler-dr a:hover) .grinda { animation: none; transform: rotate(7deg); transition: transform .8s cubic-bezier(.3,.7,.2,1); }
.balanta-butoane:has(.taler-dr a:hover) .taler { animation: none; transform: rotate(-7deg); transition: transform .8s cubic-bezier(.3,.7,.2,1); }
@media (max-height: 820px) { .cu-diapozitive .balanta-butoane { transform: scale(.86); transform-origin: left top; height: 210px; margin-bottom: -6px; } }
@media (max-width: 700px) { .balanta-butoane { margin: 4px auto 0; } .cele-doua.balanta-butoane { display: block; } }
@media (prefers-reduced-motion: reduce) { .balanta-butoane .grinda, .balanta-butoane .taler { animation: none; } }

/* ===== Pagina mandatului digital: textul pe un chenar luminos, peste fundal ===== */
.panou-lectura { max-width: 1000px; margin: 34px auto 0; background: rgba(255,255,255,.95); border: 1px solid var(--linie); border-radius: 20px; box-shadow: 0 2px 4px rgba(29,27,24,.05), 0 24px 60px rgba(29,27,24,.12); padding: 10px 40px 20px; }
.panou-lectura .cap-pagina { padding-top: 40px; }
.panou-lectura .sectiune { padding: 30px 0 20px; }
.panou-lectura .final-pagina { padding-bottom: 40px; }
.panou-lectura .scara p, .panou-lectura .cap-pagina p { color: var(--text); }
.panou-lectura .ghid { background: var(--fundal); }
@media (max-width: 700px) { .panou-lectura { margin: 14px 10px 0; padding: 4px 14px 14px; border-radius: 14px; } }
.balanta-butoane { height: 252px; }
.balanta-butoane .grinda { top: 20px; height: 24px; transform-origin: 150px 9px; }
.balanta-butoane .taler { top: 9px; height: 160px; }
.balanta-butoane .stalp, .balanta-butoane .grinda { filter: drop-shadow(0 4px 6px rgba(90,65,20,.22)); }

/* Prima pagină cu balanța: totul încape pe ecran */
.cu-diapozitive .erou h1 { font-size: clamp(1.8rem, min(2.9vw, 4.4vh), 2.7rem); margin-bottom: .3em; }
.cu-diapozitive .erou .supratitlu { margin-bottom: 10px; }
.cu-diapozitive .erou .subtitlu { margin-bottom: .6em; }
.cu-diapozitive .erou .citat { margin-bottom: .7em; font-size: 1.08rem; }
.cu-diapozitive .erou .incredere { margin-bottom: 4px; }
.cu-diapozitive .erou .motto { margin-top: 4px; }
.cu-diapozitive .balanta-butoane { transform: scale(.8); transform-origin: left top; height: 205px; margin-bottom: 0; }
@media (max-height: 940px) { .cu-diapozitive .erou .citat { display: none; } }
@media (max-height: 820px) { .cu-diapozitive .balanta-butoane { transform: scale(.68); height: 186px; } }
.stilou svg { filter: drop-shadow(1px 3px 2px rgba(40,25,10,.18)); }

/* ===== Roata materiilor, cu balanța în mijloc ===== */
.cu-diapozitive .erou, .erou { grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr); gap: 10px 24px; padding-right: 10px; }
.roata-materii { position: relative; width: 100%; height: clamp(420px, calc(100vh - 190px), 640px); align-self: center; }
.orbita { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.materie { position: absolute; left: 0; top: 0; pointer-events: auto; white-space: nowrap; text-decoration: none;
  font: 600 .84rem/1 var(--sans); letter-spacing: .03em; color: var(--cerneala);
  padding: 9px 15px 9px 13px; border-radius: 999px; border: 1px solid rgba(166,138,85,.6);
  background: rgba(251,247,238,.9); box-shadow: 0 4px 14px rgba(60,45,20,.12); will-change: transform; }
.materie::before { content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--auriu); margin-right: 8px; vertical-align: 1px; transition: background .25s; }
.materie:hover, .materie:focus-visible { color: var(--accent); border-color: var(--turcoaz); background: #fff; }
.materie:hover::before, .materie:focus-visible::before { background: var(--turcoaz); }
.materie:focus-visible { outline: 3px solid var(--auriu); outline-offset: 2px; }
/* orbita desenată discret: o elipsă aurie, punctată */
.roata-materii::before { content: ''; position: absolute; inset: 18px 70px; border: 1px dashed rgba(166,138,85,.45); border-radius: 50%; pointer-events: none; }
.roata-materii .balanta-butoane, .cu-diapozitive .roata-materii .balanta-butoane { position: absolute; left: 50%; top: 50%; margin: 0; height: 252px; z-index: 1;
  transform: translate(-50%, -50%) scale(var(--sb, .7)); transform-origin: center; }
/* butoanele turcoaz pulsează din nou, pe talere */
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund { animation: respira 2.8s ease-in-out infinite; }
.balanta-butoane .taler-dr .buton-rotund { animation-delay: 1.4s; }
.balanta-butoane .buton-rotund:hover { animation-play-state: paused; }
/* roba, pe diapozitivul Cabinetul */
.diapozitiv-final .cabinetul { grid-template-columns: 1fr 1.25fr auto; }
.roba-cabinet img { height: clamp(200px, 38vh, 320px); width: auto; filter: drop-shadow(0 12px 18px rgba(29,27,24,.18)); }
@media (max-width: 1180px) {
  .cu-diapozitive .erou, .erou { grid-template-columns: 1fr; }
  .roata-materii { height: 460px; max-width: 620px; margin: 0 auto; }
  .diapozitiv-final .cabinetul { grid-template-columns: 1fr 1.3fr; }
  .roba-cabinet { display: none; }
}
@media (max-width: 700px) {
  .roata-materii { height: 420px; }
  .roata-materii::before { inset: 14px 40px; }
  .materie { font-size: .74rem; padding: 7px 11px 7px 10px; }
}
@media (prefers-reduced-motion: reduce) { .balanta-butoane .buton-rotund { animation: none; } }

/* ===== Pagina materiilor ===== */
body[data-pagina="materii"] { --fundal-pagina: url(imagini/fundal-2.jpg); }
.cuprins-materii { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 22px; }
.cuprins-materii a { text-decoration: none; color: var(--cerneala); font-size: .92rem; padding: 7px 14px; border: 1px solid var(--linie); border-radius: 999px; background: var(--fundal); }
.cuprins-materii a:hover { border-color: var(--turcoaz); color: var(--accent); }
.materii .continut { max-width: 820px; }
.materie-detaliu { padding: 30px 0 26px; border-top: 1px solid var(--linie); scroll-margin-top: 90px; }
.materie-detaliu:first-child { border-top: 0; }
.materie-detaliu h2 { font-size: clamp(1.7rem, 3.2vw, 2.2rem); margin-bottom: .25em; display: flex; align-items: center; gap: 12px; }
.materie-detaliu h2::before { content: ''; width: 10px; height: 10px; border-radius: 50%; background: var(--turcoaz); flex: none; }
.intro-materie { font-size: 1.08rem; color: var(--text); }
.materie-detaliu dl { display: grid; grid-template-columns: minmax(150px, 220px) 1fr; gap: 10px 22px; margin: 18px 0 0; }
.materie-detaliu dt { font: 600 1.08rem var(--serif); color: var(--cerneala); }
.materie-detaliu dd { margin: 0; color: var(--text); }
.nota-materie { margin: 16px 0 0; padding: 12px 16px; background: var(--fundal); border-left: 2px solid var(--turcoaz); border-radius: 0 10px 10px 0; font-size: .95rem; color: var(--text-slab); }
.nota-generala { margin-top: 24px; font-size: .9rem; color: var(--text-slab); text-align: center; }
.materie-detaliu:target { animation: evidentiaza 2.4s ease-out; }
@keyframes evidentiaza { 0% { background: rgba(79,159,148,.16); } 100% { background: transparent; } }
@media (max-width: 640px) { .materie-detaliu dl { grid-template-columns: 1fr; gap: 2px; } .materie-detaliu dd { margin-bottom: 10px; } }
.titlu-card { color: inherit; text-decoration: none; background-image: linear-gradient(var(--turcoaz), var(--turcoaz)); background-size: 0 1px; background-repeat: no-repeat; background-position: 0 100%; transition: background-size .35s; }
.titlu-card:hover { color: var(--accent); background-size: 100% 1px; }
.titlu-card::after { content: ' →'; font-size: .8em; color: var(--turcoaz); }

/* Roata are nevoie de loc: textul se strânge, iar etichetele lungi trec pe două rânduri */
.cu-diapozitive .acasa { padding-right: 70px; }
.cu-diapozitive .erou, .erou { grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); }
.roata-materii { height: clamp(400px, 64vh, 540px); }
.roata-materii::before { content: none; }
.elipsa { position: absolute; border: 1px dashed rgba(166,138,85,.5); border-radius: 50%; pointer-events: none; z-index: 0; }
.materie { white-space: normal; max-width: 128px; text-align: center; line-height: 1.18; border-radius: 18px; padding: 8px 13px; font-size: .8rem; }
.materie::before { display: block; margin: 0 auto 5px; }
.roba-cabinet img { height: clamp(170px, 30vh, 300px); }
@media (max-height: 820px) { .roba-cabinet img { height: 24vh; } }

/* Așezarea finală a primului diapozitiv: textul sus, roata cu balanța dedesubt, pe toată lățimea */
.cu-diapozitive .celula-erou { align-self: stretch; display: flex; min-height: 0; }
.cu-diapozitive .erou { display: flex; flex-direction: column; width: 100%; height: 100%; padding: 6px 0 0 8px; gap: 4px; }
.cu-diapozitive .erou-text { flex: none; }
.cu-diapozitive .erou .supratitlu { margin-bottom: 8px; }
.cu-diapozitive .erou h1 { font-size: clamp(1.7rem, min(2.5vw, 4.3vh), 2.55rem); max-width: 20em; margin-bottom: .25em; }
.cu-diapozitive .erou .subtitlu { max-width: 44em; margin-bottom: .4em; }
.cu-diapozitive .erou .citat { display: none; }
.cu-diapozitive .erou .incredere { margin-bottom: 0; }
.cu-diapozitive .erou .motto { display: none; }
.cu-diapozitive .roata-materii { flex: 1; height: auto; min-height: 260px; max-width: none; }
/* pe ecranele înguste: balanța, iar materiile dedesubt, ca listă */
.roata-materii.roata-lista { height: auto; display: flex; flex-direction: column-reverse; align-items: center; gap: 12px; padding-bottom: 8px; }
.roata-lista .elipsa { display: none; }
.roata-lista .orbita { position: static; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; pointer-events: auto; }
.roata-lista .materie { position: static; transform: none !important; max-width: none; }
.roata-lista .materie::before { display: inline-block; margin: 0 7px 0 0; }
.roata-materii.roata-lista .balanta-butoane { position: relative; left: auto; top: auto; transform: scale(.88); transform-origin: top center; margin: 0 auto -28px; }
@media (max-width: 1180px) {
  .cu-diapozitive .erou, .erou { grid-template-columns: 1fr; }
  .roata-materii { height: 460px; }
}
@media (max-width: 700px) { .roata-materii { height: 420px; } }

/* ===== Mesajul principal, mai marcant ===== */
.titlu-erou, .cu-diapozitive .erou h1.titlu-erou { font-size: clamp(2.05rem, min(3.2vw, 5.4vh), 3.3rem); line-height: 1.07; letter-spacing: -.015em; max-width: 18em; text-wrap: balance; }
.titlu-erou em { display: block; font-style: italic; font-weight: 500; color: var(--accent); margin-top: .12em; }
.cu-diapozitive .erou .subtitlu { font-size: clamp(.98rem, 2vh, 1.1rem); max-width: 46em; }

/* ===== Scrisul apare singur, lin, fără pană ===== */
.scrisoare .lit { animation: cerneala .9s ease-out both; }
@keyframes cerneala { from { opacity: 0; filter: blur(1.2px); } to { opacity: 1; filter: none; } }
.stilou { display: none; }

/* ===== Butoanele de pe talere: greutăți de balanță, turcoaz satinat ===== */
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund {
  left: 14px; top: 64px; width: 102px; height: 68px; padding: 6px 6px 0; border-radius: 10px 10px 7px 7px / 12px 12px 7px 7px;
  font-size: .76rem; line-height: 1.12; letter-spacing: .01em; overflow: visible;
  background: linear-gradient(90deg, #275f58 0%, #4f9f94 18%, #9fd6cc 36%, #d2f0ea 44%, #6cb6aa 60%, #3c867c 82%, #24564f 100%);
  box-shadow: inset 0 -6px 10px rgba(15,50,45,.28), 0 8px 16px rgba(47,113,105,.3);
  transform-origin: 50% 100%; }
.balanta-butoane .buton-rotund::before { content: ''; position: absolute; left: 50%; top: -19px; width: 30px; height: 22px; margin-left: -15px; border-radius: 50% 50% 5px 5px / 60% 60% 5px 5px;
  background: linear-gradient(90deg, #275f58, #6cb6aa 35%, #d2f0ea 48%, #4f9f94 70%, #24564f); box-shadow: inset 0 -3px 5px rgba(15,50,45,.3); z-index: -1; }
.balanta-butoane .buton-rotund::after { content: ''; position: absolute; left: 0; right: 0; top: -6px; height: 13px; border-radius: 50%;
  background: radial-gradient(ellipse at 45% 40%, #e2f6f2, #8fcdc2 55%, #3c867c 100%); z-index: -1; }
.balanta-butoane .buton-rotund { isolation: isolate; }

/* ===== Onorarii transparente, în capul paginii Servicii ===== */
.onorarii-sus { padding-top: 10px; }
.trepte-onorariu { display: grid; grid-template-columns: 1fr 1.15fr; gap: 20px; align-items: stretch; }
.treapta-onorariu { background: rgba(255,255,255,.94); border: 1px solid var(--linie); border-radius: 16px; padding: 26px 28px 20px; box-shadow: var(--umbra); }
.treapta-onorariu.principala { border-color: var(--turcoaz); box-shadow: 0 0 0 1px var(--turcoaz) inset, var(--umbra); }
.eticheta-onorariu { font: 600 .78rem var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--accent); margin-bottom: 10px; }
.treapta-onorariu .pret { flex-wrap: wrap; margin-bottom: 12px; }
.treapta-onorariu .pret b { font-size: clamp(1.9rem, 3.4vw, 2.5rem); }
.treapta-onorariu .pret > span { font: 500 1.15rem var(--serif); color: var(--text-slab); }
.scadere { font-weight: 600; color: var(--cerneala); background: var(--accent-deschis); border-radius: 10px; padding: 10px 14px; }
.nota-onorariu { margin: 18px auto 0; max-width: 52em; text-align: center; font-size: .95rem; color: var(--text-slab); }
@media (max-width: 760px) { .trepte-onorariu { grid-template-columns: 1fr; } }

/* ===== Despre mine: fotografii ca într-un album, CV sumar ===== */
.panou-despre { position: relative; max-width: 1120px; padding: 30px 44px 20px; }
.insemne { position: absolute; top: 22px; right: 26px; display: flex; align-items: center; gap: 10px; opacity: .9; }
.insemne img { height: 64px; width: auto; }
.insemne div { display: flex; flex-direction: column; gap: 4px; }
.insemne a { font: 600 .72rem var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--text-slab); text-decoration: none; border-bottom: 1px solid var(--linie); padding-bottom: 2px; }
.insemne a[href]:hover { color: var(--accent); border-color: var(--turcoaz); }
.despre-cap { display: grid; grid-template-columns: minmax(240px, 380px) 1fr; gap: 44px; align-items: center; padding: 20px 0 34px; }
.despre-intro h1 { font-size: clamp(2.4rem, 4.6vw, 3.6rem); margin-bottom: .3em; }
.despre-lead { font: 500 1.28rem/1.5 var(--serif); color: var(--cerneala); }
.poza-polaroid { margin: 0; background: #fffdf8; padding: 12px 12px 14px; border-radius: 3px; box-shadow: 0 2px 4px rgba(40,30,15,.1), 0 18px 34px rgba(40,30,15,.16); }
.poza-polaroid img { display: block; width: 100%; height: auto; border-radius: 1px; }
.poza-polaroid figcaption { font: 400 1.05rem/1.3 var(--mana); color: var(--cerneala-stilou); text-align: center; padding-top: 10px; }
.poza-mare { transform: rotate(-1.6deg); }
.despre-parcurs { display: grid; grid-template-columns: 1fr minmax(240px, 330px); gap: 44px; align-items: start; border-top: 1px solid var(--linie); padding-top: 30px; }
.parcurs-text h2 { font-size: 1.7rem; margin: 1.4em 0 .6em; }
.parcurs-text h2:first-child { margin-top: 0; }
.cronologie { list-style: none; margin: 0; padding: 0 0 0 4px; border-left: 1.5px solid var(--turcoaz); }
.cronologie li { position: relative; display: grid; grid-template-columns: 150px 1fr; gap: 4px 18px; padding: 0 0 16px 22px; }
.cronologie li::before { content: ''; position: absolute; left: -6px; top: 7px; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid var(--turcoaz); }
.cronologie li:last-child::before { background: var(--turcoaz); }
.cronologie .an { font: 600 1.02rem var(--serif); color: var(--accent); }
.instante, .limbi { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.instante li, .limbi li { display: grid; grid-template-columns: 110px 1fr; gap: 14px; }
.instante b, .limbi b { font: 600 1rem var(--serif); color: var(--cerneala); }
.album { display: grid; gap: 26px; padding-top: 6px; }
.inclinata-st { transform: rotate(-2deg); }
.inclinata-dr { transform: rotate(1.8deg); }
.poza-polaroid.apare { opacity: 0; }
.poza-polaroid.apare.vizibil { opacity: 1; }
@media (max-width: 900px) {
  .despre-cap, .despre-parcurs { grid-template-columns: 1fr; }
  .poza-mare { max-width: 340px; margin: 0 auto; }
  .album { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
  .insemne { position: static; justify-content: flex-end; margin-bottom: 6px; }
}
@media (max-width: 560px) { .panou-despre { padding: 16px 16px 10px; } .cronologie li { grid-template-columns: 1fr; } .instante li, .limbi li { grid-template-columns: 1fr; gap: 0; } }

/* ===== Diaspora ===== */
body[data-pagina="diaspora"] { --fundal-pagina: url(imagini/fundal-1.jpg); }
.panou-diaspora { max-width: 1120px; }
.diaspora-corp { display: grid; grid-template-columns: 1fr minmax(240px, 330px); gap: 44px; align-items: start; padding: 10px 4px 10px; }
.diaspora-text h2 { font-size: 1.6rem; margin: 1.3em 0 .5em; }
.diaspora-text .lista-bife li { margin-bottom: .8em; }
.diaspora-lateral { display: grid; gap: 20px; }
.caseta-diaspora { background: var(--fundal); border: 1px solid var(--linie); border-radius: 14px; padding: 18px 20px; }
.caseta-diaspora h3 { font-size: 1.25rem; margin-bottom: .4em; }
.caseta-diaspora p { margin: 0 0 .6em; font-size: .97rem; }
.caseta-diaspora .limbi li { grid-template-columns: 96px 1fr; font-size: .95rem; }
.pret-diaspora b { font: 600 2rem var(--serif); color: var(--cerneala); }
.pret-diaspora span { color: var(--text-slab); }
@media (max-width: 900px) { .diaspora-corp { grid-template-columns: 1fr; } .diaspora-lateral .poza-polaroid { max-width: 320px; margin: 0 auto; } }

/* Balanța se înclină alene, când la stânga, când la dreapta; materiile stau pe loc */
.balanta-butoane .grinda { animation: balans 11s ease-in-out infinite; }
.balanta-butoane .taler { animation: contrabalans 11s ease-in-out infinite; }
@keyframes balans { 0%, 100% { transform: rotate(-4.5deg); } 50% { transform: rotate(4.5deg); } }
@keyframes contrabalans { 0%, 100% { transform: rotate(4.5deg); } 50% { transform: rotate(-4.5deg); } }
.materie { transition: color .25s, border-color .25s, background .25s; }

/* Diapozitivul Cabinetul are acum mai mult text: încape și pe ecrane joase */
@media (max-height: 820px) {
  .cu-diapozitive .diapozitiv-final .titlu-mare { font-size: clamp(1.6rem, 4.6vh, 2.4rem); margin: 10px 0 10px; }
  .cu-diapozitive .diapozitiv-final .cabinetul { margin-top: 6px; }
  .cu-diapozitive .diapozitiv-final .text p { margin-bottom: .6em; font-size: .95rem; }
  .cu-diapozitive .diapozitiv-final .motto { margin-top: 10px; }
  .cu-diapozitive .diapozitiv-final .carte { max-width: 340px; }
}
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund { font-size: .92rem; font-weight: 700; text-shadow: 0 1px 2px rgba(10,40,36,.6); padding: 8px 4px 0; }
@media (max-height: 820px) { .roba-cabinet img { height: 20vh; } }

/* Însemnele de pe Despre mine: roba și siglele barourilor */
.insemne { gap: 12px; opacity: 1; }
.insemne img { height: 58px; width: auto; }
.insemne .insemn-roba { height: 64px; margin-right: 4px; }
@media (max-width: 900px) { .insemne { justify-content: center; } .insemne img { height: 50px; } }

/* ===== Prima pagină, aerisită: balanța singură, cu bulinele mici pe talere ===== */
.balanta-scena { position: relative; flex: 1; min-height: 230px; display: flex; align-items: center; justify-content: center; }
.balanta-scena .balanta-butoane, .cu-diapozitive .balanta-scena .balanta-butoane { position: relative; left: auto; top: auto; margin: 0; height: 252px; transform: scale(.92); transform-origin: center; }
@media (max-height: 820px) { .cu-diapozitive .balanta-scena .balanta-butoane { transform: scale(.78); } }
@media (max-width: 700px) { .balanta-scena .balanta-butoane { transform: scale(.82); margin: -10px auto; } }
.cu-diapozitive .erou { gap: 10px; }
.cu-diapozitive .erou .subtitlu { max-width: 40em; }
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund {
  left: 27px; top: 58px; width: 76px; height: 76px; padding: 0 6px; border-radius: 50%;
  font-size: .78rem; font-weight: 600; line-height: 1.15;
  background: radial-gradient(circle at 32% 24%, #c4ebe4 0%, #7dc2b7 22%, var(--turcoaz) 55%, var(--turcoaz-inchis) 100%);
  box-shadow: inset 0 2px 5px rgba(255,255,255,.55), inset 0 -7px 12px rgba(20,60,55,.22), 0 8px 18px rgba(47,113,105,.28);
  transform-origin: 50% 50%; }
.balanta-butoane .buton-rotund::before, .balanta-butoane .buton-rotund::after { content: none; }

/* ===== Prima pagină: titlul drept, text mai mare, siglele pe dreapta, balanța mai mare ===== */
.titlu-erou em { font-style: normal; }
.cu-diapozitive .erou .subtitlu, .erou .subtitlu { font-size: clamp(1.05rem, 2.3vh, 1.24rem); line-height: 1.55; }
.cu-diapozitive .erou .incredere { font-size: 1rem; }
.cu-diapozitive .celula-erou, .celula-erou { position: relative; }
.cu-diapozitive .erou { padding-right: 104px; }
.sigle-erou { position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: center; gap: 22px; z-index: 2; }
.sigle-erou img { width: 74px; height: auto; display: block; filter: drop-shadow(0 4px 8px rgba(29,27,24,.14)); }
.sigle-erou.intra { transform: translateY(-50%) translateX(16px); }
.diapozitiv.activ .sigle-erou.intra { transform: translateY(-50%); }
@media (max-width: 960px) {
  .sigle-erou, .sigle-erou.intra, .diapozitiv.activ .sigle-erou.intra { position: static; transform: none; flex-direction: row; justify-content: center; margin: 6px 0 4px; }
  .sigle-erou img { width: 60px; }
  .cu-diapozitive .erou { padding-right: 0; }
}
/* bulinele mari, ca înainte de greutăți, și balanța mai mare */
.balanta-butoane .buton-rotund, .cu-diapozitive .balanta-butoane .buton-rotund { left: 18px; top: 40px; width: 94px; height: 94px; font-size: .9rem; font-weight: 600; padding: 0 8px; }
.balanta-scena .balanta-butoane, .cu-diapozitive .balanta-scena .balanta-butoane { transform: scale(1.06); }
@media (max-height: 900px) { .cu-diapozitive .balanta-scena .balanta-butoane { transform: scale(.94); } }
@media (max-height: 800px) { .cu-diapozitive .balanta-scena .balanta-butoane { transform: scale(.84); } }
@media (max-width: 700px) { .balanta-scena .balanta-butoane { transform: scale(.9); margin: 0 auto; } }

/* ===== Scrisoarea, direct pe fundal: fără foaie și fără chenar ===== */
.foaie, .cu-diapozitive .foaie { background: none !important; background-image: none !important; box-shadow: none; border: 0; backdrop-filter: none; scrollbar-width: none; }
.foaie::-webkit-scrollbar { display: none; }
.indiciu { background: none; color: #6d5b40; }
.scrisoare { font-size: 1.24rem; line-height: 1.8; padding: 22px 18px 26px 8px; color: #24170b;
  -webkit-text-stroke: .45px currentColor; text-shadow: 0 0 1px rgba(255,250,235,.9), 0 0 10px rgba(246,243,237,.95), 0 0 18px rgba(246,243,237,.8); }
.scrisoare .adresare { font-size: 1.1em; }
@media (max-width: 700px) { .scrisoare { font-size: 1.12rem; padding: 18px 6px 20px; } }

/* Antetul contractului: Baroul Argeș și cabinetul */
.antet-contract { display: grid; grid-template-columns: 64px 1fr; gap: 6px 14px; align-items: center; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1.5px double var(--cerneala); font-family: var(--sans); }
.antet-contract img { grid-row: span 2; width: 64px; height: auto; }
.antet-barou span { display: block; font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--text-slab); }
.antet-barou b { font: 600 1.15rem var(--serif); letter-spacing: .08em; text-transform: uppercase; }
.antet-cabinet { font-size: .8rem; color: var(--text-slab); line-height: 1.45; }
.antet-cabinet b { display: block; font: 600 .98rem var(--serif); color: var(--cerneala); }
.antet-cabinet > span { display: block; }
.contract-text [data-client].necompletat { color: var(--text-slab); font-style: italic; }
.nr-contract { text-align: center; color: var(--text-slab); margin-top: -.4em; }
.semnaturi-contract { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 1.6em; }
.semnaturi-contract div { display: flex; flex-direction: column; gap: 2px; }
.semnaturi-contract small { color: var(--text-slab); font-style: italic; }
.contract-text p { text-align: justify; }

/* Sigla CEDO pe Despre mine, ca trimitere spre practica de la Strasbourg */
.sigla-cedo { margin: 26px 0 6px; padding: 18px 20px 14px; border: 1px solid var(--linie); border-radius: 14px; background: #fff; text-align: center; }
.sigla-cedo img { width: min(100%, 380px); height: auto; display: block; margin: 0 auto 10px; }
.sigla-cedo figcaption { font: italic 500 1.02rem/1.45 var(--serif); color: var(--text-slab); }
.pret-strainatate { margin: -6px 0 12px; color: var(--text-slab); }
.pret-strainatate b { font: 600 1.25rem var(--serif); color: var(--cerneala); }

@font-face { font-family: 'Montserrat'; font-weight: 500; font-style: normal; font-display: swap; src: url(fonturi/montserrat-latin-500-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: 'Montserrat'; font-weight: 500; font-style: normal; font-display: swap; src: url(fonturi/montserrat-latin-ext-500-normal.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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: 'Montserrat'; font-weight: 600; font-style: normal; font-display: swap; src: url(fonturi/montserrat-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: 'Montserrat'; font-weight: 600; font-style: normal; font-display: swap; src: url(fonturi/montserrat-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+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: 'Montserrat'; font-weight: 700; font-style: normal; font-display: swap; src: url(fonturi/montserrat-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: 'Montserrat'; font-weight: 700; font-style: normal; font-display: swap; src: url(fonturi/montserrat-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+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: 'Lora'; font-weight: 400; font-style: normal; font-display: swap; src: url(fonturi/lora-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: 'Lora'; font-weight: 400; font-style: normal; font-display: swap; src: url(fonturi/lora-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+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: 'Lora'; font-weight: 400; font-style: italic; font-display: swap; src: url(fonturi/lora-latin-400-italic.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: 'Lora'; font-weight: 400; font-style: italic; font-display: swap; src: url(fonturi/lora-latin-ext-400-italic.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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; }

/* ================================================================
   REFORMA: sobru și elegant (după modelul Stoica & Asociații)
   Titluri și meniu: Montserrat; text: Lora; benzi întunecate cu gravuri
   ================================================================ */
:root {
  --titlu: 'Montserrat', 'Segoe UI', system-ui, sans-serif;
  --text-font: 'Lora', Georgia, 'Times New Roman', serif;
  --serif: var(--titlu);
  --sans: 'Montserrat', 'Segoe UI', system-ui, sans-serif;
  --fundal: #f4f4f2;
  --cerneala: #1e1f22;
  --text: #34353a;
  --text-slab: #6b6c70;
  --linie: #e1e0dc;
  --alb: #ffffff;
}
body { background: var(--fundal); font: 400 17px/1.75 var(--text-font); color: var(--text); }
h1, h2, h3, h4 { font-family: var(--titlu); font-weight: 700; letter-spacing: -.01em; color: var(--cerneala); }
h2 { font-weight: 600; }
h3 { font-weight: 600; font-size: 1.18rem; }
.supratitlu, .eticheta-sectiune, .eticheta-onorariu, .cale { font-family: var(--titlu); font-weight: 600; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; }
.buton, .camp label, .camp .eticheta, .formular legend, .meniu a, .lista-fisiere, .optiuni label { font-family: var(--titlu); }
.formular legend { font-weight: 600; font-size: 1.2rem; }
.buton { font-weight: 600; letter-spacing: .04em; }
.buton-mare { font-size: .95rem; text-transform: uppercase; letter-spacing: .1em; padding: 20px 38px; }

/* Paginile interioare: fără gravuri în fundal, ele trec în bandă */
body:not([data-pagina="acasa"])::before { content: none !important; }
.panou-lectura, .panou-despre, .panou-diaspora { background: transparent; border: 0; box-shadow: none; padding: 0 20px; margin: 0 auto; max-width: 1120px; }
.panou-lectura .cap-pagina { padding-top: 46px; }
.cap-pagina p { font-size: 1.12rem; color: var(--text); }

/* Antetul */
.antet { background: rgba(244,244,242,.96); border-bottom: 1px solid var(--linie); }
.antet .continut { min-height: 84px; max-width: 1240px; }
.marca { gap: 14px; }
.marca img { width: 44px; }
.marca b { font: 600 1.32rem/1.05 var(--titlu); letter-spacing: .06em; text-transform: uppercase; }
.marca small { font: 500 .7rem var(--titlu); letter-spacing: .2em; text-transform: uppercase; color: var(--text-slab); margin-top: 3px; }
.meniu { gap: 2px; }
.meniu > a, .meniu-grup > a { font: 500 .78rem var(--titlu); letter-spacing: .11em; text-transform: uppercase; color: var(--cerneala); padding: 10px 14px; }
.meniu a[aria-current="page"] { color: var(--cerneala); font-weight: 600; }
.meniu a::after { left: 14px; right: 14px; bottom: 2px; background: var(--auriu); }
.meniu a.spre-formular { margin-left: 12px; border: 1px solid var(--cerneala); border-radius: 0; padding: 10px 18px; color: var(--cerneala); font-weight: 600; }
.meniu a.spre-formular:hover { background: var(--cerneala); color: #fff; }
.meniu a.spre-formular::after { content: none; }
.meniu-grup { position: relative; }
.sageata-mica { font-size: .7em; opacity: .7; }
.submeniu { position: absolute; left: 0; top: 100%; min-width: 230px; background: #fff; border: 1px solid var(--linie); box-shadow: 0 18px 40px rgba(20,20,25,.12); padding: 8px 0; opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .25s, transform .25s, visibility .25s; z-index: 20; }
.meniu-grup:hover .submeniu, .meniu-grup:focus-within .submeniu { opacity: 1; visibility: visible; transform: none; }
.submeniu a { display: block; font: 500 .82rem var(--titlu); letter-spacing: .04em; text-transform: none; color: var(--text); padding: 10px 20px; text-decoration: none; }
.submeniu a:hover, .submeniu a.activ { background: var(--fundal); color: var(--cerneala); }
.submeniu a::after { content: none; }
@media (max-width: 1240px) {
  .meniu .meniu-grup { display: flex; flex-direction: column; }
  .submeniu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0 0 6px 14px; background: transparent; min-width: 0; }
  .meniu a.spre-formular { margin: 8px 0 0; text-align: center; }
}

/* Banda de titlu, întunecată, cu gravură alb-negru */
.banda { position: relative; overflow: hidden; background: #121214; color: #fff; padding: 74px 0 70px; }
.banda::before { content: ''; position: absolute; inset: 0; background: center 40% / cover no-repeat; filter: grayscale(1) contrast(1.15) brightness(.85); opacity: .55; }
.banda::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,10,12,.96) 0%, rgba(10,10,12,.82) 34%, rgba(10,10,12,.25) 100%); }
.banda[data-banda="1"]::before { background-image: url(imagini/fundal-1.jpg); }
.banda[data-banda="2"]::before { background-image: url(imagini/fundal-2.jpg); }
.banda[data-banda="3"]::before { background-image: url(imagini/fundal-3.jpg); }
.banda .continut { position: relative; z-index: 1; max-width: 1240px; }
.banda .cale { color: #d8d6d0; margin-bottom: 12px; }
.banda .cale::before { content: '/ '; }
.banda h1 { color: #fff; font-size: clamp(2.3rem, 5vw, 3.6rem); margin: 0; letter-spacing: -.015em; }
.banda h1::after { content: ''; display: block; width: 64px; height: 2px; background: var(--auriu); margin-top: 22px; }

/* Subnavigația „Cum lucrăm” */
.subnav { background: #fff; border-bottom: 1px solid var(--linie); position: sticky; top: 84px; z-index: 8; }
.subnav .continut { display: flex; gap: 6px; flex-wrap: wrap; max-width: 1240px; }
.subnav a { font: 600 .74rem var(--titlu); letter-spacing: .14em; text-transform: uppercase; color: var(--text-slab); text-decoration: none; padding: 18px 16px 16px; border-bottom: 2px solid transparent; }
.subnav a:hover { color: var(--cerneala); }
.subnav a[aria-current="page"] { color: var(--cerneala); border-bottom-color: var(--auriu); }
@media (max-width: 700px) { .subnav { top: 72px; } .subnav .continut { flex-wrap: nowrap; overflow-x: auto; } .subnav a { white-space: nowrap; padding: 14px 10px; } }

/* ===== Prima pagină, reformată ===== */
#d-acasa { background: #111113; color: #fff; }
#d-acasa::before { background-image: url(imagini/fundal-1.jpg) !important; filter: grayscale(1) contrast(1.1) brightness(.75); opacity: .5 !important; mix-blend-mode: normal !important; }
#d-acasa::after { content: ''; position: absolute; inset: 0; z-index: 0; background: linear-gradient(95deg, rgba(10,10,12,.97) 0%, rgba(10,10,12,.86) 42%, rgba(10,10,12,.45) 100%); pointer-events: none; }
.erou-nou { position: relative; z-index: 1; width: 100%; max-width: 1240px; margin: 0 auto; padding: clamp(30px, 6vh, 70px) 40px; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 30px 60px; align-items: center; }
.eticheta-erou { font: 600 .74rem var(--titlu); letter-spacing: .22em; text-transform: uppercase; color: #cfcbc2; margin-bottom: 22px; }
.eticheta-erou::before { content: '/ '; color: var(--auriu); }
.titlu-sobru { color: #fff; font: 700 clamp(2.2rem, min(4vw, 7vh), 3.7rem)/1.08 var(--titlu); letter-spacing: -.02em; margin: 0 0 26px; text-wrap: balance; }
.motto-erou { display: flex; align-items: center; gap: 18px; margin: 0 0 26px; }
.motto-erou::before, .motto-erou::after { content: ''; height: 1px; background: linear-gradient(90deg, transparent, var(--auriu)); flex: 0 0 56px; }
.motto-erou::after { background: linear-gradient(90deg, var(--auriu), transparent); flex: 1 1 auto; max-width: 160px; }
.motto-erou span { font: 500 .86rem var(--titlu); letter-spacing: .5em; text-transform: uppercase; color: var(--auriu); white-space: nowrap; }
.lead-sobru { font: italic 400 clamp(1.05rem, 2.3vh, 1.24rem)/1.65 var(--text-font); color: #dedbd4; max-width: 34em; margin: 0 0 30px; }
.repere { list-style: none; margin: 0; padding: 22px 0 0; display: flex; flex-wrap: wrap; gap: 14px 42px; border-top: 1px solid rgba(255,255,255,.14); }
.repere li { display: flex; flex-direction: column; }
.repere b { font: 600 1.5rem var(--titlu); color: #fff; letter-spacing: .02em; }
.repere span { font: 500 .7rem var(--titlu); letter-spacing: .14em; text-transform: uppercase; color: #a9a6a0; }
.erou-dreapta { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.erou-dreapta .balanta-butoane, .cu-diapozitive .erou-dreapta .balanta-butoane { position: relative; left: auto; top: auto; margin: 0; transform: scale(1.12); transform-origin: center top; height: 280px; }
@media (max-height: 820px) { .cu-diapozitive .erou-dreapta .balanta-butoane { transform: scale(.92); height: 236px; } }
.erou-dreapta .stalp, .erou-dreapta .grinda { filter: drop-shadow(0 6px 14px rgba(0,0,0,.45)); }
.legatura-concept { font: 500 .78rem var(--titlu); letter-spacing: .14em; text-transform: uppercase; color: #dedbd4; text-decoration: none; border-bottom: 1px solid rgba(166,138,85,.6); padding-bottom: 4px; margin-top: 18px; }
.legatura-concept:hover { color: #fff; border-color: var(--auriu); }
.sigla-erou { position: absolute; right: 40px; bottom: clamp(24px, 4vh, 44px); margin: 0; display: flex; align-items: center; gap: 14px; }
.sigla-erou img { width: 92px; height: auto; filter: drop-shadow(0 4px 12px rgba(0,0,0,.5)); }
.sigla-erou figcaption { font: 500 .66rem/1.5 var(--titlu); letter-spacing: .14em; text-transform: uppercase; color: #a9a6a0; }
html:not(.cu-diapozitive) #d-acasa { padding: 0; }
html:not(.cu-diapozitive) .erou-nou { grid-template-columns: minmax(0, 1fr); padding: 54px 22px 40px; }
html:not(.cu-diapozitive) .sigla-erou { position: static; justify-content: center; margin-top: 10px; }
.cu-diapozitive .puncte button { border-color: #b9b6ae; }
.cu-diapozitive.pe-acasa .sageata { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.4); }

/* Diapozitivele 2–4: titluri sobre */
.titlu-mare { font-family: var(--titlu); font-weight: 600; letter-spacing: -.02em; }
.titlu-mare em { font-family: var(--text-font); font-weight: 400; }
.eticheta-sectiune span { font: 600 .9rem var(--titlu); color: var(--auriu); }

/* Concept: scrisoarea, pe pagina ei */
.pagina-scrisoare { padding-top: 10px; }
.pagina-scrisoare .indiciu { position: static; background: none; text-align: left; padding: 0 0 8px; font-family: var(--titlu); letter-spacing: .06em; }
.pagina-scrisoare .scrisoare { font-size: 1.34rem; line-height: 1.85; padding: 10px 0 20px; color: #1f160c; -webkit-text-stroke: .35px currentColor; text-shadow: none; }
.scrisoare .semnatura [data-scris] span { display: inline; }
.scrisoare .semnatura > span, .scrisoare .semnatura > b { display: block; }

/* Contact */
.contact-mare { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0; border-top: 1px solid var(--linie); }
.contact-mare > div { padding: 30px 26px 28px 0; border-bottom: 1px solid var(--linie); }
.contact-mare small { display: block; font: 600 .72rem var(--titlu); letter-spacing: .16em; text-transform: uppercase; color: var(--text-slab); margin-bottom: 8px; }
.contact-mare span { font: 500 1.2rem var(--titlu); color: var(--cerneala); }
.contact-mare a { color: var(--cerneala); }
.nota-contact { margin-top: 30px; font-style: italic; color: var(--text-slab); }

/* Subsolul: distribuire */
.subsol { background: #141416; }
.subsol h4 { font: 600 .82rem var(--titlu); letter-spacing: .14em; text-transform: uppercase; }
.distribuie { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 28px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); }
.distribuie > span:first-child { font: 600 .7rem var(--titlu); letter-spacing: .16em; text-transform: uppercase; color: #9a978f; margin-right: 6px; }
.distribuie a, .distribuie button { font: 500 .78rem var(--titlu); letter-spacing: .04em; color: #e9e6df; background: transparent; border: 1px solid rgba(255,255,255,.22); padding: 7px 14px; cursor: pointer; text-decoration: none; }
.distribuie a:hover, .distribuie button:hover { border-color: var(--auriu); color: #fff; }
.d-stare { font: 400 .8rem var(--titlu); color: #c9c5bb; }

/* Achitarea online */
.insigne-plata { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.insigne-plata em { font: 700 .66rem var(--titlu); font-style: normal; letter-spacing: .06em; border: 1px solid var(--linie); border-radius: 4px; padding: 3px 7px; color: var(--cerneala); background: #fff; }

/* Cardurile și panourile, mai sobre */
.card, .treapta-onorariu, .formular, .intrebari details, .contact > div, .fapte div, .ce-primesti, .caseta-diaspora { border-radius: 2px; box-shadow: none; }
.treapta-onorariu.principala { box-shadow: none; border-color: var(--cerneala); }
.scadere { border-radius: 0; }
.sigla-cedo { border: 0; background: transparent; padding: 10px 0 0; }
.sigla-cedo img { width: min(100%, 420px); opacity: .85; margin-bottom: 0; }
/* diapozitivul final: subsolul încape */
.cu-diapozitive .diapozitiv .subsol { padding: 18px 0 10px; font-size: .86rem; }
.cu-diapozitive .diapozitiv .subsol .distribuie { margin-top: 12px; padding-top: 10px; }
.cu-diapozitive .diapozitiv .subsol li { margin-bottom: 2px; }
.cu-diapozitive .diapozitiv-final .titlu-mare { font-size: clamp(1.5rem, min(2.6vw, 4.4vh), 2.3rem); }
.cu-diapozitive .roba-cabinet img { height: 18vh; }
@media (max-height: 820px) { .cu-diapozitive .diapozitiv-final .cabinetul { margin-top: 0; } .cu-diapozitive .diapozitiv-final .carte { max-width: 300px; } .cu-diapozitive .diapozitiv .subsol .jos { margin-top: 8px; padding-top: 8px; } }
@media (max-width: 700px) {
  .erou-dreapta { min-width: 0; }
  .motto-erou { gap: 12px; } .motto-erou::before { flex-basis: 28px; } .motto-erou span { letter-spacing: .32em; font-size: .8rem; }
  .legatura-concept { letter-spacing: .08em; text-align: center; }
  .erou-dreapta .balanta-butoane, .cu-diapozitive .erou-dreapta .balanta-butoane { transform: scale(.74); margin: 0 -45px; height: 200px; }
}
.pagina-scrisoare { overflow-x: clip; }
@media (max-height: 820px) { .cu-diapozitive .diapozitiv .subsol { padding-top: 14px; } }

/* ===== Pagina avocatului: contractele și evidența (avocat.html) ===== */
body[data-pagina="avocat"] { --fundal-pagina: url(imagini/fundal-1.jpg); }
body[data-pagina="avocat"] .distribuie { display: none; }
.camp input[type=password] { width: 100%; font: inherit; padding: 12px 14px; border: 1px solid #cfc7b9; border-radius: 2px; background: #fff; color: var(--text); }
.adm-intrare .adm-card { max-width: 460px; margin: 0 auto; }
.adm-card h2, .adm-cap-lista h2 { font: 600 1.15rem var(--titlu); letter-spacing: .08em; text-transform: uppercase; color: var(--cerneala); margin: 0 0 12px; }
.adm-nota { font-size: .92rem; color: var(--text-slab); margin: 6px 0 14px; }
.adm-ajutor, .adm-optional { font-size: .82rem; font-weight: 400; color: var(--text-slab); }
.adm-sectiune { padding-top: 28px; }
.adm-bara { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.adm-bara .adm-nota { margin: 0; }
.adm-nou { background: var(--alb); border: 1px solid var(--linie); border-radius: 2px; padding: 22px 26px; margin-bottom: 34px; }
.adm-nou summary { cursor: pointer; list-style: none; display: flex; align-items: center; gap: 10px; }
.adm-nou summary::-webkit-details-marker { display: none; }
.adm-nou summary::after { content: '▾'; color: var(--auriu); margin-left: auto; transition: transform .2s; }
.adm-nou:not([open]) summary::after { transform: rotate(-90deg); }
.adm-nou summary h2 { margin: 0; }
.adm-nou .formular { background: none; border: 0; box-shadow: none; padding: 18px 0 0; }
.adm-nou .camp textarea { min-height: 64px; }
.adm-nou .bifa { margin: 4px 0 2px; }
.adm-link { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; align-items: center; }
.adm-link input { flex: 1 1 260px; min-width: 0; font: .86rem var(--titlu); padding: 10px 12px; border: 1px solid #cfc7b9; background: #fff; }
.adm-link .buton { padding: 10px 16px; font-size: .78rem; }
.adm-cap-lista { display: flex; flex-direction: column; gap: 12px; margin-bottom: 14px; }
.adm-cap-lista h2 { margin: 0; }
.adm-filtre { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.adm-eticheta { font: 600 .74rem var(--titlu); letter-spacing: .12em; text-transform: uppercase; color: var(--text-slab); }
.adm-filtre select, .adm-filtre input[type=search] { font: .92rem var(--text-font); padding: 8px 10px; border: 1px solid #cfc7b9; background: #fff; color: var(--text); border-radius: 2px; }
.adm-filtre input[type=search] { min-width: 0; flex: 1 1 220px; }
.adm-taburi { display: flex; flex-wrap: wrap; border: 1px solid #cfc7b9; border-radius: 2px; overflow: hidden; }
.adm-taburi button { font: 500 .74rem var(--titlu); letter-spacing: .08em; text-transform: uppercase; padding: 9px 12px; background: #fff; border: 0; border-right: 1px solid #e3ddd2; color: var(--text); cursor: pointer; }
.adm-taburi button:last-child { border-right: 0; }
.adm-taburi button.activ { background: var(--cerneala); color: #fff; }
.adm-sumar { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.adm-cifra { background: var(--alb); border: 1px solid var(--linie); border-top: 2px solid var(--auriu); padding: 14px 16px; display: flex; flex-direction: column; gap: 2px; }
.adm-cifra span { font: 600 .7rem var(--titlu); letter-spacing: .12em; text-transform: uppercase; color: var(--text-slab); }
.adm-cifra b { font: 600 1.35rem var(--titlu); color: var(--cerneala); font-variant-numeric: tabular-nums; }
.adm-cifra small { color: var(--text-slab); font-size: .85rem; }
.adm-lista { background: var(--alb); border: 1px solid var(--linie); overflow-x: auto; }
.adm-tabel { width: 100%; border-collapse: collapse; font-size: .94rem; }
.adm-tabel th { font: 600 .7rem var(--titlu); letter-spacing: .12em; text-transform: uppercase; color: var(--text-slab); text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--linie); white-space: nowrap; }
.adm-tabel td { padding: 12px 14px; border-bottom: 1px solid #efeae1; vertical-align: top; }
.adm-tabel tr:last-child td { border-bottom: 0; }
.adm-tabel td small { display: block; color: var(--text-slab); font-size: .82rem; }
.adm-tabel .adm-obs { font-style: italic; }
.adm-tabel .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.adm-tabel tr.anulat td { color: #9a948b; }
.adm-tabel tr.anulat td:nth-child(4) { text-decoration: line-through; }
.adm-stare { display: inline-block; font: 600 .68rem var(--titlu); letter-spacing: .1em; text-transform: uppercase; padding: 4px 9px; border-radius: 2px; }
.adm-stare.semnat { background: var(--accent-deschis); color: var(--accent-inchis); }
.adm-stare.trimis { background: #fbf1dc; color: #7a5a1c; }
.adm-stare.anulat { background: #efeae1; color: #7d776e; }
.adm-achitat { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; white-space: nowrap; }
.adm-actiuni { white-space: nowrap; text-align: right; }
.adm-mic { font: 500 .72rem var(--titlu); letter-spacing: .04em; padding: 6px 9px; margin: 2px 0 2px 4px; background: #fff; border: 1px solid #cfc7b9; border-radius: 2px; cursor: pointer; color: var(--cerneala); }
.adm-mic:hover { border-color: var(--cerneala); }
.adm-mic:disabled { opacity: .6; cursor: default; }
.adm-rosu { color: #9b2c22; }
.adm-rosu.sigur { background: #9b2c22; color: #fff; border-color: #9b2c22; }
.adm-gol { padding: 26px; text-align: center; color: var(--text-slab); margin: 0; }
.adm-jos { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; margin-top: 14px; }
.adm-jos .buton { padding: 10px 16px; font-size: .78rem; }
.completat-avocat { background: #f3f1ec !important; color: var(--text-slab) !important; }
@media (max-width: 900px) { .adm-sumar { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .adm-nou { padding: 16px; }
  .adm-lista { background: none; border: 0; }
  .adm-tabel, .adm-tabel tbody, .adm-tabel tr, .adm-tabel td { display: block; width: 100%; }
  .adm-tabel thead { display: none; }
  .adm-tabel tr { background: var(--alb); border: 1px solid var(--linie); margin-bottom: 10px; padding: 6px 0; }
  .adm-tabel td { border: 0; padding: 5px 14px; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 10px; text-align: left; }
  .adm-tabel td > * { grid-column: 2; }
  .adm-tabel td::before { content: attr(data-et); font: 600 .66rem var(--titlu); letter-spacing: .1em; text-transform: uppercase; color: var(--text-slab); padding-top: 3px; }
  .adm-tabel td.num { text-align: left; }
  .adm-tabel td.adm-actiuni { display: flex; flex-wrap: wrap; justify-content: flex-start; white-space: normal; }
  .adm-tabel td.adm-actiuni::before { display: none; }
  .adm-tabel td.adm-actiuni:empty { display: none; }
}
