/*
Theme Name: 007AJ Realtor
Theme URI: https://wordpress.007aj.com/shop/
Author: 007AJ
Author URI: https://wordpress.007aj.com/
Description: A mobile-first real estate theme for agents and brokerages, with four one-click designs (skins), property, neighbourhood and agent pages, and lead-capture landing pages. Pairs with the 007AJ Realtor Suite plugin for listings, map search, lead capture and CRM.
Version: 1.0.0
Requires at least: 6.3
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: 007aj-realtor
Tags: one-column, custom-menu, custom-logo, featured-images, theme-options, translation-ready, blog, e-commerce
*/

/* ---- Skins: CSS variables ---- */
:root,.skin-modern{--c-primary:#0b3d91;--c-accent:#c9a227;--c-dark:#0a1f44;--c-bg:#ffffff;--c-soft:#f3f6fb;--c-text:#1d2433;--c-muted:#5b6475;--c-line:#e3e6ec;--f-head:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--f-body:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--radius:10px;--hero:linear-gradient(135deg,#0a1f44 0%,#0b3d91 60%,#1d5fc7 100%)}
.skin-luxury{--c-primary:#111111;--c-accent:#b8975a;--c-dark:#0b0b0b;--c-bg:#ffffff;--c-soft:#f7f4ee;--c-text:#1a1a1a;--c-muted:#6b6458;--c-line:#e8e1d4;--f-head:Georgia,"Times New Roman",serif;--radius:2px;--hero:linear-gradient(135deg,#0b0b0b 0%,#2b2620 100%)}
.skin-coastal{--c-primary:#0e7c86;--c-accent:#f2a65a;--c-dark:#064a50;--c-bg:#ffffff;--c-soft:#eef8f7;--c-text:#17323a;--c-muted:#4f6a70;--c-line:#d6ebea;--radius:16px;--hero:linear-gradient(135deg,#064a50 0%,#0e7c86 55%,#4fb3bf 100%)}
.skin-urban{--c-primary:#e63946;--c-accent:#ffd166;--c-dark:#1b1b1f;--c-bg:#ffffff;--c-soft:#f4f4f6;--c-text:#1b1b1f;--c-muted:#5c5c66;--c-line:#e4e4e9;--f-head:"Arial Black","Helvetica Neue",Arial,sans-serif;--radius:0;--hero:linear-gradient(135deg,#1b1b1f 0%,#33333b 100%)}
body{--ajrs-accent:var(--c-primary);--ajrs-accent-2:var(--c-accent);--ajrs-text:var(--c-text);--ajrs-muted:var(--c-muted);--ajrs-line:var(--c-line);--ajrs-radius:var(--radius)}

/* ---- Base (mobile first) ---- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f-body);color:var(--c-text);background:var(--c-bg);line-height:1.6;font-size:16px}
img{max-width:100%;height:auto}
a{color:var(--c-primary)}
h1,h2,h3,h4{font-family:var(--f-head);line-height:1.2;color:var(--c-text)}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.screen-reader-text:focus{clip:auto;width:auto;height:auto;background:#fff;padding:.5rem;z-index:1000}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}
.btn{display:inline-block;background:var(--c-primary);color:#fff;padding:.8rem 1.3rem;border-radius:var(--radius);text-decoration:none;font-weight:700;border:0;min-height:44px}
.btn--accent{background:var(--c-accent);color:#111}
.btn--ghost{background:transparent;border:2px solid currentColor;color:#fff}
.section{padding:2.5rem 0}.section--soft{background:var(--c-soft)}
.section__title{font-size:1.6rem;margin:0 0 1rem}

/* ---- Header ---- */
.site-header{position:sticky;top:0;z-index:50;background:var(--c-bg);border-bottom:1px solid var(--c-line)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:1rem}
.site-title{font-family:var(--f-head);font-weight:800;font-size:1.2rem;text-decoration:none;color:var(--c-text)}
.site-title span{color:var(--c-primary)}
.custom-logo{max-height:48px;width:auto}
.nav-toggle{background:none;border:1px solid var(--c-line);border-radius:6px;padding:.5rem .7rem;min-height:44px;min-width:44px;cursor:pointer;font-size:1.2rem;color:var(--c-text)}
.primary-nav{display:none;position:absolute;left:0;right:0;top:64px;background:var(--c-bg);border-bottom:1px solid var(--c-line);padding:.5rem 1rem 1rem}
.primary-nav.is-open{display:block}
.primary-nav ul{list-style:none;margin:0;padding:0}
.primary-nav a{display:block;padding:.75rem 0;text-decoration:none;color:var(--c-text);font-weight:600;border-bottom:1px solid var(--c-line)}
.header-cta{display:none}

/* ---- Hero ---- */
.hero{background:var(--hero);color:#fff;padding:3rem 0 2.5rem;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:90px;background:url("assets/skyline.svg") repeat-x bottom/auto 90px;opacity:.18;pointer-events:none}
.hero h1{color:#fff;font-size:2rem;margin:0 0 .5rem}
.hero p{font-size:1.05rem;opacity:.92;margin:0 0 1.2rem}
.hero-search{display:grid;grid-template-columns:1fr;gap:.5rem;background:#fff;padding:.6rem;border-radius:var(--radius);position:relative;z-index:1}
.hero-search input,.hero-search select{width:100%;padding:.8rem;border:1px solid var(--c-line);border-radius:6px;font:inherit;min-height:48px}
.hero-search .btn{width:100%}

/* ---- Cards / blocks ---- */
.cta-band{background:var(--c-dark);color:#fff;padding:2rem 0;text-align:center}
.cta-band h2{color:#fff}
.agent-card{display:grid;grid-template-columns:1fr;gap:1rem;align-items:center;background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--radius);padding:1rem}
.agent-card__photo{width:120px;height:120px;border-radius:50%;object-fit:cover;background:var(--c-soft);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:800;color:var(--c-primary)}
.agent-grid{display:grid;grid-template-columns:1fr;gap:1rem}
.page-header{background:var(--c-soft);padding:1.5rem 0;border-bottom:1px solid var(--c-line)}
.page-header h1{margin:0;font-size:1.6rem}
.content-area{padding-top:1.5rem;padding-bottom:3rem}
.entry-content>*{max-width:100%}

/* ---- Landing pages ---- */
.landing{min-height:100vh;background:var(--hero);color:#fff;padding:2rem 0}
.landing .container{max-width:1000px}
.landing__grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.landing__panel{background:#fff;color:var(--c-text);border-radius:var(--radius);padding:1.2rem}
.landing h1{color:#fff;font-size:2rem}
.landing ul.benefits{padding-left:1.2rem}
.landing .brand{color:#fff;text-decoration:none;font-weight:800}

/* ---- Footer ---- */
.site-footer{background:var(--c-dark);color:#cfd6e4;padding:2rem 0;font-size:.9rem}
.site-footer a{color:#fff}
.footer-grid{display:grid;grid-template-columns:1fr;gap:1rem}
.site-footer .ajrs-compliance{color:#aab3c5;border-color:rgba(255,255,255,.15)}

/* ---- Tablet / desktop ---- */
@media (min-width:640px){.hero h1{font-size:2.6rem}.hero-search{grid-template-columns:2fr 1fr 1fr auto}.hero-search .btn{width:auto}.agent-grid{grid-template-columns:repeat(2,1fr)}.agent-card{grid-template-columns:120px 1fr}.footer-grid{grid-template-columns:2fr 1fr 1fr}.landing__grid{grid-template-columns:1.1fr 1fr}}
@media (min-width:960px){.nav-toggle{display:none}.primary-nav{display:block;position:static;padding:0;border:0;background:none}.primary-nav ul{display:flex;gap:1.4rem}.primary-nav a{border:0;padding:.4rem 0}.header-cta{display:inline-block}.hero{padding:5rem 0 4rem}.hero h1{font-size:3.2rem}.section{padding:4rem 0}.agent-grid{grid-template-columns:repeat(3,1fr)}}
