/* ============================================================
   AMPLIO — Design System (shared)
   Extras din site-ul V1 + componente noi pentru paginile interioare
   ============================================================ */
:root{
  --navy:#0A1A2F;       /* Ink Navy */
  --navy2:#0E2240;
  --navy3:#102a4f;
  --blue:#2F6BFF;       /* Electric Blue */
  --sky:#7FA7FF;        /* Sky Blue */
  --gold:#C9A227;       /* Champagne Gold */
  --gold2:#e4c45f;
  --off:#F7F5F0;        /* Porcelain */
  --ink60:#5A6573;      /* Ink 60% */
  --txt:#e7ecf6;
  --txt-dim:#a9b6cc;
  --line:rgba(247,245,240,.10);
  --line2:rgba(247,245,240,.16);
  --display:'Space Grotesk',system-ui,Arial,sans-serif;
  --body:'Inter',system-ui,Arial,sans-serif;
  --maxw:1180px;
  --r:18px;
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-out:cubic-bezier(.23,1,.32,1);
  --ease-in-out:cubic-bezier(.77,0,.175,1);
  --ease-press:cubic-bezier(.3,0,.2,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;max-width:100%}
body{font-family:var(--body);background:var(--navy);color:var(--txt);line-height:1.6;letter-spacing:.005em;
  overflow-x:hidden;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
section{padding:96px 0;position:relative}
h1,h2,h3,.dsp{font-family:var(--display);font-weight:700;letter-spacing:-.02em;line-height:1.05}
h1{color:var(--off)}
h2{font-size:clamp(30px,4.6vw,46px);color:var(--off);margin-bottom:18px}
h3{font-weight:500}
p{color:var(--txt-dim)}
.lead{font-size:clamp(17px,1.6vw,19px);color:var(--txt-dim);max-width:62ch;line-height:1.65}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--gold);font-family:var(--display);
  font-weight:500;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:18px}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--gold);border-radius:2px;display:inline-block}

/* ===== Buttons ===== */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--body);font-weight:600;font-size:15.5px;
  padding:15px 26px;border-radius:13px;border:none;cursor:pointer;
  transition:transform 170ms var(--ease-press),box-shadow 240ms var(--ease-out),background 220ms var(--ease-out);
  position:relative;overflow:hidden;white-space:normal;text-align:center;max-width:100%}
.btn .ar{transition:transform 220ms var(--ease-out)}
.btn:hover .ar{transform:translateX(4px)}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 24px rgba(47,107,255,.30)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(47,107,255,.42)}
.btn-primary:active{transform:translateY(0) scale(.985)}
.btn-gold{background:var(--gold);color:var(--navy);box-shadow:0 8px 24px rgba(201,162,39,.22)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(201,162,39,.34)}
.btn-gold:active{transform:translateY(0) scale(.985)}
.btn-ghost{background:rgba(127,167,255,.06);color:var(--sky);border:1.5px solid rgba(127,167,255,.45)}
.btn-ghost:hover{background:rgba(127,167,255,.12);transform:translateY(-2px)}
.btn-ghost:active{transform:translateY(0) scale(.985)}

