/* =========================
   GLOBAL / BASE
========================= */
:root{
  --brand:#f97316;
  --brand2:#fb923c;
  --text:#111827;
  --muted:#6b7280;
  --bg:#f9fafb;
  --border: rgba(0,0,0,0.10);
}

*{ box-sizing:border-box; }

html, body{
  height: 100%;
}

body{
  margin:0;
  font-family: 'Poppins','Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial;
  background:var(--bg);
  color:var(--text);
}

main{
  flex: 1;   /* ✅ pushes footer down */
}

/* Container helper */
.container{
  width: 100%;
  max-width: 1440px;   /* ✅ was 1200px */
  margin: 0 auto;
  padding: 0 24px;     /* ✅ little more premium */
}

/* Buttons (generic) */
.btn{
  border: 1px solid var(--border);
  background: #fff;
  padding: 10px 14px;
  border-radius: 14px;
  cursor: pointer;
  text-decoration: none;
  font-weight: 800;
  color: var(--text);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.btn:hover{ filter: brightness(0.98); }

.btn.primary{
  border: none;
  background: linear-gradient(135deg, var(--brand), var(--brand2));
  color: #111827;
}

/* Inputs (generic) */
.input{
  width:100%;
  height:46px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.12);
  padding: 0 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}
.input:focus{
  border-color: var(--brand);
  box-shadow:0 0 0 4px rgba(249,115,22,.18);
}

/* =========================
   FOOTER
========================= */
.site-footer{
  background:#111827;
  color:#e5e7eb;
  margin-top:40px;
}


.footer-inner{
  max-width: 1440px;   /* ✅ was 1200px */
  margin: 0 auto;
  padding: 30px 24px;
  display:grid;
  gap:20px;
}

.foot-title{ font-weight:800; }
.foot-sub{ font-size:13px; color:#9ca3af; }

.foot-links{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
}
.foot-links a{
  color:#d1d5db;
  font-size:13px;
  text-decoration:none;
}
.foot-links a:hover{ text-decoration:underline; }

.foot-copy{
  font-size:12px;
  color:#9ca3af;
  margin-top:10px;
}
@media (min-width: 1600px){
  .container, .footer-inner{ max-width: 1560px; }
}

/* choose page */

.loc-page-body{
  min-height: 100vh;
  display:flex;
  flex-direction: column;
}
.loc-page-body .loc-main{
  flex: 1;
}
