/*
 * Prima pagină 3.0 (includes/acasa.php). Totul e sub .tga; culorile pentru tema întunecată sub [data-tema="dark"] .tga.
 */
.tg-acasa .site-content{display:block;padding:0}
.tg-acasa .site.grid-container{max-width:none;padding:0}

.tga{
	--bg:#f5f7fb;--bg2:#eef2f8;--panel:#fff;--line:rgba(14,23,38,.11);
	--ink:#0e1726;--muted:#55627a;--accent:#f6b21b;--accent-ink:#1b1400;--accent-text:#9a6800;--bp:#2056ae;
	--glow:rgba(32,86,174,.10);--grila:rgba(32,86,174,.07);--contur:rgba(14,23,38,.28);
	--pill-bg:rgba(255,255,255,.85);--chip-bg:#fff;--profil-a:#fff;--profil-b:#f3f7fd;--profil-c:#e9f1fe;--profil-d:#f6f9fe;
	--r:16px;--antet:72px;
	display:block;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased
}
[data-tema="dark"] .tga{
	--bg:#0a1120;--bg2:#0d1628;--panel:#111b30;--line:rgba(148,178,230,.16);
	--ink:#eef3fb;--muted:#a3b3cb;--accent-text:#f6b21b;--bp:#8db8ff;
	--glow:rgba(32,86,174,.28);--grila:rgba(141,184,255,.06);--contur:rgba(238,243,251,.35);
	--pill-bg:rgba(17,27,48,.7);--chip-bg:rgba(10,17,32,.45);--profil-a:#15213a;--profil-b:#111b30;--profil-c:#16294d;--profil-d:#0f1c36
}
@media (max-width:1200px){.tga{--antet:60px}}
.tga *,.tga *::before,.tga *::after{box-sizing:border-box}
.tga a{color:inherit}
.tga h1,.tga h2,.tga h3{color:inherit;font-family:inherit;text-transform:none}
.tga .wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.tga :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}

.tga .btn{touch-action:manipulation;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:12px;font-weight:700;font-size:16px;line-height:1.2;text-decoration:none;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}
.tga .btn:active{transform:translateY(1px)}
.tga .btn--aur{background:var(--accent);color:var(--accent-ink)}
.tga .btn--aur:hover{background:#ffc43d;color:var(--accent-ink)}
.tga .btn--contur{border:1.5px solid var(--contur);color:var(--ink)}
.tga .btn--contur:hover{border-color:var(--ink);background:var(--glow);color:var(--ink)}

/* ---------- Povestea: o singură scenă fixată, clădirea se construiește la derulare ---------- */
.tga .poveste{position:relative;background:radial-gradient(1200px 700px at 72% 40%,var(--glow),transparent 70%),var(--bg)}
.tga .poveste::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--grila) 1px,transparent 1px),linear-gradient(90deg,var(--grila) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}
.tga .scena{position:relative;min-height:calc(100vh - var(--antet));min-height:calc(100dvh - var(--antet));display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:24px;max-width:1240px;margin:0 auto;padding:40px 24px}
.tga .text{position:relative;min-height:340px;z-index:2}
.tga .pas{max-width:520px}
.tga .sprancena{margin:0 0 18px;color:var(--accent-text);font-size:13px;font-weight:700;letter-spacing:.12em;line-height:1.5}
.tga h1{margin:0;font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.035em;font-weight:800}
.tga .sub{margin:20px 0 0;max-width:46ch;color:var(--muted);font-size:clamp(17px,1.6vw,19px);line-height:1.55}
.tga .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.tga .pas h2{margin:0;font-size:clamp(30px,3.6vw,46px);line-height:1.08;letter-spacing:-.025em;font-weight:800}
.tga .pas p{margin:16px 0 0;color:var(--muted);font-size:18px;line-height:1.6;max-width:44ch}
.tga .pas .cifra{display:block;margin-top:22px;color:var(--ink);font-size:clamp(40px,5vw,64px);font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.tga .pas .cifra small{display:block;margin-top:8px;color:var(--muted);font-size:15px;font-weight:600;letter-spacing:0}
.tga .desen{position:relative;height:min(78vh,720px)}
.tga canvas{display:block;width:100%;height:100%}
.tga .admis{position:absolute;right:8%;top:14%;padding:10px 22px;border:3px solid var(--accent-text);border-radius:12px;color:var(--accent-text);font-size:clamp(26px,3vw,40px);font-weight:900;letter-spacing:.14em;line-height:1.2;transform:rotate(-8deg) scale(.6);opacity:0;transition:opacity .35s ease,transform .45s cubic-bezier(.2,1.6,.4,1)}
.tga .admis.vizibil{opacity:1;transform:rotate(-8deg) scale(1)}
.tga .etape{position:absolute;left:24px;bottom:28px;z-index:3;display:flex;gap:8px;margin:0;padding:0;list-style:none}
.tga .etape li{margin:0}
.tga .etape button{display:flex;align-items:center;gap:8px;min-height:36px;margin:0;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--pill-bg);color:var(--muted);font:600 13px/1 inherit;font-family:inherit;cursor:pointer;transition:color .2s,border-color .2s,background-color .2s}
.tga .etape button:hover{color:var(--ink);background:var(--pill-bg)}
.tga .etape button::before{content:"";width:8px;height:8px;border:1.5px solid currentColor;border-radius:50%}
.tga .etape button[aria-current="step"]{color:var(--ink);border-color:rgba(246,178,27,.6)}
.tga .etape button[aria-current="step"]::before{background:var(--accent);border-color:var(--accent)}
.tga .etape button.gata::before{background:var(--bp);border-color:var(--bp)}

