/* Merged styles.css (from styles.css + styles1.css)
   - Consolidated variables and shared layout rules
   - Kept widest layout (1050px) and richer components (.btn, .hero, .grid, .pill)
*/

:root{
  --blue:#0b5fa5;
  --gold:#b59b3b;
  --ink:#111;
  --muted:#666;
  --bg:#f7f8fa;
  --card:#fff;
  --border:#e6e8ee;
}

*{box-sizing:border-box}

body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
}

a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}

/* ===== Header (single source of truth; stable / no jump) ===== */
.site-header{
  position: sticky;
  top: 0;
  z-index: 999;
  background:#fff;
  border-bottom:1px solid var(--border);
  box-shadow: 0 1px 2px rgba(0,0,0,0.04); /* always on, no snapping */
}

.wrap{max-width:1050px;margin:0 auto;padding:18px}

.nav{
  display:flex;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  align-items:center;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
}

/* Logo fixed size (ONLY this controls it) */
.brand .logo{
  height:144px;
  width:auto;
  display:block;
}

.menu{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  align-items:center;
}

/* Link styling */
.menu a{
  color:#222;
  font-weight:500;
  padding:8px 6px;
  border-radius:8px;
  text-decoration:none;
}
.menu a:hover{ color: rgb(177,149,58); }

/* Active link highlight */
.menu a.active{
  color: rgb(177,149,58);
  font-weight:700;
}

/* Contact button (desktop only) */
@media (min-width:901px){
  .menu a.contact-link{
    background: rgb(177,149,58);
    color:#fff;
    padding:10px 12px;
    border-radius:10px;
    font-weight:700;
  }
  .menu a.contact-link.active{ color:#fff; }
}

/* Mobile menu (stable open/close, no snapping) */
.nav-toggle{
  display:none;
  background:transparent;
  border:1px solid var(--border);
  border-radius:10px;
  padding:10px;
  cursor:pointer;
}
.nav-toggle span{
  display:block;
  width:22px;
  height:2px;
  background:#222;
  margin:5px 0;
}

@media (max-width:1050px){
  .nav-toggle{ display:inline-block; margin-left:auto; }

  .menu{
    width:100%;
    flex-direction:column;
    gap:8px;
    overflow:hidden;
    max-height:0;
    padding:0 12px;
    border:1px solid var(--border);
    border-radius:16px;
    background:#fff;
    transition:max-height 200ms ease, padding 200ms ease, margin-top 200ms ease;
  }
  .menu.open{
    max-height:600px;
    padding:12px;
    margin-top:10px;
  }

  .menu a{
    padding:10px 10px;
    border-radius:12px;
  }
  .menu a:hover{
    background:#f3f4f7;
    color:#222;
  }

  .menu a.contact-link{
    background:transparent;
    color:#222;
    font-weight:600;
  }
}

/* Footer */
footer{
  border-top:1px solid var(--border);
  background:#fff;
  margin-top:30px;
}

/* full header block (including logo + nav links) START */

/* Header / Footer */
footer{
  border-top:1px solid var(--border);
  background:#fff;
  margin-top:30px;
}

/* ===== Header (single source of truth) ===== */
.site-/* Logo fixed size (ONLY this controls it) */
/* Link styling */
/* Desktop-only contact button */
.menu a.contact-link.active{ color:#fff; }
}

/* ===== Mobile menu ===== */
.menu.open{
    max-height:600px;
    padding:12px;
    margin-top:10px;
  }

  .menu a.contact-link{
    background:transparent;
    color:#222;
    font-weight:600;
  }
}

/* UI components */
.btn{
  display:inline-block;
  background:var(--blue);
  color:#fff;
  padding:10px 14px;
  border-radius:10px;
  font-weight:600;
}
.btn.alt{
  background:#fff;
  color:var(--blue);
  border:1px solid var(--border);
}



/* Button aliases (for legacy markup): keep CTAs looking like buttons */
a.send, .send, a.cta, .cta, a.primary, .primary{
  display:inline-block;
  background:var(--blue);
  color:#fff;
  padding:10px 14px;
  border-radius:10px;
  font-weight:600;
  text-decoration:none;
}
a.send:hover, .send:hover, a.cta:hover, .cta:hover, a.primary:hover, .primary:hover{
  filter:brightness(.96);
  text-decoration:none;
}
a.send.alt, .send.alt, a.cta.alt, .cta.alt, a.primary.alt, .primary.alt{
  background:#fff;
  color:var(--blue);
  border:1px solid var(--border);
}

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:18px;
}

.hero{padding:34px 0}

.grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}
@media(max-width:900px){.grid{grid-template-columns:1fr}}

h1{margin:0 0 12px;font-size:34px;line-height:1.15}
h2{margin:18px 0 10px;font-size:20px}

.muted{color:var(--muted)}
.small{font-size:12.5px;color:var(--muted)}
ul{margin:8px 0 0 20px}

.pill{
  display:inline-block;
  border:1px solid var(--border);
  border-radius:999px;
  padding:6px 10px;
  margin:6px 6px 0 0;
  font-size:13px;
  color:var(--muted);
  background:#fff;
}

/* Hide page counter on mobile */
@media (max-width: 900px){
  .page-counter{ display:none !important; }
}

.site-

.btn:hover{text-decoration:none}
