/* ============================================================
   4422 · main.css: tokeny, baza, naglowek, menu mobilne, stopka,
   komponenty wspolne (przycisk, eyebrow, chipsy, listy z liniami,
   przycisk rozwijania, strzalki, ikony), toast, responsywnosc.
   Wartosci z handoffu: desktop 1440 (gutter 120), 1024-1279, 768-1023, do 767.
   ============================================================ */

/* ---------- TOKENY ---------- */
:root{
	--k44-bg:#FFFFFF;--k44-text:#04171E;--k44-card:#E9CFBF;--k44-sand:#E8CFBF;--k44-accent:#8A6D3B;--k44-btn-text:#361719;--k44-dark:#141414;--k44-ph:#E9E3DB;--k44-muted:#6E6861;--k44-error:#A3141C;
	--k44-serif:'Garamond Premier Pro',Georgia,'Times New Roman',serif;--k44-sans:Inter,'Helvetica Neue',Arial,sans-serif;
	--k44-max:1440px;--k44-gutter:120px;--k44-header-h:200px;--k44-logo-h:90px;--k44-fs-nav:19px;--k44-nav-gap:36px;--k44-nav-offset:10px;
	--k44-btn-pad:19px 32px;--k44-fs-btn:15px;
	--k44-fs-body:18px;--k44-fs-eyebrow:15px;--k44-ls-eyebrow:1.5px;--k44-fs-h1:44px;--k44-lh-h1:1.4;--k44-fs-lead:24px;--k44-lh-lead:1.4;
	--k44-fs-expand:22px;--k44-fs-expand-s:20px;--k44-fs-lines:20px;
	--k44-fs-footer:17px;--k44-fs-tagline:24px;--k44-fs-copy:13px;--k44-footer-gap:56px;--k44-footer-pb:40px;--k44-footer-mt:120px;--k44-footer-pt:56px;--k44-footer-grid-gap:48px;--k44-footer-col:240px;
	--k44-section-pt:72px;--k44-header-s:112px;--k44-scroll-mt:calc(var(--k44-header-s) + 24px);--k44-dur:200ms;
}

/* ---------- BAZA ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--k44-bg);color:var(--k44-text);font-family:var(--k44-serif);font-size:var(--k44-fs-body);line-height:1.6;-webkit-font-smoothing:antialiased;font-kerning:normal;font-feature-settings:"kern","liga";overflow-x:clip}
body.k44-menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img,video,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,h5,h6,p,address,figure{margin:0;font-weight:400}
address{font-style:normal}
button,input,textarea,select{font:inherit;color:inherit}
[hidden]{display:none!important}
.k44-container{max-width:var(--k44-max);margin:0 auto;padding-left:var(--k44-gutter);padding-right:var(--k44-gutter)}
.k44-sr,.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.k44-skip{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--k44-text);color:#fff;padding:12px 20px}
.k44-skip:focus{left:8px}
.k44-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;overflow:hidden}
:focus-visible{outline:2px solid var(--k44-text);outline-offset:3px}
.k44-main{display:flex;flex-direction:column}

/* ---------- NAGLOWEK ---------- */
.k44-header{position:sticky;top:0;z-index:50;background:var(--k44-bg);height:var(--k44-header-h);transition:height 300ms,box-shadow 300ms}
.k44-header.is-scrolled{height:var(--k44-header-s);box-shadow:0 1px 0 var(--k44-sand)}
.admin-bar .k44-header{top:32px}
.admin-bar .k44-menu{top:32px}
.k44-header--line{border-bottom:1px solid var(--k44-sand)}
.k44-header__inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.k44-header__logo{display:flex;align-items:center;height:72px;justify-self:start}
.k44-header__logo img{height:var(--k44-logo-h);width:auto}
.k44-header__nav{display:flex;gap:var(--k44-nav-gap)}
.k44-header__nav a{font:400 var(--k44-fs-nav)/1 var(--k44-serif);padding:14px 0;text-underline-offset:var(--k44-nav-offset);text-decoration-thickness:1px;text-decoration-skip-ink:none;transition:all var(--k44-dur)}
.k44-header__nav a:hover,.k44-header__nav a[aria-current="page"],.k44-header__nav a.is-active{text-decoration:underline}
.k44-social{display:flex;gap:4px}
.k44-header__social{justify-self:end;justify-content:flex-end;margin-right:-11px}
.k44-social__link{display:flex;width:48px;height:48px;align-items:center;justify-content:center;color:var(--k44-text);transition:opacity var(--k44-dur)}
.k44-social__link:hover{opacity:.55}
.k44-burger{display:none;justify-self:end;width:48px;height:48px;margin-right:-12px;padding:0;border:0;background:none;cursor:pointer;align-items:center;justify-content:center;color:var(--k44-text);border-radius:0}