/* ===== Nav ===== */
nav{position:sticky;top:0;z-index:80;background:rgba(10,26,47,.72);backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .3s,background .3s,height .3s}
nav.scrolled{background:rgba(10,26,47,.92);box-shadow:0 12px 40px rgba(0,0,0,.4)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;transition:height .3s}
nav.scrolled .wrap{height:62px}
.logo{display:flex;align-items:center;gap:11px}
.logo svg{width:30px;height:30px}
.logo .wm{font-family:var(--display);font-weight:700;font-size:21px;letter-spacing:.10em;color:var(--off)}
.navlinks{display:flex;align-items:center;gap:26px;list-style:none}
.navlinks>li{position:relative}
.navlinks a{color:var(--txt-dim);font-size:14.5px;font-weight:500;transition:color .2s;position:relative;padding:4px 0}
.navlinks a:not(.navcta)::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--gold);transition:width .28s var(--ease)}
.navlinks a:not(.navcta):hover{color:var(--off)}
.navlinks a:not(.navcta):hover::after{width:100%}
.navcta{background:var(--blue);color:#fff!important;padding:9px 18px;border-radius:10px;font-weight:600;transition:transform .2s,box-shadow .2s}
.navcta:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(47,107,255,.4)}
/* Dropdown */
.has-drop>a{display:inline-flex;align-items:center;gap:5px}
.has-drop>a::before{content:"▾";font-size:10px;order:2;color:var(--gold)}
.drop{position:absolute;top:100%;margin-top:12px;left:50%;transform:translateX(-50%) translateY(8px);
  min-width:300px;background:rgba(14,34,64,.98);backdrop-filter:blur(14px);border:1px solid var(--line2);
  border-radius:16px;padding:12px;opacity:0;visibility:hidden;transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;
  box-shadow:0 24px 60px rgba(0,0,0,.45);display:grid;gap:2px}
/* punte invizibilă care acoperă golul dintre meniu și dropdown, ca să poți ajunge cu cursorul pe el */
.drop::before{content:"";position:absolute;top:-16px;left:0;right:0;height:18px}
.has-drop:hover .drop,.has-drop:focus-within .drop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.drop a{display:block;padding:11px 14px;border-radius:10px;color:var(--txt-dim)!important;font-size:14px;transition:background .18s,color .18s}
.drop a::after{display:none!important}
.drop a:hover{background:rgba(47,107,255,.12);color:var(--off)!important}
.drop a b{display:block;color:var(--off);font-weight:600;font-size:14.5px;margin-bottom:1px}
.drop a small{color:var(--txt-dim);font-size:12.5px}
.drop .all{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;color:var(--sky)!important;font-weight:600}
.burger{display:none;background:none;border:none;cursor:pointer;padding:10px 4px}
.burger span{display:block;width:24px;height:2px;background:var(--off);margin:5px 0;transition:.3s;border-radius:2px}
.burger.x span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.burger.x span:nth-child(2){opacity:0}
.burger.x span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.mmenu{display:none}

/* ===== Hero (home) ===== */
.hero{min-height:100dvh;display:flex;align-items:center;padding:104px 0 70px;overflow:hidden;position:relative}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media video,.hero-media .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-fallback{position:absolute;inset:0;background:radial-gradient(120% 90% at 78% 30%,rgba(47,107,255,.20),transparent 55%),
  radial-gradient(90% 80% at 90% 80%,rgba(201,162,39,.14),transparent 60%),var(--navy)}
.hero-scrim{position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(8,20,38,.96) 0%,rgba(8,20,38,.82) 38%,rgba(8,20,38,.45) 66%,rgba(8,20,38,.30) 100%)}
.hero-grid{position:absolute;inset:0;z-index:1;opacity:.5;pointer-events:none;
  background-image:repeating-linear-gradient(64deg,rgba(247,245,240,.04) 0 1px,transparent 1px 92px)}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero-inner{max-width:780px}
.hero h1{font-size:clamp(40px,7vw,72px);color:var(--off);margin:0 0 22px}
.hero h1 .g{background:linear-gradient(92deg,var(--gold),var(--gold2),var(--gold));-webkit-background-clip:text;
  background-clip:text;-webkit-text-fill-color:transparent;font-style:normal}
