/*
Theme Name: Kancelaria Ważny — Migration Checkpoint
Theme URI: https://kancelariawazny.pl/
Author: Kancelaria Radcy Prawnego Łukasz Ważny
Description: Motyw WordPress Kancelarii Radcy Prawnego Łukasz Ważny. Wersja v0.11: poprawione limity formularza dla urządzeń współdzielących IP oraz czytelne komunikaty błędów serwera.
Version: 0.11
Text Domain: kancelaria-wazny
*/

/* Design system (do podstron): grafit #0F0C0A, druga sekcja #17120F, espresso #241A13,
   złoto #C89A4B / ciemne #A97B34, kość słoniowa #F2E9DD, tekst pomocniczy #CDBEA9, piasek #EBE1CE.
   Komponenty: .btn-gold .btn-ghost .btn-dark .doc .spec-item .navlink .rv */
:root{--bg:#0F0C0A;--bg2:#17120F;--espresso:#241A13;--gold:#C89A4B;--gold-d:#A97B34;--ivory:#F2E9DD;--muted:#CDBEA9;--sand:#EBE1CE}
body{margin:0;background:#0F0C0A;font-family:'IBM Plex Sans',system-ui,sans-serif}
html{scroll-behavior:smooth}
a{color:inherit;text-decoration:none}
a:hover{opacity:0.85}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #C89A4B;outline-offset:2px}
.btn-gold{transition:background .25s ease}
.btn-gold:hover{background:#D8AC60 !important;opacity:1}
.btn-ghost{transition:border-color .25s ease,color .25s ease}
.btn-ghost:hover{border-color:#C89A4B !important;color:#C89A4B !important;opacity:1}
.btn-dark{transition:background .25s ease}
.btn-dark:hover{background:#3A2A1E !important;opacity:1}
.navlink{transition:color .2s ease}
.navlink:hover{color:#C89A4B !important;opacity:1}
.spec-item{transition:border-top-color .25s ease}
.spec-item:hover{border-top-color:#A97B34 !important;opacity:1}
.spec-item .spec-item-t{transition:color .25s ease}
.spec-item:hover .spec-item-t{color:#A97B34 !important}
.spec-item .spec-item-a{transition:transform .25s ease; display:inline-block;}
.spec-item:hover .spec-item-a{transform:translateX(6px)}
.doc{transition:transform .5s ease}
.doc:hover{transform:rotate(-0.3deg) translateY(-6px) !important}
@keyframes rise{from{opacity:0.1;transform:translateY(26px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){.rv{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@media (prefers-reduced-motion:reduce){.rv{animation:none}}

/* WordPress bridge reset */
*{box-sizing:border-box}
body{overflow-x:hidden}
img{max-width:100%;height:auto}
#wpadminbar{z-index:999999}
.kw-form-error{display:none;font-size:13px;line-height:1.4;color:#7B3A2E}
.kw-form-error.is-visible{display:block}
.kw-form-status{display:none;margin:0;font-size:15px;line-height:1.55}
.kw-form-status.is-visible{display:block}
.kw-form-status--ok{color:#3F6B4A}
.kw-form-status--error{color:#7B3A2E}

/* Desktop layout from v1.0 is preserved; later checkpoints add scoped refinements only. */

/* ==========================================================
   v0.2 — RESPONSIVE PASS
   Desktop >= 1101px intentionally remains unchanged.
   ========================================================== */

.kw-menu-toggle{display:none}
.kw-mobile-cta{display:none !important}

@media (max-width:1100px){
  .kw-header-inner{padding-left:28px !important;padding-right:28px !important;gap:18px !important;height:88px !important}
  .kw-header-inner>a:first-child{gap:12px !important}
  .kw-header-inner>a:first-child img:first-child{height:44px !important}
  .kw-header-inner>a:first-child img:nth-child(2){height:34px !important}
  .kw-main-nav{gap:20px !important;font-size:13px !important}
  .kw-header-cta{height:42px !important;padding-left:18px !important;padding-right:18px !important;font-size:11px !important}

  .home .kw-home-hero{padding:82px 0 92px !important}
  .home .kw-hero-inner{padding-left:32px !important;padding-right:32px !important;gap:48px !important}
  .home .kw-hero-title{font-size:86px !important}
  .home .kw-hero-lower{gap:56px !important;padding-top:40px !important}
  .home .kw-hero-lower>div:first-child>div:first-child{font-size:38px !important}
  .home .kw-hero-lower p{font-size:18px !important}
  .home .kw-hero-lower>div:nth-child(2)>p{font-size:20px !important}

  .home #specjalizacje>div,
  .home #dla-biznesu>div,
  .home #o-mnie>.kw-about-grid,
  .home #kontakt>.kw-contact-grid,
  .kw-specialization>div:first-child,
  .kw-site-footer>.kw-footer-inner{padding-left:32px !important;padding-right:32px !important}

  .home .kw-business-card{padding:40px !important}
  .home #produkt-dzial-prawny{padding-right:30px !important}
  .home #produkt-warsztaty{padding-left:30px !important}
  .home #stala-obsluga{padding-right:30px !important}
  .home #prawo-i-liczby{padding-left:30px !important}

  .home .kw-about-grid{gap:58px !important}
  .home .kw-about-photo{height:560px !important}
  .home .kw-contact-grid{gap:56px !important}
  .home #kontakt h2{font-size:60px !important}

  .kw-specialization{padding-top:92px !important;padding-bottom:92px !important}
  .kw-specialization>div:first-child{gap:72px !important}
  .kw-specialization .kw-split{gap:52px !important}
  .kw-specialization h1{font-size:68px !important}

  .kw-site-footer{padding-top:42px !important;padding-bottom:42px !important}
  .kw-site-footer>.kw-footer-inner{gap:32px !important}
  .kw-site-footer>.kw-footer-inner>div:last-child{gap:18px !important;font-size:11px !important}
}

@media (max-width:860px){
  .kw-site-header{position:relative;z-index:1000}
  .kw-header-inner{height:78px !important;padding-left:22px !important;padding-right:22px !important;position:relative}
  .kw-header-inner>a:first-child img:first-child{height:40px !important}
  .kw-header-inner>a:first-child img:nth-child(2){height:30px !important}
  .kw-header-cta{display:none !important}
  .kw-menu-toggle{display:inline-flex;width:44px;height:44px;padding:0;border:1px solid rgba(200,154,75,.45);background:transparent;border-radius:2px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto;order:2}
  .kw-menu-toggle span{display:block;width:20px;height:1.5px;background:#F2E9DD;transition:transform .2s ease,opacity .2s ease}
  .kw-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  .kw-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .kw-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
  .kw-main-nav{display:none !important;position:absolute;left:0;right:0;top:100%;z-index:999;background:#0F0C0A;border-top:1px solid rgba(200,154,75,.22);border-bottom:1px solid rgba(200,154,75,.35);padding:18px 22px 22px;flex-direction:column;align-items:stretch !important;gap:0 !important;white-space:normal !important;box-shadow:0 18px 36px rgba(0,0,0,.28)}
  .kw-main-nav.is-open{display:flex !important}
  .kw-main-nav>.navlink{padding:13px 0;border-bottom:1px solid rgba(200,154,75,.16);font-size:15px !important}
  .kw-main-nav .kw-mobile-cta{display:flex !important;margin-top:18px;height:48px !important;width:100%;align-items:center;justify-content:center;background:#C89A4B;color:#0F0C0A !important;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border-radius:2px}

  .home .kw-home-hero{padding:68px 0 78px !important}
  .home .kw-hero-inner{padding-left:24px !important;padding-right:24px !important;gap:42px !important}
  .home .kw-hero-title{font-size:68px !important;line-height:.96 !important}
  .home .kw-hero-lower{grid-template-columns:1fr !important;gap:32px !important;padding-top:34px !important}
  .home .kw-hero-lower>div:first-child>div:first-child{font-size:36px !important}
  .home .kw-hero-lower>div:nth-child(2){gap:24px !important}

  .home #specjalizacje,
  .home #dla-biznesu{padding-top:78px !important;padding-bottom:86px !important}
  .home #specjalizacje>div,
  .home #dla-biznesu>div,
  .home #o-mnie>.kw-about-grid,
  .home #kontakt>.kw-contact-grid,
  .kw-specialization>div:first-child,
  .kw-site-footer>.kw-footer-inner{padding-left:24px !important;padding-right:24px !important}

  .home #specjalizacje .spec-item{grid-template-columns:60px minmax(0,1fr) !important;gap:20px !important;padding-top:34px !important;padding-bottom:34px !important}
  .home #specjalizacje .spec-item h3{font-size:38px !important}

  .home .kw-business-card{padding:30px !important}
  .home .kw-business-grid{grid-template-columns:1fr !important}
  .home #produkt-dzial-prawny,
  .home #produkt-warsztaty,
  .home #stala-obsluga,
  .home #prawo-i-liczby{padding-left:0 !important;padding-right:0 !important;border-left:0 !important}
  .home #produkt-dzial-prawny{padding-bottom:34px !important}
  .home #produkt-warsztaty{padding-top:34px !important;padding-bottom:34px !important;border-top:1px solid rgba(200,154,75,.22) !important}
  .home #stala-obsluga{padding-top:34px !important;padding-bottom:34px !important}
  .home #prawo-i-liczby{padding-top:34px !important}

  .home #o-mnie{padding-top:82px !important;padding-bottom:86px !important}
  .home .kw-about-grid{grid-template-columns:1fr !important;gap:54px !important;align-items:start !important}
  .home .kw-about-photo{height:560px !important;max-width:520px;width:100%;margin:0 auto}
  .home #o-mnie .rv{max-width:680px;margin:0 auto}
  .home #o-mnie .rv p{text-align:left !important;-webkit-hyphens:none !important;hyphens:none !important}

  .home #kontakt{padding-top:86px !important;padding-bottom:86px !important}
  .home .kw-contact-grid{grid-template-columns:1fr !important;gap:48px !important}
  .home #kontakt h2{font-size:56px !important}
  .home #kontakt form{max-width:680px;width:100%;padding:32px !important}

  .kw-specialization{padding-top:78px !important;padding-bottom:82px !important}
  .kw-specialization>div:first-child{gap:58px !important;padding-left:24px !important;padding-right:24px !important}
  .kw-specialization .kw-split{grid-template-columns:1fr !important;gap:50px !important;align-items:start !important}
  .kw-specialization h1{font-size:58px !important}
  .kw-specialization .doc{transform:none !important;max-width:680px;margin-left:auto;margin-right:auto}
  .kw-specialization .kw-split>div:first-child>div[style*="grid-template-columns:repeat(2"]{max-width:none !important}

  .kw-site-footer>.kw-footer-inner{flex-direction:column !important;gap:32px !important}
  .kw-site-footer>.kw-footer-inner>div:last-child{flex-wrap:wrap;row-gap:12px !important;column-gap:22px !important}
  .kw-site-footer span[style*="white-space:nowrap"]{white-space:normal !important}

  .kw-legal-page{padding:72px 24px 88px !important}
  .kw-legal-page h1{font-size:52px !important}
}

@media (max-width:600px){
  body{font-size:16px}
  .kw-header-inner{height:72px !important;padding-left:18px !important;padding-right:18px !important}
  .kw-header-inner>a:first-child{gap:10px !important;min-width:0}
  .kw-header-inner>a:first-child img:first-child{height:36px !important;flex:0 0 auto}
  .kw-header-inner>a:first-child img:nth-child(2){height:27px !important;max-width:190px;width:auto}
  .kw-menu-toggle{width:42px;height:42px;flex:0 0 auto}
  .kw-main-nav{padding-left:18px;padding-right:18px}

  .home .kw-home-hero{padding:58px 0 68px !important}
  .home .kw-home-hero>img{width:390px !important;right:-150px !important;opacity:.035 !important}
  .home .kw-hero-inner{padding-left:20px !important;padding-right:20px !important;gap:36px !important}
  .home .kw-hero-inner>div:first-child{font-size:10.5px !important;letter-spacing:.15em !important;gap:9px !important}
  .home .kw-hero-inner>div:first-child>span{width:22px !important}
  .home .kw-hero-title{font-size:clamp(44px,13vw,52px) !important;line-height:.98 !important;letter-spacing:0 !important}
  .home .kw-hero-lower{gap:28px !important;padding-top:28px !important}
  .home .kw-hero-lower>div:first-child{gap:10px !important}
  .home .kw-hero-lower>div:first-child>div:first-child{font-size:31px !important;line-height:1.08 !important}
  .home .kw-hero-lower p{font-size:16px !important;line-height:1.55 !important}
  .home .kw-hero-lower>div:nth-child(2)>p{font-size:17px !important}
  .home .kw-hero-lower>div:nth-child(2)>div{flex-direction:column !important;align-items:stretch !important;gap:12px !important}
  .home .kw-hero-lower .btn-gold,
  .home .kw-hero-lower .btn-ghost{width:100%;height:52px !important;padding-left:18px !important;padding-right:18px !important;font-size:12px !important}

  .home #specjalizacje,
  .home #dla-biznesu{padding-top:66px !important;padding-bottom:72px !important}
  .home #specjalizacje>div,
  .home #dla-biznesu>div,
  .home #o-mnie>.kw-about-grid,
  .home #kontakt>.kw-contact-grid,
  .kw-specialization>div:first-child,
  .kw-site-footer>.kw-footer-inner{padding-left:20px !important;padding-right:20px !important}

  .home #specjalizacje>div{gap:34px !important}
  .home #specjalizacje h2,
  .home #dla-biznesu h2{font-size:34px !important}
  .home #specjalizacje .spec-item{grid-template-columns:42px minmax(0,1fr) !important;gap:12px !important;padding-top:28px !important;padding-bottom:28px !important}
  .home #specjalizacje .spec-item>span:first-child{font-size:24px !important}
  .home #specjalizacje .spec-item h3{font-size:32px !important}
  .home #specjalizacje .spec-item p{font-size:15px !important;line-height:1.55 !important}
  .home #specjalizacje .spec-item-a{font-size:11px !important}

  .home #dla-biznesu>div{gap:34px !important}
  .home .kw-business-card{padding:22px 18px !important}
  .home .kw-business-card h3{font-size:24px !important}
  .home #produkt-dzial-prawny>div[style*="grid-template-columns"],
  .home #produkt-warsztaty>div[style*="grid-template-columns"]{grid-template-columns:1fr !important;gap:16px !important}
  .home #produkt-dzial-prawny p,
  .home #produkt-warsztaty p,
  .home #stala-obsluga p,
  .home #prawo-i-liczby p{font-size:14px !important}
  .home .kw-business-card>div>div:last-child{justify-content:stretch !important}
  .home .kw-business-card .btn-gold{width:100%;height:52px !important;padding-left:14px !important;padding-right:14px !important;font-size:11px !important}

  .home #o-mnie{padding-top:68px !important;padding-bottom:72px !important}
  .home .kw-about-grid{gap:42px !important}
  .home .kw-about-photo{height:440px !important;max-width:410px}
  .home .kw-about-photo>div:first-child{left:10px !important;top:10px !important;right:-10px !important;bottom:-10px !important}
  .home .kw-about-photo [style*="left:26px"]{left:20px !important;bottom:18px !important}
  .home .kw-about-photo [style*="font-size:32px"]{font-size:28px !important}
  .home #o-mnie .rv{gap:20px !important}
  .home #o-mnie .rv p{font-size:16px !important;line-height:1.65 !important}

  .home #kontakt{padding-top:68px !important;padding-bottom:72px !important}
  .home .kw-contact-grid{gap:38px !important}
  .home #kontakt .rv{gap:24px !important}
  .home #kontakt h2{font-size:clamp(42px,12vw,50px) !important;line-height:1 !important}
  .home #kontakt .rv>p{font-size:16px !important;line-height:1.6 !important}
  .home #kontakt .rv>div:last-child{font-size:15px !important;overflow-wrap:anywhere}
  .home #kontakt .rv>div:last-child>span:first-child{display:flex;flex-direction:column;gap:3px}
  .home #kontakt form{padding:22px 18px !important;gap:18px !important}
  .home #kontakt input:not([type="checkbox"]):not([type="file"]),
  .home #kontakt select{height:50px !important;font-size:16px !important}
  .home #kontakt textarea{font-size:16px !important}
  .home #kontakt button{height:54px !important;font-size:12px !important;padding-left:12px;padding-right:12px}

  .kw-specialization{padding-top:64px !important;padding-bottom:68px !important}
  .kw-specialization>div:first-child{gap:48px !important;padding-left:20px !important;padding-right:20px !important}
  .kw-specialization .kw-split{gap:40px !important}
  .kw-specialization h1{font-size:clamp(46px,14vw,58px) !important}
  .kw-specialization .rv>p{font-size:17px !important;line-height:1.6 !important}
  .kw-specialization .rv>div[style*="font-style:italic"]{font-size:34px !important}
  .kw-specialization .kw-split>div:first-child>div[style*="grid-template-columns:repeat(2"]{grid-template-columns:1fr !important;gap:0 !important}
  .kw-specialization .btn-gold{width:100%;justify-content:center !important;height:52px !important;padding-left:16px !important;padding-right:16px !important;font-size:12px !important}
  .kw-specialization .doc{padding-left:16px !important;padding-right:16px !important;box-shadow:0 20px 42px rgba(0,0,0,.38) !important}
  .kw-specialization .doc [style*="font-size:22px"]{font-size:18px !important}
  .kw-specialization .doc [style*="font-size:21px"]{font-size:18px !important}
  .kw-specialization .doc [style*="font-size:20px"]{font-size:17px !important}

  .kw-site-footer{padding-top:36px !important;padding-bottom:36px !important;font-size:12.5px !important}
  .kw-site-footer>.kw-footer-inner{padding-left:20px !important;padding-right:20px !important;gap:26px !important}
  .kw-site-footer>.kw-footer-inner>div:first-child>a{gap:10px !important}
  .kw-site-footer>.kw-footer-inner>div:first-child>a img:first-child{height:38px !important}
  .kw-site-footer>.kw-footer-inner>div:first-child>a img:nth-child(2){height:29px !important;max-width:190px}
  .kw-site-footer>.kw-footer-inner>div:last-child{flex-direction:column !important;align-items:flex-start !important;gap:10px !important;font-size:11px !important}
  .kw-site-footer a,.kw-site-footer span{overflow-wrap:anywhere}

  .kw-legal-page{padding:58px 20px 72px !important}
  .kw-legal-page h1{font-size:42px !important;margin-bottom:28px !important}
  .kw-legal-page>div{font-size:16px !important}
}

@media (max-width:390px){
  .kw-header-inner>a:first-child img:nth-child(2){height:24px !important;max-width:160px}
  .home .kw-hero-title{font-size:44px !important}
  .home #specjalizacje .spec-item{grid-template-columns:36px minmax(0,1fr) !important}
  .home #specjalizacje .spec-item h3{font-size:30px !important}
}
