/* Strony tekstowe ze spisem tresci i strona kontaktu */

/* Strona tekstowa */
.fr-tekstowa__head{padding-block:32px 34px;max-width:860px}
.fr-tekstowa__title{margin:0 0 14px;font-size:50px;line-height:1.06}
.fr-tekstowa__lead{margin:0 0 16px;font-size:20px;line-height:1.6;color:var(--muted)}
.fr-tekstowa__data{margin:0;padding-top:16px;border-top:1px solid var(--line);
  font-size:15px;color:var(--muted)}
.fr-tekstowa__uklad{display:grid;grid-template-columns:280px minmax(0,720px);
  gap:72px;align-items:start;padding-bottom:64px}
.fr-tekstowa__uklad--bez-spisu{grid-template-columns:minmax(0,720px)}

.fr-spis{position:sticky;top:24px;border-top:2px solid var(--ink);padding-top:20px}
.fr-spis__title{margin:0 0 16px;font-family:var(--f-body);font-size:13px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fr-spis__lista{list-style:none;margin:0;padding:0;counter-reset:spis}
.fr-spis__lista li{counter-increment:spis;margin-bottom:12px;font-size:16px;line-height:1.45}
.fr-spis__lista li::before{content:counter(spis) ". ";color:var(--muted)}
.fr-spis__lista a{text-decoration:none;color:var(--muted)}
.fr-spis__lista a:hover{color:var(--ink)}
.fr-proza h2{scroll-margin-top:24px}

/* Kontakt */
.fr-kontakt__head{padding-block:32px 30px;max-width:820px}
.fr-kontakt__title{margin:0 0 14px;font-size:50px;line-height:1.06}
.fr-kontakt__lead{margin:0;font-size:20px;line-height:1.6;color:var(--muted)}
.fr-kontakt__drogi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;padding-bottom:52px}
.fr-droga{border-top:2px solid var(--ink);padding-top:18px}
.fr-droga--wyroznione{background:var(--tint);border-top:2px solid var(--ink);padding:18px 22px 22px}
.fr-droga__title{margin:0 0 8px;font-family:var(--f-body);font-size:13px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fr-droga__dana{margin:0 0 10px;font-family:var(--f-display);font-size:24px;line-height:1.2}
.fr-droga__dana a{text-decoration:none}
.fr-droga__opis{margin:0 0 12px;font-size:16px;line-height:1.6;color:var(--muted)}

.fr-kontakt__uklad{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:64px;align-items:start;padding-bottom:64px}
.fr-kontakt__h2{margin:0 0 12px;font-size:31px}
.fr-kontakt__wstep{margin:0 0 26px;font-size:17px;line-height:1.7;color:var(--muted)}
.fr-kontakt__tresc{padding-bottom:56px}

/* Formularz */
.fr-form__para{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fr-pole{margin:0 0 18px}
.fr-pole label{display:block;font-size:15px;font-weight:700;margin-bottom:7px}
.fr-pole__opc{font-weight:400;color:var(--muted)}
.fr-pole input[type="text"],.fr-pole input[type="email"],.fr-pole input[type="tel"],
.fr-pole select,.fr-pole textarea{width:100%;padding:14px;border:1px solid var(--line);
  background:#fff;font-family:var(--f-body);font-size:17px;color:var(--ink)}
.fr-pole input:focus-visible,.fr-pole select:focus-visible,.fr-pole textarea:focus-visible{
  outline:2px solid var(--ink);outline-offset:1px}
.fr-pole--zgoda label{display:flex;gap:10px;font-weight:400;font-size:15px;
  line-height:1.6;color:var(--muted)}
.fr-pole--zgoda input{margin-top:3px;flex-shrink:0}
.fr-form__wyslij{margin:24px 0 0}
.fr-form__uwaga{margin:14px 0 0;font-size:15px;color:var(--muted)}
/* Pulapka na roboty. Nie display:none, bo czesc robotow to wykrywa,
   ale poza ekranem i poza kolejnoscia tabulacji. */
.fr-pulapka{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.fr-komunikat{padding:18px 22px;font-size:17px;line-height:1.6;margin:0 0 24px}
.fr-komunikat--ok{background:var(--tint);border-left:3px solid var(--ink)}
.fr-komunikat--blad{background:#F6E7E4;border-left:3px solid #8A3A2B;color:#5B2418}

/* Dane firmy */
.fr-dane-firmy{margin:0;border-top:2px solid var(--ink);padding-top:18px}
.fr-dane-firmy dt{font-size:13px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);margin-bottom:5px}
.fr-dane-firmy dd{margin:0 0 18px;font-size:17px;line-height:1.55}

@media (max-width:900px){
  .fr-tekstowa__title,.fr-kontakt__title{font-size:31px}
  .fr-tekstowa__lead,.fr-kontakt__lead{font-size:18px}
  .fr-tekstowa__uklad{grid-template-columns:1fr;gap:30px}
  .fr-spis{position:static;background:var(--tint);padding:18px 20px;border-top:2px solid var(--ink)}
  .fr-kontakt__drogi{grid-template-columns:1fr;gap:22px;padding-bottom:34px}
  .fr-kontakt__uklad{grid-template-columns:1fr;gap:40px}
  .fr-kontakt__h2{font-size:25px}
  .fr-form__para{grid-template-columns:1fr;gap:0}
}
