/* ============================================================
   CAD Works — stylesheet principal
   Fonturi: Barlow Condensed (titluri) / Plus Jakarta Sans (text) / JetBrains Mono (etichete)
   Culori: #1668F5 (albastru), #00D9FF (cyan), #6C63FF (violet), #00E5A0 (verde)
   ============================================================ */

:root{
  --bg: #070B14;
  --bg-alt: #0C1422;
  --text: #DCE8F5;
  --text-dim: rgba(220,232,245,0.6);
  --text-dimmer: rgba(220,232,245,0.4);
  --border: rgba(255,255,255,0.07);
  --blue: #1668F5;
  --blue-dark: #1460DE;
  --cyan: #00D9FF;
  --purple: #6C63FF;
  --green: #00E5A0;
  --red: #D61A0C; /* roșu exact din logo CAD WORKS */
  --font-display: 'Barlow Condensed', sans-serif;
  --font-body: 'Plus Jakarta Sans', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
}

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family: var(--font-body); font-size:16px; line-height:1.5;
}
img{ max-width:100%; display:block; }
a{ text-decoration:none; color:inherit; }
button{ font-family:inherit; cursor:pointer; border:none; }
.container{ max-width:1280px; margin:0 auto; padding:0 24px; }
.eyebrow{ color:var(--blue); font-family:var(--font-mono); font-size:12px; letter-spacing:.18em; text-transform:uppercase; display:block; margin-bottom:12px; }
.section-title{ font-family:var(--font-display); font-weight:800; line-height:.95; color:var(--text); font-size:clamp(38px,5vw,72px); }
.btn{ display:inline-flex; align-items:center; gap:8px; font-weight:600; font-size:14px; padding:14px 24px; transition:.2s; }
.btn-primary{ background:var(--blue); color:#fff; }
.btn-primary:hover{ background:var(--blue-dark); }
.btn-outline{ border:1px solid rgba(255,255,255,.15); color:var(--text); background:transparent; }
.btn-outline:hover{ border-color:rgba(22,104,245,.5); color:#fff; }

/* ---------- NAV ---------- */
.site-nav-wrap{ position:fixed; top:0; left:0; right:0; z-index:50; transition:.4s; }
.site-nav-wrap.scrolled{ background:rgba(7,11,20,.92); backdrop-filter:blur(16px); }
.nav-utility{ background:#0C1422; border-bottom:1px solid rgba(255,255,255,.06); }
.nav-utility-inner{ max-width:1280px; margin:0 auto; padding:0 24px; height:34px; display:flex; align-items:center; justify-content:space-between; }
.nav-utility-links{ display:flex; gap:20px; }
.nav-utility-links a{ font-size:12px; color:rgba(220,232,245,.5); transition:.2s; white-space:nowrap; }
.nav-utility-links a:hover{ color:#fff; }
.nav-social{ display:flex; gap:14px; align-items:center; flex-shrink:0; }
.nav-social a{ color:rgba(220,232,245,.45); display:flex; transition:.2s; }
.nav-social a:hover{ color:var(--cyan); }
@media (max-width:900px){ .nav-utility-links{ display:none; } }

.site-nav{ position:relative; transition:.4s; border-bottom:1px solid transparent; }
.site-nav-wrap.scrolled .site-nav{ border-color:rgba(255,255,255,.07); }
.site-nav-wrap:not(.scrolled) .nav-utility{ background:rgba(12,20,34,.6); }
.nav-inner{ max-width:1280px; margin:0 auto; padding:0 24px; height:68px; display:flex; align-items:center; justify-content:space-between; }
.logo{ display:flex; align-items:center; gap:10px; }
.logo-img{ height:30px; width:auto; display:block; }
.logo-mark{ width:32px; height:32px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:12px; font-family:var(--font-mono); background:linear-gradient(135deg,var(--blue),var(--cyan)); }
.logo-text{ color:#fff; font-weight:600; font-size:15px; }
.logo-text span{ color:var(--blue); }
.nav-links{ display:flex; align-items:center; gap:28px; }
.nav-links a{ font-size:14px; color:rgba(220,232,245,.55); transition:.2s; }
.nav-links a:hover{ color:var(--text); }

/* Mega-menu */
.nav-links-mega{ gap:20px; }
.nav-item-mega{ position:relative; }
.nav-top-link{ display:flex; align-items:center; gap:4px; font-size:13.5px; color:rgba(220,232,245,.55); padding:24px 0; transition:.2s; white-space:nowrap; }
.nav-item-mega:hover .nav-top-link, .nav-top-link:hover{ color:var(--text); }
.nav-dropdown{ position:absolute; top:100%; left:50%; transform:translateX(-50%); min-width:240px; background:#0C1422; border:1px solid var(--border); padding:8px 0; opacity:0; visibility:hidden; transform:translateX(-50%) translateY(6px); transition:.18s; box-shadow:0 16px 40px rgba(0,0,0,.35); z-index:60; }
.nav-item-mega:hover .nav-dropdown{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }
.nav-dropdown a{ display:block; padding:10px 18px; font-size:13.5px; color:rgba(220,232,245,.6); white-space:nowrap; }
.nav-dropdown a:hover{ background:rgba(255,255,255,.04); color:#fff; }

.nav-mobile-group{ border-bottom:1px solid rgba(255,255,255,.05); }
.nav-mobile-top{ display:block; padding:12px 0; font-size:14px; color:rgba(220,232,245,.75); font-weight:600; }
.nav-mobile-children{ padding-left:14px; padding-bottom:8px; display:flex; flex-direction:column; gap:2px; }
.nav-mobile-children a{ padding:8px 0 !important; font-size:13.5px !important; color:rgba(220,232,245,.5) !important; font-weight:400 !important; }

.nav-cta{ display:flex; align-items:center; gap:12px; }
.nav-toggle{ display:none; background:none; color:rgba(220,232,245,.6); }
.nav-mobile{ display:none; padding:20px 24px; background:rgba(7,11,20,.98); border-top:1px solid var(--border); }
.nav-mobile.open{ display:block; }
.nav-mobile a{ display:block; padding:10px 0; font-size:14px; color:rgba(220,232,245,.7); }
@media (max-width: 1200px){
  .nav-links, .nav-cta{ display:none; }
  .nav-toggle{ display:block; }
}

/* ---------- HERO ---------- */
.hero{ position:relative; min-height:100vh; display:flex; align-items:center; overflow:hidden; background:var(--bg);
  background-image: linear-gradient(rgba(22,104,245,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(22,104,245,.05) 1px, transparent 1px);
  background-size:64px 64px; }
.hero::before{ content:""; position:absolute; top:-10%; left:30%; width:60%; height:70%; background:radial-gradient(ellipse, rgba(22,104,245,.18) 0%, transparent 70%); pointer-events:none; }
.hero::after{ content:""; position:absolute; bottom:0; right:5%; width:40%; height:50%; background:radial-gradient(ellipse, rgba(0,217,255,.07) 0%, transparent 70%); pointer-events:none; }
.hero-inner{ position:relative; max-width:1280px; margin:0 auto; padding:176px 24px 80px; width:100%; display:grid; gap:64px; grid-template-columns:1fr; }
@media (min-width:1024px){ .hero-inner{ grid-template-columns:1fr 1fr; align-items:center; } }
.hero-badge{ display:flex; align-items:center; gap:12px; margin-bottom:32px; }
.hero-badge .line{ height:1px; width:40px; background:var(--blue); }
.hero-badge span{ color:var(--blue); font-family:var(--font-mono); font-size:12px; letter-spacing:.2em; text-transform:uppercase; }
.hero h1{ font-family:var(--font-display); font-weight:800; font-size:clamp(48px,8vw,112px); line-height:.92; letter-spacing:-.01em; color:var(--text); margin:0 0 24px; }
.hero h1 .gradient{ background:linear-gradient(90deg,var(--blue),var(--cyan)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.hero p.lead{ font-size:16px; color:rgba(220,232,245,.6); max-width:460px; margin:0 0 32px; }
.hero-ctas{ display:flex; flex-wrap:wrap; gap:16px; margin-bottom:32px; }
.trust-bar{ display:flex; flex-wrap:wrap; gap:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.06); }
.trust-bar .item{ display:flex; align-items:center; gap:8px; font-size:12px; color:rgba(220,232,245,.5); }
.trust-bar svg{ color:var(--blue); }
.hero-visual{ position:relative; display:none; }
@media (min-width:1024px){ .hero-visual{ display:block; } }
.hero-visual img{ width:100%; height:420px; object-fit:cover; border-radius:2px; }
.hero-visual .overlay{ position:absolute; inset:0; background:linear-gradient(135deg, rgba(7,11,20,.4), rgba(22,104,245,.1)); }
.stat-card{ position:absolute; bottom:-24px; left:-32px; padding:20px; background:var(--bg-alt); border:1px solid rgba(22,104,245,.3); min-width:180px; }
.stat-card.stat-card-anniversary{ border-color:rgba(214,26,12,.4); }
.stat-card.stat-card-anniversary .val{ color:var(--red); }
.stat-card .val{ font-family:var(--font-display); font-weight:800; font-size:36px; color:var(--blue); line-height:1; margin-bottom:4px; }
.stat-card .lab{ font-size:12px; color:rgba(220,232,245,.6); line-height:1.4; white-space:pre-line; }
.partner-badge{ position:absolute; top:-16px; right:-16px; padding:12px 16px; display:flex; align-items:center; gap:12px; background:rgba(0,217,255,.08); border:1px solid rgba(0,217,255,.2); }
.partner-badge span{ font-size:12px; color:var(--text); }

/* ---------- MARQUEE ---------- */
.marquee-section{ padding:32px 0; background:var(--bg); border-top:1px solid var(--border); border-bottom:1px solid var(--border); overflow:hidden; }
.marquee-track{ display:flex; width:max-content; animation:marquee 28s linear infinite; }
.marquee-track:hover{ animation-play-state:paused; }
@keyframes marquee{ 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
.marquee-item{ display:flex; align-items:center; gap:12px; margin:0 40px; white-space:nowrap; }
.marquee-item span{ font-family:var(--font-mono); font-size:14px; letter-spacing:.1em; color:rgba(220,232,245,.35); }
.marquee-item svg{ color:rgba(22,104,245,.5); }

/* ---------- SOLUTIONS ---------- */
.solutions{ padding:112px 0; background:var(--bg); }
.solutions-head{ display:flex; flex-direction:column; gap:24px; justify-content:space-between; margin-bottom:64px; }
@media (min-width:768px){ .solutions-head{ flex-direction:row; align-items:flex-end; } }
.solutions-head p{ max-width:320px; font-size:14px; color:rgba(220,232,245,.55); }
.tabs{ display:flex; flex-wrap:wrap; gap:4px; margin-bottom:32px; }
.tab-btn{ display:flex; align-items:center; gap:10px; padding:10px 16px; font-size:14px; font-weight:500; background:rgba(255,255,255,.04); color:rgba(220,232,245,.5); border:1px solid var(--border); }
.tab-btn.active{ background:var(--blue); color:#fff; border-color:var(--blue); }
.solution-panel{ display:grid; grid-template-columns:1fr; border:1px solid var(--border); overflow:hidden; }
@media (min-width:1024px){ .solution-panel{ grid-template-columns:1fr 1fr; } }
.solution-img{ position:relative; min-height:380px; background:var(--bg-alt); overflow:hidden; }
.solution-img img{ width:100%; height:100%; object-fit:cover; opacity:.75; }
.solution-img .tint{ position:absolute; inset:0; }
.solution-img .badge{ position:absolute; bottom:24px; left:24px; font-size:12px; font-family:var(--font-mono); font-weight:500; padding:6px 12px; }
.solution-info{ padding:40px; background:var(--bg-alt); display:flex; flex-direction:column; justify-content:space-between; gap:32px; }
.solution-info .kicker{ font-family:var(--font-mono); font-size:12px; letter-spacing:.15em; margin-bottom:12px; display:block; }
.solution-info h3{ font-family:var(--font-display); font-weight:700; font-size:32px; color:var(--text); margin:0 0 16px; }
.solution-info p{ font-size:14px; color:rgba(220,232,245,.6); line-height:1.6; margin:0; }
.tag-list{ display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.tag-list span{ font-size:12px; padding:6px 12px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); color:rgba(220,232,245,.6); font-family:var(--font-mono); }
.solution-cta{ align-self:flex-start; display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; padding:12px 20px; }

/* ---------- PLATFORM ---------- */
.platform{ padding:112px 0; background:var(--bg-alt); position:relative; overflow:hidden; }
.platform-grid{ position:relative; display:grid; grid-template-columns:1fr; gap:64px; align-items:center; }
@media (min-width:1024px){ .platform-grid{ grid-template-columns:1fr 1fr; } }
.platform-img{ position:relative; }
.platform-img img{ width:100%; height:480px; object-fit:cover; border-radius:2px; }
.platform-metric{ position:absolute; top:24px; right:-16px; padding:16px 20px; background:var(--bg); border:1px solid rgba(0,217,255,.25); display:none; }
@media (min-width:768px){ .platform-metric{ display:block; } }
.platform-metric .v{ font-family:var(--font-mono); font-weight:700; font-size:24px; color:var(--cyan); }
.platform-metric .l{ font-size:12px; color:rgba(220,232,245,.5); margin-top:4px; }
.platform-copy h2{ font-family:var(--font-display); font-weight:800; font-size:clamp(34px,5vw,58px); line-height:.95; color:var(--text); margin:0 0 20px; }
.platform-copy h2 .accent{ color:var(--cyan); }
.platform-copy p.desc{ font-size:14px; color:rgba(220,232,245,.6); max-width:440px; line-height:1.6; margin-bottom:28px;}
.bullet-list{ display:flex; flex-direction:column; gap:12px; margin-bottom:28px; }
.bullet-list .b{ display:flex; align-items:center; gap:12px; font-size:14px; color:rgba(220,232,245,.7); }
.bullet-list .dot{ width:6px; height:6px; flex-shrink:0; background:var(--cyan); }
.platform-ctas{ display:flex; gap:12px; flex-wrap:wrap; }
.btn-cyan-outline{ color:var(--cyan); border:1px solid rgba(0,217,255,.25); background:transparent; }

/* ---------- STATS ---------- */
.stats{ padding:80px 0; background:var(--bg); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.stats-grid{ display:grid; grid-template-columns:1fr 1fr; }
@media (min-width:1024px){ .stats-grid{ grid-template-columns:repeat(4,1fr); } }
.stat-item{ padding:40px 32px; border-right:1px solid var(--border); }
.stat-item:last-child, .stat-item:nth-child(2n){ }
.stat-item .val{ font-family:var(--font-display); font-weight:800; font-size:48px; color:var(--blue); line-height:1; margin-bottom:8px; }
.stat-item .lab{ font-size:14px; font-weight:600; color:var(--text); margin-bottom:4px; }
.stat-item .sub{ font-size:12px; color:rgba(220,232,245,.4); }

/* ---------- SERVICES ---------- */
.services{ padding:112px 0; background:var(--bg); }
.services h2{ max-width:600px; }
.services h2 .dim{ color:rgba(220,232,245,.35); }
.services-grid{ display:grid; grid-template-columns:1fr; gap:1px; background:rgba(255,255,255,.06); margin-top:64px; }
@media (min-width:768px){ .services-grid{ grid-template-columns:1fr 1fr; } }
@media (min-width:1024px){ .services-grid{ grid-template-columns:repeat(4,1fr); } }
.service-card{ padding:32px; background:var(--bg); transition:.3s; }
.service-card:hover{ background:var(--bg-alt); }
.service-icon{ width:40px; height:40px; display:flex; align-items:center; justify-content:center; margin-bottom:20px; background:rgba(22,104,245,.1); border:1px solid rgba(22,104,245,.2); color:var(--blue); }
.service-card h3{ font-family:var(--font-display); font-weight:700; font-size:20px; color:var(--text); margin:0 0 8px; }
.service-card p{ font-size:13px; color:rgba(220,232,245,.55); margin:0 0 16px; line-height:1.6; }
.service-card ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.service-card li{ font-size:13px; color:rgba(220,232,245,.5); display:flex; align-items:center; gap:8px; }
.service-card li::before{ content:""; width:4px; height:4px; background:var(--blue); flex-shrink:0; }

/* ---------- ACADEMY ---------- */
.academy{ padding:112px 0; background:var(--bg-alt); }
.academy-grid{ display:grid; grid-template-columns:1fr; gap:56px; align-items:center; }
@media (min-width:1024px){ .academy-grid{ grid-template-columns:1fr 1fr; } }
.academy-copy h2{ font-family:var(--font-display); font-weight:800; font-size:clamp(34px,5vw,58px); color:var(--text); line-height:.95; margin:0 0 20px; }
.academy-copy h2 .accent{ color:var(--purple); }
.academy-copy p.desc{ font-size:14px; color:rgba(220,232,245,.6); margin-bottom:28px; max-width:460px; line-height:1.6; }
.badge-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:28px; }
.badge-card{ padding:16px; background:rgba(255,255,255,.03); border:1px solid var(--border); transition:.2s; }
.badge-card:hover{ border-color:rgba(108,99,255,.4); }
.badge-card .code{ font-family:var(--font-mono); font-size:12px; color:var(--purple); margin-bottom:4px; }
.badge-card .label{ font-size:14px; color:var(--text); font-weight:500; }
.btn-purple{ color:var(--purple); border:1px solid rgba(108,99,255,.3); background:rgba(108,99,255,.07); }
.academy-visual{ position:relative; display:none; }
@media (min-width:1024px){ .academy-visual{ display:block; } }
.academy-visual img{ width:100%; height:460px; object-fit:cover; opacity:.7; }
.session-card{ position:absolute; bottom:24px; left:24px; right:24px; display:flex; align-items:center; justify-content:space-between; padding:16px; background:rgba(7,11,20,.9); border:1px solid rgba(108,99,255,.3); }
.session-card .t1{ font-size:14px; font-weight:600; color:var(--text); }
.session-card .t2{ font-size:12px; color:rgba(220,232,245,.5); font-family:var(--font-mono); }
.session-card button{ font-size:12px; font-weight:600; padding:8px 12px; background:var(--purple); color:#fff; }

/* ---------- EVENTS ---------- */
.events{ padding:112px 0; background:var(--bg); }
.events-head{ display:flex; flex-direction:column; gap:20px; justify-content:space-between; margin-bottom:64px; }
@media (min-width:768px){ .events-head{ flex-direction:row; align-items:flex-end; } }
.events-list{ border:1px solid var(--border); }
.event-row{ display:grid; grid-template-columns:1fr; gap:16px; padding:28px; border-bottom:1px solid rgba(255,255,255,.06); transition:.2s; }
.event-row:last-child{ border-bottom:none; }
.event-row:hover{ background:var(--bg-alt); }
@media (min-width:768px){ .event-row{ grid-template-columns:120px 1fr auto; align-items:center; } }
.event-date .d{ font-family:var(--font-display); font-weight:800; font-size:24px; color:var(--blue); line-height:1; }
.event-date .y{ font-size:12px; color:rgba(220,232,245,.35); font-family:var(--font-mono); margin-top:2px; }
.event-type{ display:inline-block; font-size:12px; padding:4px 8px; background:rgba(22,104,245,.1); border:1px solid rgba(22,104,245,.2); color:var(--blue); font-family:var(--font-mono); margin-bottom:8px; }
.event-row h3{ font-size:16px; font-weight:600; color:var(--text); margin:0 0 4px; }
.event-row p{ font-size:14px; color:rgba(220,232,245,.5); margin:0; }

/* ---------- CTA ---------- */
.cta-section{ padding:96px 0; background:var(--blue); position:relative; overflow:hidden;
  background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:48px 48px; }
.cta-grid{ position:relative; display:grid; grid-template-columns:1fr; gap:48px; align-items:center; }
@media (min-width:1024px){ .cta-grid{ grid-template-columns:1fr auto; } }
.cta-grid h2{ font-family:var(--font-display); font-weight:800; font-size:clamp(42px,6vw,80px); line-height:.95; color:#fff; margin:0 0 20px; }
.cta-grid p{ font-size:16px; color:rgba(255,255,255,.75); max-width:460px; }
.cta-btns{ display:flex; flex-direction:column; gap:12px; }
.btn-white{ background:#fff; color:var(--blue); }
.btn-white:hover{ background:#f0f5ff; }
.btn-ghost-white{ color:rgba(255,255,255,.9); border:1px solid rgba(255,255,255,.35); background:transparent; }

/* ---------- FOOTER ---------- */
.site-footer{ padding:80px 0 32px; background:var(--bg); border-top:1px solid var(--border); }
.footer-grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-bottom:64px; }
@media (min-width:768px){ .footer-grid{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:1024px){ .footer-grid{ grid-template-columns:2fr 1fr 1fr 1fr 1fr; } }
.footer-brand p{ font-size:14px; color:rgba(220,232,245,.4); max-width:280px; line-height:1.6; margin-bottom:24px; }
.footer-contact .row{ display:flex; align-items:flex-start; gap:10px; margin-bottom:10px; font-size:12px; color:rgba(220,232,245,.4); }
.footer-col h4{ font-family:var(--font-mono); font-size:12px; letter-spacing:.15em; text-transform:uppercase; color:rgba(220,232,245,.3); margin:0 0 20px; }
.footer-col ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.footer-col a{ font-size:14px; color:rgba(220,232,245,.45); transition:.2s; }
.footer-col a:hover{ color:var(--text); }
.footer-bottom{ display:flex; flex-direction:column; gap:16px; align-items:center; justify-content:space-between; padding-top:32px; border-top:1px solid rgba(255,255,255,.06); }
@media (min-width:768px){ .footer-bottom{ flex-direction:row; } }
.footer-bottom span{ font-size:12px; color:rgba(220,232,245,.25); font-family:var(--font-mono); }
.footer-legal{ display:flex; gap:24px; }
.footer-legal a{ font-size:12px; color:rgba(220,232,245,.25); }

/* ---------- INNER PAGES (Servicii / Blog / Contact) ---------- */
.page-header{ padding:196px 0 64px; background:var(--bg); border-bottom:1px solid var(--border); position:relative; overflow:hidden;
  background-image: linear-gradient(rgba(22,104,245,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(22,104,245,.05) 1px, transparent 1px);
  background-size:64px 64px; }
.page-header h1{ font-family:var(--font-display); font-weight:800; font-size:clamp(40px,6vw,72px); color:var(--text); line-height:.95; margin:0 0 16px; }
.page-header p{ font-size:15px; color:rgba(220,232,245,.6); max-width:560px; }

.blog-grid{ display:grid; grid-template-columns:1fr; gap:1px; background:rgba(255,255,255,.06); }
@media (min-width:768px){ .blog-grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1024px){ .blog-grid{ grid-template-columns:repeat(3,1fr); } }
.blog-card{ background:var(--bg); display:flex; flex-direction:column; }
.blog-card img{ width:100%; height:200px; object-fit:cover; }
.blog-card .body{ padding:24px; flex:1; display:flex; flex-direction:column; }
.blog-card .date{ font-family:var(--font-mono); font-size:11px; color:var(--blue); margin-bottom:10px; }
.blog-card h3{ font-family:var(--font-display); font-weight:700; font-size:22px; color:var(--text); margin:0 0 10px; line-height:1.1; }
.blog-card p{ font-size:13px; color:rgba(220,232,245,.55); flex:1; margin:0 0 16px; line-height:1.6; }
.blog-card .read-more{ font-size:13px; font-weight:600; color:var(--cyan); display:inline-flex; align-items:center; gap:6px; }

.article{ padding:64px 0 96px; background:var(--bg); }
.article-inner{ max-width:760px; margin:0 auto; padding:0 24px; }
.article img.cover{ width:100%; height:360px; object-fit:cover; margin-bottom:32px; }
.article-content{ font-size:16px; line-height:1.8; color:rgba(220,232,245,.8); }
.article-content h2{ font-family:var(--font-display); color:var(--text); font-size:32px; margin-top:40px; margin-bottom:16px; }
.article-content p{ margin-bottom:20px; }
.article-content img{ margin:24px 0; border-radius:2px; }
.article-content ul{ margin:0 0 24px; padding-left:22px; }
.article-content li{ margin-bottom:10px; }
.article-content li::marker{ color:var(--blue); }
.article-content strong{ color:var(--text); font-weight:700; }
.article-content a:not(.btn){ color:var(--cyan); text-decoration:underline; text-underline-offset:2px; }
.article-content a:not(.btn):hover{ color:var(--text); }
.article-content .btn{ margin:4px 8px 4px 0; }

.contact-grid{ display:grid; grid-template-columns:1fr; gap:48px; padding:80px 0; }
@media (min-width:1024px){ .contact-grid{ grid-template-columns:1fr 1fr; } }
.contact-form label{ display:block; font-size:13px; color:rgba(220,232,245,.6); margin-bottom:6px; font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.05em; }
.contact-form input, .contact-form textarea{ width:100%; padding:12px 14px; margin-bottom:20px; background:var(--bg-alt); border:1px solid var(--border); color:var(--text); font-family:var(--font-body); font-size:14px; }
.contact-form input:focus, .contact-form textarea:focus{ outline:none; border-color:var(--blue); }
.contact-form textarea{ min-height:140px; resize:vertical; }
.contact-info .item{ display:flex; gap:14px; margin-bottom:24px; align-items:flex-start; }
.contact-info .item svg{ color:var(--blue); margin-top:2px; flex-shrink:0; }
.contact-info .item .l{ font-size:12px; color:rgba(220,232,245,.4); font-family:var(--font-mono); text-transform:uppercase; margin-bottom:2px; }
.contact-info .item .v{ font-size:15px; color:var(--text); }
.alert-success{ padding:16px 20px; background:rgba(0,229,160,.1); border:1px solid rgba(0,229,160,.3); color:var(--green); font-size:14px; margin-bottom:24px; }
.alert-error{ padding:16px 20px; background:rgba(255,80,80,.1); border:1px solid rgba(255,80,80,.3); color:#ff8080; font-size:14px; margin-bottom:24px; }

/* ---------- Feature grid (carduri cu iconiță/imagine, pt. pagini de produs) ---------- */
.feature-grid{ display:grid; grid-template-columns:1fr; gap:1px; background:rgba(255,255,255,.06); margin:32px 0; }
@media (min-width:640px){ .feature-grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1024px){ .feature-grid{ grid-template-columns:repeat(4,1fr); } }
.feature-card{ background:var(--bg); padding:24px; display:flex; flex-direction:column; gap:12px; }
.feature-card img{ width:56px; height:56px; object-fit:contain; margin:0 0 4px; }
.feature-card h5{ font-family:var(--font-display); font-weight:700; font-size:17px; color:var(--text); margin:0; }
.feature-card p{ font-size:13px; color:rgba(220,232,245,.55); margin:0; flex:1; line-height:1.6; }
.feature-card a{ font-size:13px; color:var(--cyan); font-weight:600; }

/* ---------- Resource grid (fișe PDF / materiale de descărcat) ---------- */
.resource-grid{ display:grid; grid-template-columns:1fr; gap:20px; margin:32px 0; }
@media (min-width:640px){ .resource-grid{ grid-template-columns:repeat(2,1fr); } }
.resource-card{ display:flex; gap:16px; background:var(--bg-alt); border:1px solid var(--border); padding:20px; }
.resource-card img{ width:64px; height:64px; object-fit:contain; flex-shrink:0; }
.resource-card .tag{ font-family:var(--font-mono); font-size:11px; color:var(--blue); text-transform:uppercase; letter-spacing:.05em; margin-bottom:6px; display:block; }
.resource-card h5{ font-family:var(--font-display); font-weight:700; font-size:15px; color:var(--text); margin:0 0 6px; }
.resource-card p{ font-size:12.5px; color:rgba(220,232,245,.5); margin:0 0 8px; line-height:1.6; }
.resource-card a{ font-size:12.5px; color:var(--cyan); font-weight:600; }

/* ---------- Subsecțiune produs (SIMULATION / FLOW / PLASTICS etc.) ---------- */
.product-subsection{ margin:56px 0; padding-top:40px; border-top:1px solid var(--border); }
.product-subsection h3.subsection-title{ font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--cyan); margin-bottom:20px; }
.pagination{ display:flex; gap:8px; justify-content:center; margin-top:48px; }
.pagination a, .pagination span{ padding:8px 14px; border:1px solid var(--border); font-size:13px; color:rgba(220,232,245,.6); }
.pagination a:hover{ border-color:var(--blue); color:var(--text); }
.pagination .active{ background:var(--blue); color:#fff; border-color:var(--blue); }

/* ---------- Plan cards (pagini de produs / oferte) ---------- */
.plan-cards{ display:grid; grid-template-columns:1fr; gap:20px; margin:32px 0; }
@media (min-width:768px){ .plan-cards{ grid-template-columns:repeat(3,1fr); } }
.plan-card{ position:relative; background:var(--bg-alt); border:1px solid var(--border); padding:28px 24px; display:flex; flex-direction:column; gap:16px; }
.plan-card-featured{ border-color:var(--blue); box-shadow:0 0 0 1px var(--blue); }
.plan-badge{ position:absolute; top:-12px; left:24px; background:var(--blue); color:#fff; font-size:11px; font-weight:700; padding:4px 10px; font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.05em; }
.plan-name{ font-family:var(--font-display); font-weight:800; font-size:24px; color:var(--text); }
.plan-card ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; flex:1; }
.plan-card li{ font-size:13.5px; color:rgba(220,232,245,.65); padding-left:16px; position:relative; }
.plan-card li::before{ content:"—"; position:absolute; left:0; color:var(--blue); }

/* ---------- Tabel de comparație caracteristici ---------- */
.compare-table{ width:100%; border-collapse:collapse; font-size:13.5px; margin:24px 0; min-width:640px; }
.compare-table th{ text-align:left; padding:14px 16px; background:var(--bg-alt); color:var(--text); font-family:var(--font-mono); font-size:12px; text-transform:uppercase; letter-spacing:.04em; border-bottom:2px solid var(--border); }
.compare-table th:not(:first-child){ text-align:center; color:var(--blue); }
.compare-table td{ padding:11px 16px; border-bottom:1px solid rgba(255,255,255,.06); color:rgba(220,232,245,.7); vertical-align:top; }
.compare-table td:not(:first-child){ text-align:center; color:var(--blue); font-weight:700; white-space:nowrap; }
.compare-table tr.group-row td{ background:rgba(22,104,245,.08); color:var(--text); font-weight:700; font-family:var(--font-mono); font-size:12px; text-transform:uppercase; letter-spacing:.05em; padding:10px 16px; }
.compare-table tr:hover td{ background:rgba(255,255,255,.02); }
.compare-table tr.group-row:hover td{ background:rgba(22,104,245,.08); }
