@media all {
  body.start-page {
    margin: 0;
    padding: 0; }
    body.start-page .center {
      position: relative;
      margin: 10vh auto 0;
      max-width: 37.5rem;
      padding: .5rem; }
      body.start-page .center .row {
        display: flex;
        justify-content: center; }
      body.start-page .center .icon {
        font-size: 5rem;
        margin-bottom: 2rem;
        color: #16a2b8; }
      body.start-page .center input#url {
        width: 100%;
        -webkit-appearance: none;
        border: 2px solid #777;
        border-radius: .25rem;
        font-size: 1.2rem;
        padding: .6rem; }
      body.start-page .center button#submit {
        -webkit-appearance: none;
        background: #16A2B8;
        color: #FFFFFF;
        border: none;
        border-radius: .25rem;
        margin-left: .5rem;
        min-width: 8rem;
        font-size: 1.2rem;
        padding: .6rem; }
        body.start-page .center button#submit:hover {
          cursor: pointer; } }
  @media all and (max-width: 38.5rem) {
    body.start-page .center .row.input {
      flex-direction: column; }
    body.start-page .center input#url {
      width: auto; }
    body.start-page .center button#submit {
      margin-top: 1rem;
      margin-left: 0; } }

@media all {
  #button-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 0 2em;
    padding: 1em;
    background: #eee;
    z-index: 1000;
    box-shadow: 0 0 5px 0px #0000007d; }
    #button-bar .btn {
      margin: 0 .5em; }

  h1.main-header {
    text-align: center;
    font-size: 1.2em;
    margin: 6rem 0 .5em; }
    .to-print h1.main-header {
      margin: .5em 0; }

  #googleMapIframe {
    position: relative;
    margin: 0 3rem;
    width: calc(100% - 6rem);
    height: 90vw; }
    .to-print #googleMapIframe {
      margin: 0;
      min-width: 1046px;
      height: 1200px; }

  .instructions {
    padding: 1rem;
    font-size: 1rem;
    margin: 0 3rem;
    width: calc(100% - 6rem);
    page-break-after: always; }
    .to-print .instructions {
      margin: 0;
      width: 100%; }

  #contactsTable {
    position: relative;
    margin: 0 3rem 2rem;
    width: calc(100% - 6rem);
    page-break-before: always; }
    .to-print #contactsTable {
      margin: 0;
      width: 100%; }
    #contactsTable td, #contactsTable th {
      border-color: #999 !important; }

  #qr-code {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    padding: 25px;
    background: white;
    z-index: 1000;
    border: 1px solid #4D6A79; } }
@media print {
  #button-bar {
    display: none; }

  h1.main-header {
    margin: 0 0 .5em; }

  #qr-code {
    display: block; } }
