  /* ---------- Design tokens ----------
     A warm palette: a deep teal field lit warmly by sand — edit these
     like a name handed across a dim room. Sand is spent only on the things
     you actually tap. Everything else stays quiet. */
  .contact-card{
    --ink:        #0C0F10;   /* waldek.eu --bg-3 */
    --teal:       #14181A;   /* waldek.eu --bg */
    --teal-2:     #1C2226;   /* waldek.eu --bg-2 */
    --line:       rgba(95, 190, 138, 0.22);
    --line-soft:  rgba(236, 239, 236, 0.10);
    --sand:       #5FBE8A;   /* waldek.eu green (--route) */
    --sand-deep:  #4AA474;
    --cream:      #ECEFEC;   /* waldek.eu --ink */
    --cream-dim:  #97A39B;   /* waldek.eu --ink-soft */
    --r:          16px;

    --serif: Georgia, "Times New Roman", "Iowan Old Style", serif;
    --sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  }
  .contact-card{
    font-family:var(--sans);
    color:var(--cream);
    background:transparent; /* zlewa się z tłem strony zamiast tworzyć własny prostokąt */
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    display:flex;
    justify-content:center;
  }

  .contact-card *{ box-sizing:border-box; }
  .contact-card .monogram[hidden]{ display:none; }

  .contact-card .card{
    width:100%;
    max-width:420px;
    align-self:center;
    position:relative;
    padding:38px 26px 26px;
    border-radius:24px;
    /* engraved business-card edge */
    background:
      linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0) 40%);
    border:1px solid var(--line);
    box-shadow:
      0 1px 0 rgba(255,255,255,0.05) inset,
      0 30px 70px -30px rgba(0,0,0,0.6);
    overflow:hidden;
  }
  /* warm spotlight behind the name — the one bold move */
  .contact-card .card::before{
    content:"";
    position:absolute; inset:0;
    background:radial-gradient(60% 38% at 50% 14%, rgba(95,190,138,0.15), transparent 70%);
    pointer-events:none;
    transform-origin:50% 15%;
    will-change:transform, opacity;
  }
  @keyframes ccGlow{
    from { transform:scale(1);    opacity:.80; }
    to   { transform:scale(1.10); opacity:1; }
  }

  /* ---------- Header ---------- */
  .contact-card .eyebrow{
    position:relative;
    text-align:center;
    font-size:11px;
    letter-spacing:0.32em;
    text-transform:uppercase;
    color:var(--sand);
    opacity:0.85;
    margin:0 0 18px;
  }
  /* ---------- Moving portrait (optional) ---------- */
  .contact-card .portrait{
    position:relative;
    margin:-38px -26px -34px;         /* full-bleed; name sits on the fade */
    aspect-ratio:4 / 5;
    overflow:hidden;
    background:transparent;
    -webkit-mask-image:linear-gradient(180deg,#000 62%,transparent 100%);
            mask-image:linear-gradient(180deg,#000 62%,transparent 100%);
  }
  .contact-card .portrait[hidden]{ display:none; }
  .contact-card .portrait img, .contact-card .portrait video{
    width:100%; height:100%; object-fit:cover; display:block;
  }
  .contact-card .portrait::after{                    /* seat the image into the card */
    content:""; position:absolute; left:0; right:0; bottom:0; height:40%;
    height:55%;
    background:linear-gradient(180deg, transparent 0%, rgba(12,15,16,0.55) 55%, var(--ink) 100%);
    pointer-events:none;
  }



  .contact-card .monogram{
    position:relative;
    width:60px; height:60px;
    margin:0 auto 18px;
    border-radius:50%;
    display:grid; place-items:center;
    border:1px solid var(--line);
    background:radial-gradient(120% 120% at 30% 20%, rgba(95,190,138,0.14), rgba(95,190,138,0.02));
    font-family:var(--serif);
    font-size:24px;
    color:var(--sand);
    letter-spacing:0.02em;
  }
  .contact-card h2{
    position:relative;
    font-family:var(--serif);
    font-weight:400;
    font-size:36px;
    line-height:1.06;
    text-align:center;
    margin:0 0 26px;
    z-index:3;
    text-shadow:0 2px 18px rgba(0,0,0,0.7);
    letter-spacing:-0.01em;
  }
  .contact-card .role{
    position:relative;
    text-align:center;
    font-size:13.5px;
    line-height:1.5;
    color:var(--cream-dim);
    margin:0 auto 24px;
    max-width:30ch;
  }
  .contact-card .role b{ color:var(--cream); font-weight:600; }

  .contact-card .cred{
    position:relative;
    display:flex; justify-content:center;
    margin:-12px auto 22px;
  }
  .contact-card .cred[hidden]{ display:none; }
  .contact-card .cred span{
    display:inline-flex; align-items:center; gap:9px;
    font-size:10.5px; letter-spacing:0.2em; text-transform:uppercase;
    color:var(--sand);
    padding:7px 15px;
    border:1px solid var(--line);
    border-radius:999px;
    background:rgba(95,190,138,0.05);
  }
  .contact-card .cred span::before{
    content:""; width:5px; height:5px; border-radius:50%;
    background:var(--sand);
    box-shadow:0 0 9px rgba(95,190,138,0.85);
  }

  /* ---------- Primary action ---------- */
  .contact-card .save{
    position:relative;
    width:100%;
    border:0;
    cursor:pointer;
    font-family:var(--sans);
    font-size:15px;
    font-weight:650;
    letter-spacing:0.01em;
    color:#0C0F10;
    background:linear-gradient(180deg, var(--sand), var(--sand-deep));
    padding:16px 18px;
    border-radius:var(--r);
    display:flex; align-items:center; justify-content:center; gap:10px;
    box-shadow:0 14px 30px -14px rgba(95,190,138,0.55);
    transition:transform .12s ease, box-shadow .2s ease, filter .2s ease;
  }
  .contact-card .save:hover{ filter:brightness(1.03); }
  .contact-card .save:active{ transform:translateY(1px) scale(0.995); }
  .contact-card .save svg{ width:18px; height:18px; }

  /* ---------- Share / QR row ---------- */
  .contact-card .actions{
    position:relative;
    display:grid; grid-template-columns:1fr 1fr; gap:8px;
    margin-top:8px;
  }
  .contact-card .actions[hidden]{ display:none; }
  .contact-card .actions button{
    display:flex; align-items:center; justify-content:center; gap:8px;
    padding:13px 10px;
    border-radius:13px;
    border:1px solid var(--line);
    background:var(--teal-2);
    color:var(--cream);
    font-family:var(--sans); font-size:13px; font-weight:600; letter-spacing:0.01em;
    cursor:pointer;
    transition:background .18s ease, border-color .18s ease, transform .12s ease;
  }
  .contact-card .actions button:active{ transform:translateY(1px); }
  .contact-card .actions button:hover{ background:rgba(95,190,138,0.07); }
  .contact-card .actions svg{ width:17px; height:17px; color:var(--sand); }

  /* ---------- QR overlay ---------- */
  .contact-card #ccQrModal{
    position:fixed; inset:0; z-index:60;
    display:none; align-items:center; justify-content:center;
    padding:24px;
    background:rgba(12,15,16,0.8);
    -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
  }
  .contact-card #ccQrModal.show{ display:flex; }
  .contact-card #ccQrModal .sheet{
    background:var(--cream); border-radius:22px;
    padding:22px 22px 18px; max-width:320px; width:100%;
    text-align:center; box-shadow:0 30px 70px -20px rgba(0,0,0,0.7);
  }
  .contact-card #ccQrModal .sheet h3{
    margin:0 0 4px; font-family:var(--serif); font-weight:400;
    font-size:20px; color:#14181A;
  }
  .contact-card #ccQrModal .sheet p{ margin:0 0 14px; font-size:12px; color:#5b6660; word-break:break-all; }
  .contact-card #ccQrModal .qrbox svg{ width:100%; height:auto; display:block; border-radius:10px; }
  .contact-card #ccQrModal .close{
    margin-top:14px; width:100%; border:0; border-radius:12px; cursor:pointer;
    padding:11px; font-family:var(--sans); font-size:13px; font-weight:650;
    color:var(--cream); background:#14181A;
  }

  /* ---------- Quick row ---------- */
  .contact-card .quick{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:8px;
    margin-top:8px;
  }
  .contact-card .quick a{
    min-width:0;
    display:flex; flex-direction:column; align-items:center; gap:6px;
    padding:13px 6px;
    border-radius:13px;
    border:1px solid var(--line);
    background:rgba(255,255,255,0.025);
    color:var(--cream);
    text-decoration:none;
    font-size:11.5px;
    letter-spacing:0.02em;
    transition:background .18s ease, border-color .18s ease, transform .12s ease;
  }
  .contact-card .quick a:active{ transform:translateY(1px); }
  .contact-card .quick a:hover{ background:rgba(95,190,138,0.07); border-color:var(--line); }
  .contact-card .ic-gg{ display:block; flex:none; width:19px; height:19px; background:currentColor; color:var(--sand); -webkit-mask:url(data:image/png;base64,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) center/contain no-repeat; mask:url(data:image/png;base64,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) center/contain no-repeat; }
  .contact-card .quick svg{ width:19px; height:19px; color:var(--sand); }

  /* ---------- Divider ---------- */
  .contact-card .sep{
    position:relative;
    display:flex; align-items:center; gap:12px;
    margin:24px 2px 14px;
    color:var(--sand);
    font-size:10.5px; letter-spacing:0.26em; text-transform:uppercase; opacity:0.7;
  }
  .contact-card .sep::before, .contact-card .sep::after{
    content:""; height:1px; flex:1; background:var(--line-soft);
  }

  /* ---------- Socials ---------- */
  .contact-card .socials{
    position:relative;
    display:flex; flex-direction:column; gap:8px;
  }
  .contact-card .social{
    display:flex; align-items:center; gap:14px;
    padding:13px 15px;
    border-radius:13px;
    border:1px solid var(--line-soft);
    background:rgba(255,255,255,0.02);
    color:var(--cream);
    text-decoration:none;
    transition:background .18s ease, border-color .18s ease, transform .12s ease;
  }
  .contact-card .social:active{ transform:translateY(1px); }
  .contact-card .social:hover{ background:rgba(95,190,138,0.06); border-color:var(--line); }
  .contact-card .social .ic{ width:22px; height:22px; flex:none; color:var(--sand); display:grid; place-items:center; }
  .contact-card .social .ic svg{ width:20px; height:20px; }
  .contact-card .social .tx{ display:flex; flex-direction:column; line-height:1.25; }
  .contact-card .social .tx .name{ font-size:14px; font-weight:600; }
  .contact-card .social .tx .sub{ font-size:12px; color:var(--cream-dim); }
  .contact-card .social .go{ margin-left:auto; color:var(--sand); opacity:0.55; }
  .contact-card .social .go svg{ width:16px; height:16px; }

  /* ---------- Footer ---------- */
  .contact-card footer{
    position:relative;
    margin-top:24px;
    text-align:center;
    font-size:11px;
    letter-spacing:0.04em;
    color:var(--cream-dim);
  }
  .contact-card footer a{ color:var(--sand); text-decoration:none; }

  /* ---------- Toast ---------- */
  .contact-card #ccToast{
    position:fixed; left:50%; bottom:24px; transform:translate(-50%, 20px);
    background:#1C2226; color:var(--cream);
    border:1px solid var(--line);
    padding:12px 16px; border-radius:12px;
    font-size:13px; max-width:88vw;
    box-shadow:0 20px 50px -20px rgba(0,0,0,0.7);
    opacity:0; pointer-events:none;
    transition:opacity .22s ease, transform .22s ease;
    z-index:50;
  }
  .contact-card #ccToast.show{ opacity:1; transform:translate(-50%, 0); }

  /* ---------- Entrance ---------- */
  @media (prefers-reduced-motion:no-preference){
    .contact-card .reveal{ opacity:0; transform:translateY(10px); animation:ccRise .6s cubic-bezier(.2,.7,.2,1) forwards; }
    .contact-card .reveal:nth-child(1){ animation-delay:.02s }
  @keyframes ccRise{ to{ opacity:1; transform:none; } }
    .contact-card .card::before{ animation:ccGlow 14s ease-in-out infinite alternate; }
  }

  .contact-card :focus-visible{ outline:2px solid var(--sand); outline-offset:3px; border-radius:8px; }