.hero p.lead{font-size:clamp(17px,1.7vw,20px);color:#cdd7e8;max-width:56ch}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

/* ===== Sub-page hero (servicii/solutii/blog/legal) ===== */
.subhero{padding:130px 0 60px;position:relative;overflow:hidden;
  background:radial-gradient(120% 100% at 85% -10%,rgba(47,107,255,.16),transparent 55%),
  radial-gradient(90% 90% at 10% 0%,rgba(201,162,39,.10),transparent 60%),var(--navy)}
.subhero .grid-bg{position:absolute;inset:0;opacity:.4;pointer-events:none;
  background-image:repeating-linear-gradient(64deg,rgba(247,245,240,.04) 0 1px,transparent 1px 92px)}
.subhero .wrap{position:relative;z-index:2}
.subhero h1{font-size:clamp(34px,5.4vw,58px);margin:0 0 18px;max-width:18ch}
.subhero h1 .g{background:linear-gradient(92deg,var(--gold),var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* ===== Breadcrumbs ===== */
.crumbs{font-size:13px;color:var(--txt-dim);margin-bottom:22px;display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.crumbs a{color:var(--sky);transition:color .2s}
.crumbs a:hover{color:var(--off)}
.crumbs .sep{color:var(--ink60)}
.crumbs span[aria-current]{color:var(--off)}

/* ===== Stat band ===== */
.statband{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.012)}
.statband .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:0;padding-bottom:0}
.stat{padding:38px 26px;border-left:1px solid var(--line)}
.stat:first-child{border-left:none;padding-left:0}
.stat b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,38px);color:var(--gold);line-height:1}
.stat span{display:block;margin-top:10px;font-size:13.5px;color:var(--txt-dim);line-height:1.45}

/* ===== Marquee ===== */
.marq{overflow:hidden;border-bottom:1px solid var(--line);padding:16px 0}
.marq .track{display:inline-flex;gap:46px;white-space:nowrap;animation:marquee 38s linear infinite;
  font-family:var(--display);letter-spacing:.16em;font-size:12.5px;color:var(--txt-dim);text-transform:uppercase}
.marq b{color:var(--gold);font-weight:400}
@keyframes marquee{to{transform:translateX(-50%)}}

