:root{--ckf-ink:#19354d;--ckf-muted:#677687;--ckf-accent:#1767a2;--ckf-line:#dfe7ed;--ckf-soft:#f5f8fa}
.ckf-directory,.ckf-featured,.ckf-form,.ckf-business,.ckf-reviews,.ckf-map-wrap{font-family:inherit;color:var(--ckf-ink);box-sizing:border-box}
.ckf-directory *, .ckf-featured *, .ckf-form *, .ckf-business *, .ckf-reviews *, .ckf-map-wrap *{box-sizing:border-box}
.ckf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:20px 0}
.ckf-card{border:1px solid var(--ckf-line);background:#fff;display:flex;flex-direction:column;overflow:hidden;min-width:0;transition:box-shadow .2s ease, transform .2s ease}
.ckf-card:hover{box-shadow:0 9px 28px #19354d1b;transform:translateY(-2px)}
.ckf-card-visual{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;overflow:hidden;background:var(--ckf-soft);text-decoration:none}
.ckf-card-img{object-fit:cover;width:100%;height:100%;margin:0!important;display:block;transition:transform .3s ease}
.ckf-card:hover .ckf-card-img{transform:scale(1.035)}
.ckf-card-placeholder{font-size:64px;font-weight:800;color:#b2c5d4;text-transform:uppercase}
.ckf-card-body{padding:17px 19px;display:flex;flex-direction:column;gap:7px;flex:1}
.ckf-card-body h3{font-size:clamp(17px,1.4vw,21px)!important;line-height:1.25;margin:0!important;font-weight:750}
.ckf-card-body h3 a{color:var(--ckf-ink)!important;text-decoration:none!important}
.ckf-card-body h3 a:hover,.ckf-link:hover{color:var(--ckf-accent)!important}
.ckf-kicker{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.09em;color:var(--ckf-accent)}
.ckf-location{font-size:13px;color:var(--ckf-muted);margin:0!important}
.ckf-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--ckf-line);padding-top:14px;margin-top:auto;flex-wrap:wrap}
.ckf-stars{font-weight:750;color:#d99018}.ckf-stars small{font-size:12px;color:var(--ckf-muted);font-weight:400}
.ckf-link{font-size:13px;font-weight:700;text-decoration:none!important;color:var(--ckf-accent)}
.ckf-filter{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end;padding:18px;background:var(--ckf-soft);border:1px solid var(--ckf-line);margin-bottom:14px}
.ckf-filter label,.ckf-form label{display:flex;flex-direction:column;font-size:13px;color:var(--ckf-ink);font-weight:650;gap:7px}
.ckf-filter input,.ckf-filter select,.ckf-form input:not([type=checkbox]):not([type=file]),.ckf-form select,.ckf-form textarea{box-sizing:border-box;width:100%;border:1px solid #c7d4df;background:#fff;padding:11px 12px;color:var(--ckf-ink);font:inherit;font-size:15px;border-radius:3px;min-height:44px;box-shadow:none}
.ckf-filter input:focus,.ckf-filter select:focus,.ckf-form input:focus,.ckf-form select:focus,.ckf-form textarea:focus{outline:2px solid #70b0d2;outline-offset:1px}
.ckf-btn{background:var(--ckf-accent)!important;color:#fff!important;text-decoration:none!important;border:1px solid var(--ckf-accent)!important;padding:11px 18px!important;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-weight:700;font-size:14px!important;line-height:1.3;cursor:pointer;border-radius:3px;box-shadow:none}
.ckf-btn:hover{background:#0d4f82!important;color:#fff!important}
.ckf-btn-secondary{background:#fff!important;color:var(--ckf-accent)!important}
.ckf-btn-secondary:hover{background:var(--ckf-soft)!important;color:var(--ckf-ink)!important}
.ckf-count{font-size:13px;color:var(--ckf-muted)!important;margin:10px 0!important}
.ckf-pages{display:flex;gap:5px;flex-wrap:wrap;margin:22px 0}.ckf-pages a{border:1px solid var(--ckf-line);padding:8px 12px;text-decoration:none!important}.ckf-pages .is-current{background:var(--ckf-accent);color:#fff!important}
.ckf-section-label{font-weight:750;text-transform:uppercase;color:var(--ckf-accent);font-size:12px;letter-spacing:.12em}.ckf-featured .ckf-grid{grid-template-columns:minmax(0,1fr);max-width:420px}
.ckf-empty{border:1px dashed var(--ckf-line);background:var(--ckf-soft);padding:20px;color:var(--ckf-muted)}
.ckf-map{height:520px;width:100%;background:#e3edf2;z-index:0;border:1px solid var(--ckf-line)}.ckf-map-caption{font-size:11px;margin-top:6px;color:var(--ckf-muted)}
.ckf-map-wrap{margin:18px 0 26px}.ckf-map-popup{font-size:13px;min-width:145px}.ckf-map-popup b{display:block;font-size:14px;margin-bottom:4px}.ckf-map-popup p{margin:5px 0}.ckf-map-popup a{color:var(--ckf-accent);font-weight:650}
.ckf-form{padding:22px;background:#fff;border:1px solid var(--ckf-line);margin:18px 0 24px;display:grid;gap:15px}
.ckf-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ckf-form-wide{display:flex;flex-direction:column;gap:7px}.ckf-form textarea{resize:vertical;min-height:90px}
.ckf-form .ckf-map{margin:0}.ckf-form h3{margin:6px 0 -7px;font-size:20px}.ckf-form p{margin:0 0 6px}.ckf-intro{padding:12px 15px;background:#f1f7fb;border-left:3px solid var(--ckf-accent);font-size:14px}
.ckf-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;line-height:1.5;font-weight:400!important}
.ckf-consent input[type=checkbox]{margin:4px 0 0;flex:none;width:17px;height:17px}
.ckf-honeypot{display:none!important;position:absolute!important;left:-10000px!important;height:0!important;width:0!important;overflow:hidden!important}.ckf-notice{padding:14px 16px;margin:16px 0;border:1px solid #b5d9ba;border-left:4px solid #3b9152;background:#f2faf4;color:#195a2a}
.ckf-business{background:var(--ckf-soft);border:1px solid var(--ckf-line);padding:22px;margin:25px 0;display:grid;gap:16px}
.ckf-business-main p{margin:12px 0;font-size:15px}.ckf-rating-big{display:flex;align-items:center;gap:7px;margin:0 0 15px}.ckf-rating-big strong{font-size:27px}.ckf-rating-big span{color:#d99920;font-size:22px}.ckf-rating-big small{font-size:13px;color:var(--ckf-muted)}
.ckf-reveal-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:14px 0}.ckf-masked{letter-spacing:.03em}.ckf-reveal{background:transparent!important;border:0!important;padding:2px 0!important;min-height:0!important;color:var(--ckf-accent)!important;cursor:pointer;font-size:13px;font-weight:700;text-decoration:underline}.ckf-reveal:disabled{opacity:.6;cursor:wait}
.ckf-hours{margin-top:20px}.ckf-hours>div{margin-top:8px;line-height:1.7;font-size:14px}.ckf-actions{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}
.ckf-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.ckf-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;height:100%;margin:0}
.ckf-reviews{margin:30px 0}.ckf-reviews h2{margin:0 0 16px!important}.ckf-review{padding:16px 0;border-bottom:1px solid var(--ckf-line)}.ckf-review-heading{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.ckf-review-stars{color:#d99621}.ckf-review-heading time{font-size:12px;color:var(--ckf-muted);margin-left:auto}.ckf-review p{margin:9px 0!important;font-size:15px;line-height:1.6}.ckf-review-form{max-width:750px}
.ckf-map-loading{display:flex;justify-content:center;align-items:center;color:var(--ckf-muted);font-size:14px;text-align:center;padding:20px}
@media(max-width:1050px){.ckf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ckf-filter{grid-template-columns:1fr 1fr}.ckf-filter button{align-self:end}}
@media(max-width:640px){.ckf-grid{grid-template-columns:1fr;gap:13px}.ckf-filter,.ckf-form-grid{grid-template-columns:1fr}.ckf-form{padding:15px}.ckf-business{padding:14px}.ckf-map{height:350px}.ckf-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ckf-map-caption{font-size:10px}}

.ckf-drag-pin{background:transparent;border:0}.ckf-drag-pin span{position:absolute;left:5px;top:5px;width:23px;height:23px;border:3px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#1671b5;box-shadow:0 2px 7px #001c3d65}.ckf-drag-pin span:after{content:"";position:absolute;left:7px;top:7px;width:4px;height:4px;border-radius:50%;background:#fff}

/* 1.1 – katalog regionalny, czytelne klauzule i prywatny formularz „Szukam…” */
.ckf-filter{grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(130px,1fr)) minmax(88px,auto)}
.ckf-privacy{font-size:12px!important;line-height:1.65;color:#5d6f7f;background:#f6f8fa;border-left:2px solid #a8bdca;padding:11px 14px;margin:3px 0!important}
.ckf-privacy a{color:#145b8f!important;text-decoration:underline}
.ckf-request-section{max-width:850px;margin:25px auto;font-family:inherit}
.ckf-request-head{border-bottom:1px solid var(--ckf-line);padding:0 0 12px}
.ckf-request-head h2{font-size:clamp(24px,3vw,32px);margin:8px 0}
.ckf-request-head p{font-size:15px;color:var(--ckf-muted);line-height:1.7}
.ckf-request-form{border:1px solid #dbe6ee;box-shadow:0 4px 18px #102d4310;margin-top:18px}
.ckf-field-hint{font-size:13px!important;color:var(--ckf-muted);font-weight:400;line-height:1.5}
.ckf-requests-table td{vertical-align:top}.ckf-requests-table td p{max-width:640px;white-space:pre-wrap;line-height:1.6}.ckf-requests-table select{max-width:160px}
@media(max-width:1080px){.ckf-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ckf-filter{grid-template-columns:1fr}.ckf-request-section{margin:12px 0}.ckf-privacy{font-size:12px}}

/* 1.3.2 - Autorska wyszukiwarka katalogu regionalnego, bez zależności JS. */
.ckf-search-hero{--ckf-hero-dark:#102f47;--ckf-hero-light:#205774;position:relative;isolation:isolate;overflow:hidden;width:100%;box-sizing:border-box;padding:clamp(26px,4.5vw,55px) clamp(18px,4vw,52px);background:linear-gradient(115deg,var(--ckf-hero-dark) 5%,#184562 65%,var(--ckf-hero-light) 100%);color:#fff;border:1px solid #ffffff18;box-shadow:0 12px 38px rgba(20,52,72,.15);font-family:inherit}
.ckf-search-hero *, .ckf-search-hero *:before, .ckf-search-hero *:after{box-sizing:border-box}
.ckf-search-hero:before{content:"";position:absolute;z-index:-1;width:380px;height:380px;border-radius:50%;right:-155px;top:-265px;background:#3e9acb1f;border:1px solid #ffffff26;box-shadow:0 0 0 65px #ffffff07,0 0 0 130px #ffffff05}
.ckf-search-hero:after{content:"";position:absolute;z-index:-1;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,#1a98b2,#69cbd9,#4f92bd)}
.ckf-search-hero-content{position:relative;max-width:1050px;margin:0 auto}
.ckf-search-hero-title{font-family:inherit!important;color:#fff!important;font-size:clamp(24px,3.1vw,37px)!important;font-weight:750!important;line-height:1.2!important;letter-spacing:-.035em;margin:0 0 9px!important}
.ckf-search-hero-desc{font-size:clamp(13px,1.5vw,16px)!important;color:#e0edf5!important;line-height:1.55!important;margin:0 0 22px!important}
.ckf-search-hero-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;max-width:1010px;margin:0!important}
.ckf-search-hero-label{position:absolute!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ckf-search-hero-field{position:relative;display:flex;align-items:center;min-width:0;box-shadow:0 5px 20px #061f3530;background:#fff;border:2px solid transparent;border-radius:5px;transition:border-color .2s ease}
.ckf-search-hero-field:focus-within{border-color:#77d1e1;outline:2px solid #fff5;outline-offset:2px}
.ckf-search-hero-icon{display:block;flex:none;margin-left:19px;color:#50758a}
.ckf-search-hero-field input[type=search]{flex:1;min-width:0;appearance:none;-webkit-appearance:none;display:block;width:100%;height:62px;min-height:0;margin:0!important;padding:14px 17px!important;font-family:inherit!important;font-size:clamp(15px,1.5vw,18px)!important;font-weight:500!important;line-height:1.3!important;border:0!important;border-radius:4px!important;background:transparent!important;color:#15354b!important;box-shadow:none!important;outline:0!important}
.ckf-search-hero-field input[type=search]::placeholder{color:#798e9d;opacity:1}
.ckf-search-hero-submit{display:flex;align-items:center;justify-content:center;gap:13px;min-height:66px;padding:12px 30px!important;border:0!important;border-radius:5px!important;background:#f2bc60!important;color:#18344a!important;font-family:inherit!important;font-size:16px!important;font-weight:750!important;white-space:nowrap;line-height:1.3!important;cursor:pointer;transition:background .15s ease,transform .15s ease}
.ckf-search-hero-submit:hover,.ckf-search-hero-submit:focus-visible{background:#ffd084!important;color:#102e45!important;transform:translateY(-1px)}
.ckf-search-hero-submit:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ckf-search-hero-foot{font-size:12px!important;color:#bcd3df!important;margin:13px 0 0!important;line-height:1.4!important}
@media(max-width:640px){.ckf-search-hero{padding:25px 19px 23px}.ckf-search-hero:before{width:270px;height:270px;top:-215px;right:-100px}.ckf-search-hero-form{grid-template-columns:1fr;gap:10px}.ckf-search-hero-field input[type=search]{height:57px;font-size:16px!important}.ckf-search-hero-submit{width:100%;min-height:54px}.ckf-search-hero-desc{margin-bottom:18px!important}}
@media(prefers-reduced-motion:reduce){.ckf-search-hero-submit,.ckf-search-hero-field{transition:none}.ckf-search-hero-submit:hover{transform:none}}
