/* =========================================================
   Rotix AI Systems · stiluri suplimentare pentru paginile
   de produs Corthea si Nysira.
   Se incarca DUPA styles.css si nu modifica nimic din el.
   ========================================================= */

/* ---------- Eticheta de stadiu ---------- */
.stage{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  padding:6px 13px; border-radius:100px; border:1px solid var(--line);
  background:rgba(255,255,255,.7); color:var(--ink-3); backdrop-filter:blur(8px);
}
.stage.light{ border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.06); color:rgba(255,255,255,.72); }
.stage b{ font-weight:500; color:var(--ink); }
.stage.light b{ color:#fff; }

/* ---------- Rama de captura ---------- */
.shot{
  border-radius:20px; overflow:hidden; border:1px solid var(--line);
  background:var(--white);
  box-shadow:0 2px 4px rgba(10,11,13,.04), 0 40px 90px -50px rgba(10,11,13,.5);
}
.shot-bar{
  display:flex; align-items:center; gap:7px; padding:12px 16px;
  border-bottom:1px solid var(--line-soft); background:var(--paper-2);
}
.shot-dot{ width:9px; height:9px; border-radius:50%; background:#CFD4D8; flex:none; }
.shot-title{
  margin-left:12px; font-family:var(--mono); font-size:11px; letter-spacing:.05em;
  text-transform:uppercase; color:var(--ink-3);
}
.shot img{ width:100%; height:auto; }
.shot-note{ margin-top:14px; font-size:13.5px; color:var(--ink-3); line-height:1.55; }

.shot.dark{ border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.04); box-shadow:0 50px 100px -40px rgba(0,0,0,.7); }
.shot.dark .shot-bar{ background:rgba(255,255,255,.03); border-bottom-color:rgba(255,255,255,.09); }
.shot.dark .shot-dot{ background:rgba(255,255,255,.16); }
.shot.dark .shot-title{ color:rgba(255,255,255,.45); }

.shot-tilt{ transform:perspective(1800px) rotateY(-5deg) rotateX(1.5deg); transition:transform .8s var(--ease); }
.shot-tilt:hover{ transform:perspective(1800px) rotateY(0) rotateX(0); }
@media (max-width:1080px){ .shot-tilt{ transform:none; } }

/* ---------- Rand de functie: text + captura ---------- */
.feat{
  display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:clamp(36px,4.5vw,80px); align-items:center;
  padding:clamp(44px,5vw,86px) 0; border-top:1px solid var(--line);
}
.feat:first-of-type{ border-top:none; padding-top:0; }
.feat.flip .feat-copy{ order:2; }
.feat-copy h3{ font-size:clamp(24px,2.6vw,40px); letter-spacing:-0.04em; margin-top:16px; }
.feat-copy p{ margin-top:18px; color:var(--ink-3); font-size:clamp(16px,1.05vw,19px); line-height:1.62; font-weight:350; max-width:52ch; }
.feat-list{ margin-top:26px; display:flex; flex-direction:column; gap:12px; }
.feat-list li{ position:relative; padding-left:24px; font-size:clamp(15px,.95vw,17px); color:var(--ink-2); line-height:1.55; font-weight:350; }
.feat-list li::before{ content:""; position:absolute; left:0; top:11px; width:12px; height:1px; background:var(--accent); }

@media (max-width:1080px){
  .feat{ grid-template-columns:1fr; gap:32px; }
  .feat.flip .feat-copy{ order:0; }
}

/* ---------- Banda de cifre ---------- */
.figures{
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:var(--line-soft); border:1px solid var(--line-soft);
  border-radius:22px; overflow:hidden;
}
.fig{ background:var(--white); padding:clamp(22px,2vw,34px); }
.fig-k{ font-family:var(--mono); font-size:11px; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3); }
.fig-v{
  margin-top:12px; font-size:clamp(22px,2.1vw,34px); font-weight:600; letter-spacing:-0.04em;
  font-variant-numeric:tabular-nums; line-height:1.05;
}
.fig-n{ margin-top:8px; font-size:13.5px; color:var(--ink-3); line-height:1.5; font-weight:350; }
@media (max-width:1080px){ .figures{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .figures{ grid-template-columns:1fr; } }

/* ---------- Pret ---------- */
.price{
  display:grid; grid-template-columns:repeat(2,1fr); gap:1px;
  background:var(--line-soft); border:1px solid var(--line-soft);
  border-radius:22px; overflow:hidden; max-width:760px;
}
.price-cell{ background:var(--white); padding:clamp(26px,2.4vw,40px); }
.price-cell.hi{ background:var(--ink); color:#fff; }
.price-k{ font-family:var(--mono); font-size:11px; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3); }
.price-cell.hi .price-k{ color:rgba(255,255,255,.5); }
.price-v{ margin-top:14px; font-size:clamp(30px,3vw,46px); font-weight:600; letter-spacing:-0.045em; line-height:1; }
.price-u{ margin-top:8px; font-size:14px; color:var(--ink-3); }
.price-cell.hi .price-u{ color:rgba(255,255,255,.6); }
.price-w{ margin-top:16px; font-size:15px; color:var(--ink-2); line-height:1.55; font-weight:350; }
.price-cell.hi .price-w{ color:rgba(255,255,255,.75); }
@media (max-width:620px){ .price{ grid-template-columns:1fr; } }

/* ---------- Nota / avertisment ---------- */
.note{
  border-left:2px solid var(--accent); background:var(--white);
  padding:clamp(20px,1.8vw,30px) clamp(22px,2vw,34px);
  border-radius:0 18px 18px 0; max-width:76ch;
  box-shadow:0 1px 2px rgba(10,11,13,.03), 0 20px 50px -40px rgba(10,11,13,.4);
}
.note p{ font-size:clamp(15.5px,1vw,18px); line-height:1.62; color:var(--ink-2); font-weight:350; }
.note p + p{ margin-top:12px; }
.note strong{ font-weight:600; color:var(--ink); }
.note.warn{ border-left-color:var(--accent-3); }

/* ---------- Inapoi ---------- */
.crumb{
  display:inline-flex; align-items:center; gap:8px; font-size:14px; color:var(--ink-3);
  transition:color .25s; margin-bottom:8px;
}
.crumb:hover{ color:var(--ink); }
.crumb .arr{ display:inline-block; transition:transform .35s var(--ease); }
.crumb:hover .arr{ transform:translateX(-4px); }

/* ---------- Hero de pagina de produs ---------- */
.phero{ padding:clamp(112px,8.5vw,168px) 0 clamp(24px,3vw,44px); }
.phero h1{ max-width:20ch; }
.phero .lead{ max-width:60ch; }

/* ---------- Sectiune de capturi in dark ---------- */
.section.dark .shot-note{ color:rgba(255,255,255,.4); }

/* ---------- Fapte sub mock-ul din sectiunea dark ---------- */
.iq-facts{
  display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:14px;
}
.iq-fact{
  padding:15px 16px; border-radius:13px;
  background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.07);
}
.iq-fact .k{ font-family:var(--mono); font-size:10px; letter-spacing:.09em; text-transform:uppercase; color:rgba(255,255,255,.4); }
.iq-fact .v{ margin-top:8px; font-size:clamp(15px,1.05vw,18px); font-weight:600; letter-spacing:-0.03em; color:#fff; line-height:1.15; }
.iq-fact .n{ margin-top:5px; font-size:12px; color:rgba(255,255,255,.42); line-height:1.4; }
@media (max-width:620px){ .iq-facts{ grid-template-columns:1fr; } }

/* ---------- Corectii pe fundal inchis ---------- */
.section.dark .figures{ background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.10); }
.section.dark .fig{ background:rgba(255,255,255,.045); }
.section.dark .fig-k{ color:rgba(255,255,255,.45); }
.section.dark .fig-v{ color:#fff; }
.section.dark .fig-n{ color:rgba(255,255,255,.55); }

/* ---------- Ritm intre titlu de sectiune si primul rand de functie ---------- */
.sec-head.tight-below{ margin-bottom:clamp(22px,2.2vw,36px); }
.feat:first-of-type{ padding-top:clamp(18px,2vw,34px); }

/* ---------- Formular de contact ---------- */
.formwrap{
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(32px,4vw,72px); align-items:start;
}
@media (max-width:980px){ .formwrap{ grid-template-columns:1fr; gap:32px; } }

.form-copy h2{ font-size:clamp(28px,3.6vw,52px); letter-spacing:-0.04em; }
.form-copy p{ margin-top:18px; color:var(--ink-3); font-size:clamp(16px,1.05vw,19px); line-height:1.62; font-weight:350; max-width:46ch; }
.form-direct{ margin-top:28px; display:flex; flex-direction:column; gap:10px; }
.form-direct a{ display:inline-flex; align-items:center; gap:9px; font-size:clamp(16px,1.1vw,19px); font-weight:500; letter-spacing:-0.02em; color:var(--ink); }
.form-direct a:hover{ color:var(--accent); }
.form-direct .lbl{ font-family:var(--mono); font-size:11px; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3); display:block; margin-bottom:2px; }

