/* abc-IT, tema nouă. Generat din prototip. */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-400-latin.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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-500-latin.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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/ibm-plex-mono-600-latin.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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-400-latin.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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-500-latin.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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-600-latin.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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/ibm-plex-sans-700-latin.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: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(fonts/material-symbols-subset.woff2) format('woff2');
}
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }

/* Concept: service IT cu miros de prompt de comandă. Gri-ardezie din logo-ul vechi + chihlimbar de terminal.
   Tot site-ul folosește aceiași tokeni; cele două teme schimbă doar valorile lor. */
:root {
  --bg: #F3F5F8; --surface: #FFFFFF; --ink: #101A27; --muted: #4A5A6E; --line: #D5DCE6; --slate: #6F7F94;
  --accent: #F0A81C; --accent-ink: #1A1204; --accent-text: #8A5200; --logo-screen: #101A27;
  --term-bg: #101A27; --term-ink: #D7E0EC; --term-dim: #8E9DB2; --term-amber: #F4B63E; --term-ok: #6FD39A;
  --wa: #25D366; --wa-ink: #04210F; --warn-bg: color-mix(in srgb, var(--accent) 14%, var(--bg)); color-scheme: light;
  --shadow: 0 1px 2px rgba(16,26,39,.06), 0 8px 24px rgba(16,26,39,.06);
  --font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
/* teme: Alb este cea implicită; celelalte se aleg din butonul de teme */
:root[data-theme="dark"] { --bg:#0C1118; --surface:#131A24; --ink:#E8EDF4; --muted:#9AA9BC; --line:#233042; --slate:#8E9DB2; --accent:#F4B63E; --accent-ink:#1A1204; --accent-text:#F4B63E; --logo-screen:#1B2635; --term-bg:#080C12; --term-ink:#E8EDF4; --term-dim:#9AA9BC; --term-amber:#F4B63E; --term-ok:#6FD39A; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="tokyo"] { --bg:#1a1b26; --surface:#24283b; --ink:#c0caf5; --muted:#9aa5ce; --line:#3b4261; --slate:#7982a9; --accent:#7aa2f7; --accent-ink:#1a1b26; --accent-text:#7aa2f7; --logo-screen:#1f2335; --term-bg:#16161e; --term-ink:#c0caf5; --term-dim:#9aa5ce; --term-amber:#7aa2f7; --term-ok:#9ece6a; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="mocha"] { --bg:#1e1e2e; --surface:#313244; --ink:#cdd6f4; --muted:#a6adc8; --line:#45475a; --slate:#9399b2; --accent:#cba6f7; --accent-ink:#1e1e2e; --accent-text:#cba6f7; --logo-screen:#181825; --term-bg:#11111b; --term-ink:#cdd6f4; --term-dim:#a6adc8; --term-amber:#cba6f7; --term-ok:#a6e3a1; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="latte"] { --bg:#eff1f5; --surface:#ffffff; --ink:#4c4f69; --muted:#5c5f77; --line:#ccd0da; --slate:#7c7f93; --accent:#8839ef; --accent-ink:#eff1f5; --accent-text:#8839ef; --logo-screen:#4c4f69; --term-bg:#4c4f69; --term-ink:#eff1f5; --term-dim:#d3d6e0; --term-amber:#fab387; --term-ok:#a6e3a1; --shadow:0 1px 2px rgba(16,26,39,.06), 0 8px 24px rgba(16,26,39,.08); color-scheme:light; }
:root[data-theme="lumon"] { --bg:#0e1c19; --surface:#16302a; --ink:#d9f2e8; --muted:#8fbaa9; --line:#24463d; --slate:#6fa08d; --accent:#9ee7c9; --accent-ink:#0e1c19; --accent-text:#9ee7c9; --logo-screen:#143028; --term-bg:#08130f; --term-ink:#d9f2e8; --term-dim:#8fbaa9; --term-amber:#9ee7c9; --term-ok:#9ee7c9; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="ethereal"] { --bg:#0b0f24; --surface:#151a3a; --ink:#e6e9ff; --muted:#a0a6dc; --line:#2a3066; --slate:#7f86c9; --accent:#b7a1ff; --accent-ink:#0b0f24; --accent-text:#b7a1ff; --logo-screen:#1a2050; --term-bg:#060919; --term-ink:#e6e9ff; --term-dim:#a0a6dc; --term-amber:#b7a1ff; --term-ok:#8fe3c0; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="everforest"] { --bg:#2d353b; --surface:#343f44; --ink:#d3c6aa; --muted:#abb7ad; --line:#475258; --slate:#859289; --accent:#a7c080; --accent-ink:#2d353b; --accent-text:#a7c080; --logo-screen:#3d484d; --term-bg:#232a2e; --term-ink:#d3c6aa; --term-dim:#9da9a0; --term-amber:#a7c080; --term-ok:#a7c080; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="gruvbox"] { --bg:#282828; --surface:#3c3836; --ink:#ebdbb2; --muted:#c0b296; --line:#504945; --slate:#928374; --accent:#fabd2f; --accent-ink:#282828; --accent-text:#fabd2f; --logo-screen:#32302f; --term-bg:#1d2021; --term-ink:#ebdbb2; --term-dim:#a89984; --term-amber:#fabd2f; --term-ok:#b8bb26; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="miasma"] { --bg:#222222; --surface:#2d2d2a; --ink:#c2c2b0; --muted:#9b9b86; --line:#444439; --slate:#78824b; --accent:#d7c483; --accent-ink:#222222; --accent-text:#d7c483; --logo-screen:#2a2a26; --term-bg:#171717; --term-ink:#c2c2b0; --term-dim:#9b9b86; --term-amber:#d7c483; --term-ok:#a1b068; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="hackerman"] { --bg:#0b0c16; --surface:#12142b; --ink:#ddf7ff; --muted:#8db3c4; --line:#1f2a44; --slate:#7aa0b8; --accent:#82fb9c; --accent-ink:#0b0c16; --accent-text:#82fb9c; --logo-screen:#10132b; --term-bg:#05060d; --term-ink:#ddf7ff; --term-dim:#8db3c4; --term-amber:#82fb9c; --term-ok:#82fb9c; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="osaka"] { --bg:#111c18; --surface:#1a2b25; --ink:#c1c497; --muted:#97a587; --line:#2c4a40; --slate:#6f8f7f; --accent:#71cead; --accent-ink:#111c18; --accent-text:#71cead; --logo-screen:#16261f; --term-bg:#0a120f; --term-ink:#c1c497; --term-dim:#97a587; --term-amber:#71cead; --term-ok:#71cead; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="kanagawa"] { --bg:#1f1f28; --surface:#2a2a37; --ink:#dcd7ba; --muted:#a6a69c; --line:#54546d; --slate:#727169; --accent:#7e9cd8; --accent-ink:#1f1f28; --accent-text:#7e9cd8; --logo-screen:#2a2a37; --term-bg:#16161d; --term-ink:#dcd7ba; --term-dim:#a6a69c; --term-amber:#7e9cd8; --term-ok:#98bb6c; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="nord"] { --bg:#2e3440; --surface:#3b4252; --ink:#eceff4; --muted:#c0c8d8; --line:#4c566a; --slate:#81a1c1; --accent:#88c0d0; --accent-ink:#2e3440; --accent-text:#88c0d0; --logo-screen:#3b4252; --term-bg:#242933; --term-ink:#eceff4; --term-dim:#c0c8d8; --term-amber:#88c0d0; --term-ok:#a3be8c; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="matte"] { --bg:#121212; --surface:#1c1c1c; --ink:#d4d4d4; --muted:#a0a0a0; --line:#333333; --slate:#8a8a8a; --accent:#e68e0d; --accent-ink:#121212; --accent-text:#e68e0d; --logo-screen:#222222; --term-bg:#0a0a0a; --term-ink:#d4d4d4; --term-dim:#a0a0a0; --term-amber:#e68e0d; --term-ok:#8bc34a; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="vanta"] { --bg:#000000; --surface:#0b0b0b; --ink:#f2f2f2; --muted:#9a9a9a; --line:#262626; --slate:#8c8c8c; --accent:#ffffff; --accent-ink:#000000; --accent-text:#ffffff; --logo-screen:#141414; --term-bg:#000000; --term-ink:#f2f2f2; --term-dim:#9a9a9a; --term-amber:#ffffff; --term-ok:#d0d0d0; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="ristretto"] { --bg:#2c2525; --surface:#3a3232; --ink:#fff1f3; --muted:#c9bcbd; --line:#5b5353; --slate:#948a8b; --accent:#f38d70; --accent-ink:#2c2525; --accent-text:#f38d70; --logo-screen:#403838; --term-bg:#211c1c; --term-ink:#fff1f3; --term-dim:#c9bcbd; --term-amber:#f38d70; --term-ok:#adda78; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="retro82"] { --bg:#07162b; --surface:#0f2747; --ink:#f6efdc; --muted:#a9bbd6; --line:#22447a; --slate:#7f9cc4; --accent:#ff6a3d; --accent-ink:#07162b; --accent-text:#ff6a3d; --logo-screen:#12305a; --term-bg:#040d1a; --term-ink:#f6efdc; --term-dim:#a9bbd6; --term-amber:#ff6a3d; --term-ok:#5fe3a1; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
:root[data-theme="flexoki"] { --bg:#FFFCF0; --surface:#F2F0E5; --ink:#100F0F; --muted:#575653; --line:#DAD8CE; --slate:#878580; --accent:#DA702C; --accent-ink:#100F0F; --accent-text:#AF3029; --logo-screen:#1C1B1A; --term-bg:#1C1B1A; --term-ink:#CECDC3; --term-dim:#878580; --term-amber:#DA702C; --term-ok:#8BA33B; --shadow:0 1px 2px rgba(16,26,39,.06), 0 8px 24px rgba(16,26,39,.08); color-scheme:light; }
:root[data-theme="rosepine"] { --bg:#191724; --surface:#1f1d2e; --ink:#e0def4; --muted:#a09cb8; --line:#403d52; --slate:#6e6a86; --accent:#ebbcba; --accent-ink:#191724; --accent-text:#ebbcba; --logo-screen:#26233a; --term-bg:#14111f; --term-ink:#e0def4; --term-dim:#a09cb8; --term-amber:#ebbcba; --term-ok:#9ccfd8; --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35); color-scheme:dark; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:var(--font-body); font-size:1.125rem; line-height:1.6;
  padding-left:max(16px, env(safe-area-inset-left,0px)); padding-right:max(16px, env(safe-area-inset-right,0px)); padding-block:0 96px; -webkit-font-smoothing:antialiased; }
body::before { content:""; position:fixed; inset:0 0 auto; height:env(safe-area-inset-top,0px); z-index:60; background:var(--bg); }
h1,h2,h3,h4,p { margin:0; } h1,h2,h3,h4 { text-wrap:balance; letter-spacing:-.015em; line-height:1.15; }
a { color:inherit; }
:focus-visible { outline:3px solid var(--accent); outline-offset:3px; border-radius:4px; }
.wrap { max-width:1440px; margin-inline:auto; } .mono { font-family:var(--font-mono); }
.eyebrow { font-family:var(--font-mono); font-size:0.9375rem; letter-spacing:.08em; text-transform:uppercase; color:var(--accent-text); }

/* antet + meniu */
.top { position:sticky; top:env(safe-area-inset-top,0px); z-index:50; background:var(--bg); border-bottom:1px solid var(--line);
  margin-inline:calc(-1*max(16px, env(safe-area-inset-left,0px))) calc(-1*max(16px, env(safe-area-inset-right,0px)));
  padding-inline:max(16px, env(safe-area-inset-left,0px)) max(16px, env(safe-area-inset-right,0px)); }
.top .wrap { display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; padding-block:15px; }
.brand { display:inline-flex; align-items:center; text-decoration:none; } .brand svg { height:52px; width:auto; display:block; }
nav { display:flex; align-items:center; gap:2px; margin-left:auto; flex-wrap:wrap; }
.ni { position:relative; display:flex; align-items:center; }
.ni > a, .ni > button { background:none; border:0; font:inherit; font-size:1.125rem; font-weight:500; color:var(--muted); padding:11px 13px; border-radius:8px; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:6px; }
.ni > a:hover, .ni > button:hover, .ni.active > a, .ni.active > button { color:var(--ink); }
.ni.active > a:first-child, .ni.active > button:first-child { box-shadow:inset 0 -2px 0 var(--accent); border-radius:0; }
.ni .chev { padding:11px 5px 11px 0; } .ni .chev svg { width:12px; height:12px; display:block; transition:transform .15s; }
.ni.open .chev svg { transform:rotate(180deg); }
.dd { position:absolute; top:100%; left:0; min-width:270px; background:var(--surface); border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow); padding:8px; display:none; z-index:70; }
.ni.open > .dd { display:block; }
@media (hover:hover) and (min-width:1261px) { .ni:hover > .dd, .ni:focus-within > .dd { display:block; } }
.dd a { display:block; padding:11px 14px; border-radius:8px; text-decoration:none; font-size:1.125rem; color:var(--ink); }
.dd a:hover, .dd a.cur { background:var(--bg); } .dd a.cur { font-weight:600; }
.theme { display:inline-flex; align-items:center; gap:2px; padding:3px; border-radius:999px; border:1px solid var(--line); background:var(--surface); cursor:pointer; font:inherit; color:inherit; }
.theme span { width:40px; height:36px; display:grid; place-items:center; border-radius:999px; font-size:1.125rem; line-height:1; filter:grayscale(.6); opacity:.6; transition:background .15s, opacity .15s; }
.theme[data-active="light"] .sun, .theme[data-active="dark"] .moon { background:var(--accent); opacity:1; filter:none; }
.burger { display:none; width:50px; height:48px; border:1px solid var(--line); background:var(--surface); border-radius:10px; cursor:pointer; color:var(--ink); place-items:center; }
.burger svg { width:22px; height:22px; }
@media (max-width:1350px) {
  .burger { display:grid; margin-left:auto; } .theme { margin-left:0; }
  nav { display:none; order:5; width:100%; flex-direction:column; align-items:stretch; margin-left:0; padding-bottom:10px; gap:0; }
  nav.open { display:flex; }
  .ni { flex-wrap:wrap; border-top:1px solid var(--line); } .ni > a, .ni > button { padding:12px 6px; flex:1; justify-content:space-between; } .ni .chev { flex:none; padding:12px 10px; }
  .dd { position:static; width:100%; min-width:0; border:0; box-shadow:none; padding:0 0 8px 12px; background:transparent; }
}

/* selector de teme */
.tw { position:relative; display:flex; } .themebtn { width:50px; height:48px; border:1px solid var(--line); background:var(--surface); color:var(--ink); border-radius:10px; cursor:pointer; display:grid; place-items:center; transition:border-color .2s, background .2s; } .themebtn svg { width:24px; height:24px; } .themebtn:hover, .themebtn[aria-expanded="true"] { border-color:var(--accent); }
.themes { position:fixed; top:calc(env(safe-area-inset-top, 0px) + 88px); right:max(16px, env(safe-area-inset-right, 0px)); width:min(400px, calc(100vw - 32px)); max-height:calc(100vh - env(safe-area-inset-top, 0px) - 106px); overflow:auto; background:var(--surface); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); padding:10px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; z-index:90; }
.themes[hidden] { display:none; }
.themes button { display:flex; align-items:center; gap:10px; width:100%; text-align:left; border:1px solid transparent; background:transparent; color:var(--ink); font:inherit; font-size:0.9375rem; padding:9px 10px; border-radius:9px; cursor:pointer; min-width:0; }
.themes button:hover { background:var(--bg); } .themes button[aria-checked="true"] { border-color:var(--accent); background:var(--bg); font-weight:600; }
.themes .sw { width:26px; height:26px; border-radius:50%; flex:none; border:1px solid var(--line); }
@media (max-width:420px) { .themes { grid-template-columns:minmax(0,1fr); } }
@media (max-width:520px) { .top .wrap { padding-block:10px; gap:8px; } .brand svg { height:40px; } .theme span { width:34px; height:30px; font-size:1rem; } .themebtn, .burger { width:44px; height:42px; } .themebtn svg { width:22px; height:22px; } .themes { top:calc(env(safe-area-inset-top, 0px) + 70px); } }
@media (max-width:360px) { .brand svg { height:34px; } .theme span { width:30px; } .themebtn, .burger { width:40px; } .top .wrap { gap:6px; } }
@media (max-width:340px) { .brand svg { height:30px; } .theme span { width:26px; height:28px; } .themebtn, .burger { width:38px; height:40px; } .top .wrap { gap:5px; } }
/* șarpe de lumină în jurul butonului de teme */
.snake { position:absolute; left:-3px; top:-3px; width:calc(100% + 6px); height:calc(100% + 6px); pointer-events:none; overflow:visible; z-index:2; }
.snake rect { fill:none; stroke:var(--accent); stroke-linecap:round; stroke-linejoin:round; }
.snake .tail { stroke-width:1.7; opacity:.38; stroke-dasharray:34 66; stroke-dashoffset:24; animation:snake-t 3.6s linear infinite; }
.snake .head { stroke-width:2.4; stroke-dasharray:11 89; stroke-dashoffset:0; filter:drop-shadow(0 0 2.5px color-mix(in srgb, var(--accent) 75%, transparent)); animation:snake-h 3.6s linear infinite; }
.snake { transition:opacity .45s ease; } .snake.gone { opacity:0; }
@keyframes snake-h { to { stroke-dashoffset:-100; } } @keyframes snake-t { to { stroke-dashoffset:-76; } }
@media (prefers-reduced-motion:reduce) { .snake .tail, .snake .head { animation:none; } .snake .tail { stroke-dasharray:none; opacity:.5; } .snake .head { display:none; } }
/* butoane */
.btn { display:inline-flex; align-items:center; gap:10px; min-height:48px; padding:0 22px; border-radius:10px; font-weight:600; font-size:1.125rem; text-decoration:none; border:1px solid transparent; cursor:pointer; font-family:inherit; }
.btn svg { width:20px; height:20px; flex:none; }
.btn.wa { background:var(--wa); color:var(--wa-ink); } .btn.call { background:var(--ink); color:var(--bg); }
.btn.ghost { background:transparent; color:var(--ink); border-color:var(--line); } .btn.sm { min-height:40px; padding:0 16px; font-size:1.0625rem; }
.btn:hover { filter:brightness(1.06); } .cta { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.tlink { color:var(--accent-text); font-weight:600; text-decoration:none; border-bottom:2px solid var(--accent); } .tlink:hover { filter:brightness(1.1); }

/* hero acasă */
.hero { display:grid; grid-template-columns:minmax(0,min(700px,52%)) minmax(0,1fr); gap:40px 56px; align-items:center; padding-block:48px 44px; }
.hero h1 { font-size:clamp(2.25rem,5.4vw,3.75rem); font-weight:700; margin-block:14px 18px; } .hero h1 em { font-style:normal; color:var(--accent-text); }
.lead { font-size:clamp(1.1875rem,2vw,1.3125rem); color:var(--muted); max-width:56ch; }
.phone-line { margin-top:18px; font-size:1.0625rem; color:var(--muted); display:flex; flex-wrap:wrap; gap:6px 12px; align-items:center; }
.phone-line b { font-family:var(--font-mono); font-weight:600; color:var(--ink); font-size:1.1875rem; }
.copy { font:inherit; font-size:0.9375rem; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:6px; padding:3px 10px; cursor:pointer; }
.term { background:var(--term-bg); color:var(--term-ink); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); overflow:hidden; font-family:var(--font-mono); font-size:1rem; line-height:1.7; }
.term-bar { display:flex; align-items:center; gap:8px; padding:10px 14px; border-bottom:1px solid rgba(142,157,178,.22); color:var(--term-dim); font-size:0.8125rem; }
.term-bar i { width:9px; height:9px; border-radius:50%; background:var(--term-dim); opacity:.5; display:inline-block; }
.term-body { padding:18px 20px 22px; display:grid; gap:2px; } .term-body .p { color:var(--term-amber); } .term-body .ok { color:var(--term-ok); } .term-body .d { color:var(--term-dim); }
.cursor { display:inline-block; width:.6em; height:1.05em; background:var(--term-amber); vertical-align:-.18em; animation:blink 1.1s steps(1) infinite; }
@keyframes blink { 50% { opacity:0; } } @media (prefers-reduced-motion:reduce) { .cursor { animation:none; } html { scroll-behavior:auto; } }
@media (max-width:860px) { .hero { grid-template-columns:minmax(0,1fr); padding-block:36px 44px; } }

.hl { min-width:0; container-type:inline-size; }
.hero-eyebrow { white-space:nowrap; letter-spacing:.05em; font-size:clamp(0.625rem, calc((100vw - 32px) / 60), 0.9375rem); font-size:clamp(0.625rem, calc(100cqw / 58), 0.9375rem); }
@media (min-width:861px) and (max-width:1010px) { .hero-eyebrow { white-space:normal; font-size:0.8125rem; letter-spacing:.06em; } }
@media (max-width:700px) { .hero-eyebrow { white-space:normal; font-size:0.875rem; letter-spacing:.07em; } }
/* secțiuni */
section.s { padding-block:45px 44px; border-top:1px solid var(--line); }
.s-head { display:grid; gap:8px; max-width:64ch; margin-bottom:24px; } .s-head h2 { font-size:clamp(1.8125rem,3.6vw,2.5rem); font-weight:700; } .s-head p { color:var(--muted); }
.modes { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr)); gap:18px; }
.mode { background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:24px; display:grid; gap:10px; align-content:start; min-width:0; }
.mode .k { font-family:var(--font-mono); font-size:0.8125rem; letter-spacing:.08em; text-transform:uppercase; color:var(--slate); } .mode h3 { font-size:1.5rem; font-weight:600; } .mode p { color:var(--muted); font-size:1.0625rem; }
.mode { text-align:center; justify-items:center; display:flex; flex-direction:column; align-items:center; gap:10px; transition:border-color .2s, box-shadow .2s, transform .2s; } .mode p { flex:1; } .mode:hover { border-color:var(--accent); box-shadow:var(--shadow); transform:translateY(-3px); }
.lbtn { white-space:nowrap; display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:0 22px; margin-top:8px; border-radius:999px; border:1.5px solid var(--ink); color:var(--ink); text-decoration:none; font-weight:600; font-size:1.0625rem; background:transparent; transition:background .2s, color .2s, border-color .2s, transform .2s, box-shadow .2s; }
.lbtn svg { width:16px; height:16px; transition:transform .2s; }
.lbtn:hover, .lbtn:focus-visible { background:var(--accent); border-color:var(--accent); color:var(--accent-ink); transform:translateY(-2px); box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 38%, transparent); } .lbtn:hover svg, .lbtn:focus-visible svg { transform:translateX(5px); }
@media (prefers-reduced-motion:reduce) { .mode, .lbtn, .lbtn svg { transition:none; } .mode:hover, .lbtn:hover { transform:none; } }
.s-head.c { text-align:center; margin-inline:auto; justify-items:center; }
.checks.cen { max-width:980px; margin:18px auto 0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.checks.cen li { display:grid; place-items:center; text-align:center; min-height:68px; padding:14px 18px; position:static; background:color-mix(in srgb, var(--ink) 6%, var(--surface)); border:1px solid color-mix(in srgb, var(--slate) 55%, var(--bg)); border-radius:12px; font-size:1.125rem; font-weight:500; line-height:1.4; transition:border-color .2s, transform .2s, box-shadow .2s; }
.checks.cen li::before { display:none; }
.checks.cen li span::before { content:">"; font-family:var(--font-mono); font-weight:700; color:var(--accent-text); margin-right:9px; }
.checks.cen li:hover { border-color:var(--accent); transform:translateY(-2px); box-shadow:var(--shadow); }
@media (max-width:860px) { .checks.cen { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:540px) { .checks.cen { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce) { .checks.cen li { transition:none; } .checks.cen li:hover { transform:none; } }
.benefit { grid-template-columns:minmax(0,1fr); justify-items:center; text-align:center; } .benefit .ic { margin-bottom:2px; }
.net div { text-align:center; }
.split { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:40px 56px; align-items:center; }
.split img.ph { width:100%; height:auto; border-radius:14px; border:1px solid var(--line); display:block; }
@media (max-width:860px) { .split { grid-template-columns:minmax(0,1fr); } }
.checks { list-style:none; margin:18px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:4px 28px; }
.checks li { padding:9px 0 9px 24px; position:relative; border-bottom:1px solid var(--line); font-size:1.0625rem; }
.checks li::before { content:">"; position:absolute; left:0; font-family:var(--font-mono); font-weight:600; color:var(--accent-text); }
.benefits { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:26px 32px; margin-top:6px; }
.benefit { display:grid; grid-template-columns:44px minmax(0,1fr); gap:14px; align-items:start; }
.benefit .ic { width:44px; height:44px; border-radius:12px; background:var(--surface); border:1px solid var(--line); display:grid; place-items:center; color:var(--accent-text); } .benefit .ic svg { width:24px; height:24px; }
.benefit b { display:block; font-size:1.1875rem; margin-bottom:2px; } .benefit p { font-size:1.0625rem; color:var(--muted); }
.gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr)); gap:14px; margin-top:22px; }
.tile { margin:0; background:var(--surface); border:1px solid var(--line); border-radius:12px; overflow:hidden; display:grid; } .tile img { width:100%; aspect-ratio:1/1; object-fit:contain; background:#fff; padding:8px; display:block; }
.tile { position:relative; transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s, border-color .25s; will-change:transform; }
.tile img { transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.tile::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(115deg, transparent 38%, color-mix(in srgb, var(--accent) 38%, transparent) 50%, transparent 62%); transform:translateX(-130%); transition:transform .8s ease; }
.tile:hover, .tile.force-hover { transform:translateY(-9px) rotate(-1.2deg); border-color:var(--accent); box-shadow:0 18px 36px rgba(16,26,39,.22); z-index:2; }
.tile:nth-child(even):hover, .tile:nth-child(even).force-hover { transform:translateY(-9px) rotate(1.2deg); }
.tile:hover img, .tile.force-hover img { transform:scale(1.13); } .tile:hover::after, .tile.force-hover::after { transform:translateX(130%); }
.tile:hover figcaption, .tile.force-hover figcaption { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); }
.tile figcaption { transition:background .25s, color .25s; }
@keyframes pop { from { opacity:0; transform:translateY(26px) scale(.9); } to { opacity:1; transform:none; } }
@keyframes rise { from { opacity:0; transform:translateY(30px); } to { opacity:1; transform:none; } }
@keyframes draw { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.gallery.in .tile { animation:pop 1.6s cubic-bezier(.2,.7,.2,1) backwards; animation-delay:calc(var(--i) * 280ms); }
.steps.in li { animation:rise .75s cubic-bezier(.2,.8,.2,1) backwards; animation-delay:calc(var(--i) * 160ms); }
.steps.in li::before { animation:draw .9s cubic-bezier(.6,.1,.2,1) backwards; animation-delay:calc(var(--i) * 160ms); }
.steps.in li .no { animation:rise .6s ease backwards; animation-delay:calc(var(--i) * 160ms + 250ms); }
@media (prefers-reduced-motion:reduce) { .tile, .tile img, .tile::after, .tile figcaption { transition:none; } .tile:hover, .tile:nth-child(even):hover { transform:none; } .gallery.in .tile, .steps.in li, .steps.in li::before, .steps.in li .no { animation:none; } }
.tile figcaption { padding:8px 12px 10px; font-size:0.9375rem; color:var(--muted); font-family:var(--font-mono); border-top:1px solid var(--line); }
.net { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:0 40px; }
.net div { padding:18px 0; border-top:1px solid var(--line); min-width:0; } .net b { display:block; font-size:1.25rem; margin-bottom:4px; } .net p { font-size:1.0625rem; color:var(--muted); }

/* prețuri */
.groups { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr)); gap:36px 48px; }
.group h3 { font-size:1.0625rem; font-family:var(--font-mono); font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--slate); padding-bottom:10px; border-bottom:2px solid var(--ink); }
.prices { list-style:none; margin:0; padding:0; }
.prices li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 16px; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--line); }
.prices .n { font-weight:600; } .prices .t { grid-column:1; font-size:1rem; color:var(--muted); }
.prices .c { grid-row:1/span 2; grid-column:2; align-self:start; text-align:right; font-family:var(--font-mono); white-space:nowrap; font-weight:600; font-size:1.1875rem; }
.prices .c small { display:block; font-family:var(--font-body); font-weight:400; font-size:0.8125rem; color:var(--muted); } .prices .c.offer { font-family:var(--font-body); font-size:1.0625rem; } .prices .c.offer a, .tcard .tp a { color:inherit; text-decoration:underline; text-underline-offset:3px; } .prices .c.offer a:hover, .tcard .tp a:hover { color:var(--accent); }
.facts { margin-top:40px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); border:1px solid var(--line); border-radius:12px; background:var(--surface); overflow:hidden; }
.facts div { padding:20px 22px; min-width:0; border-left:1px solid var(--line); } .facts div:first-child { border-left:0; }
@media (max-width:760px) { .facts div { border-left:0; border-top:1px solid var(--line); } .facts div:first-child { border-top:0; } }
.facts b { display:block; font-size:1.0625rem; margin-bottom:4px; } .facts p { font-size:1rem; color:var(--muted); } .upd { margin-top:14px; font-size:0.9375rem; color:var(--muted); font-family:var(--font-mono); }
.steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:28px 32px; }
.steps li { position:relative; padding-top:18px; min-width:0; } .steps li::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--ink); transform-origin:left center; } .steps li:hover::before { background:var(--accent); height:3px; } .steps li::before { transition:background .25s; } .steps .no { font-family:var(--font-mono); font-size:1rem; font-weight:600; color:var(--accent-text); letter-spacing:.06em; }
.steps h3 { font-size:1.375rem; margin-block:6px 8px; font-weight:600; } .steps p { font-size:1.0625rem; color:var(--muted); }
.reviews { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:20px; }
.rev { margin:0; background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:26px 26px 22px; display:grid; gap:18px; align-content:space-between; min-width:0; }
.rev blockquote { margin:0; font-size:1.1875rem; line-height:1.55; } .rev blockquote::before { content:"„"; font-family:var(--font-mono); font-size:2.5rem; line-height:0; color:var(--accent-text); display:block; height:18px; }
.rev figcaption { font-size:1rem; color:var(--muted); display:grid; gap:2px; } .rev figcaption b { color:var(--ink); font-size:1.0625rem; }
.note { margin-top:20px; font-size:0.9375rem; color:var(--muted); }

