/* estateinlajolla.com - Generated Theme */
:root {
  --primary: #1a3a5c;
  --accent: #c9a84c;
  --bg: #faf8f5;
  --text: #333;
  --light: #f8f8f8;
  --white: #fff;
  --shadow: 0 2px 12px rgba(0,0,0,0.08);
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: 'Georgia', 'Times New Roman', serif; color:var(--text); background:var(--bg); line-height:1.7; }
a { color:var(--primary); text-decoration:none; }
a:hover { color:var(--accent); }
img { max-width:100%; height:auto; }

header {
  background:var(--primary); color:var(--white); padding:0;
  position:sticky; top:0; z-index:100; box-shadow:var(--shadow);
}
.nav-container {
  max-width:1200px; margin:0 auto; padding:1rem 2rem;
  display:flex; justify-content:space-between; align-items:center;
}
.logo { font-size:1.5rem; font-weight:700; color:var(--white); }
.logo span { color:var(--accent); }
nav a { color:rgba(255,255,255,0.9); margin-left:1.5rem; font-size:0.95rem; }
nav a:hover { color:var(--accent); }
.menu-toggle { display:none; background:none; border:none; color:var(--white); font-size:1.5rem; cursor:pointer; }

.hero {
  background:linear-gradient(135deg, var(--primary), var(--accent));
  color:var(--white); text-align:center; padding:5rem 2rem;
}
.hero h1 { font-size:2.8rem; margin-bottom:1rem; }
.hero p { font-size:1.2rem; opacity:0.9; max-width:700px; margin:0 auto; }

.container { max-width:1100px; margin:0 auto; padding:3rem 2rem; }
.section { margin-bottom:3rem; }
.section h2 { color:var(--primary); font-size:2rem; margin-bottom:1rem; border-bottom:3px solid var(--accent); padding-bottom:0.5rem; display:inline-block; }
.section p { margin-bottom:1rem; }

.grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px,1fr)); gap:2rem; margin:2rem 0; }
.card {
  background:var(--white); border-radius:12px; padding:2rem;
  box-shadow:var(--shadow); transition:transform 0.3s;
}
.card:hover { transform:translateY(-4px); }
.card h3 { color:var(--primary); margin-bottom:0.5rem; }

.cta-box {
  background:linear-gradient(135deg, var(--primary), var(--accent));
  color:var(--white); text-align:center; padding:3rem 2rem; border-radius:12px; margin:2rem 0;
}
.cta-box h2 { margin-bottom:1rem; }
.btn {
  display:inline-block; background:var(--accent); color:var(--white);
  padding:0.8rem 2rem; border-radius:8px; font-weight:600; margin-top:1rem;
}
.btn:hover { opacity:0.9; color:var(--white); }

footer {
  background:var(--primary); color:rgba(255,255,255,0.8); text-align:center; padding:2rem;
}
footer a { color:var(--accent); }

.blog-list { list-style:none; }
.blog-list li { margin-bottom:1.5rem; padding-bottom:1.5rem; border-bottom:1px solid #eee; }
.blog-list li h3 a { color:var(--primary); }
.blog-list li p { color:#666; }

.breadcrumb { font-size:0.9rem; color:#888; margin-bottom:1.5rem; }
.breadcrumb a { color:var(--primary); }

@media(max-width:768px) {
  .nav-container { flex-wrap:wrap; }
  nav { display:none; width:100%; padding-top:1rem; }
  nav.active { display:flex; flex-direction:column; }
  nav a { margin:0.5rem 0; }
  .menu-toggle { display:block; }
  .hero h1 { font-size:2rem; }
  .grid { grid-template-columns:1fr; }
}