.form-card{
  background:var(--white); border:1px solid var(--line-soft); border-radius:24px;
  padding:clamp(26px,2.4vw,42px);
  box-shadow:0 1px 2px rgba(10,11,13,.04), 0 40px 90px -60px rgba(10,11,13,.5);
}
.field{ margin-bottom:16px; }
.field label{
  display:block; font-family:var(--mono); font-size:11px; letter-spacing:.09em;
  text-transform:uppercase; color:var(--ink-3); margin-bottom:8px;
}
.field input, .field select, .field textarea{
  width:100%; font:inherit; font-size:16px; color:var(--ink);
  background:var(--paper); border:1px solid var(--line); border-radius:12px;
  padding:13px 15px; transition:border-color .25s, background .25s, box-shadow .25s;
  -webkit-appearance:none; appearance:none;
}
.field textarea{ min-height:104px; resize:vertical; line-height:1.55; }
.field select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236B7078' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 15px center; padding-right:40px;
}
.field input:focus, .field select:focus, .field textarea:focus{
  outline:none; border-color:var(--ink); background:var(--white);
  box-shadow:0 0 0 4px rgba(27,69,245,.08);
}
.field-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:560px){ .field-row{ grid-template-columns:1fr; gap:0; } }

.form-submit{ width:100%; margin-top:6px; }
.form-note{ margin-top:14px; font-size:13px; color:var(--ink-3); line-height:1.55; }
.form-note a{ color:var(--ink-3); border-bottom:1px solid var(--line); }

.form-msg{ margin-top:14px; font-size:14.5px; line-height:1.55; display:none; }
.form-msg.show{ display:block; }
.form-msg.ok{ color:#1F7A4D; }
.form-msg.err{ color:#B4442B; }

.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