/* ===== Cards / bento grid ===== */
.svc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:46px}
.svc{background:linear-gradient(165deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  border:1px solid var(--line2);border-radius:18px;padding:28px;grid-column:span 2;
  transition:transform .28s var(--ease),border-color .28s,background .28s;position:relative;overflow:hidden;display:block;color:inherit}
.svc:hover{transform:translateY(-5px);border-color:rgba(47,107,255,.55);background:linear-gradient(165deg,rgba(47,107,255,.07),rgba(255,255,255,.015))}
.svc .ic{width:46px;height:46px;border-radius:12px;background:var(--navy);border:1px solid var(--line2);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:var(--gold);
  font-family:var(--display);font-weight:700;font-size:17px;transition:transform .3s var(--ease)}
.svc:hover .ic{transform:scale(1.1) rotate(-6deg)}
.svc h3{font-family:var(--display);font-weight:700;color:var(--off);font-size:19px;margin-bottom:9px}
.svc p{font-size:14.5px;color:var(--txt-dim);line-height:1.55}
.svc .price{margin-top:14px;font-size:13.5px;color:var(--sky);font-weight:600}
.svc .more{margin-top:14px;font-size:13.5px;color:var(--gold2);font-weight:600;display:inline-flex;gap:6px;align-items:center}
.svc.feature{grid-column:span 3;border-color:rgba(201,162,39,.5);background:linear-gradient(165deg,rgba(201,162,39,.09),rgba(255,255,255,.015))}
.svc.feature .ic{background:var(--gold);color:var(--navy);border-color:transparent}
.svc.feature:hover{border-color:var(--gold)}
.svc.wide{grid-column:span 3}
@media(max-width:980px){.svc-grid{grid-template-columns:repeat(2,1fr)}.svc,.svc.feature,.svc.wide{grid-column:span 1}}

/* ===== Prose (articole + pagini de conținut) ===== */
.prose{max-width:760px;margin:0 auto}
.prose>*+*{margin-top:22px}
.prose h2{font-size:clamp(24px,3.4vw,32px);margin-top:48px;margin-bottom:0;color:var(--off)}
.prose h3{font-family:var(--display);font-weight:700;font-size:21px;color:var(--off);margin-top:34px}
.prose p,.prose li{font-size:16.5px;color:var(--txt);line-height:1.75}
.prose ul,.prose ol{padding-left:24px}
.prose li{margin-top:8px}
.prose li::marker{color:var(--gold)}
.prose a{color:var(--sky);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(127,167,255,.4)}
.prose a:hover{color:var(--off)}
.prose strong{color:var(--off)}
.prose blockquote{border-left:3px solid var(--gold);padding:6px 20px;margin:8px 0;color:var(--gold2);font-style:italic;background:rgba(201,162,39,.06);border-radius:0 11px 11px 0}
.prose .meta{font-size:13.5px;color:var(--txt-dim);margin-bottom:8px}
.prose .key{background:linear-gradient(165deg,rgba(47,107,255,.10),rgba(255,255,255,.02));border:1px solid var(--line2);
  border-radius:16px;padding:22px 26px}
.prose .key p,.prose .key li{font-size:15.5px}

/* ===== Feature list (servicii pages) ===== */
.flist{list-style:none;margin:8px 0 0;display:grid;gap:14px}
.flist li{padding:0 0 0 34px;position:relative;font-size:16px;color:var(--txt);line-height:1.55}
.flist li::before{content:"";position:absolute;left:2px;top:8px;width:14px;height:14px;background:var(--blue);clip-path:polygon(50% 0,100% 100%,0 100%)}
.flist li b{color:var(--off)}

/* ===== Two-col content ===== */
.cols2{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
@media(max-width:860px){.cols2{grid-template-columns:1fr;gap:30px}}
.panelcard{background:linear-gradient(165deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid var(--line2);border-radius:20px;padding:32px}
.panelcard h3{font-family:var(--display);font-weight:700;color:var(--off);font-size:20px;margin-bottom:14px}

/* ===== Timeline ===== */
.tl{margin-top:48px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tstep{background:linear-gradient(165deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border:1px solid var(--line2);
  border-radius:16px;padding:26px;position:relative;transition:transform .28s var(--ease),border-color .28s}
.tstep:hover{transform:translateY(-5px);border-color:rgba(127,167,255,.45)}
.tstep .day{font-family:var(--display);font-weight:500;color:var(--gold);font-size:13px;letter-spacing:.1em}
.tstep h3{font-family:var(--display);font-weight:700;color:var(--off);font-size:18px;margin:11px 0 9px}
.tstep p{font-size:13.5px;color:var(--txt-dim);line-height:1.55}
.tstep .n{position:absolute;top:22px;right:22px;font-family:var(--display);font-weight:700;font-size:34px;color:rgba(255,255,255,.06)}

/* ===== Blog list ===== */
.bloglist{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px}
.bcard{background:linear-gradient(165deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border:1px solid var(--line2);
  border-radius:18px;padding:28px;transition:transform .28s var(--ease),border-color .28s;display:flex;flex-direction:column}
.bcard:hover{transform:translateY(-5px);border-color:rgba(47,107,255,.45)}
.bcard .cat{font-family:var(--display);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.bcard h3{font-family:var(--display);font-weight:700;color:var(--off);font-size:19px;margin-bottom:10px;line-height:1.25}
.bcard p{font-size:14px;color:var(--txt-dim);line-height:1.55;flex:1}
.bcard .more{margin-top:16px;color:var(--sky);font-weight:600;font-size:14px}
@media(max-width:860px){.bloglist{grid-template-columns:1fr}}

/* ===== Form ===== */
.form{background:linear-gradient(165deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid var(--line2);
  border-radius:22px;padding:46px;max-width:660px;margin:0 auto;box-shadow:0 30px 80px rgba(0,0,0,.35);text-align:left}
.form label{display:block;font-size:13.5px;font-weight:600;color:var(--off);margin:18px 0 7px}
.form input,.form select,.form textarea{width:100%;padding:14px 16px;border:1.5px solid var(--line2);border-radius:12px;
  font-family:var(--body);font-size:15px;background:rgba(10,26,47,.6);color:var(--off)}
.form input::placeholder,.form textarea::placeholder{color:#7c8aa3}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,107,255,.18)}
.form select option{background:var(--navy)}
.note{font-size:13px;color:var(--txt-dim);margin-top:14px;line-height:1.55}

/* ===== CTA band ===== */
.ctaband{background:linear-gradient(165deg,var(--navy3),var(--navy));border:1px solid var(--line2);border-radius:24px;
  padding:54px;text-align:center;margin-top:20px}
.ctaband h2{margin-bottom:14px}
.ctaband .lead{margin:0 auto 26px}

/* ===== Footer ===== */
footer{background:var(--navy);border-top:1px solid var(--line);padding:64px 0 40px}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:36px;border-bottom:1px solid var(--line)}
.foot-top .logo{margin-bottom:14px}
.foot-top p{font-size:14px;color:var(--txt-dim);line-height:1.7}
.foot-col h4{font-family:var(--display);font-weight:500;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.foot-col a{display:block;font-size:14px;color:var(--txt-dim);padding:5px 0;transition:color .2s}
.foot-col a:hover{color:var(--off)}
.foot-bot{padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--ink60)}

/* ===== Section headers / utils ===== */
.sec-head{max-width:64ch}
.center{text-align:center;margin-left:auto;margin-right:auto}
.bg-2{background:linear-gradient(180deg,var(--navy),#0c2140)}
.bg-3{background:#0c2140}

/* ===== Reveal ===== */
.rev{opacity:0;transform:translateY(24px);transition:opacity .58s var(--ease-out),transform .58s var(--ease-out)}
.rev.in{opacity:1;transform:none}

/* ===== Responsive ===== */
@media(max-width:860px){
  .navlinks{display:none}
  .burger{display:block}
  nav .wrap,nav.scrolled .wrap{height:66px}
  .mmenu{display:block;position:fixed;top:66px;left:0;right:0;max-height:0;overflow:hidden;
    transition:max-height .38s var(--ease);background:rgba(10,26,47,.98);backdrop-filter:blur(14px);z-index:79;border-bottom:1px solid var(--line)}
  .mmenu.open{max-height:560px;overflow-y:auto}
  .mmenu a{display:block;padding:15px 28px;color:var(--txt-dim);font-size:16px;border-bottom:1px solid var(--line)}
  .mmenu a.sub{padding-left:42px;font-size:14.5px;color:var(--txt-dim)}
  .mmenu a.mcta{color:#fff;background:var(--blue);font-weight:600;border-bottom:none}
  section{padding:64px 0}
  .subhero{padding:104px 0 48px}
  .wrap{padding:0 20px}
  .hero{padding:96px 0 60px}
  .hero-cta .btn{flex:1;justify-content:center;min-width:46%}
  .hero-scrim{background:linear-gradient(180deg,rgba(8,20,38,.72) 0%,rgba(8,20,38,.88) 60%,var(--navy) 100%)}
  .statband .wrap{grid-template-columns:1fr 1fr}
  .stat{border-left:1px solid var(--line);padding:26px 18px}
  .stat:nth-child(odd){border-left:none;padding-left:0}
  .tl{grid-template-columns:1fr 1fr}
  .ctaband{padding:36px 24px}
  .foot-top{grid-template-columns:1fr 1fr;gap:26px}
}
@media(max-width:600px){
  .svc-grid{grid-template-columns:1fr;gap:14px}
  .hero-cta{flex-direction:column;align-items:stretch}
  .hero-cta .btn{width:100%;min-width:0;flex:none}
  .foot-top{grid-template-columns:1fr}
}
@media(max-width:520px){.tl{grid-template-columns:1fr}.hero h1{font-size:clamp(30px,9vw,40px)}.hero p.lead{font-size:16px}}
@media (hover:none){.btn:hover,.navcta:hover,.svc:hover,.tstep:hover,.bcard:hover,.svc:hover .ic{transform:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rev,.hero-inner>*{opacity:1!important;transform:none!important}}
