:root{
    --bg:#141009;
    --bg-2:#1b150c;
    --surface:#221a0f;
    --surface-2:#2b2113;
    --steel:#c9cbc7;
    --steel-dim:#8d908a;
    --brass:#d9a441;
    --brass-bright:#f2c76a;
    --cream:#f1e7d3;
    --green:#78c48d;
    --red:#c8735f;
    --text:#e9e0cd;
    --text-dim:#9d9484;
    --text-faint:#6d6555;
    --line:rgba(217,164,65,.16);
    --line-strong:rgba(217,164,65,.32);
    --radius:14px;
    --maxw:1180px;
    --space-section:clamp(64px,9vw,110px);
    --space-block:clamp(40px,6vw,68px);
    --space-element:clamp(20px,3vw,32px);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:'Archivo',system-ui,sans-serif;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{background:var(--brass);color:#1a1206}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}

  /* ---------- type ---------- */
  .eyebrow{
    font-size:.72rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;
    color:var(--brass);display:inline-flex;align-items:center;gap:.7em;
  }
  .eyebrow::before{content:"";width:22px;height:1px;background:var(--brass);opacity:.6}
  h1,h2,h3{line-height:1.08;letter-spacing:-.01em;font-weight:800}
  .serif{font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:0}

  /* ---------- header ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(20,16,9,.72);backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);
  }
  .nav{display:flex;align-items:center;justify-content:space-between;height:66px}
  .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:1.18rem;letter-spacing:-.02em}
  .logo .mark{
    width:26px;height:26px;border-radius:7px;flex:none;position:relative;
    background:linear-gradient(150deg,var(--brass-bright),var(--brass) 60%,#a8791f);
    box-shadow:inset 0 1px 1px rgba(255,255,255,.4),0 2px 8px rgba(217,164,65,.25);
  }
  .logo .mark::after{
    content:"";position:absolute;inset:7px 10px;border-radius:2px;
    background:var(--bg-2);
  }
  .logo .mark::before{
    content:"";position:absolute;width:6px;height:6px;border-radius:50%;
    top:9px;left:10px;background:var(--brass-bright);z-index:2;
    box-shadow:0 0 6px var(--brass-bright);
  }
  .logo b{color:var(--brass)}
  nav.links{display:flex;gap:6px;align-items:center}
  nav.links a{
    font-size:.9rem;font-weight:500;color:var(--text-dim);
    padding:8px 14px;border-radius:8px;transition:.2s;
  }
  nav.links a:hover{color:var(--text);background:var(--surface)}
  .btn{
    font-family:inherit;font-size:.9rem;font-weight:700;cursor:pointer;
    padding:11px 20px;border-radius:9px;border:0;transition:.2s;display:inline-block;
  }
  .btn-primary{
    background:linear-gradient(160deg,var(--brass-bright),var(--brass));
    color:#1a1206;box-shadow:0 3px 14px rgba(217,164,65,.28);
  }
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(217,164,65,.4)}
  .btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line-strong)}
  .btn-ghost:hover{background:var(--surface);border-color:var(--brass)}
  .nav .btn{padding:9px 17px}
  @media(max-width:760px){nav.links{display:none}}

  /* ---------- hero ---------- */
  .hero{position:relative;padding:clamp(56px,9vw,104px) 0 clamp(40px,6vw,72px)}
  .hero::before{
    content:"";position:absolute;inset:0;z-index:-1;
    background:
      radial-gradient(70% 90% at 80% 0%,rgba(217,164,65,.10),transparent 60%),
      radial-gradient(60% 80% at 8% 20%,rgba(120,90,40,.10),transparent 55%);
  }
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
  @media(max-width:940px){.hero-grid{grid-template-columns:1fr;gap:40px}}
  .hero h1{font-size:clamp(2.5rem,6vw,4.3rem);margin:22px 0 0}
  .hero h1 .serif{color:var(--brass-bright);display:block;font-weight:600}
  .hero p.lead{font-size:clamp(1.05rem,1.6vw,1.24rem);color:var(--text-dim);max-width:33ch;margin-top:22px}
  .hero-cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}

  /* ---------- signature: interactive panel demo ---------- */
  .demo{
    background:linear-gradient(180deg,var(--surface),var(--bg-2));
    border:1px solid var(--line-strong);border-radius:20px;
    padding:20px;box-shadow:0 24px 60px -20px rgba(0,0,0,.6);
  }
  .demo-top{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 14px}
  .demo-top .tag{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);font-weight:600}
  .demo-top .hint{font-size:.78rem;color:var(--brass);font-weight:600;display:flex;align-items:center;gap:6px}
  .demo-top .hint svg{animation:tap 2.2s ease-in-out infinite}
  @keyframes tap{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
  .demo-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:420px){.demo-cols{grid-template-columns:1fr}}

  /* steel control block */
  .panel{
    border-radius:12px;padding:14px;
    background:
      linear-gradient(105deg,#e3e4e0,#b9bbb6 45%,#d2d3ce 55%,#a9aba6);
    box-shadow:inset 0 1px 2px rgba(255,255,255,.7),inset 0 -2px 6px rgba(0,0,0,.28),0 6px 16px rgba(0,0,0,.4);
  }
  .panel-label{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#5c5e58;font-weight:700;margin-bottom:10px;text-align:center}
  .switch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 4px;border-bottom:1px solid rgba(90,92,86,.22)}
  .switch-row:last-child{border-bottom:0}
  .switch-name{font-size:.8rem;font-weight:600;color:#2c2d29}
  .toggle{
    --on:0;position:relative;width:46px;height:26px;border-radius:20px;border:0;cursor:pointer;flex:none;
    background:linear-gradient(#7d7f79,#5f615b);
    box-shadow:inset 0 2px 4px rgba(0,0,0,.45);transition:.25s;
  }
  .toggle[aria-pressed="true"]{background:linear-gradient(#b56a5a,#9a5343)}
  .toggle .knob{
    position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;
    background:linear-gradient(150deg,#fafafa,#c9cbc6);
    box-shadow:0 2px 5px rgba(0,0,0,.45);transition:.25s cubic-bezier(.4,1.4,.5,1);
  }
  .toggle[aria-pressed="true"] .knob{transform:translateX(20px)}
  .switch-state{font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3f7a52;width:64px;text-align:right;flex:none}
  .toggle[aria-pressed="true"] ~ .switch-state{color:#9a3f2c}

  /* menu board mini */
  .board{
    border-radius:12px;padding:16px 16px 18px;position:relative;
    background:
      radial-gradient(120% 100% at 50% 0%,#3a2413,#1e130a 80%);
    border:1px solid rgba(217,164,65,.22);
  }
  .board-head{text-align:center;border-bottom:1px solid rgba(217,164,65,.18);padding-bottom:10px;margin-bottom:12px}
  .board-head .r{font-size:.56rem;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-weight:700}
  .board-head .t{font-family:'Fraunces',serif;font-size:1.12rem;color:var(--cream);font-weight:600;margin-top:2px}
  .dish{
    display:flex;align-items:baseline;justify-content:space-between;gap:8px;
    font-family:'Fraunces',serif;font-size:1.02rem;color:var(--cream);padding:5px 0;
    transition:.3s;position:relative;
  }
  .dish .strike{position:absolute;left:0;top:50%;height:1.5px;width:0;background:var(--brass);transition:width .35s ease;opacity:.85}
  .dish.out{color:var(--text-faint)}
  .dish.out .strike{width:100%}
  .dish .flag{
    font-family:'Archivo',sans-serif;font-size:.56rem;letter-spacing:.14em;font-weight:700;
    color:var(--brass);opacity:0;transition:.3s;text-transform:uppercase;white-space:nowrap;
  }
  .dish.out .flag{opacity:.75}

  /* ---------- doors (3 verticals) ---------- */
  .doors{padding:clamp(20px,4vw,40px) 0 clamp(56px,8vw,88px)}
  .door-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  @media(max-width:820px){.door-grid{grid-template-columns:1fr}}
  .door{
    display:block;padding:26px 24px;border-radius:var(--radius);
    background:var(--bg-2);border:1px solid var(--line);transition:.25s;position:relative;overflow:hidden;
  }
  .door:hover{border-color:var(--brass);transform:translateY(-3px);background:var(--surface)}
  .door .num{font-size:.72rem;font-weight:700;color:var(--brass);letter-spacing:.18em}
  .door h3{font-size:1.28rem;margin:14px 0 8px}
  .door p{color:var(--text-dim);font-size:.94rem}
  .door .go{margin-top:18px;font-size:.85rem;font-weight:700;color:var(--brass);display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
  .door:hover .go{gap:11px}
  .door .badge{position:absolute;top:16px;right:16px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#1a1206;background:var(--brass);padding:4px 9px;border-radius:20px}

  /* ---------- section frame ---------- */
  section.block{padding:clamp(64px,9vw,110px) 0;border-top:1px solid var(--line)}
  .sec-head{max-width:64ch}
  .sec-head h2{font-size:clamp(2rem,4.4vw,3.1rem);margin:18px 0 0}
  .sec-head p.sub{color:var(--text-dim);font-size:clamp(1.02rem,1.5vw,1.16rem);margin-top:18px;max-width:52ch}

  /* restaurant flow steps */
  .flow{margin-top:clamp(40px,6vw,68px);display:flex;flex-direction:column;gap:clamp(48px,7vw,84px)}
  .step{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(28px,5vw,56px);align-items:center}
  .step:nth-child(even){grid-template-columns:1.15fr 1fr}
  .step:nth-child(even) .step-txt{order:2}
  @media(max-width:860px){
    .step,.step:nth-child(even){grid-template-columns:1fr;gap:24px}
    .step:nth-child(even) .step-txt{order:0}
  }
  .step-num{
    font-family:'Fraunces',serif;font-size:1rem;font-weight:600;color:var(--brass);
    display:inline-flex;align-items:center;gap:12px;margin-bottom:16px;
  }
  .step-num i{
    width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);
    display:grid;place-items:center;font-style:normal;font-family:'Archivo';font-weight:800;font-size:1rem;color:var(--brass-bright);
    background:var(--surface);
  }
  .step-txt h3{font-size:clamp(1.5rem,2.6vw,2rem)}
  .step-txt p{color:var(--text-dim);margin-top:14px;font-size:1.03rem}
  .step-txt .opts{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
  .chip{
    display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;
    padding:9px 15px;border-radius:30px;background:var(--surface);border:1px solid var(--line);color:var(--text);
  }
  .chip svg{color:var(--brass)}
  .shot{
    border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-strong);
    box-shadow:0 26px 60px -24px rgba(0,0,0,.75);background:var(--bg-2);
  }
  .shot img{width:100%;height:auto;display:block}
  .shot.frame-app{max-width:340px;margin:0 auto;border-radius:18px;padding:10px;background:var(--surface)}
  .shot.frame-app img{border-radius:10px}

  /* highlight strip */
  .strip{
    margin-top:clamp(48px,7vw,80px);
    background:linear-gradient(150deg,var(--surface),var(--bg-2));
    border:1px solid var(--line-strong);border-radius:18px;
    padding:clamp(28px,4vw,44px);display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
  }
  @media(max-width:820px){.strip{grid-template-columns:1fr 1fr;gap:20px}}
  @media(max-width:460px){.strip{grid-template-columns:1fr}}
  .stat .k{font-family:'Fraunces',serif;font-size:1.9rem;color:var(--brass-bright);font-weight:600;line-height:1}
  .stat .v{color:var(--text-dim);font-size:.9rem;margin-top:8px}

  /* video */
  .video-wrap{margin-top:clamp(48px,7vw,80px)}
  .video{
    position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;
    border:1px solid var(--line-strong);
    background:
      radial-gradient(80% 120% at 50% 0%,#3a2413,#160e07),
      var(--bg-2);
    display:grid;place-items:center;cursor:pointer;
  }
  .video .play{
    width:74px;height:74px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(160deg,var(--brass-bright),var(--brass));
    box-shadow:0 8px 30px rgba(217,164,65,.4);transition:.25s;
  }
  .video:hover .play{transform:scale(1.08)}
  .video .play svg{margin-left:4px}
  .video .vlabel{position:absolute;bottom:18px;left:20px;font-size:.82rem;color:var(--text-dim);font-weight:500}
  .video .vtag{position:absolute;top:16px;left:20px;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);font-weight:700}

  /* ---------- minimal automation sections ---------- */
  .mini{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:center}
  @media(max-width:820px){.mini{grid-template-columns:1fr;gap:28px}}
  .feat-list{list-style:none;margin-top:26px;display:flex;flex-direction:column;gap:2px}
  .feat-list li{display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--line)}
  .feat-list li:last-child{border-bottom:0}
  .feat-list .ic{
    width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;
    background:var(--surface);border:1px solid var(--line);color:var(--brass)
  }
  .feat-list b{font-weight:600;color:var(--text);display:block;font-size:.98rem}
  .feat-list span{color:var(--text-dim);font-size:.88rem}
  .soon{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);border:1px dashed var(--line-strong);padding:5px 12px;border-radius:20px;display:inline-block;margin-top:22px}
  .mini-visual{
    border-radius:18px;aspect-ratio:4/3;border:1px solid var(--line-strong);position:relative;overflow:hidden;
    background:radial-gradient(90% 100% at 30% 20%,rgba(217,164,65,.12),transparent 60%),var(--bg-2);
    display:grid;place-items:center;
  }
  .mini-visual .glyph{color:var(--brass);opacity:.85}
  .cross-note{
    margin-top:clamp(40px,6vw,64px);background:var(--surface);border:1px solid var(--line-strong);
    border-left:3px solid var(--brass);border-radius:12px;padding:22px 26px;
    display:flex;gap:18px;align-items:center;flex-wrap:wrap;
  }
  .cross-note .txt{flex:1;min-width:240px}
  .cross-note b{color:var(--brass-bright)}
  .cross-note p{color:var(--text-dim);font-size:.96rem;margin-top:4px}

  /* ---------- contact ---------- */
  .contact-inner{
    background:linear-gradient(150deg,var(--surface),var(--bg-2));
    border:1px solid var(--line-strong);border-radius:22px;
    padding:clamp(40px,6vw,72px);text-align:center;position:relative;overflow:hidden;
  }
  .contact-inner::before{
    content:"";position:absolute;inset:0;z-index:0;
    background:radial-gradient(60% 100% at 50% 0%,rgba(217,164,65,.14),transparent 65%);
  }
  .contact-inner>*{position:relative;z-index:1}
  .contact-inner h2{font-size:clamp(2rem,4vw,2.9rem);margin:16px 0 0}
  .contact-inner p{color:var(--text-dim);max-width:46ch;margin:18px auto 0;font-size:1.06rem}
  .contact-actions{display:flex;gap:14px;justify-content:center;margin-top:32px;flex-wrap:wrap}

  /* ---------- footer ---------- */
  footer{border-top:1px solid var(--line);padding:44px 0 40px;margin-top:20px}
  .foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
  .foot .fnote{color:var(--text-faint);font-size:.85rem}
  .foot .fnav{display:flex;gap:20px}
  .foot .fnav a{color:var(--text-dim);font-size:.88rem;transition:.2s}
  .foot .fnav a:hover{color:var(--brass)}

  .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important}
    .reveal{opacity:1;transform:none}
    html{scroll-behavior:auto}
  }
  :focus-visible{outline:2px solid var(--brass-bright);outline-offset:3px;border-radius:4px}

/* ---------- interior page hero ---------- */
.page-hero{position:relative;padding:clamp(56px,8vw,96px) 0 clamp(24px,4vw,40px)}
.page-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(70% 90% at 78% 0%,rgba(217,164,65,.10),transparent 60%);
}
.page-hero h1{font-size:clamp(2.3rem,5.2vw,3.7rem);margin:18px 0 0;max-width:18ch}
.page-hero h1 .serif{color:var(--brass-bright);font-weight:600}
.page-hero p.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--text-dim);max-width:54ch;margin-top:20px}
.page-hero .hero-cta{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}

/* active nav */
nav.links a.active{color:var(--brass);background:var(--surface)}

/* section without top border when it opens a page */
section.block.first{border-top:0;padding-top:clamp(32px,5vw,56px)}

/* back-home crumb */
.crumb{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;color:var(--text-dim);transition:.2s}
.crumb:hover{color:var(--brass)}

/* homepage section headings */
.mini-h{font-size:clamp(2rem,4.2vw,2.9rem);margin-top:18px}
.mini .sub{color:var(--text-dim);font-size:clamp(1rem,1.5vw,1.13rem);margin-top:18px;max-width:52ch}

/* ---------- cookie consent (GDPR) ---------- */
.cookie-consent{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:200;
  max-width:640px;margin:0 auto;
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  background:rgba(27,21,12,.96);backdrop-filter:blur(14px);
  border:1px solid var(--line-strong);border-radius:16px;
  padding:16px 18px;
  box-shadow:0 18px 50px rgba(0,0,0,.5);
  opacity:0;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease;
}
.cookie-consent.show{opacity:1;transform:none}
.cookie-consent p{flex:1;min-width:220px;color:var(--text-dim);font-size:.88rem;line-height:1.55;margin:0}
.cookie-consent .cc-actions{display:flex;gap:10px;flex:none}
.cookie-consent .btn{padding:9px 18px;font-size:.9rem}
@media(max-width:480px){
  .cookie-consent .cc-actions{width:100%}
  .cookie-consent .cc-actions .btn{flex:1;text-align:center}
}

/* ---------- hamburger button ---------- */
.hamburger{
  display:none;border:0;background:0;cursor:pointer;padding:6px;
  flex-direction:column;gap:5px;z-index:60;
}
.hamburger span{
  display:block;width:22px;height:2px;background:var(--text);border-radius:2px;
  transition:transform .3s ease,opacity .3s ease;
}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:760px){
  .hamburger{display:flex}
  .nav-cta{display:none}
}

/* ---------- mobile menu overlay ---------- */
.mobile-menu{
  position:fixed;inset:0;z-index:55;
  background:rgba(20,16,9,.97);backdrop-filter:blur(16px);
  display:flex;align-items:center;justify-content:center;
  opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;
}
.mobile-menu.open{opacity:1;visibility:visible}
.mobile-menu nav{display:flex;flex-direction:column;gap:8px;text-align:center;min-width:260px}
.mobile-menu nav a{
  font-size:1.3rem;font-weight:600;color:var(--text-dim);
  padding:14px 20px;border-radius:10px;transition:.2s;
}
.mobile-menu nav a:hover,.mobile-menu nav a.active{color:var(--brass);background:var(--surface)}

/* ---------- scroll-to-top ---------- */
.scroll-top{
  position:fixed;bottom:24px;right:24px;z-index:100;
  width:46px;height:46px;border-radius:50%;border:1px solid var(--line-strong);
  background:rgba(27,21,12,.92);backdrop-filter:blur(10px);
  cursor:pointer;display:grid;place-items:center;
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:opacity .3s ease,visibility .3s ease,transform .3s ease,background .2s;
}
.scroll-top.visible{opacity:1;visibility:visible;transform:none}
.scroll-top:hover{background:var(--surface);border-color:var(--brass)}
.scroll-top svg{color:var(--brass)}

/* ---------- print stylesheet ---------- */
@media print{
  body{background:#fff;color:#222}
  header,.hamburger,.mobile-menu,.cookie-consent,.scroll-top,.hero-cta,.contact-actions,.btn{display:none!important}
  .reveal{opacity:1!important;transform:none!important}
  a{color:#222}
  .eyebrow,.brass,.brass-bright{color:#996b1d}
  section.block{border-top:1px solid #ddd;page-break-inside:avoid}
  .contact-inner{border:1px solid #ddd;background:#f9f7f3}
  img{max-width:100%;page-break-inside:avoid}
  footer{border-top:1px solid #ddd}
}

/* ---------- page transitions ---------- */
/* Tranziții între pagini — fail-safe.
   Pagina e VIZIBILĂ implicit. Efectul de fade se activează doar dacă JS rulează
   (clasa .js-fade e adăugată din script.js). Astfel, dacă JS e blocat sau
   eșuează, site-ul rămâne perfect vizibil în loc să fie o pagină albă. */
body.js-fade { opacity: 0; transition: opacity 0.4s ease; }
body.js-fade.loaded { opacity: 1; }
body.js-fade.exiting { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
  body.js-fade, body.js-fade.loaded, body.js-fade.exiting { opacity: 1; transition: none; }
}

/* ---------- contact form ---------- */
.c-form { display: flex; flex-direction: column; gap: 14px; text-align: left; width: 100%; max-width: 440px; margin: 24px auto 0; }
.c-form input, .c-form select, .c-form textarea { width: 100%; padding: 12px 16px; border-radius: 8px; border: 1px solid var(--line-strong); background: var(--bg-2); color: var(--text); font-family: inherit; font-size: 1rem; transition: border .2s; }
.c-form input:focus, .c-form select:focus, .c-form textarea:focus { outline: none; border-color: var(--brass); }
.c-form textarea { min-height: 100px; resize: vertical; }
.c-form button { margin-top: 6px; width: 100%; justify-content: center; }
.form-success { display: none; margin-top: 20px; color: var(--green); font-weight: 500; font-size: 1.05rem; }
/* capcană anti-spam — invizibilă pentru vizitatori, dar prezentă pentru boți */
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-error { display: none; margin-top: 16px; color: #e5766b; font-size: .95rem; line-height: 1.5; }

/* ---------- magnetic elements ---------- */
.magnetic { display: inline-flex; transition: transform 0.2s cubic-bezier(0.1, 0.7, 0.1, 1); will-change: transform; }
.cookie-consent p a{color:var(--brass);text-decoration:underline;text-underline-offset:2px}
.cookie-consent p a:hover{color:var(--brass-2, var(--brass))}
