
  :root{
    --bg:#F4F6FB; --surface:#FFFFFF; --surface-2:#EAEFF7; --border:#DCE3F0;
    --ink:#14224B; --text:#414B66; --muted:#6B7691;
    --brand:#16295B; --brand-2:#2C4A86; --steel:#6778A0;
    --accent:#2E56A6; --accent-2:#22417E; --accent-soft:rgba(46,86,166,.10);
    --good:#2E8B6B; --good-soft:rgba(46,139,107,.14);
    --shadow:0 1px 2px rgba(20,34,75,.05), 0 14px 34px -14px rgba(20,34,75,.18);
    --shadow-sm:0 1px 2px rgba(20,34,75,.06), 0 8px 18px -12px rgba(20,34,75,.2);
    --r:14px; --r-sm:10px; --maxw:1140px;
    --font-serif:Georgia,"Times New Roman","Noto Serif",serif;
    --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  }
  @media (prefers-color-scheme:dark){
    :root{
      --bg:#0A1024; --surface:#111931; --surface-2:#182242; --border:#26315A;
      --ink:#EAEEF9; --text:#B2BEDA; --muted:#7C88A9;
      --brand:#4E6FB6; --brand-2:#6B8AC9; --steel:#8D9BC6;
      --accent:#6E8ED0; --accent-2:#8AA4DC; --accent-soft:rgba(110,142,208,.16);
      --good:#4FB891; --good-soft:rgba(79,184,145,.16);
      --shadow:0 1px 2px rgba(0,0,0,.3), 0 18px 44px -16px rgba(0,0,0,.6);
      --shadow-sm:0 1px 2px rgba(0,0,0,.3), 0 10px 22px -14px rgba(0,0,0,.55);
    }
  }
  :root[data-theme="light"]{
    --bg:#F4F6FB; --surface:#FFFFFF; --surface-2:#EAEFF7; --border:#DCE3F0;
    --ink:#14224B; --text:#414B66; --muted:#6B7691;
    --brand:#16295B; --brand-2:#2C4A86; --steel:#6778A0;
    --accent:#2E56A6; --accent-2:#22417E; --accent-soft:rgba(46,86,166,.10);
    --good:#2E8B6B; --good-soft:rgba(46,139,107,.14);
    --shadow:0 1px 2px rgba(20,34,75,.05), 0 14px 34px -14px rgba(20,34,75,.18);
    --shadow-sm:0 1px 2px rgba(20,34,75,.06), 0 8px 18px -12px rgba(20,34,75,.2);
  }
  :root[data-theme="dark"]{
    --bg:#0A1024; --surface:#111931; --surface-2:#182242; --border:#26315A;
    --ink:#EAEEF9; --text:#B2BEDA; --muted:#7C88A9;
    --brand:#4E6FB6; --brand-2:#6B8AC9; --steel:#8D9BC6;
    --accent:#6E8ED0; --accent-2:#8AA4DC; --accent-soft:rgba(110,142,208,.16);
    --good:#4FB891; --good-soft:rgba(79,184,145,.16);
    --shadow:0 1px 2px rgba(0,0,0,.3), 0 18px 44px -16px rgba(0,0,0,.6);
    --shadow-sm:0 1px 2px rgba(0,0,0,.3), 0 10px 22px -14px rgba(0,0,0,.55);
  }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth; scroll-padding-top:82px}
  @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }
  body{
    margin:0; background:var(--bg); color:var(--text);
    font-family:var(--font-sans); font-size:17px; line-height:1.62;
    -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  }
  h1,h2,h3,h4{color:var(--ink); margin:0; text-wrap:balance}
  h1,h2{font-family:var(--font-serif); font-weight:700; line-height:1.14; letter-spacing:-.01em}
  p{margin:0}
  a{color:inherit; text-decoration:none}
  img,svg{max-width:100%; display:block}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px}
  .eyebrow{display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--accent)}
  .eyebrow::before{content:""; width:26px; height:2px; background:var(--accent); border-radius:2px}
  .eyebrow.c{justify-content:center}

  /* Buttons */
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:var(--font-sans); font-weight:700; font-size:14px; cursor:pointer; padding:10px 18px; border-radius:9px; border:1px solid transparent; white-space:nowrap; transition:transform .15s, box-shadow .2s, background .2s, border-color .2s, color .2s}
  .btn:active{transform:translateY(1px)}
  .btn svg{width:17px;height:17px}
  .btn-primary{background:linear-gradient(135deg,var(--brand-2),var(--brand)); color:#fff; box-shadow:var(--shadow-sm)}
  .btn-primary:hover{box-shadow:var(--shadow); filter:brightness(1.06)}
  .btn-ghost{background:transparent; color:var(--ink); border-color:var(--border)}
  .btn-ghost:hover{border-color:var(--accent); color:var(--accent)}
  .btn-light{background:#fff; color:var(--brand)}
  .btn-light:hover{background:#eef2fb}

  /* Header */
  header.nav{position:sticky; top:0; z-index:50; background:color-mix(in srgb,var(--bg) 82%, transparent); backdrop-filter:saturate(160%) blur(12px); border-bottom:1px solid transparent; transition:border-color .3s, background .3s}
  header.nav.scrolled{border-bottom-color:var(--border)}
  .nav-inner{display:flex; align-items:center; justify-content:space-between; height:70px; gap:20px}
  .brand{display:flex; align-items:center}
  .brand .logo{height:42px; width:auto}
  .brand .logo-light{display:block}
  .brand .logo-dark{display:none}
  @media (prefers-color-scheme:dark){ .brand .logo-light{display:none} .brand .logo-dark{display:block} }
  :root[data-theme="light"] .brand .logo-light{display:block}
  :root[data-theme="light"] .brand .logo-dark{display:none}
  :root[data-theme="dark"] .brand .logo-light{display:none}
  :root[data-theme="dark"] .brand .logo-dark{display:block}
  nav.links{display:flex; align-items:center; gap:4px}
  nav.links a{padding:9px 14px; border-radius:8px; font-size:15px; font-weight:600; color:var(--text); transition:color .2s, background .2s}
  nav.links a:hover{color:var(--ink); background:var(--surface-2)}
  .nav-cta{display:flex; align-items:center; gap:12px}
  .burger{display:none; width:44px; height:44px; border:1px solid var(--border); border-radius:10px; background:var(--surface); cursor:pointer; flex-direction:column; align-items:center; justify-content:center; gap:5px}
  .burger span{width:20px; height:2px; background:var(--ink); border-radius:2px; transition:.25s}
  .burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .burger.open span:nth-child(2){opacity:0}
  .burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* Hero */
  .hero{position:relative; overflow:hidden}
  .hero::before{content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background:radial-gradient(58% 80% at 90% 4%, var(--accent-soft), transparent 62%), radial-gradient(64% 80% at 2% 100%, color-mix(in srgb,var(--brand) 14%, transparent), transparent 60%)}
  .hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.08fr .92fr; gap:56px; align-items:center; padding:72px 0 82px}
  .hero h1{font-size:clamp(2.3rem,1.3rem + 3.4vw,3.7rem)}
  .hero h1 em{font-style:normal; color:var(--brand-2)}
  .slogan{margin-top:20px; font-family:var(--font-serif); font-style:italic; font-size:clamp(1.05rem,1rem + .5vw,1.32rem); color:var(--brand-2)}
  .hero .lead{margin-top:18px; font-size:1.08rem; color:var(--text); max-width:52ch}
  .hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:30px}
  .trust{display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin-top:30px; padding-top:24px; border-top:1px solid var(--border); font-size:13.5px; color:var(--muted)}
  .trust b{color:var(--ink); font-weight:700}
  .trust .sep{width:5px; height:5px; border-radius:50%; background:var(--steel)}

  /* Hero proof card */
  .proof{position:relative; background:var(--surface); border:1px solid var(--border); border-radius:20px; box-shadow:var(--shadow); padding:28px 28px 22px; overflow:hidden}
  .proof .wm-bg{position:absolute; right:-30px; bottom:-30px; width:180px; opacity:.06; pointer-events:none}
  .proof h3{font-size:.82rem; text-transform:uppercase; letter-spacing:.14em; color:var(--muted); font-family:var(--font-sans); font-weight:700}
  .proof .rows{display:flex; flex-direction:column; margin-top:6px}
  .prow{display:flex; align-items:baseline; gap:16px; padding:17px 0; border-bottom:1px solid var(--border)}
  .prow:last-child{border-bottom:0}
  .prow .n{font-family:var(--font-serif); font-weight:700; font-size:2.1rem; color:var(--brand); line-height:1; min-width:104px; font-variant-numeric:tabular-nums}
  .prow .d .t{color:var(--ink); font-weight:700; font-size:.98rem}
  .prow .d .s{color:var(--muted); font-size:12.5px; margin-top:2px}
  .float-badge{position:absolute; top:-14px; left:-12px; background:var(--surface); border:1px solid var(--border); box-shadow:var(--shadow-sm); border-radius:11px; padding:9px 14px; font-size:13px; font-weight:700; color:var(--ink); display:flex; align-items:center; gap:9px}
  .float-badge .dot{width:8px; height:8px; border-radius:50%; background:var(--good); box-shadow:0 0 0 4px var(--good-soft)}

  /* Bands */
  section{scroll-margin-top:82px}
  .band{padding:86px 0}
  .band.alt{background:var(--surface-2)}
  .band.navy{background:linear-gradient(160deg,var(--brand),#0e1c40); color:#cdd6ea}
  .sec-head{max-width:660px; margin-bottom:46px}
  .sec-head.center{margin-left:auto; margin-right:auto; text-align:center}
  .sec-head h2{font-size:clamp(1.85rem,1.4rem + 1.8vw,2.7rem); margin-top:15px}
  .sec-head p{margin-top:15px; font-size:1.08rem; color:var(--text)}
  .band.navy .sec-head h2{color:#fff}
  .band.navy .sec-head p{color:#bcc7e0}
  .band.navy .eyebrow{color:#9fb4e0}
  .band.navy .eyebrow::before{background:#7d97d6}

  /* Problem / recognise */
  .prob-grid{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start}
  .prob-list{display:flex; flex-direction:column; gap:2px}
  .prob-item{display:flex; gap:15px; padding:16px 0; border-bottom:1px solid var(--border)}
  .prob-item:last-child{border-bottom:0}
  .prob-item .x{flex:0 0 auto; width:26px; height:26px; border-radius:7px; background:var(--accent-soft); color:var(--accent); display:grid; place-items:center; margin-top:1px}
  .prob-item .x svg{width:15px; height:15px}
  .prob-item p{color:var(--text)}
  .prob-item p b{color:var(--ink)}
  .recognise{background:var(--surface); border:1px solid var(--border); border-left:4px solid var(--accent); border-radius:14px; padding:26px 28px; box-shadow:var(--shadow-sm)}
  .recognise h3{font-family:var(--font-serif); font-size:1.4rem; color:var(--ink)}
  .recognise .cons{list-style:none; padding:0; margin:18px 0 0; display:flex; flex-direction:column; gap:12px}
  .recognise .cons li{display:flex; gap:12px; color:var(--text); font-size:.98rem}
  .recognise .cons li::before{content:"→"; color:var(--accent); font-weight:800}
  .verdict{margin-top:22px; padding-top:18px; border-top:1px dashed var(--border); font-family:var(--font-serif); font-style:italic; color:var(--brand-2); font-size:1.08rem}

  /* Do / Don't */
  .dd{display:grid; grid-template-columns:1fr 1fr; gap:22px}
  .dd-card{background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:30px; box-shadow:var(--shadow-sm)}
  .dd-card.no{background:var(--surface-2)}
  .dd-card .h{display:flex; align-items:center; gap:12px; margin-bottom:18px}
  .dd-card .h .ic{width:38px; height:38px; border-radius:10px; display:grid; place-items:center}
  .dd-card.yes .h .ic{background:var(--good-soft); color:var(--good)}
  .dd-card.no .h .ic{background:var(--accent-soft); color:var(--accent)}
  .dd-card .h h3{font-family:var(--font-serif); font-size:1.35rem}
  .dd-card ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:13px}
  .dd-card li{display:flex; gap:12px; font-size:.99rem; color:var(--text)}
  .dd-card li svg{flex:0 0 auto; width:19px; height:19px; margin-top:2px}
  .dd-card.yes li svg{color:var(--good)}
  .dd-card.no li svg{color:var(--muted)}
  .dd-card .intro{color:var(--text); margin-bottom:16px; font-size:.98rem}

  /* Services */
  .cards{display:grid; grid-template-columns:repeat(2,1fr); gap:20px}
  .card{position:relative; background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:28px 28px 26px; box-shadow:var(--shadow-sm); transition:transform .2s, box-shadow .25s, border-color .25s}
  .card:hover{transform:translateY(-4px); box-shadow:var(--shadow); border-color:color-mix(in srgb,var(--brand-2) 42%, var(--border))}
  .card .num{font-family:var(--font-serif); font-weight:700; font-size:1.05rem; color:#fff; background:linear-gradient(140deg,var(--brand-2),var(--brand)); width:40px; height:40px; border-radius:10px; display:grid; place-items:center; margin-bottom:16px}
  .card h3{font-size:1.2rem; font-weight:700; letter-spacing:-.01em}
  .card p{margin-top:9px; font-size:.97rem; color:var(--text)}
  .card .deliv{margin-top:15px; padding-top:14px; border-top:1px solid var(--border); font-size:.86rem; color:var(--muted)}
  .card .deliv b{color:var(--brand-2); font-weight:700; text-transform:uppercase; letter-spacing:.06em; font-size:.74rem; display:block; margin-bottom:4px}

  /* Stats band (navy) */
  .stats{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
  .stat-c{background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:26px 24px}
  .stat-c .n{font-family:var(--font-serif); font-weight:700; font-size:2.6rem; color:#fff; line-height:1; font-variant-numeric:tabular-nums}
  .stat-c .l{margin-top:10px; font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; color:#9fb4e0; font-weight:700}
  .stat-c .d{margin-top:10px; font-size:.94rem; color:#c4cee4}
  .stat-c .src{margin-top:10px; font-size:12px; color:#8496bd}
  .sources{margin-top:34px; font-size:12.5px; color:#8496bd; line-height:1.7}
  .sources b{color:#b9c5e0}

  /* Process timeline */
  .timeline{position:relative; max-width:820px; margin:0 auto; padding-left:8px}
  .timeline::before{content:""; position:absolute; left:27px; top:8px; bottom:8px; width:2px; background:linear-gradient(var(--brand-2),var(--border))}
  .step{position:relative; display:flex; gap:24px; padding:0 0 30px 0}
  .step:last-child{padding-bottom:0}
  .step .badge{flex:0 0 auto; width:56px; height:56px; border-radius:50%; background:var(--surface); border:2px solid var(--brand-2); color:var(--brand-2); display:grid; place-items:center; font-family:var(--font-serif); font-weight:700; font-size:1.4rem; z-index:1; box-shadow:0 0 0 6px var(--bg)}
  .step .sc{padding-top:5px}
  .step h4{font-size:1.14rem; color:var(--ink); font-weight:700}
  .step h4 .dur{font-family:var(--font-sans); font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--accent); background:var(--accent-soft); padding:3px 9px; border-radius:20px; margin-left:10px; vertical-align:middle}
  .step p{margin-top:7px; font-size:.98rem; color:var(--text)}

  /* Deliverables */
  .deliv-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px 34px}
  .deliv-item{display:flex; gap:14px; padding:12px 0; align-items:flex-start}
  .deliv-item .ck{flex:0 0 auto; width:26px; height:26px; border-radius:8px; background:var(--good-soft); color:var(--good); display:grid; place-items:center; margin-top:1px}
  .deliv-item .ck svg{width:15px; height:15px}
  .deliv-item span{color:var(--text); font-size:.99rem}
  .deliv-note{margin-top:26px; padding:20px 24px; background:var(--surface); border:1px solid var(--border); border-radius:12px; font-family:var(--font-serif); font-style:italic; color:var(--brand-2); box-shadow:var(--shadow-sm)}

  /* About / consultant */
  .about-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:52px; align-items:center}
  .portrait{position:relative}
  .portrait img{width:100%; border-radius:18px; border:1px solid var(--border); box-shadow:var(--shadow)}
  .portrait .tag{position:absolute; left:18px; bottom:18px; background:var(--surface); border:1px solid var(--border); border-radius:12px; padding:12px 16px; box-shadow:var(--shadow); backdrop-filter:blur(4px)}
  .portrait .tag .nm{font-family:var(--font-serif); font-weight:700; color:var(--ink); font-size:1.05rem}
  .portrait .tag .rl{font-size:12.5px; color:var(--muted); margin-top:2px}
  .about-body h2{font-size:clamp(1.7rem,1.3rem + 1.5vw,2.4rem)}
  .about-body .mission{font-family:var(--font-serif); font-size:1.28rem; line-height:1.4; color:var(--ink); margin-top:18px}
  .about-body .mission .hl{color:var(--brand-2); font-style:italic}
  .about-body p{margin-top:16px; color:var(--text)}
  .facts{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px}
  .fact{background:var(--surface); border:1px solid var(--border); border-radius:10px; padding:12px 16px; box-shadow:var(--shadow-sm)}
  .fact .k{font-family:var(--font-serif); font-weight:700; color:var(--brand); font-size:1.15rem}
  .fact .v{font-size:12.5px; color:var(--muted); margin-top:2px}

  /* CTA strip */
  .cta-strip{background:linear-gradient(135deg,var(--brand-2),var(--brand)); color:#fff; border-radius:22px; padding:52px 48px; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; box-shadow:var(--shadow); position:relative; overflow:hidden}
  /* cta background handled by .cta-bg / .cta-ov */
  .cta-strip h2{color:#fff; font-size:clamp(1.5rem,1.2rem + 1.3vw,2.1rem); position:relative}
  .cta-strip p{color:rgba(255,255,255,.85); margin-top:10px; position:relative; max-width:48ch}
  .cta-strip .btn{position:relative}

  /* Contact */
  .contact-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:52px}
  .cinfo{display:flex; gap:16px; align-items:flex-start; padding:18px 0; border-bottom:1px solid var(--border)}
  .cinfo:first-child{padding-top:0}
  .cinfo:last-child{border-bottom:0}
  .cinfo .ci-ico{flex:0 0 auto; width:44px; height:44px; border-radius:11px; background:var(--surface-2); color:var(--brand-2); display:grid; place-items:center}
  .cinfo .ci-ico svg{width:21px; height:21px}
  .cinfo .k{font-size:12px; text-transform:uppercase; letter-spacing:.09em; color:var(--muted); font-weight:700}
  .cinfo .v{color:var(--ink); font-weight:600; margin-top:3px}
  .cinfo .v a:hover{color:var(--accent)}
  .cinfo .v .sub{display:block; font-weight:500; color:var(--text); font-size:.94rem}
  form.contact{background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:30px; box-shadow:var(--shadow-sm); display:grid; gap:16px}
  .frow{display:grid; grid-template-columns:1fr 1fr; gap:16px}
  .field{display:flex; flex-direction:column; gap:7px}
  .field label{font-size:13.5px; font-weight:600; color:var(--ink)}
  .field input,.field textarea{font-family:var(--font-sans); font-size:15px; color:var(--ink); background:var(--bg); border:1px solid var(--border); border-radius:10px; padding:12px 14px; width:100%; resize:vertical; transition:border-color .2s, box-shadow .2s}
  .field input:focus,.field textarea:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft)}
  form.contact .btn{width:100%; margin-top:8px; padding-top:9px; padding-bottom:9px}
  .form-note{font-size:12.5px; color:var(--muted); text-align:center}

  /* Footer */
  footer.site{background:var(--surface-2); border-top:1px solid var(--border); padding:54px 0 28px}
  .foot-grid{display:grid; grid-template-columns:1.6fr 1fr; gap:40px; padding-bottom:34px; border-bottom:1px solid var(--border)}
  footer.site .brand{margin-bottom:14px}
  .foot-about{color:var(--muted); font-size:.94rem; max-width:36ch}
  .foot-col h5{margin:0 0 14px; font-size:12px; text-transform:uppercase; letter-spacing:.1em; color:var(--ink); font-weight:700}
  .foot-col a,.foot-col span{display:block; color:var(--text); padding:5px 0; font-size:.95rem}
  .foot-col a:hover{color:var(--accent)}
  .foot-bot{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:22px; color:var(--muted); font-size:13px}

  .reveal{opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease}
  .reveal.in{opacity:1; transform:none}
  @media (prefers-reduced-motion:reduce){ .reveal{opacity:1; transform:none; transition:none} }

  /* Photos */
  .hero-photo{position:relative; border-radius:20px; overflow:hidden; border:1px solid var(--border); box-shadow:var(--shadow); aspect-ratio:4/3}
  .hero-photo img{width:100%; height:100%; object-fit:cover}
  .hero-proof{position:absolute; left:15px; right:15px; bottom:15px; background:color-mix(in srgb,var(--surface) 80%, transparent); backdrop-filter:blur(10px) saturate(160%); border:1px solid var(--border); border-radius:14px; padding:15px 17px; box-shadow:var(--shadow-sm)}
  .hp-badge{display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:700; letter-spacing:.05em; color:var(--good); text-transform:uppercase}
  .hp-badge .dot{width:8px; height:8px; border-radius:50%; background:var(--good); box-shadow:0 0 0 4px var(--good-soft)}
  .hp-stat{display:flex; align-items:baseline; gap:13px; margin-top:9px}
  .hp-stat .n{font-family:var(--font-serif); font-weight:700; font-size:1.9rem; color:var(--brand); line-height:1}
  .hp-stat .t{font-size:12.5px; color:var(--text); line-height:1.4}

  .band.photo{position:relative; background:#0e1c40; isolation:isolate}
  .band.photo .bgimg{position:absolute; inset:0; z-index:-2; background-size:cover; background-position:center}
  .band.photo::before{content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(160deg, rgba(22,41,91,.9), rgba(9,16,36,.95))}

  .proc-banner{position:relative; border-radius:16px; overflow:hidden; margin-bottom:44px; border:1px solid var(--border); box-shadow:var(--shadow-sm)}
  .proc-banner img{width:100%; height:190px; object-fit:cover; display:block}
  .proc-banner::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(22,41,91,.4), rgba(22,41,91,.03))}

  .cta-bg{position:absolute; inset:0; z-index:0; background-size:cover; background-position:center}
  .cta-ov{position:absolute; inset:0; z-index:1; background:linear-gradient(135deg, rgba(44,74,134,.93), rgba(22,41,91,.9))}
  .cta-content, .cta-strip .btn{position:relative; z-index:2}

  .contact-photo{width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:14px; border:1px solid var(--border); margin-bottom:22px; box-shadow:var(--shadow-sm)}

  /* Industries */
  .ind-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(232px,1fr)); gap:14px}
  .ind{display:flex; align-items:center; gap:14px; background:var(--surface); border:1px solid var(--border); border-radius:12px; padding:15px 17px; box-shadow:var(--shadow-sm); transition:transform .2s, border-color .2s, box-shadow .25s}
  .ind:hover{transform:translateY(-3px); border-color:color-mix(in srgb,var(--brand-2) 42%, var(--border)); box-shadow:var(--shadow)}
  .ind .ind-ic{flex:0 0 auto; width:42px; height:42px; border-radius:11px; background:var(--accent-soft); color:var(--accent); display:grid; place-items:center}
  .ind .ind-ic svg{width:22px; height:22px}
  .ind .nm{font-weight:600; color:var(--ink); font-size:.95rem; line-height:1.25}
  .ind-note{margin-top:26px; font-family:var(--font-serif); font-style:italic; color:var(--brand-2); text-align:center; font-size:1.06rem}

  /* Întrebări frecvente — acordeon nativ (<details>), fara JavaScript */
  .faq-list{display:grid; gap:12px; max-width:900px; margin:0 auto}
  .faq-i{background:var(--surface); border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow-sm); transition:border-color .2s, box-shadow .2s}
  .faq-i:hover{border-color:var(--brand-2)}
  .faq-i[open]{box-shadow:var(--shadow-md, var(--shadow-sm))}
  .faq-i summary{list-style:none; cursor:pointer; display:flex; align-items:flex-start; gap:16px; padding:21px 24px; font-weight:700; color:var(--ink); font-size:1.05rem; line-height:1.5}
  .faq-i summary::-webkit-details-marker{display:none}
  .faq-i summary::marker{content:""}
  .faq-i summary:hover{color:var(--brand)}
  .faq-i summary:focus-visible{outline:2px solid var(--brand-2); outline-offset:3px; border-radius:14px}
  .faq-q{flex:1 1 auto; min-width:0}
  .faq-ch{flex:0 0 auto; width:28px; height:28px; border-radius:9px; background:var(--accent-soft); color:var(--accent); display:grid; place-items:center; transition:transform .25s ease, background .2s}
  .faq-ch svg{width:16px; height:16px}
  .faq-i[open] .faq-ch{transform:rotate(180deg)}
  .faq-i[open] summary{padding-bottom:12px}
  .faq-i[open] summary .faq-q{color:var(--brand)}
  .faq-a{padding:0 24px 24px 24px; max-width:76ch}
  .faq-a p{margin-top:13px; color:var(--text); line-height:1.72}
  .faq-a p:first-child{margin-top:0}
  .faq-mai{margin-top:26px; text-align:center; font-size:15px; color:var(--muted)}
  @media (max-width:640px){
    .faq-i summary{padding:18px 18px; font-size:1rem; gap:12px}
    .faq-a{padding:0 18px 18px 18px}
  }

  /* Familii de industrii — cartonas mai inalt, cu trei rânduri de text */
  .ind-grid.familii{grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:16px}
  .ind.ind-f{align-items:flex-start; padding:20px}
  .ind.ind-f .fam-txt{min-width:0}
  .ind.ind-f .fam-txt{display:block}
  .ind.ind-f .fam-nm{display:block; font-weight:700; color:var(--ink); font-size:1.02rem; line-height:1.3}
  .ind.ind-f .fam-sec{display:block; margin-top:6px; font-size:12px; color:var(--muted); text-transform:uppercase; letter-spacing:.05em; font-weight:700; line-height:1.45}
  .ind.ind-f .fam-lg{display:block; margin-top:10px; padding-top:10px; border-top:1px solid var(--border); font-size:14px; color:var(--text); line-height:1.55}
  .real-stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:18px; margin-bottom:46px}
  .rstat{background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:22px 18px; box-shadow:var(--shadow-sm); text-align:center}
  .rstat .n{font-family:var(--font-serif); font-weight:700; font-size:2.15rem; color:var(--brand); line-height:1; font-variant-numeric:tabular-nums}
  .rstat .l{margin-top:9px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); font-weight:700}

  /* Articole */
  .art-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:22px}
  .art-card{display:flex; flex-direction:column; background:var(--surface); border:1px solid var(--border); border-radius:16px; overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .2s, box-shadow .25s}
  .art-card:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
  .art-card .thumb{position:relative; aspect-ratio:16/10; overflow:hidden}
  .art-card .thumb img{width:100%; height:100%; object-fit:cover; transition:transform .4s}
  .art-card:hover .thumb img{transform:scale(1.05)}
  .art-card .cat{position:absolute; left:12px; top:12px; background:color-mix(in srgb,var(--brand) 90%, transparent); color:#fff; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:5px 11px; border-radius:20px}
  .art-card .body{padding:20px 22px 22px; display:flex; flex-direction:column; gap:9px; flex:1}
  .art-card h3{font-family:var(--font-serif); font-size:1.18rem; line-height:1.26; color:var(--ink)}
  .art-card .body p{font-size:.93rem; color:var(--text); flex:1}
  .art-card .more{font-size:.88rem; font-weight:700; color:var(--accent); display:inline-flex; align-items:center; gap:6px; margin-top:2px}
  .art-card .more svg{width:15px; height:15px; transition:transform .2s}
  .art-card:hover .more svg{transform:translateX(3px)}

  .despre-band{position:relative; isolation:isolate; background:#0e1c40; color:#cdd6ea}
  .despre-band .bgimg{position:absolute; inset:0; z-index:-2; background-size:cover; background-position:center}
  .despre-band::before{content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(150deg, rgba(20,34,75,.94), rgba(9,16,36,.96))}
  .despre-inner{max-width:820px}
  .despre-band h2{color:#fff}
  .despre-band .eyebrow{color:#9fb4e0}
  .despre-band .eyebrow::before{background:#7d97d6}
  .despre-txt{margin-top:22px; display:flex; flex-direction:column; gap:15px}
  .despre-txt p{color:#c4cee4; font-size:1.04rem; line-height:1.72}
  .despre-txt p:first-child{font-family:var(--font-serif); font-size:1.22rem; color:#fff; line-height:1.5}

  .contact-single{max-width:640px; margin:0 auto}

  /* Articole — popup de citire */
  .art-card{cursor:pointer}
  .modal-overlay{position:fixed; inset:0; z-index:200; background:rgba(9,16,36,.62); backdrop-filter:blur(4px); display:flex; align-items:flex-start; justify-content:center; padding:5vh 18px; opacity:0; visibility:hidden; transition:opacity .25s, visibility .25s; overflow-y:auto}
  .modal-overlay.open{opacity:1; visibility:visible}
  .modal{position:relative; background:var(--surface); border:1px solid var(--border); border-radius:18px; max-width:720px; width:100%; padding:44px clamp(24px,5vw,52px) 46px; box-shadow:var(--shadow); transform:translateY(14px); transition:transform .25s}
  .modal-overlay.open .modal{transform:none}
  .modal-close{position:absolute; top:14px; right:14px; width:40px; height:40px; border-radius:10px; border:1px solid var(--border); background:var(--surface-2); color:var(--ink); font-size:22px; line-height:1; cursor:pointer; display:grid; place-items:center; transition:border-color .2s, color .2s}
  .modal-close:hover{border-color:var(--accent); color:var(--accent)}
  .modal-body .cat{display:inline-block; background:var(--accent-soft); color:var(--accent-2); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:5px 11px; border-radius:20px}
  .modal-body h2{font-family:var(--font-serif); font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem); margin:16px 0 4px; color:var(--ink); line-height:1.2}
  .modal-body .meta{font-size:13px; color:var(--muted); margin-bottom:20px}
  .modal-body p{margin:0 0 14px; color:var(--text); line-height:1.74}
  .modal-body h3{font-family:var(--font-serif); color:var(--ink); margin:22px 0 8px; font-size:1.18rem}
  body.modal-open{overflow:hidden}

  @media (max-width:940px){
    .hero-grid{grid-template-columns:1fr; gap:44px; padding:52px 0 64px}
    .hero-photo{max-width:460px}
    .prob-grid,.dd,.about-grid,.contact-grid{grid-template-columns:1fr; gap:34px}
    .cards{grid-template-columns:1fr}
    .stats{grid-template-columns:1fr}
    .deliv-grid{grid-template-columns:1fr}
    .foot-grid{grid-template-columns:1fr 1fr}
    .about-grid .portrait{max-width:380px}
  }
  @media (max-width:640px){
    body{font-size:16px}
    nav.links{display:none}
    .nav-cta .btn{display:none}
    .burger{display:flex}
    nav.links.open{display:flex; position:absolute; top:70px; left:0; right:0; flex-direction:column; gap:4px; background:var(--surface); border-bottom:1px solid var(--border); padding:14px 24px 20px; box-shadow:var(--shadow)}
    nav.links.open a{padding:12px 14px}
    .band{padding:60px 0}
    .frow{grid-template-columns:1fr}
    .cta-strip{padding:34px 26px}
    .foot-grid{grid-template-columns:1fr}
    .step{gap:16px}
    .step .badge{width:48px; height:48px; font-size:1.2rem}
    .timeline::before{left:23px}
  }


  .field-check{display:flex; gap:11px; align-items:flex-start; margin-top:2px}
  .field-check input[type=checkbox]{margin-top:4px; width:17px; height:17px; flex:none; accent-color:var(--accent)}
  .field-check label{font-size:13px; line-height:1.5; color:var(--text)}
  .field-check a{color:var(--accent); text-decoration:underline}
  .hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
  .form-status{margin:0; font-size:13.5px; text-align:center; min-height:1px}
  .form-status.ok{color:var(--good); font-weight:700}
  .form-status.err{color:#C4561D; font-weight:700}
  @media (prefers-color-scheme:dark){ .form-status.err{color:#E08A4C} }
  :root[data-theme="dark"] .form-status.err{color:#E08A4C}


  /* 18.09.2026: cu 9 elemente in meniu, sigla era turtita pe ecranele sub ~1400 px */
  .brand, .brand .logo{flex-shrink:0}
  @media (max-width:1320px){ nav.links a{padding:9px 10px; font-size:14.5px} }
  @media (max-width:1180px){
    nav.links{display:none}
    .burger{display:flex}
    nav.links.open{display:flex; position:absolute; top:70px; left:0; right:0; flex-direction:column; gap:4px;
                   background:var(--surface); border-bottom:1px solid var(--border); padding:14px 24px 20px; box-shadow:var(--shadow)}
    nav.links.open a{padding:12px 14px}
  }


/* ——— Paleta graficelor. Validata cu validate_palette.js (light/dark/ordinal). ——— */
.gvz{--c1:#2E56A6; --c2:#C4561D; --c3:#2E8B6B;
     --o1:#A7B4D6; --o2:#5C7CBE; --o3:#16295B;
     --dim:#A8B0C4; --gl:#DCE3F0; --tx:#3B4560; --mu:#6B7691; --sf:#FFFFFF;
     --hot:rgba(196,86,29,.10); --rul:rgba(46,86,166,.09); --pnl:#F5F7FC}
@media (prefers-color-scheme:dark){
  .gvz{--c1:#6E8ED0; --c2:#C87639; --c3:#43A87F;
       --o1:#3B4A78; --o2:#5C7CBE; --o3:#9DB3E2;
       --dim:#4B5675; --gl:#26315A; --tx:#B2BEDA; --mu:#7C88A9; --sf:#111931;
       --hot:rgba(200,118,57,.16); --rul:rgba(110,142,208,.14); --pnl:#151E3A}
}
:root[data-theme="light"] .gvz{--c1:#2E56A6; --c2:#C4561D; --c3:#2E8B6B;
     --o1:#A7B4D6; --o2:#5C7CBE; --o3:#16295B; --dim:#A8B0C4; --gl:#DCE3F0;
     --tx:#3B4560; --mu:#6B7691; --sf:#FFFFFF;
     --hot:rgba(196,86,29,.10); --rul:rgba(46,86,166,.09); --pnl:#F5F7FC}
:root[data-theme="dark"] .gvz{--c1:#6E8ED0; --c2:#C87639; --c3:#43A87F;
     --o1:#3B4A78; --o2:#5C7CBE; --o3:#9DB3E2; --dim:#4B5675; --gl:#26315A;
     --tx:#B2BEDA; --mu:#7C88A9; --sf:#111931;
     --hot:rgba(200,118,57,.16); --rul:rgba(110,142,208,.14); --pnl:#151E3A}

.gvz{display:block; font-family:var(--font-sans); overflow:visible}
.gvz .gg line{stroke:var(--gl); stroke-width:1}
.gvz text{fill:var(--tx)}
.gvz text.gcat{font-size:12px; fill:var(--tx); text-anchor:end}
.gvz text.gcat.mid{text-anchor:middle}
.gvz text.gcat.b{font-weight:700}
.gvz text.gcat.l{text-anchor:start}
.gvz text.gval{font-size:12px; font-weight:700; fill:var(--tx);
  font-variant-numeric:tabular-nums}
.gvz text.gval.dim{font-weight:400; fill:var(--mu)}
.gvz text.gax{font-size:11px; fill:var(--mu); font-variant-numeric:tabular-nums}
.gvz text.glg{font-size:11.5px; fill:var(--mu)}
.gvz .gdot{stroke:var(--sf); stroke-width:2}
/* scheme explicative */
.gvz .sb{fill:var(--pnl); stroke:var(--gl); stroke-width:1}
.gvz .sb.hot{fill:var(--hot); stroke:var(--c2)}
.gvz .sb.rule{fill:var(--rul); stroke:var(--c1)}
.gvz text.sbt{font-size:12.5px; font-weight:700; fill:var(--tx)}
.gvz text.sbt.l{text-anchor:start}
.gvz text.sbs{font-size:11px; fill:var(--mu)}
.gvz text.sbs.l{text-anchor:start}
.gvz text.sbn{font-size:11px; font-weight:700; fill:var(--mu)}
.gvz text.sh{font-size:11px; font-weight:700; fill:var(--mu);
  letter-spacing:.08em; text-transform:uppercase}
.gvz text.sn{font-size:11.5px; fill:var(--mu)}
.gvz text.sn.b{font-weight:700; fill:var(--tx)}
.gvz .sdiv{stroke:var(--gl); stroke-width:1}
.gvz .sa{stroke:var(--mu); stroke-width:1.4; fill:none}
.gvz .sa2{stroke:var(--c1); stroke-width:1.4; fill:none}
.gvz .sam{fill:var(--mu)}
.gvz .sp{fill:var(--pnl); stroke:var(--gl)}
.gvz .sp.hot{fill:var(--hot); stroke:var(--c2)}
.gvz .sp.rule{fill:var(--rul); stroke:var(--c1)}
.gvz text.sph{font-size:11px; font-weight:700; fill:var(--tx);
  letter-spacing:.09em; text-transform:uppercase}
.gvz .spd{fill:var(--mu)}

/* ——— Articolul, in stil de publicatie economica ——— */
.modal{max-width:830px !important}
.modal-body .dek{font-family:var(--font-serif); font-size:1.1rem; line-height:1.58;
  color:var(--brand-2); margin:6px 0 0}
.modal-body .byline{display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center;
  margin:16px 0 22px; padding-bottom:16px; border-bottom:2px solid var(--brand);
  font-family:var(--font-sans); font-size:12px; color:var(--muted);
  letter-spacing:.02em}
.modal-body .bl-a{font-weight:700; color:var(--ink); letter-spacing:.04em;
  text-transform:uppercase}
.modal-body .bl-r{margin-left:auto}
.modal-body figure{margin:0}
.modal-body figure.hero{margin:0 0 26px}
.modal-body figure.hero img{width:100%; aspect-ratio:16/10; object-fit:cover;
  border-radius:12px; display:block}
.modal-body figure.hero figcaption{margin-top:8px; font-family:var(--font-sans);
  font-size:11.5px; color:var(--muted); font-style:italic}
.modal-body p.lede{font-size:1.06rem; line-height:1.76}
.modal-body p.lede strong{color:var(--ink)}

.kpi-row{display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:var(--border); border:1px solid var(--border); border-radius:12px;
  overflow:hidden; margin:0 0 26px}
.kpi{background:var(--surface-2); padding:16px 14px 14px; text-align:center}
.kpi-v{font-family:var(--font-sans); font-weight:700; font-size:1.72rem;
  line-height:1; color:var(--brand)}
.kpi-l{margin-top:7px; font-family:var(--font-sans); font-size:11px; font-weight:700;
  letter-spacing:.07em; text-transform:uppercase; color:var(--ink)}
.kpi-n{margin-top:3px; font-family:var(--font-sans); font-size:11px; color:var(--muted)}
@media (max-width:620px){ .kpi-row{grid-template-columns:1fr} }

.modal-body figure.chart, .modal-body figure.tbl{margin:30px 0 32px;
  padding:20px 20px 16px; background:var(--surface-2); border:1px solid var(--border);
  border-radius:14px}
.modal-body .cap-top{font-family:var(--font-sans); font-size:13px; font-weight:700;
  color:var(--ink); line-height:1.45; margin-bottom:14px}
.modal-body .fnum{display:inline-block; margin-right:9px; padding:2px 7px;
  border-radius:5px; background:var(--brand); color:#fff; font-size:10.5px;
  letter-spacing:.06em; text-transform:uppercase; vertical-align:1px}
.modal-body .fnum.sch{background:var(--steel)}
.modal-body .cap-bot{margin-top:12px; padding-top:11px; border-top:1px solid var(--border);
  font-family:var(--font-sans); font-size:11.5px; line-height:1.5; color:var(--muted)}
.modal-body .schema svg{min-width:600px}
.modal-body .schema, .modal-body .tw{overflow-x:auto}
.modal-body details.dtab{margin-top:12px}
.modal-body details.dtab summary{cursor:pointer; font-family:var(--font-sans);
  font-size:11.5px; font-weight:700; color:var(--accent); letter-spacing:.03em}
.modal-body details.dtab table{margin-top:10px}
.modal-body table{border-collapse:collapse; width:100%; font-family:var(--font-sans);
  font-size:13px; line-height:1.45}
.modal-body thead th{background:var(--brand); color:#fff; text-align:left;
  padding:9px 11px; font-size:11.5px; font-weight:700; letter-spacing:.03em;
  vertical-align:bottom}
.modal-body tbody td{border-bottom:1px solid var(--border); padding:8px 11px;
  vertical-align:top; color:var(--text)}
.modal-body tbody td:first-child{color:var(--ink); font-weight:600}
.modal-body tbody td+td{font-variant-numeric:tabular-nums}
.modal-body tbody tr:nth-child(even) td{background:var(--accent-soft)}

.modal-body blockquote.pull{margin:30px 0; padding:4px 0 4px 22px;
  border-left:3px solid var(--accent); font-family:var(--font-serif);
  font-size:1.2rem; line-height:1.5; color:var(--ink)}
.modal-body aside.takeaway{margin:32px 0 8px; padding:22px 24px;
  background:var(--accent-soft); border:1px solid var(--border);
  border-left:3px solid var(--accent); border-radius:12px}
.modal-body aside.takeaway h4{font-family:var(--font-sans); font-size:11.5px;
  font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  color:var(--accent-2); margin:0 0 12px}
.modal-body aside.takeaway ul{margin:0; padding-left:19px}
.modal-body aside.takeaway li{margin:8px 0; color:var(--text); line-height:1.62}
.modal-body .hero-fig{margin:0 0 26px; padding:22px 24px; border-radius:14px;
  background:var(--surface-2); border:1px solid var(--border); text-align:center}
.modal-body .hf-v{font-family:var(--font-sans); font-weight:700; font-size:3.4rem;
  line-height:1; color:var(--brand)}
.modal-body .hf-l{margin-top:10px; font-size:1.02rem; line-height:1.55; color:var(--text)}
.modal-body .hf-n{margin-top:9px; font-family:var(--font-sans); font-size:11px;
  color:var(--muted)}
.modal-body p.src-note{margin:26px 0 0; padding-top:15px;
  border-top:1px solid var(--border); font-family:var(--font-sans); font-size:11.5px;
  line-height:1.62; color:var(--muted)}
.modal-body p.src-note span{display:inline-block; margin-right:8px; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ink)}

/* ——— Navigarea intre articole ——— */
.modal-nav{display:flex; align-items:center; gap:12px; margin-top:30px;
  padding-top:18px; border-top:1px solid var(--border)}
.modal-nav button{flex:1; display:flex; align-items:center; gap:9px;
  padding:12px 15px; border:1px solid var(--border); border-radius:11px;
  background:var(--surface); color:var(--ink); cursor:pointer;
  font-family:var(--font-sans); font-size:12.5px; font-weight:700;
  transition:border-color .18s, color .18s, background .18s; text-align:left;
  min-height:44px}
.modal-nav button:hover{border-color:var(--accent); color:var(--accent);
  background:var(--accent-soft)}
.modal-nav .m-next{justify-content:flex-end; text-align:right}
.modal-nav svg{width:16px; height:16px; flex:none}
.modal-nav .m-count{font-family:var(--font-sans); font-size:11.5px; font-weight:700;
  color:var(--muted); letter-spacing:.06em; font-variant-numeric:tabular-nums;
  white-space:nowrap}
.modal-nav .m-lbl{overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.nav-side{position:fixed; top:50%; transform:translateY(-50%); z-index:210;
  width:50px; height:50px; border-radius:50%; border:1px solid var(--border);
  background:var(--surface); color:var(--ink); cursor:pointer; display:none;
  align-items:center; justify-content:center; box-shadow:var(--shadow-sm);
  transition:border-color .18s, color .18s}
.nav-side:hover{border-color:var(--accent); color:var(--accent)}
.nav-side svg{width:22px; height:22px}
.nav-side.left{left:26px} .nav-side.right{right:26px}
.modal-overlay.open .nav-side{display:flex}
@media (max-width:1120px){ .modal-overlay.open .nav-side{display:none} }
@media (max-width:520px){ .modal-nav .m-lbl{display:none} }


/* ——— Miscare discreta. Totul se poate opri din setarea de sistem. ——— */

/* 1. Aparitie in cascada: cardurile dintr-o grila nu apar toate deodata */
.reveal{will-change:opacity, transform}

/* 2. Linia procesului se deseneaza pe masura ce derulezi */
.timeline.gvp-draw::before{transform:scaleY(0); transform-origin:top;
  transition:transform 1.15s cubic-bezier(.22,.61,.36,1)}
.timeline.gvp-draw.gvp-drawn::before{transform:scaleY(1)}

/* 3. Cifrele care se numara: latime stabila, ca sa nu tresara randul */
.prow .n, .rstat .n, .stat-c .n, .fact .k{font-variant-numeric:tabular-nums}

/* 4. Meniul: subliniere care creste de la stanga */
nav.links a{position:relative}
nav.links a::after{content:""; position:absolute; left:14px; right:14px; bottom:6px;
  height:2px; border-radius:2px; background:var(--accent); transform:scaleX(0);
  transform-origin:left; transition:transform .3s cubic-bezier(.22,.61,.36,1)}
nav.links a:hover::after{transform:scaleX(1)}

/* 5. Antetul capata adancime dupa ce pagina a fost derulata */
header.nav{transition:border-color .3s, background .3s, box-shadow .3s}
header.nav.scrolled{box-shadow:0 1px 0 rgba(20,34,75,.04), 0 10px 30px -22px rgba(20,34,75,.5)}
@media (prefers-color-scheme:dark){
  header.nav.scrolled{box-shadow:0 1px 0 rgba(0,0,0,.3), 0 12px 34px -22px rgba(0,0,0,.8)}
}

/* 6. Bara de progres a citirii, in fereastra de articol */
.read-progress{position:fixed; top:0; left:0; right:0; height:3px; z-index:230;
  background:transparent; opacity:0; transition:opacity .3s; pointer-events:none}
.read-progress.on{opacity:1}
.read-progress i{display:block; height:100%; width:0;
  background:linear-gradient(90deg, var(--brand-2), var(--accent));
  border-radius:0 3px 3px 0; transition:width .12s linear}

/* 7. Figurile din articole apar cu o ridicare foarte scurta */
.modal-body .gvp-anim{opacity:0; transform:translateY(16px);
  transition:opacity .5s ease, transform .5s cubic-bezier(.22,.61,.36,1)}
.modal-body .gvp-anim.gvp-seen{opacity:1; transform:none}

/* 8. Cardurile de articol: imaginea respira putin mai lent decat acum */
.art-card{transition:transform .28s cubic-bezier(.22,.61,.36,1), box-shadow .3s}
.art-card .thumb img{transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.art-card:hover .thumb img{transform:scale(1.045)}

/* Oprirea completa, la cererea sistemului */
@media (prefers-reduced-motion:reduce){
  .timeline.gvp-draw::before, .timeline.gvp-draw.gvp-drawn::before{transform:none; transition:none}
  .modal-body .gvp-anim{opacity:1; transform:none; transition:none}
  nav.links a::after{transition:none}
  .read-progress i{transition:none}
  .art-card, .art-card .thumb img{transition:none}
}


  /* Carusela de articole. Foloseste derularea nativa cu prindere pe cartonas:
     merge din degete pe telefon, cu rotita pe desktop si cu tastele stanga/dreapta.
     Adaugarea unui articol nou nu cere nicio modificare aici. */
  .car{position:relative}
  .car-track{display:flex; gap:22px; overflow-x:auto; overflow-y:hidden;
             scroll-snap-type:x mandatory; scroll-behavior:smooth;
             padding:4px 2px 8px; margin:0 -2px;
             scrollbar-width:none; -ms-overflow-style:none}
  .car-track::-webkit-scrollbar{display:none}
  .car-track > .art-card{flex:0 0 calc((100% - 44px) / 3); scroll-snap-align:start; margin:0}
  @media (max-width:1000px){ .car-track > .art-card{flex:0 0 calc((100% - 22px) / 2)} }
  @media (max-width:640px){  .car-track > .art-card{flex:0 0 88%} }

  .car-nav{position:absolute; top:calc(38% - 22px); z-index:4; width:44px; height:44px;
           border-radius:50%; border:1px solid var(--border); background:var(--surface);
           color:var(--ink); cursor:pointer; display:grid; place-items:center;
           box-shadow:0 6px 18px rgba(16,32,80,.14); transition:opacity .2s, transform .2s}
  .car-nav svg{width:20px; height:20px}
  .car-nav:hover{transform:scale(1.06)}
  .car-nav.prev{left:-14px}
  .car-nav.next{right:-14px}
  .car-nav[disabled]{opacity:0; pointer-events:none}
  @media (max-width:900px){ .car-nav.prev{left:-4px} .car-nav.next{right:-4px} }

  .car-foot{display:flex; align-items:center; gap:14px; margin-top:10px}
  .car-bar{flex:1; height:3px; background:var(--border); border-radius:2px; overflow:hidden}
  .car-prog{display:block; height:100%; width:33%; background:var(--accent); border-radius:2px;
            transition:width .25s ease, margin-left .25s ease}
  .car-hint{font:600 12.5px/1 -apple-system,"Segoe UI",Arial,sans-serif; color:var(--muted);
            letter-spacing:.02em; white-space:nowrap}
  @media (prefers-reduced-motion:reduce){
    .car-track{scroll-behavior:auto}
    .car-prog{transition:none}
    .car-nav{transition:none}
  }

  /* cartonasul e acum un link: pastram aspectul, scoatem stilul implicit de ancora */
  a.art-card{text-decoration:none; color:inherit; display:block}
  a.art-card:focus-visible{outline:3px solid var(--accent); outline-offset:3px}
  .art-meta{display:flex; gap:8px; align-items:center; margin:0 0 6px;
            font:600 12px/1 -apple-system,"Segoe UI",Arial,sans-serif; color:var(--muted);
            letter-spacing:.03em; text-transform:uppercase}


  .foot-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:34px}
  @media (max-width:860px){ .foot-grid{grid-template-columns:1fr 1fr; gap:26px} }
  @media (max-width:560px){ .foot-grid{grid-template-columns:1fr} }
  .foot-h{font:700 13px/1 -apple-system,"Segoe UI",Arial,sans-serif; letter-spacing:.06em;
          text-transform:uppercase; color:var(--ink); margin:0 0 12px}
  .foot-mail{margin:10px 0 0; font:600 14px/1.5 -apple-system,"Segoe UI",Arial,sans-serif}
  .foot-mail a{color:var(--accent); text-decoration:none}
  .foot-mail a:hover{text-decoration:underline}
  /* Datele de identificare cerute de art. 5 din Legea 365/2002 privind comertul electronic.
     Trebuie sa fie permanent si usor accesibile — de aceea stau in footer, pe fiecare pagina. */
  .foot-legal{margin-top:26px; padding-top:16px; border-top:1px solid var(--border)}
  .foot-legal p{margin:0; font:400 12.5px/1.7 -apple-system,"Segoe UI",Arial,sans-serif;
                color:var(--muted)}


  .int-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:38px; align-items:start}
  @media (max-width:900px){ .int-grid{grid-template-columns:1fr; gap:26px} }
  .int-h{font:700 15px/1.3 -apple-system,"Segoe UI",Arial,sans-serif; color:var(--ink);
         margin:0 0 14px; letter-spacing:.01em}
  .pasi{counter-reset:p; list-style:none; padding:0; margin:0}
  .pasi li{position:relative; padding-left:42px; margin:0 0 18px; font-size:15px; line-height:1.65}
  .pasi li::before{counter-increment:p; content:counter(p); position:absolute; left:0; top:1px;
                   width:28px; height:28px; border-radius:50%; display:grid; place-items:center;
                   background:var(--ink); color:#fff;
                   font:700 13px/1 -apple-system,"Segoe UI",Arial,sans-serif}
  @media (prefers-color-scheme:dark){ .pasi li::before{background:var(--accent)} }
  :root[data-theme="dark"] .pasi li::before{background:var(--accent)}
  .pasi strong{color:var(--ink)}
  .int-nota{margin:22px 0 0; padding-top:16px; border-top:1px solid var(--border);
            font:400 13px/1.65 -apple-system,"Segoe UI",Arial,sans-serif; color:var(--muted)}
  .int-nota a{color:var(--accent)}
  .int-form-wrap{background:var(--surface); border:1px solid var(--border); border-radius:16px;
                 padding:26px clamp(18px,3vw,30px)}
  .int-form select, .int-form input[type=date]{width:100%; padding:11px 12px; border-radius:10px;
      border:1px solid var(--border); background:var(--bg); color:var(--text);
      font:400 15px/1.4 -apple-system,"Segoe UI",Arial,sans-serif}
  .int-form select:focus, .int-form input[type=date]:focus{outline:2px solid var(--accent); outline-offset:1px}


  /* Imagine + strat albastru translucid, acelasi tipar cu banda CTA de mai sus.
     Stratul e mai deschis decat la CTA (.90 in loc de .93, si porneste din albastrul
     accent, nu din bleumarin) exact ca sa nu arate sumbru. */
  .contact-dark{position:relative; overflow:hidden}
  .contact-dark > .wrap{position:relative; z-index:2}
  .contact-bg{position:absolute; inset:0; z-index:0;
              background-size:cover; background-position:center}
  .contact-ov{position:absolute; inset:0; z-index:1;
              background:linear-gradient(135deg, rgba(46,86,166,.90), rgba(22,41,91,.91))}
  @media (prefers-color-scheme:dark){
    .contact-ov{background:linear-gradient(135deg, rgba(30,58,118,.93), rgba(11,18,38,.94))}
  }
  :root[data-theme="dark"] .contact-ov{
    background:linear-gradient(135deg, rgba(30,58,118,.93), rgba(11,18,38,.94))}
  :root[data-theme="light"] .contact-ov{
    background:linear-gradient(135deg, rgba(46,86,166,.90), rgba(22,41,91,.91))}


  /* Banda de contact, pe fond inchis. Culoarea e fixa (nu var(--ink)), pentru ca in modul
     intunecat var(--ink) devine deschis si banda ar dispărea. */
  .contact-dark{background:#101B3A; color:rgba(255,255,255,.84)}
  @media (prefers-color-scheme:dark){ .contact-dark{background:#0B1226} }
  :root[data-theme="dark"]  .contact-dark{background:#0B1226}
  :root[data-theme="light"] .contact-dark{background:#101B3A}

  .contact-dark .sec-head h2{color:#fff}
  .contact-dark .sec-head p{color:rgba(255,255,255,.86)}
  .contact-dark .eyebrow, .contact-dark .eyebrow.c{color:#9DB6EA}
  .contact-dark .eyebrow::before, .contact-dark .eyebrow.c::before{background:#9DB6EA}

  /* Formular scurt, centrat — clar mai mic decat cel de programare.
     ATENTIE: `form.contact` are in stilul de baza fundal alb (var(--surface)). Pe banda
     inchisa trebuie facut transparent, altfel etichetele albe cad pe card alb si dispar
     (s-a intamplat la prima incercare, 08.08.2026). */
  .contact-dark .contact-single{max-width:620px; margin:0 auto}
  .contact-dark form.contact{background:transparent; border:0; box-shadow:none; padding:0}
  .contact-dark label{color:rgba(255,255,255,.9)}
  .contact-dark input, .contact-dark textarea{
      background:rgba(255,255,255,.20); border-color:rgba(255,255,255,.30); color:#fff}
  .contact-dark input::placeholder, .contact-dark textarea::placeholder{color:rgba(255,255,255,.60)}
  .contact-dark input:focus, .contact-dark textarea:focus{
      outline:2px solid #9DB6EA; outline-offset:1px; background:rgba(255,255,255,.26)}
  .contact-dark .btn-primary{background:#fff; color:#101B3A; border-color:#fff}
  .contact-dark .btn-primary:hover{background:#E7EDFA; color:#101B3A}
  .contact-dark .field-check label{color:rgba(255,255,255,.84)}
  .contact-dark .field-check input[type=checkbox]{accent-color:#9DB6EA}
  .contact-dark .form-note{color:rgba(255,255,255,.76)}
  .contact-dark a{color:#BFD0F2}
  .contact-dark .form-status.ok{color:#8FE0B4}
  .contact-dark .form-status.err{color:#FFB27A}

  .contact-alt{max-width:620px; margin:20px auto 0; text-align:center;
               font:400 14px/1.6 -apple-system,"Segoe UI",Arial,sans-serif;
               color:rgba(255,255,255,.80)}
  .contact-alt a{color:#BFD0F2; font-weight:700}


  /* Culoarea: EXACT cea de la banda „Primul pas este o discuție" (`.cta-ov`), dar la
     opacitate plina, fiindca aici nu acopera nicio fotografie:
       rgba(44,74,134,.93) -> rgb(44,74,134) = #2C4A86
       rgba(22,41,91,.9)   -> rgb(22,41,91)  = #16295B
     Peste ea, reteaua de conexiuni. Istoricul: _unelte/patch_contact_fundal.py */
  .contact-dark{background:#22406F}
  /* Doua straturi de degrade, amandoua discrete:
       - diagonal: INCHIS in colțul din stanga sus -> DESCHIS spre dreapta jos
       - vertical: puțin mai deschis sus, puțin mai inchis jos
     Sunt fine intentionat; scopul e sa scoata banda din plat, nu sa se vada ca degrade. */
  .contact-bg{background:
      linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(0,0,0,.07) 100%),
      linear-gradient(135deg, #16295B 0%, #22406F 52%, #2C4A86 100%) !important}
  .contact-ov{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNjAwIiBoZWlnaHQ9IjYyMCIgdmlld0JveD0iMCAwIDE2MDAgNjIwIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIwIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMC4yMCIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAuMTEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMC4wNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxnIHN0cm9rZT0idXJsKCNnKSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTIwIDE1MEwyODUgOTJNMTIwIDE1MEwyNTAgMzAwTTEyMCAxNTBMNjAgNDIwTTI4NSA5MkwyNTAgMzAwTTI4NSA5Mkw0MzAgMjA1TTI1MCAzMDBMNDMwIDIwNU0yNTAgMzAwTDM5NSA0MzBNMjUwIDMwMEw2MCA0MjBNNDMwIDIwNUw1ODUgMTE4TTQzMCAyMDVMNjAwIDMzME0zOTUgNDMwTDE3NSA1NDVNMzk1IDQzMEwzNTAgNTYwTTM5NSA0MzBMNTIwIDU0NU01ODUgMTE4TDYwMCAzMzBNNTg1IDExOEw3NjAgMjQwTTYwMCAzMzBMNzYwIDI0ME02MDAgMzMwTDczNSA0NzBNNzYwIDI0MEw5MDUgMTUwTTczNSA0NzBMNjkwIDU4NU03MzUgNDcwTDg2MCA1NTVNOTA1IDE1MEw5NDAgMzgwTTkwNSAxNTBMMTA4NSAyNzVNOTQwIDM4MEwxMDg1IDI3NU05NDAgMzgwTDExMjAgNTA1TTk0MCAzODBMODYwIDU1NU0xMDg1IDI3NUwxMjU1IDE2NU0xMTIwIDUwNUwxMzAwIDM5NU0xMTIwIDUwNUwxMDMwIDU4NU0xMTIwIDUwNUwxMTk1IDU2ME0xMjU1IDE2NUwxNDQwIDI2ME0xMjU1IDE2NUwxNDY1IDkwTTEzMDAgMzk1TDE0NDAgMjYwTTEzMDAgMzk1TDE0NjUgOTBNMTMwMCAzOTVMMTUyMCA0NzBNMTMwMCAzOTVMMTE5NSA1NjBNMTMwMCAzOTVMMTM4NSA1NzVNMTQ0MCAyNjBMMTQ2NSA5ME0xNDQwIDI2MEwxNTIwIDQ3ME0xNTIwIDQ3MEwxMzg1IDU3NU02MCA0MjBMMTc1IDU0NU0xNzUgNTQ1TDM1MCA1NjBNMzUwIDU2MEw1MjAgNTQ1TTUyMCA1NDVMNjkwIDU4NU02OTAgNTg1TDg2MCA1NTVNODYwIDU1NUwxMDMwIDU4NU0xMDMwIDU4NUwxMTk1IDU2ME0xMTk1IDU2MEwxMzg1IDU3NSIvPjwvZz48Y2lyY2xlIGN4PSIxMjAiIGN5PSIxNTAiIHI9IjMuNCIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjI2Ii8+PGNpcmNsZSBjeD0iMTIwIiBjeT0iMTUwIiByPSIxMy4wIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMDUiLz48Y2lyY2xlIGN4PSIyODUiIGN5PSI5MiIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIyNTAiIGN5PSIzMDAiIHI9IjIuMyIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iNDMwIiBjeT0iMjA1IiByPSIzLjQiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4yNiIvPjxjaXJjbGUgY3g9IjM5NSIgY3k9IjQzMCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIzOTUiIGN5PSI0MzAiIHI9IjEzLjAiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxjaXJjbGUgY3g9IjU4NSIgY3k9IjExOCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSI2MDAiIGN5PSIzMzAiIHI9IjMuNCIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjI2Ii8+PGNpcmNsZSBjeD0iNzYwIiBjeT0iMjQwIiByPSIyLjMiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4xNiIvPjxjaXJjbGUgY3g9IjczNSIgY3k9IjQ3MCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSI3MzUiIGN5PSI0NzAiIHI9IjEzLjAiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxjaXJjbGUgY3g9IjkwNSIgY3k9IjE1MCIgcj0iMy40IiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMjYiLz48Y2lyY2xlIGN4PSI5NDAiIGN5PSIzODAiIHI9IjIuMyIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iMTA4NSIgY3k9IjI3NSIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIxMTIwIiBjeT0iNTA1IiByPSIzLjQiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4yNiIvPjxjaXJjbGUgY3g9IjExMjAiIGN5PSI1MDUiIHI9IjEzLjAiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxjaXJjbGUgY3g9IjEyNTUiIGN5PSIxNjUiIHI9IjIuMyIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iMTMwMCIgY3k9IjM5NSIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIxNDQwIiBjeT0iMjYwIiByPSIzLjQiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4yNiIvPjxjaXJjbGUgY3g9IjE0NjUiIGN5PSI5MCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIxNDY1IiBjeT0iOTAiIHI9IjEzLjAiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxjaXJjbGUgY3g9IjE1MjAiIGN5PSI0NzAiIHI9IjIuMyIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iNjAiIGN5PSI0MjAiIHI9IjMuNCIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjI2Ii8+PGNpcmNsZSBjeD0iMTc1IiBjeT0iNTQ1IiByPSIyLjMiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4xNiIvPjxjaXJjbGUgY3g9IjM1MCIgY3k9IjU2MCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIzNTAiIGN5PSI1NjAiIHI9IjEzLjAiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxjaXJjbGUgY3g9IjUyMCIgY3k9IjU0NSIgcj0iMy40IiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMjYiLz48Y2lyY2xlIGN4PSI2OTAiIGN5PSI1ODUiIHI9IjIuMyIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iODYwIiBjeT0iNTU1IiByPSIyLjMiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4xNiIvPjxjaXJjbGUgY3g9IjEwMzAiIGN5PSI1ODUiIHI9IjMuNCIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjI2Ii8+PGNpcmNsZSBjeD0iMTAzMCIgY3k9IjU4NSIgcj0iMTMuMCIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjA1Ii8+PGNpcmNsZSBjeD0iMTE5NSIgY3k9IjU2MCIgcj0iMi4zIiBmaWxsPSIjZmZmZmZmIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSIxMzg1IiBjeT0iNTc1IiByPSIyLjMiIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4xNiIvPjwvc3ZnPg==") !important;
              background-repeat:no-repeat !important;
              background-size:cover !important;
              background-position:center !important}
  @media (prefers-color-scheme:dark){
    .contact-dark{background:#16295B}
    .contact-bg{background:
        linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(0,0,0,.08) 100%),
        linear-gradient(135deg, #101B3A 0%, #1A3058 52%, #22406F 100%) !important}
    .contact-ov{opacity:.7}
  }
  :root[data-theme="dark"] .contact-bg{background:
      linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(0,0,0,.08) 100%),
      linear-gradient(135deg, #101B3A 0%, #1A3058 52%, #22406F 100%) !important}
  :root[data-theme="light"] .contact-bg{background:
      linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(0,0,0,.07) 100%),
      linear-gradient(135deg, #16295B 0%, #22406F 52%, #2C4A86 100%) !important}

  /* Banda de contact e mai strânsa pe inaltime decat celelalte: e o secțiune scurta, de
     serviciu, nu una principala. Se reduc DOAR marginile verticale — textul si casetele
     rămân la dimensiunea lor (cerinta explicita a lui Dorin). */
  .contact-dark.band{padding:56px 0 48px}
  @media (max-width:900px){ .contact-dark.band{padding:44px 0 38px} }
  .contact-dark .sec-head{margin-bottom:28px}
  .contact-alt{margin-top:16px}


  /* ——— Slogan de marca (12.08.2026) ——— */
  /* Subsol: se lipeste de sigla, ca sa se citeasca drept lockup, nu drept text separat. */
  footer.site .brand{margin-bottom:10px}
  .brand-tagline{font:600 11.5px/1.45 var(--font-sans); letter-spacing:.185em;
    text-transform:uppercase; color:var(--steel); margin:0 0 15px; padding-left:2px}
  @media (max-width:520px){ .brand-tagline{font-size:11px; letter-spacing:.12em} }

  /* „Despre GVP": semnatura de inchidere pe banda navy. */
  .despre-slogan{max-width:820px; margin:38px 0 0; padding-top:26px;
    border-top:1px solid rgba(255,255,255,.18)}
  .despre-slogan p{font-family:var(--font-serif);
    font-size:clamp(1.45rem,3.4vw,2.1rem); line-height:1.28; color:#fff;
    letter-spacing:.005em; margin:0}
