@charset "UTF-8";

@import url('fonts.css');

a {
    /* color: #337ab7!important; */
}

body[data-not-home] nav#mainNav {
    position: initial!important;
    background-color: seagreen!important; /* dimgray */
    margin: 0!important;
}

html {
  scroll-behavior: smooth;
}

/*ADDED STYLES*/
a.link {
    color: #337ab7!important;
}

/* Link without underline: Adds opacity. */
a.no-underline-link {
  text-decoration: none;
}
a.no-underline-link:hover {
  text-decoration: none;
  opacity: 0.7;
}

@media (min-width: 768px) {
  section {
    /* Current is too large */
    padding: 72px 0!important;
  }
}

.timeline-image > .img-responsive{
    width: 100%;
    height: 100%;
    /* To maintain aspect ratio */
    object-fit: contain;
}

.btn-xl:hover {
  border-color:white!important;
}
.btn-xl:focus-visible {
  border-color:white!important;
}

/* Wraps QR code with text */
.qr-code-wrapper {
  text-align: center;
}

[data-qr-code] {
  max-width: 240px;
  max-height: 240px;
  margin: auto;
}
/*
This actually SHOULD be handled by the QR loading script, but this forces for now.
*/
[data-qr-code] svg {
    width: 100%!important;
    height: 100%!important;
    object-fit: contain!important;
}

/*
Block that takes custom text or HTML.
Needs to be height limited with scroll.
Needs margin at bottom.
*/
.custom-data-block {
  height: 300px;
  overflow-y: auto;
  margin-bottom: 10px;
}


#services custom-data-block {
	text-align: left!important;
}


/* ICON CLASSES START */
/* https://stackoverflow.com/a/10393517/1764521 */
/* TODO: Add conversion information including data-converter URL to conversion. */
/* TODO: Below SHOULD be generated from information in schema instead later: image => alternateName => name. Generate SVG from text. */

/* ICON CLASSES END */

#portfolio img{
  margin: 0 auto;
}

.fa-website:before{
  content: "\1F4C4";
}

.team-member .fa{
  margin: 25% 0;
}

.list-inline>li {
  display: inline-block;
  float: left;
  padding-top: 10px;
}
ul.social-buttons li a {
  background-color: #337ab7!important;
}

@media print {
  section, .print-group-item {
    break-inside: avoid;
    /* For older browser compatibility */
    page-break-inside: avoid;
  }

  /* Waste of ink, and doesn't work well with text */
  .fa-circle::before {
    content: none!important;
  }

  /* Extra height is not needed in print */
  .custom-data-block {
    height: auto!important;
  }
}

/* MINIMUM FIXES FOR ALL PAGES */
.page-wrapper {
  /* Can't put margin or padding because messes up full width image homepage. */
}

/* FIXES FOR FIXED PAGES THAT HAVE NO CENTERING DONE */
.fixed-page-wrapper {
  width: 90%;            /* Space on the sides for mobile */
  max-width: 1100px;     /* Prevents it from getting too wide on desktop */
  margin: 20px auto;        /* Centers the content */
  padding: 20px;
}
/* OVERRIDE IF NECESSARY */
.fixed-page-wrapper h1 {
  text-align: center;
  margin-bottom: 20px;
}

/* FORCE MIN HEIGHT TO SCREEN */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh; /* Ensures footer stays down if content is short */
}

#map > * {
  margin: auto;
}
