/* Oknoview Landing Kit 1.0.0 — wspólny zestaw sekcji dla landingów. Samowystarczalny (prefiks .ovk-).
   Kolory/typografia: tokeny wzorowane na stylu wisniowski.pl/dla-domu (czerń #161717, ostre narożniki, waga 300).
   Wszystkie zmienne mają wartości domyślne — kit działa bez motywu. Kontrast tekstu >= 4.5:1, etykiety >= 12px. */
.ovk{--ovk-ink:var(--ov-ink,#161717);--ovk-soft:var(--ov-ink-soft,#5a5a5a);--ovk-bg:var(--ov-surface,#fff);--ovk-alt:var(--ov-surface-alt,#fafafa);--ovk-line:var(--ov-border,#e6e6e6);--ovk-accent:var(--ov-accent-dark,#8a6a2b);--ovk-ease:var(--ov-ease,cubic-bezier(.65,0,.35,1));--ovk-font:var(--ov-font,"Montserrat","Helvetica Neue",Arial,sans-serif);
  box-sizing:border-box;font-family:var(--ovk-font);color:var(--ovk-ink);font-weight:300;font-size:16px;line-height:1.5;background:var(--ovk-bg);padding:clamp(48px,7vw,100px) 0}
.ovk *,.ovk *::before,.ovk *::after{box-sizing:border-box}
.ovk--alt{background:var(--ovk-alt)}
.ovk--dark{background:#161717;color:#fff;--ovk-soft:#c9c9c9;--ovk-line:#3a3b3b;--ovk-accent:#e0c27d}
.ovk__wrap{width:min(1264px,calc(100% - 58px));margin:0 auto}
.ovk__eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 18px;font-size:.8125rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ovk-soft)}
.ovk__eyebrow::before{content:"";width:28px;height:2px;background:var(--ovk-accent)}
.ovk__title{margin:0 0 16px;font-size:clamp(2rem,3.6vw,3.25rem);font-weight:300;line-height:1.15;letter-spacing:-.035em;color:inherit}
.ovk__lead{margin:0 0 clamp(28px,4vw,56px);max-width:62ch;font-size:1rem;color:var(--ovk-soft)}
.ovk h3{font-weight:400;letter-spacing:-.02em;color:inherit}
.ovk a{color:inherit}
.ovk :focus-visible{outline:3px solid var(--ovk-accent);outline-offset:3px}
/* przyciski: ciemne, odwrócenie na hover */
.ovk__btn{display:inline-block;padding:16px 29px;border:1px solid #161717;border-radius:0;background:#161717;color:#fff;font:500 .9375rem/1.2 var(--ovk-font);text-decoration:none;cursor:pointer;transition:color .25s var(--ovk-ease),background-color .25s var(--ovk-ease),border-color .25s var(--ovk-ease)}
.ovk__btn:hover,.ovk__btn:focus-visible{background:#fff;color:#161717}
.ovk--dark .ovk__btn{background:#fff;color:#161717;border-color:#fff}
.ovk--dark .ovk__btn:hover,.ovk--dark .ovk__btn:focus-visible{background:#161717;color:#fff}
/* zalety / gwarancje */
.ovk__grid{display:grid;gap:2px;background:var(--ovk-line);border:1px solid var(--ovk-line);grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.ovk__card{background:var(--ovk-bg);padding:clamp(24px,3vw,40px)}
.ovk--alt .ovk__card{background:var(--ovk-alt)}
.ovk--dark .ovk__card{background:#161717}
.ovk__card h3{margin:0 0 10px;font-size:1.375rem;line-height:1.25}
.ovk__card p{margin:0;color:var(--ovk-soft);font-size:.9375rem}
.ovk__num{display:block;margin-bottom:22px;font-size:.875rem;font-weight:500;letter-spacing:.14em;color:var(--ovk-accent)}
/* tabela parametrów */
.ovk__table-wrap{overflow-x:auto;border:1px solid var(--ovk-line);-webkit-overflow-scrolling:touch}
.ovk__table{width:100%;min-width:560px;border-collapse:collapse;font-size:.9375rem;background:var(--ovk-bg)}
.ovk__table caption{padding:0 0 12px;text-align:left;font-size:.8125rem;color:var(--ovk-soft)}
.ovk__table th,.ovk__table td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--ovk-line);vertical-align:top;font-weight:300}
.ovk__table thead th{background:#161717;color:#fff;font-weight:500;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase}
.ovk__table tbody th{font-weight:500;color:var(--ovk-ink)}
.ovk__table tbody tr:nth-child(even){background:var(--ovk-alt)}
.ovk__note{margin:14px 0 0;font-size:.8125rem;color:var(--ovk-soft)}
/* kroki procesu */
.ovk__steps{counter-reset:ovk;display:grid;gap:2px;list-style:none;margin:0;padding:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.ovk__step{counter-increment:ovk;border-top:2px solid var(--ovk-ink);padding:22px 20px 0 0}
.ovk--dark .ovk__step{border-color:#fff}
.ovk__step::before{content:counter(ovk,decimal-leading-zero);display:block;margin-bottom:14px;font-size:.875rem;font-weight:500;letter-spacing:.14em;color:var(--ovk-accent)}
.ovk__step h3{margin:0 0 8px;font-size:1.25rem}
.ovk__step p{margin:0;color:var(--ovk-soft);font-size:.9375rem}
/* FAQ */
.ovk__faq{border-top:1px solid var(--ovk-line);max-width:900px}
.ovk__faq details{border-bottom:1px solid var(--ovk-line)}
.ovk__faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;cursor:pointer;list-style:none;font-size:1.125rem;font-weight:400}
.ovk__faq summary::-webkit-details-marker{display:none}
.ovk__faq summary::after{content:"+";flex:none;font-size:1.75rem;font-weight:300;line-height:1;transition:transform .25s var(--ovk-ease)}
.ovk__faq details[open] summary::after{transform:rotate(45deg)}
.ovk__faq .ovk__answer{padding:0 0 24px;max-width:70ch;color:var(--ovk-soft);font-size:.9375rem}
.ovk__faq .ovk__answer p{margin:0 0 .8em}
/* realizacje */
.ovk__gallery{display:grid;gap:2px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.ovk__shot{position:relative;margin:0;overflow:hidden;background:#161717;aspect-ratio:4/3}
.ovk__shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ovk-ease)}
.ovk__shot:hover img{transform:scale(1.04)}
.ovk__shot figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 20px 16px;background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,0));color:#fff;font-size:.875rem;font-weight:400}
/* formularz wyceny */
.ovk__quote{display:grid;gap:clamp(28px,5vw,72px);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}
.ovk__form{display:grid;gap:18px}
.ovk__row2{display:grid;gap:18px;grid-template-columns:1fr 1fr}
.ovk__field label{display:block;margin-bottom:6px;font-size:.8125rem;font-weight:500;letter-spacing:.04em}
.ovk__field input,.ovk__field select,.ovk__field textarea{width:100%;padding:14px 16px;border:1px solid #767676;border-radius:0;background:#fff;color:#161717;font:300 1rem/1.4 var(--ovk-font)}
.ovk__field textarea{min-height:130px;resize:vertical}
.ovk__field input:focus,.ovk__field select:focus,.ovk__field textarea:focus{outline:3px solid var(--ovk-accent);outline-offset:0;border-color:#161717}
.ovk__consent{display:flex;gap:12px;align-items:flex-start;font-size:.8125rem;color:var(--ovk-soft)}
.ovk__consent input{margin-top:3px;width:18px;height:18px;flex:none}
.ovk__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ovk__msg{padding:16px 20px;margin:0 0 18px;border:1px solid;font-size:.9375rem;font-weight:400}
.ovk__msg--ok{border-color:#1d6b3a;background:#eaf6ee;color:#14502b}
.ovk__msg--err{border-color:#a12a2a;background:#fbeeee;color:#7a1c1c}
.ovk--dark .ovk__form label,.ovk--dark .ovk__consent{color:#e6e6e6}
/* sticky CTA mobile */
.ovk-sticky{display:none}
@media(max-width:767px){
 .ovk__quote{grid-template-columns:1fr}.ovk__row2{grid-template-columns:1fr}
 .ovk-sticky{position:fixed;z-index:9990;left:0;right:0;bottom:0;display:flex;background:#161717;box-shadow:0 -2px 12px rgba(0,0,0,.2);padding-bottom:env(safe-area-inset-bottom)}
 .ovk-sticky a{flex:1;display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 12px;color:#fff;font:500 .9375rem/1 var(--ovk-font,Arial,sans-serif);text-decoration:none;border-right:1px solid #3a3b3b;transition:background-color .25s cubic-bezier(.65,0,.35,1),color .25s cubic-bezier(.65,0,.35,1)}
 .ovk-sticky a:last-child{border-right:0;background:#fff;color:#161717}
 .ovk-sticky a:hover,.ovk-sticky a:focus-visible{background:#fff;color:#161717}
 .ovk-sticky a:last-child:hover,.ovk-sticky a:last-child:focus-visible{background:#161717;color:#fff}
 body.ovk-has-sticky{padding-bottom:60px}
}
@media(prefers-reduced-motion:reduce){.ovk *,.ovk-sticky a{transition:none!important}}
