/*
 Theme Name:   Seminole Palms Child
 Theme URI:    https://seminolepalms.example
 Description:  Child theme for Astra to power the Seminole Palms HOA website
 Author:       Seminole Palms
 Template:     astra
 Version:      1.0.0
*/

:root {
  --primary: #0f4c5c;
  --accent: #e36414;
  --bg: #f7fbfc;
  --text: #122026;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji', sans-serif; color: var(--text); background: var(--bg); }
a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { max-width: 1120px; margin: 0 auto; padding: 0 1rem; }
.topbar { background: var(--primary); color: #fff; font-size: .9rem; }
.topbar .container { display:flex; gap:1rem; align-items:center; justify-content:space-between; padding:.5rem 1rem; }
.header { background: #fff; border-bottom: 1px solid #e5eef2; }
.nav { display:flex; align-items:center; justify-content:space-between; padding: 1rem 0; gap: 1rem; }
.logo { display:flex; align-items:center; gap:.6rem; font-weight: 700; font-size: 1.25rem; color: var(--primary); }
.menu { display:flex; gap:1rem; flex-wrap:wrap; }
.menu a { padding:.5rem .75rem; border-radius:.5rem; }
.menu a.btn { background: var(--primary); color:#fff; }
.alert { background: var(--accent); color:#fff; }
.alert .container { padding:.6rem 1rem; display:flex; justify-content:space-between; align-items:center; gap:1rem;}
.hero { background: linear-gradient(180deg, rgba(15,76,92,.1), rgba(15,76,92,.0)); }
.hero .container { display:grid; grid-template-columns: 1.2fr .8fr; gap:2rem; padding: 2.5rem 1rem; }
.hero h1 { margin:0 0 .5rem; font-size: 2.1rem; color: var(--primary); }
.hero p { margin:0 0 1rem; font-size:1.05rem; line-height:1.6; }
.cta-row { display:flex; gap:.75rem; flex-wrap:wrap; }
.btn { display:inline-block; padding:.7rem 1rem; border-radius:.6rem; border:1px solid var(--primary); color:var(--primary); font-weight:600; }
.btn.primary { background: var(--primary); color:#fff; }
/* .quicklinks { display:grid; grid-template-columns: repeat(4, 1fr); gap:1rem; margin:2rem 0; } */
.card { background:#fff; border:1px solid #e5eef2; border-radius:.8rem; padding:1rem; box-shadow: 0 2px 8px rgba(0,0,0,.03);}
.card h3 { margin-top:0; font-size:1.05rem; }
.grid-3 { display:grid; grid-template-columns: repeat(3, 1fr); gap:1rem; }
.section { padding: 2rem 0; }
.section h2 { margin:0 0 1rem; color: var(--primary); }
.footer { background:#0c3944; color:#cfe7ef; margin-top:2rem; }
.footer a { color:#fff; }
.footer .container { display:grid; grid-template-columns: 2fr 1fr 1fr; gap:1.5rem; padding:2rem 1rem; }
.badge { background:#f0f6f8; color:var(--primary); border:1px solid #d7e6ea; padding:.25rem .5rem; border-radius:999px; font-size:.8rem; }
.table { width:100%; border-collapse: collapse; }
.table th, .table td { border-bottom:1px solid #e7edf0; padding:.6rem; text-align:left; }
.kicker { text-transform:uppercase; letter-spacing:.08em; font-weight:700; font-size:.8rem; color:var(--accent); }
.small { font-size:.92rem; color:#41535a; }
.note { background:#fff7ed; border:1px solid #ffedd5; color:#7c2d12; padding:.75rem; border-radius:.6rem; }
.login-panel { max-width:420px; margin:2rem auto; }
input, select, textarea { width:100%; padding:.7rem .8rem; border-radius:.6rem; border:1px solid #d6e2e7; background:#fff; }
label { display:block; font-weight:600; margin:.6rem 0 .3rem; }
form .row { display:grid; grid-template-columns:1fr 1fr; gap: .8rem; }
form .actions { margin-top:1rem; display:flex; justify-content:flex-end; gap:.6rem; }

/* Minor style tweaks can go here */
.entry-title { color: var(--sp-primary); }
.ast-site-identity .site-title a { color: var(--sp-primary) !important; }
a.button, .ast-button { background: var(--sp-primary); border-color: var(--sp-primary); }
a.button:hover, .ast-button:hover { background: var(--sp-accent); border-color: var(--sp-accent); }
::selection {
    background: #ffe16b; /* highlight color */
}