/* Restauracja Korsarz v2 — "Taras przy molo" · Fjalla One + Prompt · ks-* */
@font-face{font-family:Fjalla;src:url(/fonts/FjallaOne-400-normal-latin.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Fjalla;src:url(/fonts/FjallaOne-400-normal-latin-ext-pl.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}
@font-face{font-family:Prompt;src:url(/fonts/Prompt-400-normal-latin.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Prompt;src:url(/fonts/Prompt-400-normal-latin-ext-pl.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}
@font-face{font-family:Prompt;src:url(/fonts/Prompt-600-normal-latin.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Prompt;src:url(/fonts/Prompt-600-normal-latin-ext-pl.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}

@font-face{font-family:FjFB;src:local("Arial Narrow"),local("Arial");size-adjust:88%}
@font-face{font-family:PrFB;src:local("Arial");size-adjust:104%}
:root{--card:#D6E4F0;--card-2:#E8F0F7;--bay:#183049;--bay-2:#0F2236;--coral:#E2703F;--coral-d:#A2441B;--sand:#F5EFE4;--rope:#C7A16B;--white:#FFFFFF;
--ink:#14263A;--muted:#4A5868;--rule:rgba(24,48,73,.16);
--disp:Fjalla,FjFB,"Arial Narrow",sans-serif;--body:Prompt,PrFB,Arial,sans-serif;--gut:20px;--dock:76px;--r:14px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:124px;background:var(--bay-2)}
body{margin:0;background:var(--sand);color:var(--ink);font:400 1.0625rem/1.6 var(--body);overflow-x:hidden;padding-bottom:calc(var(--dock) + env(safe-area-inset-bottom))}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
svg{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ks-brand svg,.ks-logo svg,.ks-foot-logo svg{fill:currentColor;stroke:none;width:100%;height:auto}
.ks-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ks-skip{position:absolute;left:12px;top:-60px;background:var(--coral);color:var(--bay-2);padding:12px 16px;z-index:100}.ks-skip:focus{top:12px}
:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.ks-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--gut)}
/* bar */
.ks-bar{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:12px;height:62px;padding:0 var(--gut);color:var(--sand);transition:background .3s,color .3s,box-shadow .3s}
.ks-bar.is-solid{background:var(--sand);color:var(--bay);box-shadow:0 1px 0 var(--rule)}
.ks-brand{display:flex;align-items:center;min-height:44px;width:112px;opacity:0;transition:opacity .3s}
.ks-bar.is-solid .ks-brand{opacity:1}
.ks-nav{display:none}
.ks-lang{margin-left:auto;display:flex;border-radius:var(--r);background:rgba(15,34,54,.5)}
.ks-bar.is-solid .ks-lang{background:var(--card)}
.ks-lang a{display:grid;place-items:center;min-width:46px;min-height:44px;font:400 1.0625rem/1 var(--disp);letter-spacing:.1em;text-decoration:none;opacity:.7}
.ks-lang a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;text-decoration-color:var(--coral)}
.ks-bar-call{display:none}
/* hero */
.ks-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;background:var(--bay-2);overflow:hidden;isolation:isolate}
.ks-hero-ph{position:absolute;inset:0;z-index:-2}
.ks-hero-ph img{width:100%;height:100%;object-fit:cover;object-position:55% 35%;animation:ks-in 2s cubic-bezier(.2,.7,.2,1) both}
.ks-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,34,54,.55) 0,rgba(15,34,54,0) 20%,rgba(15,34,54,0) 34%,rgba(15,34,54,.82) 58%,var(--bay-2) 100%)}
.ks-hero-in{width:100%;padding:0 var(--gut) calc(var(--dock) + 18px);color:var(--sand)}
.ks-kicker{margin:0 0 8px;font:400 1.125rem/1.2 var(--disp);letter-spacing:.32em;text-transform:uppercase;color:var(--card)}
.ks-logo{margin:0;width:min(84vw,400px);color:var(--sand);animation:ks-rise .9s .15s cubic-bezier(.2,.7,.2,1) both}
.ks-lede{margin:12px 0 0;max-width:36ch;color:rgba(245,239,228,.92)}
.ks-status{display:inline-flex;align-items:center;gap:10px;margin:14px 0 0;padding:8px 14px;border-radius:var(--r);background:rgba(214,228,240,.16);font:600 1rem/1.2 var(--body)}
.ks-dot{width:10px;height:10px;border-radius:50%;background:var(--rope)}
[data-state=open] .ks-dot{background:#4ED08A;box-shadow:0 0 0 4px rgba(78,208,138,.2)}
[data-state=closed] .ks-dot{background:var(--coral)}
.ks-cta{display:grid;gap:10px;margin-top:16px}
.ks-cta .ks-btn-line{display:none}
.ks-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:2px 22px 0;border-radius:var(--r);font:400 1.25rem/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;text-align:center;transition:background .2s,color .2s,transform .2s}
.ks-btn svg{margin-top:-2px}
.ks-btn:active{transform:scale(.98)}
.ks-btn-coral{background:var(--coral);color:var(--bay-2)}.ks-btn-coral:hover{background:#EE8556}
.ks-btn-line{border:2px solid currentColor}.ks-btn-line:hover{background:var(--sand);color:var(--bay)}
.ks-btn-navy{background:var(--bay);color:var(--sand)}.ks-btn-navy:hover{background:var(--coral-d)}
.ks-rating{display:inline-flex;align-items:center;gap:6px;margin-top:6px;min-height:44px;font-size:1rem;text-decoration:none;color:rgba(245,239,228,.88)}
.ks-rating svg{width:18px;height:18px;color:var(--rope)}.ks-rating b{font-weight:600;color:var(--sand)}
@keyframes ks-in{from{transform:scale(1.07)}to{transform:none}}
@keyframes ks-rise{from{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}
/* type */
.ks-k{margin:0 0 10px;font:400 1.0625rem/1.2 var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--coral-d)}
.ks-h2{margin:0;font:400 clamp(2.6rem,12vw,4.75rem)/1 var(--disp);text-transform:uppercase;letter-spacing:.01em;color:var(--bay)}
.ks-h3{margin:0 0 12px;font:400 1.625rem/1.15 var(--disp);text-transform:uppercase;letter-spacing:.03em}
.ks-p{margin:16px 0 0;max-width:58ch;color:var(--muted)}
.ks-swoop{display:block;width:min(260px,70%);height:26px;margin:14px 0 0;color:var(--coral);stroke-width:3.2}
.ks-swoop path+path{stroke-width:1.6;opacity:.6}
/* fish */
.ks-fish{padding:84px 0 80px;background:var(--sand)}
.ks-fish-grid{display:grid;gap:22px}
.ks-facts{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:10px}
.ks-fact{display:grid;grid-template-columns:96px 1fr;gap:0 16px;align-items:start;padding:16px 18px;border-radius:var(--r);background:var(--card)}
.ks-fact b{grid-row:1/3;font:400 1.5rem/1.05 var(--disp);color:var(--coral-d);text-transform:uppercase;padding-top:2px}
.ks-fact h3{margin:0;font:600 1.0625rem/1.3 var(--body);color:var(--bay)}
.ks-fact p{margin:2px 0 0;font-size:1rem;color:var(--muted)}
.ks-fish-a,.ks-fish-b{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5}
.ks-fish-a img,.ks-fish-b img{width:100%;height:100%;object-fit:cover}
.ks-fish-a{width:82%}
.ks-fish-b{width:56%;justify-self:end;margin-top:-38%;border:6px solid var(--sand)}
/* menu */
.ks-menu{padding:84px 0 0;background:var(--card)}
.ks-head{padding-bottom:26px}
.ks-chips{position:sticky;top:62px;z-index:20;background:var(--bay)}
.ks-chips-l{position:relative;display:flex;gap:2px;overflow-x:auto;padding:8px var(--gut);scrollbar-width:none;max-width:1200px;margin:0 auto}
.ks-chips-l::-webkit-scrollbar{display:none}
.ks-chip{position:relative;z-index:1;flex:none;display:flex;align-items:center;min-height:44px;padding:2px 14px 0;font:400 1.125rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:var(--card);transition:color .25s}
.ks-chip.is-on{color:var(--bay-2)}
.ks-chips-ind{position:absolute;left:0;top:8px;height:44px;width:var(--w,80px);border-radius:10px;transform:translateX(var(--x,20px));background:var(--coral);transition:transform .45s cubic-bezier(.2,.7,.2,1),width .45s cubic-bezier(.2,.7,.2,1)}
.ks-card{max-width:1200px;margin:0 auto;padding:10px var(--gut) 90px}
.ks-sec{margin-top:30px;padding:0 0 6px;border-radius:var(--r);background:var(--white);overflow:hidden;box-shadow:0 1px 0 rgba(24,48,73,.08)}
.ks-sec-h{margin:0;padding:16px 20px 14px;background:var(--bay);color:var(--sand);font:400 1.75rem/1.1 var(--disp);letter-spacing:.06em;text-transform:uppercase}
.ks-sec-img{margin:0;aspect-ratio:16/9;overflow:hidden}
.ks-sec-img img{width:100%;height:100%;object-fit:cover}
.ks-its{list-style:none;margin:0;padding:4px 20px 8px}
.ks-it{padding:15px 0;border-bottom:1px solid var(--rule)}
.ks-it:last-child{border:0}
.ks-it-t{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.ks-it h4{margin:0;font:600 1.0625rem/1.35 var(--body);color:var(--bay)}
.ks-sz{font-weight:400;color:var(--muted);white-space:nowrap}
.ks-pr{flex:none;font:400 1.375rem/1 var(--disp);color:var(--coral-d);white-space:nowrap}
.ks-it p{margin:5px 0 0;font-size:1rem;color:var(--muted)}
.ks-note{margin:36px 0 0;padding:18px 20px;border-radius:var(--r);border:2px dashed var(--bay);font-size:1rem;color:var(--ink)}
/* families + room */
.ks-fam{padding:84px 0 80px;background:var(--bay);color:var(--sand)}
.ks-fam .ks-h2{color:var(--sand)}.ks-fam .ks-k{color:var(--rope)}.ks-fam .ks-p{color:rgba(245,239,228,.86)}
.ks-perks{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ks-perks li{padding:8px 14px;border-radius:10px;background:rgba(214,228,240,.14);font-weight:600;font-size:1rem}
.ks-k-room{margin-top:64px}
.ks-fam-grid{display:grid;gap:30px}
.ks-fam-img{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;max-width:440px}
.ks-fam-img img{width:100%;height:100%;object-fit:cover}
.ks-inset{display:none}
.ks-gal{display:flex;gap:12px;margin-top:26px;padding:0 var(--gut);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.ks-gal::-webkit-scrollbar{display:none}
.ks-g{flex:0 0 70vw;max-width:360px;margin:0;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;scroll-snap-align:start}
.ks-g img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.ks-g:hover img{transform:scale(1.04)}
/* visit */
.ks-visit{padding:84px 0 80px;background:var(--sand)}
.ks-visit-grid{display:grid;gap:26px}
.ks-addr{margin:16px 0 22px;font-size:1.125rem}
.ks-btns{display:grid;gap:10px}
.ks-visit .ks-btn-line{color:var(--bay)}
.ks-box{padding:24px 22px;border-radius:var(--r);background:var(--white);box-shadow:0 1px 0 var(--rule)}
.ks-box p{margin:0 0 12px;color:var(--muted)}
.ks-status-lg{margin:0 0 8px;background:var(--card)}
.ks-hours{list-style:none;margin:8px 0 0;padding:0}
.ks-hours li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule);font-variant-numeric:tabular-nums}
.ks-hours li:last-child{border:0}
.ks-hours li.is-today{color:var(--coral-d);font-weight:600}
.ks-small{margin:10px 0 0!important;font-size:1rem}
.ks-tel{display:inline-flex;align-items:center;min-height:48px;margin:0 0 12px;font:400 2.5rem/1 var(--disp);letter-spacing:.02em;text-decoration:none;color:var(--bay)}
.ks-box .ks-btn{width:100%}
/* foot */
.ks-foot{background:var(--bay-2);color:rgba(245,239,228,.84);padding:40px 0;font-size:1rem}
.ks-foot-logo{display:block;width:170px;color:var(--sand);margin-bottom:14px}
.ks-foot p{margin:0}
.ks-foot ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0 22px}
.ks-foot li a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;border-bottom:1px solid transparent}
.ks-foot li a:hover{border-color:var(--coral)}
/* dock */
.ks-dock{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--bay)}
.ks-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px;border-radius:12px;color:var(--sand);text-decoration:none;font:400 1.0625rem/1 var(--disp);letter-spacing:.08em;text-transform:uppercase}
.ks-dock svg{width:22px;height:22px}
.ks-dock .ks-dock-call{background:var(--coral);color:var(--bay-2)}
/* reveals */
.js [data-rv]{opacity:0;transform:translateY(16px);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.js [data-rv].is-in{opacity:1;transform:none}
@media (min-width:600px){.ks-btn{white-space:nowrap}.ks-cta .ks-btn-line{display:inline-flex}.ks-cta,.ks-btns{grid-template-columns:auto auto;justify-content:start}.ks-g{flex-basis:42vw}
 .ks-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;align-items:start}.ks-note{grid-column:1/-1}}