/* pagini interioare */
.crumbs { font-size:0.9375rem; color:var(--muted); font-family:var(--font-mono); display:flex; flex-wrap:wrap; gap:4px 8px; } .crumbs a { text-decoration:none; } .crumbs a:hover { color:var(--ink); }
.phero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,340px); gap:28px 48px; align-items:center; padding-block:40px 34px; border-bottom:1px solid var(--line); }
.phero h1 { font-size:clamp(2.125rem,4.6vw,3.125rem); font-weight:700; margin-block:12px 14px; } .phero .lead { font-size:1.25rem; }
.phero img { width:100%; height:auto; border-radius:14px; border:1px solid var(--line); display:block; aspect-ratio:3/2; object-fit:cover; background:var(--surface); }
@media (max-width:820px) { .phero { grid-template-columns:minmax(0,1fr); } .phero img { max-height:220px; } }
.layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:48px; padding-block:40px 20px; align-items:start; }
@media (max-width:980px) { .layout { grid-template-columns:minmax(0,1fr); } }
.prose { max-width:72ch; min-width:0; } .prose h2 { font-size:1.75rem; margin:38px 0 12px; } .prose h2:first-child { margin-top:0; } .prose h3 { font-size:1.5rem; margin:28px 0 10px; } .prose h4 { font-size:1.1875rem; margin:22px 0 8px; color:var(--muted); }
.prose p { margin:0 0 14px; } .prose ul, .prose ol { margin:0 0 16px; padding-left:22px; } .prose li { margin:5px 0; } .prose a { color:var(--accent-text); text-underline-offset:3px; }
.prose p:empty { display:none; }
aside.side { position:sticky; top:108px; display:grid; gap:18px; min-width:0; }
.card { background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:22px; min-width:0; } .card h3 { font-size:1.25rem; margin-bottom:6px; } .card p { font-size:1rem; color:var(--muted); }
.card .btns { display:grid; gap:10px; margin-top:14px; } .card .btn { justify-content:center; width:100%; }
.rel { list-style:none; margin:10px 0 0; padding:0; } .rel li { border-top:1px solid var(--line); } .rel a { display:block; padding:9px 0; text-decoration:none; font-size:1.0625rem; } .rel a:hover { color:var(--accent-text); }
.embed { border:1px dashed var(--line); border-radius:12px; padding:22px; background:var(--surface); color:var(--muted); font-size:1rem; margin:0 0 16px; }
.ms { font-family:'Material Symbols Outlined'; font-weight:400; font-style:normal; font-size:1.6875rem; line-height:1; letter-spacing:normal; text-transform:none; display:inline-block; white-space:nowrap; direction:ltr; width:1em; height:1em; overflow:hidden; font-feature-settings:'liga'; -webkit-font-feature-settings:'liga'; font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24; }
.ico { display:inline-grid; place-items:center; width:48px; height:48px; border-radius:12px; background:var(--bg); border:1px solid var(--line); color:var(--accent-text); margin-bottom:12px; }
.pagehead { padding-block:34px 22px; } .pagehead h1 { font-size:clamp(2.125rem,4.6vw,3.125rem); font-weight:700; margin-top:12px; }
.intro { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:32px 48px; align-items:center; padding-block:6px 40px; border-bottom:1px solid var(--line); }
.intro .pimg, .pimg { width:100%; height:auto; border-radius:18px; border:1px solid var(--line); display:block; background:var(--surface); box-shadow:var(--shadow); }
.intro .prose h2, .intro .prose h3 { margin-top:0; } .intro .prose { font-size:1.1875rem; } .intro .prose ul { margin-top:12px; }
@media (max-width:860px) { .intro { grid-template-columns:minmax(0,1fr); } .intro .introimg { order:-1; } }
.rrow { display:grid; gap:18px; margin:0 0 28px; } .rrow.c1 { grid-template-columns:minmax(0,1fr); } .rrow.c2, .rrow.c4 { grid-template-columns:repeat(2,minmax(0,1fr)); } .rrow.c3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:760px) { .rrow.c2, .rrow.c3, .rrow.c4 { grid-template-columns:minmax(0,1fr); } }
.rcol { min-width:0; } .rcol.feat { background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:22px; } .rcol.feat h2, .rcol.feat h3, .rcol.feat h4 { margin:0 0 8px; font-size:1.3125rem; color:var(--ink); } .rcol.feat p { margin:0 0 10px; font-size:1.0625rem; color:var(--muted); }
.rcol h2:first-child, .rcol h3:first-child, .rcol h4:first-child { margin-top:0; }
hr.rule { border:0; border-top:1px solid var(--line); margin:6px 0 24px; }
.cen { text-align:center; } .prose h2.cen, .cen h2, .cen h3, .cen h4 { text-align:center; } .cost { text-align:left; font-size:1.1875rem; margin:14px 0 0; } .cen .cost { text-align:center; }
.rcol.feat { text-align:center; cursor:pointer; transition:border-color .2s, box-shadow .2s, transform .2s, background .2s; position:relative; } .rcol.feat .ico { margin-inline:auto; }
.rcol.feat:hover, .rcol.feat:focus-visible { border-color:var(--accent); box-shadow:var(--shadow); transform:translateY(-4px); }
.rcol.feat.sel { border-color:var(--accent); box-shadow:0 0 0 2px var(--accent), var(--shadow); background:color-mix(in srgb, var(--accent) 9%, var(--surface)); }
.rcol.feat.sel .ico { background:var(--accent); border-color:var(--accent); color:var(--accent-ink); }
@media (prefers-reduced-motion:reduce) { .rcol.feat { transition:none; } .rcol.feat:hover { transform:none; } }
.term-body { min-height:21em; align-content:start; }
.kv { display:flex; gap:8px; align-items:baseline; } .kv span { color:var(--term-ink); } .kv i { flex:1; min-width:12px; border-bottom:1px dotted rgba(142,157,178,.55); transform:translateY(-4px); } .kv b { color:var(--term-amber); font-weight:500; white-space:nowrap; }
.term-body div { overflow-wrap:anywhere; }
.rev, .plan, .post, .benefit, .net > div { transition:border-color .25s, box-shadow .25s, transform .25s, background .25s; }
.rev:hover, .plan:hover, .post:hover, .benefit:hover, .net > div:hover { border-color:var(--accent); box-shadow:var(--shadow); transform:translateY(-4px); }
.benefit { padding:18px; border:1px solid transparent; border-radius:14px; }
.net { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 22px; }
.net > div { flex:0 1 calc((100% - 44px) / 3); }
@media (max-width:860px) { .net > div { flex-basis:calc((100% - 22px) / 2); } }
@media (max-width:560px) { .net > div { flex-basis:100%; } }
.net > div { padding:20px 18px; border:1px solid transparent; border-top-color:var(--line); border-radius:12px; } .net > div:hover { background:var(--surface); }
.facts div { transition:background .25s; } .facts div:hover { background:color-mix(in srgb, var(--accent) 9%, var(--surface)); }
.btn { transition:transform .2s, box-shadow .2s, filter .2s; } .btn:hover { transform:translateY(-2px); box-shadow:0 10px 22px rgba(0,0,0,.18); }
@media (prefers-reduced-motion:reduce) { .rev, .plan, .post, .benefit, .net > div, .btn, .facts div { transition:none; } .rev:hover, .plan:hover, .post:hover, .benefit:hover, .net > div:hover, .btn:hover { transform:none; } }
/* buton "Vezi prețurile" din bara laterală */
.lbtn.wide { display:flex; justify-content:center; width:100%; margin-top:0; min-height:50px; font-size:1.125rem; position:relative; overflow:hidden; }
.lbtn.shine::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(115deg, transparent 35%, color-mix(in srgb, var(--accent) 50%, transparent) 50%, transparent 65%); transform:translateX(-130%); animation:sweep 4.6s ease-in-out infinite; }
.lbtn.shine svg { animation:nudge 2.4s ease-in-out infinite; } .lbtn.shine:hover svg, .lbtn.shine:focus-visible svg { animation:none; }
@keyframes sweep { 0%, 55% { transform:translateX(-130%); } 90%, 100% { transform:translateX(130%); } }
@keyframes nudge { 0%, 55%, 100% { transform:translateX(0); } 25% { transform:translateX(7px); } }
@media (prefers-reduced-motion:reduce) { .lbtn.shine::after, .lbtn.shine svg { animation:none; } }
.layout.lc { grid-template-columns:minmax(0,340px) minmax(0,1fr); }
@media (max-width:980px) { .layout.lc { grid-template-columns:minmax(0,1fr); } }
/* FAQ */
.faq details { border-bottom:1px solid var(--line); } .faq details:first-child { border-top:1px solid var(--line); }
.faq summary { cursor:pointer; list-style:none; padding:18px 36px 18px 0; font-weight:600; font-size:1.25rem; position:relative; } .faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:"+"; position:absolute; right:6px; top:50%; transform:translateY(-52%); font-family:var(--font-mono); font-size:1.5625rem; color:var(--accent-text); } .faq details[open] summary::after { content:"–"; }
.faq .ans { padding:0 0 20px; max-width:72ch; color:var(--ink); } .faq .ans p { margin:0 0 12px; } .faq .ans ul { padding-left:22px; margin:0 0 12px; } .faq .ans a { color:var(--accent-text); }
.callout { border:1px solid var(--line); border-radius:12px; background:var(--surface); padding:20px 22px; margin:0 0 26px; max-width:72ch; } .callout b { display:block; margin-bottom:6px; } .callout ul { margin:8px 0 0; padding-left:20px; } .callout li { margin:3px 0; } .callout .big { font-family:var(--font-mono); font-weight:600; font-size:1.375rem; }
.gt { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:940px; margin:0 auto 34px; } @media (max-width:640px) { .gt { grid-template-columns:minmax(0,1fr); } } .gt .head { text-align:center; } .gnote { max-width:72ch; margin-inline:auto; text-align:center; } .gnote p { margin-inline:auto; } .gt .card { padding:24px; } .gt h3 { font-size:1.0625rem; font-family:var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--slate); margin-bottom:4px; } .gt .days { font-family:var(--font-mono); font-size:2.5rem; font-weight:600; line-height:1.1; } .gt ul { margin:14px 0 0; padding:0; list-style:none; } .gt li { padding:8px 0 8px 22px; border-top:1px solid var(--line); position:relative; font-size:1.0625rem; } .gt li::before { content:">"; position:absolute; left:0; font-family:var(--font-mono); font-weight:600; color:var(--accent-text); }
/* abonamente */
.plans { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr)); gap:20px; align-items:stretch; }
.plan { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:28px; display:grid; gap:14px; align-content:start; min-width:0; position:relative; }
.plan.pop { border:2px solid var(--ink); } .plan .bd { position:absolute; top:-13px; left:24px; background:var(--accent); color:var(--accent-ink); font-family:var(--font-mono); font-size:0.8125rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:3px 10px; border-radius:6px; }
.plan h3 { font-size:1.5625rem; } .plan .pr { font-family:var(--font-mono); font-size:2.375rem; font-weight:600; line-height:1; } .plan .pr small { font-family:var(--font-body); font-size:1.0625rem; font-weight:400; color:var(--muted); }
.plan ul { list-style:none; margin:0; padding:0; } .plan li { padding:9px 0 9px 24px; border-top:1px solid var(--line); position:relative; font-size:1.0625rem; } .plan li::before { content:">"; position:absolute; left:0; font-family:var(--font-mono); font-weight:600; color:var(--accent-text); }
/* formulare */
.form { display:grid; gap:14px; } .form label, .form legend { font-size:1rem; font-weight:600; display:grid; gap:6px; } .form fieldset { border:0; padding:0; margin:0; display:grid; gap:8px; }
.form input[type=text], .form input[type=tel], .form input[type=email], .form textarea { font:inherit; font-weight:400; color:var(--ink); background:var(--bg); border:1px solid var(--line); border-radius:8px; padding:11px 12px; width:100%; min-width:0; }
.row2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } @media (max-width:560px) { .row2 { grid-template-columns:minmax(0,1fr); } }
.chips { display:flex; flex-wrap:wrap; gap:8px; } .chips label { display:inline-flex; align-items:center; gap:8px; font-weight:500; border:1px solid var(--line); border-radius:999px; padding:7px 14px; background:var(--bg); cursor:pointer; }
.demo { font-size:0.8125rem; color:var(--muted); font-family:var(--font-mono); } .sent { padding:14px 16px; border-radius:10px; background:var(--warn-bg); font-size:1rem; }
/* blog */
.posts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
@media (max-width:1000px) { .posts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .posts { grid-template-columns:minmax(0,1fr); } }
.post { display:grid; background:var(--surface); border:1px solid var(--line); border-radius:14px; overflow:hidden; text-decoration:none; min-width:0; } .post:hover { box-shadow:var(--shadow); }
.post img { width:100%; aspect-ratio:16/10; object-fit:cover; display:block; background:var(--bg); } .post .b { padding:18px 20px 22px; display:grid; gap:8px; align-content:start; }
.post time { font-family:var(--font-mono); font-size:0.8125rem; color:var(--slate); letter-spacing:.04em; } .post h3 { font-size:1.3125rem; } .post p { font-size:1rem; color:var(--muted); }
section.s + .ctaband { margin-top:46px; }
.ctaband { margin-block:40px 0; padding:34px; border-radius:16px; background:var(--ink); color:var(--bg); display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px 32px; align-items:center; }
.ctaband h2 { font-size:clamp(1.5625rem,3vw,2.125rem); } .ctaband p { opacity:.8; margin-top:6px; } .ctaband .cta { margin:0; } @media (max-width:760px) { .ctaband { grid-template-columns:minmax(0,1fr); } }
.logos { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:20px; }
.logo-box { border:1px solid var(--line); border-radius:14px; padding:28px; background:var(--surface); display:grid; gap:18px; justify-items:start; min-width:0; } .logo-box.old { background:#fff; }
.logo-box img { width:min(100%,280px); aspect-ratio:1.7/1; height:auto; object-fit:cover; display:block; } .logo-box svg.full { height:64px; width:auto; max-width:100%; display:block; } .logo-box svg.mark { height:56px; width:auto; display:block; }
.logo-box .cap { font-size:0.9375rem; color:var(--muted); } .logo-box.old .cap { color:#4A5A6E; } .logo-row { display:flex; gap:20px; align-items:center; flex-wrap:wrap; }
/* subsol */
footer.ft { border-top:1px solid var(--line); margin-top:56px; padding-block:40px 24px; color:var(--muted); font-size:1rem; }
.ft-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:28px 32px; } .ft h4 { font-family:var(--font-mono); font-size:0.8125rem; letter-spacing:.08em; text-transform:uppercase; color:var(--slate); margin-bottom:10px; font-weight:600; }
.ft ul { list-style:none; margin:0; padding:0; display:grid; gap:6px; } .ft a { text-decoration:none; } .ft a:hover { color:var(--ink); text-decoration:underline; }
.ft-social { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; margin-top:34px; padding-top:26px; border-top:1px solid var(--line); }
.ft-social .lbl { font-family:var(--font-mono); font-size:0.8125rem; letter-spacing:.08em; text-transform:uppercase; color:var(--slate); margin-right:6px; }
.ft-social a, .ft-social .soon { width:48px; height:48px; border-radius:50%; display:grid; place-items:center; border:1px solid var(--line); background:var(--surface); color:var(--ink); transition:transform .2s, background .2s, color .2s, border-color .2s, box-shadow .2s; text-decoration:none; }
.ft-social svg { width:22px; height:22px; display:block; } .ft-social .soon { opacity:.45; cursor:not-allowed; }
.ft-social a:hover, .ft-social a:focus-visible { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); transform:translateY(-4px); box-shadow:0 10px 20px color-mix(in srgb, var(--accent) 35%, transparent); }
@media (prefers-reduced-motion:reduce) { .ft-social a { transition:none; } .ft-social a:hover { transform:none; } }
.ft-bottom { margin-top:30px; padding-top:18px; border-top:1px solid var(--line); text-align:center; font-size:0.9375rem; }
.ft-info { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:26px 32px; padding-top:30px; margin-top:34px; border-top:1px solid var(--line); }
@media (max-width:1180px) { .ft-info { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:700px) { .ft-info { grid-template-columns:minmax(0,1fr); } } .ft-info h4 { color:var(--accent-text); } .ft-info p { margin:0 0 8px; color:var(--ink); font-size:1rem; line-height:1.55; } .ft-info .tlink { font-size:1rem; }
.fab { position:fixed; right:max(16px, env(safe-area-inset-right,0px)); bottom:calc(16px + env(safe-area-inset-bottom,0px)); z-index:40; display:grid; gap:10px; justify-items:end; }
.fab a { display:inline-flex; align-items:center; gap:10px; min-height:52px; padding:0 20px 0 16px; border-radius:999px; font-weight:600; font-size:1.0625rem; text-decoration:none; box-shadow:var(--shadow); border:1px solid rgba(0,0,0,.08); }
.fab svg { width:22px; height:22px; flex:none; } .fab .w { background:var(--wa); color:var(--wa-ink); } .fab .c { background:var(--ink); color:var(--bg); }
@media (max-width:520px) { .fab a span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); } .fab a { padding:0; width:52px; justify-content:center; } }

