/*
Theme Name: PridefulPlaces Clean
Theme URI: https://pridefulplaces.com
Author: PridefulPlaces (ChipzWorld)
Description: PridefulPlaces directory theme (clean rebuild) — businesses + members + perks + charities. No ads/AdSense.
Version: 6.0.9
License: GPLv2 or later
Text Domain: pridefulplaces
*/

:root{
  --pp-bg:#ffffff;
  --pp-card:#ffffff;
  --pp-text:#111827;
  --pp-muted:#6b7280;
  --pp-border: rgba(17,24,39,0.12);
  --pp-shadow: 0 10px 25px rgba(0,0,0,0.06);
  --pp-radius: 18px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background: linear-gradient(180deg, #ffffff 0%, #fbfbff 70%, #ffffff 100%);
  color: var(--pp-text);
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  line-height:1.45;
}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}

.pp-container{max-width:1120px;margin:0 auto;padding:0 18px}
.pp-header{
  position:sticky;top:0;z-index:50;
  background: rgba(255,255,255,0.82);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--pp-border);
}
.pp-header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:14px}
.pp-logo{display:flex;align-items:center;gap:12px}
.pp-mark{
  width:38px;height:38px;border-radius:12px;
  background: linear-gradient(90deg,#ff0000,#ff8a00,#ffe600,#00c853,#0091ea,#7c4dff,#e91e63);
  box-shadow: var(--pp-shadow);
}
.pp-brand{font-weight:900;letter-spacing:-0.02em}
.pp-nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pp-nav a{
  font-weight:800;
  padding:10px 12px;border-radius:14px;
  border:1px solid transparent;
}
.pp-nav a:hover{border-color:var(--pp-border);text-decoration:none;background:rgba(17,24,39,0.03)}
.pp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-weight:900;
  padding:10px 14px;border-radius:16px;
  border:1px solid var(--pp-border);
  background:#fff;
  box-shadow: 0 8px 20px rgba(0,0,0,0.04);
}
.pp-btn:hover{text-decoration:none;transform:translateY(-1px)}
.pp-btn.rainbow{
  border:0;
  color:#111;
  background: linear-gradient(90deg,#ff0000,#ff8a00,#ffe600,#00c853,#0091ea,#7c4dff,#e91e63);
}
.pp-btn.secondary{background:#fff}
.pp-main{padding:22px 0 60px}
.pp-hero{
  border:1px solid var(--pp-border);
  background: radial-gradient(1200px 260px at 10% -10%, rgba(233,30,99,0.13), transparent 60%),
              radial-gradient(1200px 260px at 90% -10%, rgba(124,77,255,0.12), transparent 60%),
              #ffffff;
  border-radius: 24px;
  box-shadow: var(--pp-shadow);
  padding: 22px;
  overflow:hidden;
}
.pp-hero h1{margin:0 0 6px 0;font-size: clamp(26px, 3vw, 36px);letter-spacing:-0.03em}
.pp-hero p{margin:0;color:var(--pp-muted);font-weight:700}
.pp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width: 980px){.pp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 640px){.pp-grid{grid-template-columns:1fr;} .pp-nav{gap:6px}}

.pp-card{
  background: var(--pp-card);
  border:1px solid var(--pp-border);
  border-radius: var(--pp-radius);
  padding: 16px;
  box-shadow: var(--pp-shadow);
}
.pp-card h2{margin:0 0 8px 0;font-size:18px;letter-spacing:-0.02em}
.pp-note{color:var(--pp-muted);font-weight:700}
.pp-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width: 720px){.pp-row{grid-template-columns:1fr;}}

.pp-field label{display:block;font-weight:900;margin:0 0 6px 0}
.pp-field input,.pp-field select,.pp-field textarea{
  width:100%;
  border:1px solid var(--pp-border);
  border-radius:14px;
  padding:11px 12px;
  font-weight:700;
  outline:none;
  background:#fff;
}
.pp-field textarea{resize:vertical}
.pp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}
.pp-divider{height:1px;background:var(--pp-border);margin:14px 0}
.pp-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:999px;
  border:1px solid var(--pp-border);
  font-weight:900;background:#fff;color:#111;
}
.pp-error{background:rgba(239,68,68,0.10);border:1px solid rgba(239,68,68,0.25);padding:10px 12px;border-radius:14px;font-weight:900}
.pp-success{background:rgba(34,197,94,0.10);border:1px solid rgba(34,197,94,0.25);padding:10px 12px;border-radius:14px;font-weight:900}

.pp-biz-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.pp-biz-title h3{margin:0;font-size:16px;letter-spacing:-0.02em}
.pp-small{font-size:13px;color:var(--pp-muted);font-weight:700}

.pp-footer{border-top:1px solid var(--pp-border);padding:24px 0;color:var(--pp-muted);font-weight:700}
