/* APR CMS — scoped styles so the existing WordPress theme remains untouched. */
.apr-directory,.apr-form-wrap,.apr-profile{--apr-ink:#171717;--apr-paper:#f7f5f0;--apr-accent:#b86f31;--apr-line:#ddd7ce;--apr-muted:#68645e;color:var(--apr-ink);font-family:inherit}
.apr-directory{background:var(--apr-paper);padding:clamp(24px,4vw,56px);border-radius:4px}.apr-hero{max-width:800px;padding:10px 0 34px}.apr-kicker{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--apr-accent);margin-bottom:12px}.apr-hero h1,.apr-form-intro h1{font-size:clamp(38px,5vw,68px);line-height:.98;margin:0 0 18px;font-weight:800}.apr-hero p,.apr-form-intro p{font-size:18px;line-height:1.6;color:var(--apr-muted);max-width:680px}.apr-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;padding:20px;background:#fff;border:1px solid var(--apr-line);margin:20px 0 28px}.apr-filters label,.apr-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.apr-filters label span,.apr-form label span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.apr-filters input,.apr-filters select,.apr-form input,.apr-form select,.apr-form textarea{border:1px solid #cfc8bf;background:#fff;border-radius:2px;padding:13px 14px;font:inherit;font-weight:400;color:var(--apr-ink);box-sizing:border-box;width:100%}.apr-filters button,.apr-submit{align-self:end;border:0;background:var(--apr-ink);color:#fff;padding:14px 22px;font-weight:800;cursor:pointer}.apr-results-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:0 0 18px;font-size:14px}.apr-results-head a,.apr-link{color:var(--apr-ink);font-weight:800;text-decoration:none}.apr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.apr-card{background:#fff;border:1px solid var(--apr-line);overflow:hidden}.apr-card-media{display:block;aspect-ratio:4/3;background:#e9e5dd;overflow:hidden;text-decoration:none}.apr-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.apr-card:hover .apr-card-media img{transform:scale(1.03)}.apr-placeholder{display:flex;align-items:center;justify-content:center;height:100%;font-size:13px;letter-spacing:.15em;color:#777;min-height:180px}.apr-card-body{padding:20px}.apr-card-tags{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:11px;color:#726d66;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.apr-badge{background:var(--apr-accent);color:#fff!important;padding:4px 7px}.apr-card h2{font-size:25px;line-height:1.05;margin:0 0 7px}.apr-card h2 a{color:inherit;text-decoration:none}.apr-company{margin:0 0 8px;font-weight:600}.apr-company.big{font-size:19px}.apr-location{font-size:14px;color:var(--apr-muted);margin:8px 0 18px}.apr-link{display:inline-block;border-bottom:1px solid var(--apr-accent);padding-bottom:2px}.apr-empty{background:#fff;padding:50px;text-align:center;border:1px solid var(--apr-line)}.apr-pagination{display:flex;gap:7px;justify-content:center;margin-top:30px}.apr-pagination a{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--apr-line);color:inherit;text-decoration:none}.apr-pagination a.is-current{background:var(--apr-ink);color:#fff}.apr-form-wrap{max-width:1000px;margin:auto;padding:clamp(20px,4vw,55px)}.apr-form-intro{margin-bottom:35px}.apr-form{background:var(--apr-paper);padding:clamp(22px,4vw,42px);border:1px solid var(--apr-line)}.apr-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.apr-form-grid.single{grid-template-columns:1fr}.apr-check{flex-direction:row!important;align-items:flex-start;margin:10px 0 20px;color:var(--apr-muted);font-weight:400!important}.apr-check input{width:auto;margin-top:4px}.apr-submit{width:auto}.apr-success{padding:18px 20px;background:#edf6ee;border-left:4px solid #3b7a45;margin:0 0 24px}.apr-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.apr-profile{padding:clamp(20px,4vw,55px)}.apr-profile-top{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:40px;align-items:center;margin-bottom:55px}.apr-profile-photo{aspect-ratio:4/3;background:#e9e5dd;overflow:hidden}.apr-profile-photo img{width:100%;height:100%;object-fit:cover}.apr-profile-top h1{font-size:clamp(38px,5vw,70px);line-height:1;margin:0 0 8px}.apr-profile-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:55px;border-top:1px solid var(--apr-line);padding-top:35px}.apr-profile h2{font-size:27px;margin:0 0 15px}.apr-prose{line-height:1.75;color:#494640;margin-bottom:40px}.apr-contact{background:var(--apr-paper);padding:25px}.apr-contact p{display:flex;flex-direction:column;gap:4px;padding:13px 0;margin:0;border-bottom:1px solid var(--apr-line)}.apr-contact p strong{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#777}.apr-contact a{color:inherit}.apr-social{display:flex;gap:10px;margin-top:20px}.apr-social a{border:1px solid var(--apr-line);padding:8px 12px;text-decoration:none}
@media(max-width:900px){.apr-filters,.apr-grid,.apr-form-grid,.apr-profile-top,.apr-profile-grid{grid-template-columns:1fr}.apr-filters button{width:100%}.apr-results-head{align-items:flex-start;flex-direction:column}.apr-profile-top{gap:24px}.apr-profile-top h1{font-size:46px}}
.apr-featured{background:#171717;color:#fff!important;padding:4px 7px}.apr-filter-check{flex-direction:row!important;align-items:center!important;justify-content:flex-start;padding-top:25px}.apr-filter-check input{width:auto!important}.apr-reviews,.apr-contact-form{margin-top:45px;border-top:1px solid var(--apr-line);padding-top:30px}.apr-rating{font-size:14px;color:var(--apr-accent);margin-left:8px}.apr-review{background:var(--apr-paper);padding:20px;margin:12px 0;border:1px solid var(--apr-line)}.apr-review strong{display:block;margin-bottom:5px}.apr-review>span{color:var(--apr-accent);letter-spacing:2px}.apr-muted{color:var(--apr-muted)}


/* Homepage-style tile: Katalog Rzemieślników Polskich. */
.apr-directory-tile{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;text-decoration:none;width:100%;min-height:182px;padding:18px 14px 16px;background:#faf9f7;border:1px solid #ddd3c4;border-radius:6px;color:#171717;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
.apr-directory-tile:hover{border-color:#c97714;box-shadow:0 5px 18px rgba(49,32,11,.08);transform:translateY(-1px);color:#171717;}
.apr-directory-tile__icon{width:46px;height:46px;border:1.5px solid #c97714;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 0 12px;flex:0 0 auto;}
.apr-directory-tile__icon svg{width:20px;height:20px;fill:none;stroke:#c97714;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;}
.apr-directory-tile__title{display:block;font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.15;font-weight:700;max-width:170px;margin:0 0 14px;color:#111;}
.apr-directory-tile__description{display:block;font-size:10px;line-height:1.45;color:#6e7780;max-width:178px;}
.apr-directory-tile--injected{margin:0;}
@media(max-width:900px){.apr-directory-tile{min-height:170px}.apr-directory-tile__title{font-size:15px}.apr-directory-tile__description{font-size:11px}}


/* =========================================================
   APR MAPA RZEMIOSŁA
   ========================================================= */
.apr-map-app{--apr-ink:#171717;--apr-paper:#f7f5f0;--apr-accent:#b86f31;--apr-line:#ddd7ce;--apr-muted:#68645e;background:var(--apr-paper);padding:clamp(20px,4vw,56px);border-radius:4px;color:var(--apr-ink);font-family:inherit}
.apr-map-hero{max-width:850px;padding:4px 0 22px}
.apr-map-hero h1{font-size:clamp(38px,5vw,68px);line-height:.98;margin:0 0 16px;font-weight:800}
.apr-map-hero p{font-size:18px;line-height:1.6;color:var(--apr-muted);max-width:760px;margin:0}
.apr-map-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:12px;padding:18px;background:#fff;border:1px solid var(--apr-line);margin:8px 0 20px}
.apr-map-filters label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}
.apr-map-filters label span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.apr-map-filters input,.apr-map-filters select{border:1px solid #cfc8bf;background:#fff;border-radius:2px;padding:13px 14px;font:inherit;font-weight:400;color:var(--apr-ink);box-sizing:border-box;width:100%;min-width:0}
.apr-map-filters button{align-self:end;border:0;background:var(--apr-ink);color:#fff;padding:14px 18px;font-weight:800;cursor:pointer;min-height:46px}
.apr-map-filters .apr-map-reset{background:#fff;color:var(--apr-ink);border:1px solid var(--apr-line)}
.apr-map-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:18px;align-items:stretch}
.apr-map-canvas{height:650px;min-height:420px;background:#e9e5dd;border:1px solid var(--apr-line);z-index:1}
.apr-map-results{background:#fff;border:1px solid var(--apr-line);min-height:420px;max-height:650px;overflow:auto}
.apr-map-results-head{display:flex;gap:6px;align-items:baseline;padding:18px 20px;border-bottom:1px solid var(--apr-line)}
.apr-map-results-head strong{font-size:25px}
.apr-map-results-head span{color:var(--apr-muted);font-size:14px}
.apr-map-list{display:flex;flex-direction:column}
.apr-map-item{display:block;padding:16px 20px;border:0;border-bottom:1px solid var(--apr-line);text-decoration:none;color:inherit;cursor:pointer;background:#fff;text-align:left;width:100%;font:inherit}
.apr-map-item:hover,.apr-map-item:focus{background:#faf8f4}
.apr-map-item.is-active{box-shadow:inset 4px 0 0 var(--apr-accent)}
.apr-map-item-title{display:block;font-weight:800;font-size:17px;margin-bottom:4px}
.apr-map-item-meta{display:block;color:var(--apr-muted);font-size:13px;line-height:1.45}
.apr-map-item-badge{display:inline-block;margin-top:7px;background:var(--apr-accent);color:#fff;padding:3px 6px;font-size:10px;font-weight:800;text-transform:uppercase}
.apr-map-empty{padding:35px 20px;color:var(--apr-muted);text-align:center}
.apr-map-note{margin:0;padding:14px 20px;background:#faf8f4;border-top:1px solid var(--apr-line);font-size:12px;line-height:1.5;color:var(--apr-muted)}
.apr-map-attribution{font-size:11px;color:#777;margin:8px 0 0}
.apr-map-popup h3{font-size:17px;margin:0 0 5px}
.apr-map-popup p{margin:3px 0;color:#68645e;font-size:13px}
.apr-map-popup a{display:inline-block;margin-top:7px;color:#171717;font-weight:800;text-decoration:none;border-bottom:1px solid #b86f31}
.apr-map-pin{background:#171717;border:3px solid #fff;border-radius:50%;box-shadow:0 1px 5px rgba(0,0,0,.3);width:18px!important;height:18px!important}
.apr-map-pin.featured{background:#b86f31}
@media(max-width:1000px){
  .apr-map-filters{grid-template-columns:1fr 1fr}
  .apr-map-filters button{width:100%}
  .apr-map-layout{grid-template-columns:1fr}
  .apr-map-results{max-height:520px}
  .apr-map-canvas{height:520px}
}
@media(max-width:600px){
  .apr-map-filters{grid-template-columns:1fr}
  .apr-map-canvas{height:430px;min-height:360px}
}