/* Cu JavaScript, pașii se suprapun și se schimbă la derulare; fără el sau cu animațiile oprite, stau unul sub altul. */
.tga-js .tga .text .pas{position:absolute;left:0;right:0;top:50%;opacity:0;transform:translateY(calc(-50% + 24px));transition:opacity .45s ease,transform .55s cubic-bezier(.16,1,.3,1);pointer-events:none}
.tga-js .tga .text .pas.activ{opacity:1;transform:translateY(-50%);pointer-events:auto}
.tga-static .tga .text .pas,html:not(.tga-js):not(.tga-static) .tga .text .pas{position:static;margin-bottom:48px;opacity:1;transform:none}
.tga-static .tga .etape,html:not(.tga-js):not(.tga-static) .tga .etape{display:none}

/* ---------- Cifrele ---------- */
.tga .cifre{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2)}
.tga .cifre .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-top:56px;padding-bottom:56px}
.tga .cifre div{min-width:0}
.tga .cifre strong{display:block;font-size:clamp(34px,4vw,54px);font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.tga .cifre span{display:block;margin-top:10px;color:var(--muted);font-size:15px}

/* ---------- Secțiunile ---------- */
.tga .sectiune{padding:96px 0}
.tga .sectiune--fara-sus{padding-top:0}
.tga .sectiune h2{margin:0 0 12px;font-size:clamp(30px,3.4vw,44px);line-height:1.1;letter-spacing:-.025em;font-weight:800}
.tga .sectiune .intro{margin:0 0 36px;color:var(--muted);font-size:18px;max-width:60ch}

.tga .profiluri{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:18px}
.tga .profil{position:relative;display:flex;flex-direction:column;min-height:260px;padding:28px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(160deg,var(--profil-a),var(--profil-b));overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .25s}
.tga .profil:hover{transform:translateY(-4px);border-color:rgba(141,184,255,.4)}
.tga .profil::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;background-image:linear-gradient(var(--grila) 1px,transparent 1px),linear-gradient(90deg,var(--grila) 1px,transparent 1px);background-size:26px 26px;transform:rotate(-18deg);-webkit-mask-image:radial-gradient(circle,#000 30%,transparent 70%);mask-image:radial-gradient(circle,#000 30%,transparent 70%);pointer-events:none}
.tga .profil:nth-child(2),.tga .profil:nth-child(3){background:linear-gradient(160deg,var(--profil-c),var(--profil-d))}
.tga .profil h3{margin:0;font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.tga .profil h3 a{text-decoration:none}
.tga .profil h3 a:hover{color:var(--bp)}
.tga .profil .dom{margin:8px 0 0;color:var(--muted);font-size:15px}
.tga .profil .dom b{display:block;margin-bottom:4px;color:var(--accent-text);font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.tga .profil ul{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin:auto 0 0;padding:22px 0 0;list-style:none}
.tga .profil li{margin:0}
.tga .profil li a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--chip-bg);font-size:14.5px;font-weight:600;text-decoration:none}
.tga .profil li a:hover{border-color:var(--bp)}

/* Ce vă oferim: textele de acum, neschimbate */
.tga .oferta{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:56px;align-items:start}
.tga .oferta p{margin:0 0 18px;color:var(--muted);font-size:17px;line-height:1.7}
.tga .oferta p b{color:var(--ink)}
.tga .carduri{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.tga .carduri li{margin:0;border-bottom:1px solid var(--line)}
.tga .carduri a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px 4px;text-decoration:none}
.tga .carduri .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(246,178,27,.14);color:var(--accent-text)}
.tga .carduri .ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tga .carduri h3{margin:0;font-size:18px;font-weight:700;line-height:1.35}
.tga .carduri p{margin:4px 0 0;font-size:15px}
.tga .carduri .sag{color:var(--muted);transition:transform .25s}
.tga .carduri a:hover .sag{transform:translateX(4px);color:var(--ink)}

/* Echipa */
.tga .echipa{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tga .echipa .cap{max-width:760px}
.tga .echipa .cap p{margin:0 0 16px;color:var(--muted);font-size:18px;line-height:1.7}
.tga .echipa .cap .btn{margin-top:8px}
.tga .competente{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:44px 0 0;padding:0;list-style:none}
.tga .competente li{display:flex;flex-direction:column;gap:6px;min-height:150px;margin:0;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(160deg,var(--profil-a),var(--profil-b))}
.tga .competente li.mare{grid-column:span 2;background:linear-gradient(140deg,rgba(246,178,27,.14),var(--panel) 60%);border-color:rgba(246,178,27,.35)}
.tga .competente svg{width:28px;height:28px;margin-bottom:10px;fill:none;stroke:var(--accent-text);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tga .competente b{font-size:19px;line-height:1.3;letter-spacing:-.01em}
.tga .competente span{color:var(--muted);font-size:15px}

.tga .final{padding:110px 0;background:radial-gradient(800px 400px at 50% 100%,var(--glow),transparent 70%);text-align:center}
.tga .final h2{max-width:20ch;margin:0 auto 26px;font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1.1;letter-spacing:-.025em;text-wrap:balance}

@media (max-width:899px){
	/* Telefon: fără butoanele cu etapele (Bogdan, 18 oct.); desenul se micșorează pe ecranele scunde, ca textul să încapă. */
	.tga .scena{grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:start;gap:0;padding:20px 16px}
	.tga .desen{order:-1;height:clamp(180px,calc(100vh - 470px),44vh);height:clamp(180px,calc(100dvh - 470px),44vh)}
	.tga .text{min-height:300px}
	.tga .etape{display:none}
	.tga .cifre .wrap{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:40px;padding-bottom:40px}
	.tga .profiluri,.tga .oferta{grid-template-columns:1fr}
	.tga .competente{grid-template-columns:1fr}
	.tga .competente li.mare{grid-column:auto}
	.tga .competente li{min-height:0}
	.tga .sectiune{padding:64px 0}
	.tga .wrap{padding:0 16px}
}
@media (prefers-reduced-motion:reduce){
	.tga .btn,.tga .profil,.tga .carduri .sag,.tga .admis,.tga-js .tga .text .pas{transition:none}
}