/* ---------- MENU MOBILNE (pelnoekranowe, wersja z prezentacji dla klientki: linki wysrodkowane, social na dole) ---------- */
.k44-menu{position:fixed;inset:0;z-index:100;background:var(--k44-bg);display:none;flex-direction:column;opacity:0;transition:opacity var(--k44-dur);overflow-y:auto}
.k44-menu.is-open{display:flex;opacity:1}
.k44-menu__top{height:var(--k44-header-h);flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 var(--k44-gutter)}
.k44-menu__top .k44-header__logo{height:48px}
.k44-menu__top .k44-burger{display:flex;margin:0 -12px 0 0}
.k44-menu__links{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px var(--k44-gutter)}
.k44-menu__links a{font:400 36px/1.2 var(--k44-serif);padding:10px 8px;min-height:56px;display:flex;align-items:center;text-align:center;text-underline-offset:8px;text-decoration-thickness:1px;text-decoration-skip-ink:none}
.k44-menu__links a[aria-current="page"],.k44-menu__links a.is-active{text-decoration:underline}
.k44-menu__social{flex:none;justify-content:center;gap:8px;padding:0 0 calc(40px + env(safe-area-inset-bottom))}

/* ---------- KOMPONENTY ---------- */
.k44-btn{display:inline-block;border:1.5px solid var(--k44-text);color:var(--k44-btn-text);background:transparent;padding:var(--k44-btn-pad);font:400 var(--k44-fs-btn)/1 var(--k44-serif);letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;cursor:pointer;border-radius:0;text-align:center;transition:all var(--k44-dur)}
.k44-btn:hover{background:var(--k44-text);color:#fff}
.k44-btn:disabled,.k44-btn.is-loading{opacity:.5;cursor:default}
.k44-eyebrow{font:400 var(--k44-fs-eyebrow)/1.4 var(--k44-serif);letter-spacing:var(--k44-ls-eyebrow);text-transform:uppercase}
.k44-chips{display:flex;flex-wrap:wrap;gap:8px}
.k44-chip{border:1px solid var(--k44-text);padding:10px 14px;font:400 var(--k44-fs-eyebrow)/1 var(--k44-serif);letter-spacing:var(--k44-ls-eyebrow);text-transform:uppercase;white-space:nowrap}
.k44-lines{display:flex;flex-direction:column;width:100%;border-bottom:1px solid var(--k44-accent)}
.k44-lines__item{padding:10px 0;border-top:1px solid var(--k44-accent);font:400 var(--k44-fs-lines)/1.3 var(--k44-serif)}
.k44-lines--strong .k44-lines__item{padding:12px 0;line-height:1.45;text-wrap:pretty}
.k44-lines strong,.k44-strong{font-weight:500}
.k44-expand{padding:0 0 4px;border:0;border-bottom:1px solid var(--k44-text);background:transparent;cursor:pointer;display:flex;align-items:center;gap:10px;font:400 var(--k44-fs-expand)/1.2 var(--k44-serif);color:var(--k44-text);border-radius:0;text-align:left;transition:color var(--k44-dur),border-color var(--k44-dur)}
.k44-expand:hover{color:var(--k44-accent);border-color:var(--k44-accent)}
.k44-expand--s{font-size:var(--k44-fs-expand-s)}
.k44-expand .k44-icon{flex:none;transition:transform 250ms}
.k44-expand[aria-expanded="true"] .k44-icon{transform:rotate(180deg)}
.k44-arrows{display:flex;gap:8px;flex:none}
.k44-arrow{width:48px;height:48px;border:1px solid var(--k44-text);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--k44-text);padding:0;border-radius:0;transition:background var(--k44-dur),color var(--k44-dur),opacity var(--k44-dur)}
.k44-arrow:hover{background:var(--k44-text);color:#fff}
.k44-arrow.is-off{opacity:.3}
.k44-icon{flex:none}
.k44-media-ph{background:var(--k44-ph)}

/* ---------- STOPKA ---------- */
.k44-footer{background:var(--k44-sand)}
.k44-footer--spaced{margin-top:var(--k44-footer-mt)}
.k44-footer__inner{padding-bottom:var(--k44-footer-pb);display:flex;flex-direction:column;gap:var(--k44-footer-gap)}
.k44-footer--spaced .k44-footer__inner{padding-top:var(--k44-footer-pt)}
.k44-footer__line{height:1px;background:var(--k44-accent)}
.k44-footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--k44-footer-col),1fr));gap:var(--k44-footer-grid-gap);align-items:start}
.k44-footer__nav{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.k44-footer__nav a{font:400 var(--k44-fs-footer)/1.3 var(--k44-serif);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;transition:color var(--k44-dur)}
.k44-footer__nav a:hover,.k44-footer__address a:hover{color:var(--k44-accent)}
.k44-footer__address{display:flex;flex-direction:column;gap:10px;font:400 var(--k44-fs-footer)/1.5 var(--k44-serif)}
.k44-footer__address span{line-height:1.3}
.k44-footer__address a{transition:color var(--k44-dur)}
.k44-footer__social{justify-content:flex-end;margin-right:-11px;margin-top:-14px}
.k44-footer__bottom{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;margin-top:-16px}
.k44-footer__tagline{font:400 var(--k44-fs-tagline)/1.4 var(--k44-serif)}
.k44-footer__copy{font:400 var(--k44-fs-copy)/1.4 var(--k44-sans)}

/* ---------- TOAST ---------- */
.k44-toast{position:fixed;left:50%;bottom:32px;transform:translate(-50%,12px);z-index:160;background:var(--k44-dark);color:#fff;padding:16px 28px;font:400 16px/1.3 var(--k44-serif);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 250ms ease-out,transform 250ms ease-out}
.k44-toast.is-visible{opacity:1;transform:translate(-50%,0)}

/* ---------- RUCH ---------- */
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.k44-menu,.k44-btn,.k44-toast,.k44-expand .k44-icon,.k44-header__nav a,.k44-header{transition:none}}
.k44-no-anim .k44-menu,.k44-no-anim .k44-btn,.k44-no-anim .k44-toast,.k44-no-anim .k44-expand .k44-icon{transition:none}

/* ---------- 1280 do 1439: tylko margines ---------- */
@media (max-width:1439px){:root{--k44-gutter:clamp(96px,8.33vw,120px)}}

/* ---------- 1024 do 1279: tablet poziomo, maly laptop ---------- */
@media (max-width:1279px){
	:root{--k44-gutter:64px;--k44-header-h:160px;--k44-header-s:104px;--k44-logo-h:72px;--k44-fs-nav:18px;--k44-footer-gap:48px;--k44-footer-mt:96px;--k44-footer-pt:48px}
}

/* ---------- 768 do 1023: tablet pionowo (nav w linii, bez ikon social w naglowku) ---------- */
@media (max-width:1023px){
	:root{--k44-gutter:40px;--k44-header-h:120px;--k44-logo-h:64px;--k44-nav-gap:28px;--k44-nav-offset:9px;--k44-fs-h1:40px;--k44-lh-h1:1.3;--k44-fs-lead:22px;--k44-lh-lead:1.45;--k44-footer-gap:48px;--k44-footer-pb:40px;--k44-footer-grid-gap:40px;--k44-footer-col:200px;--k44-section-pt:56px;--k44-header-s:88px}
	.k44-header__social{display:none}
	.k44-header__inner{grid-template-columns:auto auto;justify-content:space-between}
	.k44-header__nav{justify-self:end}
}

/* ---------- do 767: telefon ---------- */
@media (max-width:767px){
	:root{--k44-gutter:24px;--k44-header-h:88px;--k44-logo-h:44px;--k44-btn-pad:17px 28px;--k44-fs-body:17px;--k44-fs-eyebrow:13px;--k44-ls-eyebrow:1.2px;--k44-fs-h1:34px;--k44-lh-h1:1.3;--k44-fs-lead:20px;--k44-lh-lead:1.5;--k44-fs-lines:18px;--k44-fs-tagline:20px;--k44-footer-gap:40px;--k44-footer-pb:32px;--k44-footer-mt:80px;--k44-footer-pt:40px;--k44-section-pt:40px;--k44-header-s:88px}
	.admin-bar .k44-header{top:46px}
	.admin-bar .k44-menu{top:46px}
	.k44-header__nav{display:none}
	.k44-burger{display:flex}
	.k44-header__logo{height:48px}
	.k44-footer__grid{grid-template-columns:1fr;gap:40px}
	.k44-footer__address{gap:8px}
	.k44-footer__social{justify-content:flex-start;margin:-8px 0 0 -11px}
	.k44-toast{white-space:normal;max-width:calc(100vw - 48px);text-align:center}
}