/* tarife detaliate (din documentul „Informații și tarife IT&C”), ascunse în spatele unui buton */
.tarife-all { margin-top:30px; }
.tarife-all > summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:12px; width:fit-content; max-width:100%; margin-inline:auto; min-height:56px; padding:0 30px; border-radius:14px; background:var(--ink); color:var(--bg); font-weight:600; font-size:1.125rem; text-align:center; box-shadow:0 6px 0 color-mix(in srgb, var(--ink) 55%, var(--accent)), 0 14px 26px rgba(0,0,0,.18); transition:transform .12s ease, box-shadow .12s ease, filter .2s; user-select:none; -webkit-tap-highlight-color:transparent; }
.tarife-all > summary::-webkit-details-marker { display:none; }
.tarife-all > summary:hover { filter:brightness(1.08); }
.tarife-all > summary:active, .tarife-all[open] > summary { transform:translateY(5px); box-shadow:0 1px 0 color-mix(in srgb, var(--ink) 55%, var(--accent)), 0 4px 10px rgba(0,0,0,.18); }
.tarife-all > summary:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.tarife-all > summary svg { width:20px; height:20px; flex:none; transition:transform .25s ease; }
.tarife-all[open] > summary svg { transform:rotate(180deg); }
.tarife-all > summary .t-close { display:none; } .tarife-all[open] > summary .t-open { display:none; } .tarife-all[open] > summary .t-close { display:inline; }
.tarife-body { padding-top:34px; display:grid; gap:34px; }
.tarife-all[open] .tarife-body { animation:tfade .35s ease both; }
@keyframes tfade { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce) { .tarife-all[open] .tarife-body { animation:none; } .tarife-all > summary, .tarife-all > summary svg { transition:none; } }
.tarife-body h3 { font-size:1.5rem; margin-bottom:14px; }
.tarife-lead { color:var(--muted); max-width:none; }
.tgrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
@media (max-width:900px) { .tgrid { grid-template-columns:minmax(0,1fr); } }
.tcard { grid-template-columns:minmax(0,1fr); min-width:0; background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:22px 24px; display:grid; gap:10px; align-content:start; }
.tcard header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:6px 16px; }
.tcard h4 { font-size:1.1875rem; margin:0; }
.tcard .tp { font-family:var(--font-mono); font-weight:600; color:var(--accent-text); }
.tcard dl { margin:0; display:grid; gap:8px; font-size:1rem; }
.tcard dt { font-weight:600; font-size:.9375rem; color:var(--muted); letter-spacing:.02em; text-transform:uppercase; font-family:var(--font-mono); }
.tcard dd { margin:0; }
.tcard dd ul { margin:4px 0 0; padding-left:1.2em; } .tcard dd li + li { margin-top:3px; }
.tother { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 40px; }
@media (max-width:900px) { .tother { grid-template-columns:minmax(0,1fr); } }
.tother li { display:flex; align-items:baseline; gap:10px; padding:10px 0; border-bottom:1px solid var(--line); }
.tother li span { min-width:0; } .tother li i { flex:1; border-bottom:1px dotted var(--line); transform:translateY(-4px); min-width:12px; }
.tother li b { font-family:var(--font-mono); color:var(--accent-text); font-weight:600; text-align:right; max-width:60%; }
.tnote { background:var(--surface); border:1px solid var(--line); border-left:4px solid var(--accent); border-radius:12px; padding:18px 22px; display:grid; gap:8px; }
.tnote p { margin:0; }
.pnote { display:block; margin-top:8px; font-size:.875rem; line-height:1.45; color:var(--muted); }
.tcard .tfoot { margin:6px 0 0; padding-top:12px; border-top:1px dashed var(--line); font-size:.9375rem; color:var(--muted); }
.tarife-all > summary { position:relative; overflow:hidden; isolation:isolate; animation:tbreathe 3.6s ease-in-out infinite; }
.tarife-all > summary::before { content:""; position:absolute; z-index:-1; top:-20%; bottom:-20%; left:-40%; width:32%; background:linear-gradient(100deg, transparent, color-mix(in srgb, var(--bg) 42%, transparent), transparent); transform:skewX(-18deg); animation:tshine 3.8s ease-in-out infinite; pointer-events:none; }
.tarife-all[open] > summary { animation:none; }
@keyframes tshine { 0%, 55% { left:-40%; } 100% { left:125%; } }
@keyframes tbreathe { 0%, 100% { box-shadow:0 6px 0 color-mix(in srgb, var(--ink) 55%, var(--accent)), 0 14px 26px rgba(0,0,0,.18); } 50% { box-shadow:0 6px 0 color-mix(in srgb, var(--ink) 55%, var(--accent)), 0 14px 34px color-mix(in srgb, var(--accent) 45%, transparent); } }
@media (prefers-reduced-motion:reduce) { .tarife-all > summary, .tarife-all > summary::before { animation:none; } }
/* cardurile de abonamente: aceeași apariție și același efect la hover ca pozele din „Configurăm pe componente” */
.plan { transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s, border-color .25s; will-change:transform; }
.plan::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(115deg, transparent 38%, color-mix(in srgb, var(--accent) 38%, transparent) 50%, transparent 62%); background-size:320% 100%; background-position:100% 0; background-repeat:no-repeat; transition:background-position .8s ease; }
.plan:hover, .plan.force-hover { transform:translateY(-9px) rotate(-1.2deg); border-color:var(--accent); box-shadow:0 18px 36px rgba(16,26,39,.22); z-index:2; }
.plan:nth-child(even):hover, .plan:nth-child(even).force-hover { transform:translateY(-9px) rotate(1.2deg); }
.plan:hover::after, .plan.force-hover::after { background-position:0 0; }
.plans.in .plan { animation:pop 1.6s cubic-bezier(.2,.7,.2,1) backwards; animation-delay:calc(var(--i) * 280ms); }
@media (prefers-reduced-motion:reduce) { .plan, .plan::after { transition:none; } .plan:hover, .plan:nth-child(even):hover { transform:none; } .plans.in .plan { animation:none; } }
.ppl { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr)); gap:0 48px; } .ppl li:first-child, .ppl li:nth-child(2) { border-top:1px solid var(--line); }
/* pagina Contact fără formular: patru carduri de contact; invitația din paginile care aveau formular */
.ccards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
@media (max-width:1100px) { .ccards { grid-template-columns:repeat(2,minmax(0,1fr)); } } @media (max-width:600px) { .ccards { grid-template-columns:minmax(0,1fr); } }
.ccard { text-align:center; display:grid; gap:10px; justify-items:center; align-content:start; padding:28px 22px; }
.ccard > svg { width:38px; height:38px; color:var(--accent-text); } .ccard h3 { font-size:1.5rem; } .ccard p { margin:0; color:var(--muted); } .ccard p a { color:var(--ink); font-weight:600; font-size:1.125rem; }
.ccard .btns { margin-top:8px; width:100%; display:grid; gap:10px; } .ccard .btn { justify-content:center; width:100%; }
.ccov { margin-top:22px; text-align:center; color:var(--muted); }
.ccta { display:grid; gap:10px; align-content:start; padding:24px; } .ccta h4 { font-size:1.25rem; margin:0; } .ccta p { margin:0; color:var(--muted); } .ccta .cta { margin-top:6px; }
.rcol:empty { display:none; }
.rrow:has(> .rcol:empty) { grid-template-columns:minmax(0,1fr); }