@media (min-width:960px){
 :root{--gut:40px;--dock:0px}
 body{padding-bottom:0}.ks-dock{display:none}
 .ks-bar{height:76px}.ks-brand{opacity:1;width:128px}
 .ks-bar:not(.is-solid) .ks-brand{opacity:0}
 .ks-nav{display:block;margin-left:28px}.ks-nav ul{display:flex;list-style:none;margin:0;padding:0}
 .ks-nav a{display:flex;align-items:center;min-height:44px;padding:2px 14px 0;font:400 1.125rem/1 var(--disp);letter-spacing:.1em;text-transform:uppercase;text-decoration:none}.ks-nav a:hover{color:var(--coral)}
 .ks-bar-call{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:2px 18px 0;border-radius:var(--r);border:2px solid currentColor;font:400 1.125rem/1 var(--disp);letter-spacing:.06em;text-decoration:none}
 .ks-hero{min-height:max(100vh,720px);align-items:stretch;background:var(--bay)}
 .ks-hero::after{display:none}
 .ks-hero-ph{left:auto;width:56%;inset:0 0 0 auto}
 .ks-hero-ph img{object-position:50% 50%;border-radius:0}
 .ks-hero-ph::before{content:"";position:absolute;inset:0 auto 0 -1px;width:140px;z-index:1;background:linear-gradient(90deg,var(--bay),rgba(24,48,73,0))}
 .ks-hero-in{width:44%;display:flex;flex-direction:column;justify-content:center;padding:110px 56px 56px max(40px,calc((100vw - 1200px)/2 + 40px))}
 .ks-logo{width:min(100%,440px)}
 .ks-lede{font-size:1.1875rem}
 .ks-hero-in .ks-status,.ks-hero-in .ks-rating{align-self:flex-start}
 .ks-inset{display:block;position:absolute;left:calc(44% + 28px);bottom:48px;z-index:2;width:210px;margin:0;padding:8px 8px 0;border-radius:var(--r);background:var(--sand);box-shadow:0 18px 40px -16px rgba(0,0,0,.55);transform:rotate(-3deg);animation:ks-rise .9s .5s cubic-bezier(.2,.7,.2,1) both}
 .ks-inset img{border-radius:10px;aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}
 .ks-inset figcaption{padding:8px 4px 10px;font:400 1.125rem/1 var(--disp);letter-spacing:.12em;text-transform:uppercase;color:var(--bay);text-align:center}
 .ks-visit .ks-h2{font-size:3.4rem}
 .ks-fish{padding:140px 0 130px}
 .ks-fish-grid{grid-template-columns:6fr 5fr 3fr;gap:0 40px;align-items:center}
 .ks-fish-a{width:100%;grid-column:2}.ks-fish-b{grid-column:3;width:100%;margin:180px 0 0 -90px;justify-self:start}
 .ks-menu{padding-top:130px}
 .ks-head{text-align:center}.ks-head .ks-p{margin-left:auto;margin-right:auto}
 .ks-chips-l{justify-content:center}
 .ks-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;padding-top:20px}
 .ks-sec{margin-top:36px}
 .ks-sec-h{position:relative}
 .ks-fam{padding:140px 0 120px}
 .ks-fam-grid{grid-template-columns:1.1fr .9fr;gap:72px;align-items:center}
 .ks-fam-img{justify-self:end;width:100%}
 .ks-gal{max-width:1200px;margin:40px auto 0;padding:0 40px;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:170px;gap:16px;overflow:visible}
 .ks-g{max-width:none;aspect-ratio:auto}
 .ks-g-0{grid-column:span 4;grid-row:span 2}.ks-g-1{grid-column:span 2;grid-row:span 2}
 .ks-g-2,.ks-g-3,.ks-g-4{grid-column:span 2;grid-row:span 2}
 .ks-visit{padding:140px 0 120px}
 .ks-visit-grid{grid-template-columns:1.2fr 1fr 1fr;gap:28px;align-items:start}
 .ks-btns{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js [data-rv]{opacity:1;transform:none}}
