/* SHARED SITE CHROME — used on every page: header, nav, buttons, footer, mobile call bar */

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:#333;
  background:#f5f7f8;
  line-height:1.6;
}

/* HEADER */

.header{
  background:white;
  text-align:center;
  padding:20px;
  border-bottom:4px solid #74a9bd;
}

.header-name{
  margin:0;
  color:#1f5f7a;
  font-size:34px;
  font-weight:bold;
}

.header h1{
  margin:0;
  color:#1f5f7a;
  font-size:34px;
}

.header p{
  margin:5px 0 0;
  color:#555;
}

/* NAVIGATION */

.nav{
  background:#2d7895;
  text-align:center;
}

.nav-links{
  display:block;
}

.nav a{
  display:inline-block;
  color:white;
  text-decoration:none;
  padding:14px 18px;
  font-weight:bold;
}

.nav a:hover{
  background:#1f5f7a;
}

.nav-toggle{
  display:none;
}

/* BUTTONS */

.button{
  display:inline-block;
  background:#1f5f7a;
  color:white;
  padding:13px 22px;
  text-decoration:none;
  font-weight:bold;
  border-radius:4px;
  margin:8px 8px 0 0;
}

.button:hover{
  background:#17485d;
}

.button.secondary{
  background:#6b9b3b;
}

.button.secondary:hover{
  background:#577f31;
}

/* FOOTER */

.footer{
  background:#1f5f7a;
  color:white;
  text-align:center;
  padding:25px 20px;
}

.footer p{
  margin:8px 0;
}

/* MOBILE CALL BUTTON */

.mobile-call-button{
  display:none;
}

/* MOBILE NAV + CALL BAR */

@media(max-width:900px){

  .nav-links{
    display:none;
    flex-direction:column;
  }

  .nav-links.open{
    display:flex;
  }

  .nav a{
    display:block;
    border-top:1px solid rgba(255,255,255,0.2);
  }

  .nav-toggle{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 18px;
    cursor:pointer;
    color:white;
    font-weight:bold;
    font-size:16px;
    user-select:none;
  }

  .nav-toggle .hamburger{
    font-size:22px;
    line-height:1;
  }

  .mobile-call-button{
    display:block;
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    background:#6b9b3b;
    color:white;
    text-align:center;
    padding:18px;
    font-size:24px;
    font-weight:bold;
    text-decoration:none;
    z-index:9999;
    box-shadow:0 -2px 10px rgba(0,0,0,0.2);
  }

  body{
    padding-bottom:80px;
  }

}
