/* Strona Kontakt */
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
:root { --navy-deep:#0d1533; --navy-mid:#1c2d6b; --gold:#d4af37; --gold-light:#f0d060; --gold-pale:#f7e9a0; --gold-dark:#a07820; --white:#fff; --cream:#fdf6e3; --muted:#b0bec5; --serif:'Playfair Display',serif; --sans:'Montserrat',sans-serif; --cormorant:'Cormorant Garamond',serif; }
html { scroll-behavior:smooth; }
body { background:radial-gradient(ellipse 90% 45% at 50% 0%,rgba(29,52,120,.65) 0%,var(--navy-deep) 70%) no-repeat, var(--navy-deep); color:var(--cream); font:400 1rem/1.7 var(--sans); min-height:100vh; }
.sprite { position:absolute; }
.ic { width:1em; height:1em; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; vertical-align:-.125em; }
a:focus-visible, button:focus-visible { outline:2px solid var(--gold-light); outline-offset:3px; border-radius:6px; }
.k-wrap { max-width:900px; margin:0 auto; padding:40px 20px 56px; }
.k-head { text-align:center; margin-bottom:32px; }
.k-label { font-size:.75rem; font-weight:600; letter-spacing:.3em; color:var(--gold); text-transform:uppercase; margin-bottom:14px; }
h1 { font:700 clamp(1.75rem,6vw,2.75rem)/1.2 var(--serif); color:var(--white); text-wrap:balance; }
h1 span { color:var(--gold); }
.k-lead { font:italic 400 1.1875rem/1.5 var(--cormorant); color:var(--gold-pale); margin-top:14px; max-width:560px; margin-inline:auto; }
.k-cards { list-style:none; display:grid; grid-template-columns:1fr; gap:12px; margin-bottom:28px; }
.k-card { display:flex; flex-direction:column; align-items:center; text-align:center; gap:4px; height:100%; padding:22px 16px; border-radius:18px; border:1px solid rgba(212,175,55,.2); background:rgba(21,32,80,.55); color:inherit; text-decoration:none; transition:border-color .3s, background .3s; }
a.k-card:hover { border-color:var(--gold); background:rgba(21,32,80,.85); }
.k-card-icon { font-size:1.5rem; color:var(--gold); margin-bottom:6px; }
.k-card-label { font-size:.75rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); }
.k-card-value { font:700 1.25rem/1.3 var(--serif); color:var(--white); }
.k-card-value.k-small { font-size:1rem; word-break:break-word; }
.k-card-note { font-size:.875rem; color:var(--muted); line-height:1.5; }
.k-h2 { font:700 1.5rem/1.3 var(--serif); color:var(--gold-pale); margin-bottom:18px; text-align:center; }
.k-steps { margin-top:40px; }
.k-steps ol { list-style:none; display:grid; grid-template-columns:1fr; gap:12px; }
.k-steps li { display:flex; gap:14px; align-items:flex-start; padding:18px; border-radius:16px; background:rgba(21,32,80,.45); border:1px solid rgba(212,175,55,.15); }
.k-num { flex-shrink:0; width:32px; height:32px; border-radius:50%; border:2px solid var(--gold); color:var(--gold-light); display:flex; align-items:center; justify-content:center; font-size:.875rem; font-weight:700; }
.k-steps strong { display:block; color:var(--gold); font-size:.875rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:4px; }
.k-steps span:not(.k-num) { font-size:.9375rem; color:var(--cream); line-height:1.55; }
.k-links { margin-top:32px; display:flex; flex-direction:column; }
.k-links a { display:flex; align-items:center; gap:12px; min-height:52px; padding:10px 4px; border-top:1px solid rgba(212,175,55,.15); color:var(--cream); text-decoration:none; }
.k-links a:last-child { border-bottom:1px solid rgba(212,175,55,.15); }
.k-links a span { flex:1; }
.k-links a:hover { color:var(--gold-light); }
.k-links .ic { color:var(--gold); }
.k-foot { text-align:center; padding:8px 20px 48px; font-size:.875rem; color:var(--muted); }
.k-foot .tagline { font:italic 400 1.25rem/1.4 var(--cormorant); color:var(--gold-pale); margin-bottom:8px; }
.btn-secondary { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:52px; padding:14px 32px; border-radius:50px; border:1px solid var(--gold); background:rgba(212,175,55,.06); color:var(--gold-light); font:700 .875rem/1 var(--sans); letter-spacing:.06em; text-transform:uppercase; cursor:pointer; touch-action:manipulation; }
.btn-secondary:hover { background:rgba(212,175,55,.16); }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@media (min-width:900px) {
  .k-wrap { padding-top:56px; }
  .k-cards { grid-template-columns:repeat(3,1fr); gap:20px; }
  .k-steps ol { grid-template-columns:repeat(3,1fr); gap:20px; }
  .k-steps li { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
