/*
Theme Name: LIPI Investigator
Theme URI: https://www.TheLongIslandPI.com
Author: You
Author URI: https://www.TheLongIslandPI.com
Description: A clean, fast PI-focused theme for Long Island Private Investigator LLC with CPTs (Services, Case Studies, Testimonials), service-area taxonomy, shortcodes, and a native contact form.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lipi
*/
:root {
  --lipi-accent: #0f6fff;
  --lipi-dark: #0a0a0a;
  --lipi-mid: #1c1c1c;
  --lipi-light: #f7f7f7;
  --lipi-gold: #c8a96a;
  --lipi-silver: #c0c0c0;
}
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; color:#222; background:#fff; line-height:1.6; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }
header.site-header { background:var(--lipi-dark); color:#fff; position:sticky; top:0; z-index:10; }
.site-header .topbar { display:flex; gap:16px; align-items:center; justify-content:space-between; padding:10px 0; }
.site-title a{ color:#fff; text-decoration:none; font-weight:700; letter-spacing:.5px; }
nav.primary-nav a { color:#fff; text-decoration:none; padding:14px 12px; display:inline-block; }
nav.primary-nav a:hover { text-decoration:underline; }
.header-cta a.btn { background:var(--lipi-gold); color:#121212; padding:10px 14px; border-radius:6px; font-weight:700; }
.hero { background:linear-gradient(180deg, #0a0a0a 0%, #151515 100%); color:#fff; padding:70px 0; }
.hero h1 { font-size: clamp(28px, 5vw, 56px); margin:0 0 10px; }
.hero p { font-size: clamp(16px, 2.4vw, 22px); opacity:.9; }
.hero .actions { display:flex; gap:10px; margin-top:18px; flex-wrap:wrap; }
.btn { display:inline-block; border-radius:8px; padding:12px 16px; text-decoration:none; font-weight:600; }
.btn-primary { background:var(--lipi-accent); color:#fff; }
.btn-outline { border:2px solid #fff; color:#fff; }
.section { padding:60px 0; }
.section h2 { font-size: clamp(22px, 4vw, 36px); margin-top:0; }
.grid { display:grid; gap:20px; }
.grid-3 { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.card { border:1px solid #e9e9e9; border-radius:10px; padding:18px; background:#fff; }
.card h3 { margin:0 0 8px; }
.badge { display:inline-block; padding:4px 8px; border-radius:999px; font-size:12px; background: #eef2ff; }
blockquote.testimonial { border-left:4px solid var(--lipi-gold); padding-left:12px; margin:0; font-style:italic; background:#fff; }
footer.site-footer { background:#0b0b0b; color:#ddd; padding:40px 0; }
footer a { color:#fff; }
.footer-cols { display:grid; gap:16px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.small { font-size:13px; opacity:.8; }
form.lipi-contact { display:grid; gap:12px; max-width:560px; }
form.lipi-contact input, form.lipi-contact textarea { width:100%; padding:12px; border:1px solid #ddd; border-radius:8px; background:#fff; }
.alert { padding:12px 14px; border-radius:8px; }
.alert-success { background:#e8f7ee; border:1px solid #b8e6cc; }
.alert-error { background:#feecec; border:1px solid #f3b2b2; }
.service-areas ul{ columns: 2; padding-left: 18px; }
@media (max-width: 600px){
  .header-cta .btn { padding:10px 12px; }
}