/* Radca prawny Agnieszka Pietrzak – wizytówka */

:root {
  --papier: #ffffff;
  --pas: #e6e1d9;
  --atrament: #1d2a2b;
  --tekst: #363f41;
  --przygaszony: #4c585a;
  --linia: #d2cabe;
  --akcent: #2b5650;

  --szeryf: "Iowan Old Style", "Palatino Linotype", Palatino, "URW Palladio L", P052, "Book Antiqua", Georgia, serif;
  --bezszeryf: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", "Noto Sans", sans-serif;

  /* passe-partout wokół zdjęcia i to, jak głęboko zdjęcie wchodzi w pas */
  --oprawa: 12px;
  --zachodzi: calc(var(--oprawa) + 150px);
  --zachodzi-waski: calc(var(--oprawa) + 132px);

  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--papier);
  color: var(--tekst);
  font: 400 1.0625rem/1.7 var(--bezszeryf);
  font-kerning: normal;
  text-rendering: optimizeLegibility;
}

::selection { background: #dcd3c5; color: var(--atrament); }

img { display: block; max-width: 100%; height: auto; }

/* Pas u góry: imię i nazwisko, a pod nimi wchodzi w niego portret */

.pas {
  background: var(--pas);
  padding: 2.75rem 1rem calc(2.5rem + var(--zachodzi-waski));
  text-align: center;
}

h1 {
  margin: 0;
  font-weight: 400;
}

.zawod {
  display: block;
  margin-bottom: .35rem;
  font: 400 clamp(1.375rem, 1.1rem + 1vw, 1.75rem)/1.25 var(--bezszeryf);
  letter-spacing: .01em;
  color: var(--przygaszony);
}

.nazwisko {
  display: block;
  font-family: var(--szeryf);
  font-size: clamp(2.25rem, 1.5rem + 3.2vw, 3.5rem);
  line-height: 1.1;
  color: var(--atrament);
  text-wrap: balance;
}

.wizytowka {
  margin: calc(-1 * var(--zachodzi-waski)) auto 0;
  max-width: 34rem;
  padding: 0 1rem 3.5rem;
}

/* Portret w białym passe-partout */

.portret {
  margin: 0 auto 2.25rem;
  width: max-content;
  max-width: 100%;
  padding: var(--oprawa);
  background: var(--papier);
  border: 1px solid var(--linia);
}

/* Biogram */

.opis p {
  margin: 0 0 1em;
  hyphens: manual;
}

.opis p:last-child { margin-bottom: 0; }

/* daty w postaci 06-2004 nie łamią się na łączniku */
.data { white-space: nowrap; }

.kontakt {
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--linia);
}

.kontakt p { margin: 0; }

.kontakt-tytul {
  font-family: var(--szeryf);
  font-size: 1.15rem;
  color: var(--atrament);
}

/* Szeroki ekran: portret po lewej, tekst po prawej, zaczyna się pod pasem */

@media (min-width: 56rem) {
  .pas {
    padding: 4.5rem 2rem calc(2.75rem + var(--zachodzi));
  }

  .wizytowka {
    margin-top: calc(-1 * var(--zachodzi));
    max-width: none;
    padding: 0 2rem 5rem;
    display: grid;
    grid-template-columns: auto minmax(0, 38rem);
    justify-content: center;
    column-gap: 4rem;
    align-items: start;
  }

  .portret { margin: 0; }

  .opis { padding-top: calc(var(--zachodzi) + 2.5rem); }
}

@media print {
  .pas { background: none; padding-bottom: 1rem; }
  .wizytowka { margin-top: 0; }
  .opis { padding-top: 0; }
}

/* Odsyłacze i strona błędu 404 */

a { color: var(--akcent); text-underline-offset: .2em; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 2px solid var(--akcent); outline-offset: 3px; }

.pas.pas--blad { padding: 3rem 1rem; }
.pas--blad p { margin: 0; }

.pas--blad a { color: inherit; text-decoration: none; display: inline-block; }

.blad {
  max-width: 34rem;
  margin: 0 auto;
  padding: 3.5rem 1rem 5rem;
  text-align: center;
}

.blad h1 {
  margin: 0 0 1rem;
  font: 400 2rem/1.2 var(--szeryf);
  color: var(--atrament);
}
