
html { 
    box-sizing: border-box; 
    margin: 0 auto;
    padding: 0;
    width: 100%;
}
*, *:before, *:after { box-sizing: inherit; }

* {text-align: center}

  body {
    margin: 0 auto;
    padding: 0;
    font-family: Rubik, Helvetica, sans-serif, Arial; 
    width: 100%;
    background-color: whitesmoke;
    border-bottom: 10px solid #cccccc;
  }


  .res-top {
    text-align: center; font-size: 20px;
  }
  .res-btn-a {background-color: #fdfdfd; border: 1px solid black; padding: 3px 15px; color: black; text-decoration: none;
             border-radius: 8px;}
  .res-btn-a:hover {color: blue;}
  .dv-submit {width: 100%; text-align: center;}
  .res-submit { background-color: #fdfdfd; display: inline-block; border: 1px solid black; 
    padding: 5px 30px; color: black; text-decoration: none; border-radius: 8px; font-size: 17px; margin: 10px auto;}
  .res-submit:hover {color: blue; cursor: pointer;}
  .res-top a:first-child {color: black; font-size:inherit; text-decoration: none; font-style: italic;}
  .res-top a:first-child:hover {color: blue;}

  div {
    margin: 0 auto;
    width: 100%;
  }
  
  .g-recaptcha {
    display: inline-block; max-width: 500px !important;
  }

  .g-recaptcha > div {
    margin: 0; max-width: 500px !important;
  }

  .g-recaptcha-modal iframe {
    max-width: 500px !important;
  }

    
  .form-submit-div-response {
    color: black; display: block; margin: 50px auto; padding: 30px; text-align: center; font-family: Arial, sans-serif; font-size: 25px; 
  }
  .form-submit-div-response-failed {
    color: red; display: block; margin: 50px auto; padding: 30px; text-align: center; font-family: Arial, sans-serif; font-size: 25px; 
  }

  form {
    width: 100%;
    max-width: 900px;
    min-width: 300px;
    border-radius: 10px;
    padding: 30px 40px;
    padding-top: 15px;
    margin: 50px auto;
    margin-top: 30px;
    background-color: #cccccc;
    text-align: left;
    border:1px solid dimgray;
 }

  form * {text-align: left; font-size: 17px; font-weight: 300;}

  .dv-info {font-size: 42px; font-style: italic; color: dimgray; font-weight: 800; margin: 40px auto; 
    margin-top: 10px; text-shadow: -1px -1px 10px white; line-height: 1.5em;}

  .dv-info a {color: dimgray; text-decoration:none}

  .a-res {display:block; color: black; font-size: 23px; font-weight: 700; margin: 30px auto;
    background-color: #ffffff; padding: 7px; border: 1px solid dimgray; border-radius: 5px;
    text-decoration: none; width: 350px;
  }

  .dv-contact {font-size: 20px; font-weight: 400; margin: 30px auto;}



  .bt-dir {
    background-color: #fdfdfd;
    padding: 5px 10px;
    margin:10px 25px;
    margin-top: 15px;
    font-size:15px;
    font-weight: 400;
    color:dimgray;
    border: 2px solid gray;
    width:150px;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    border-radius: 5px;
  }
  .bt-dir:hover {border-color: black; color: blue;}

  .bt-dir.selected {
    background-color: white;
    color: black;
    border: 2px solid black;
    
  }

  form input {
    margin: 4px 1px;
    padding: 3px 5px;
    border-radius:5px;
    border:1px solid #cccccc;
    padding: 6px;
  }
 
  form span {
    
    margin: 0;
    padding: 0;
  }

  form select {
    margin: 0;
    border-radius:5px;
    border:1px solid #cccccc;
    background-color: white;
    padding: 4px;
  }
  

  form div {
    margin: 20px 0;
  }

  
  #fromAddress {width: 75%; margin: 0; margin-top: 6px; padding: 6px;}
  #toAddress {width: 75%; margin: 0; margin-top: 6px; margin-bottom: 20px; padding: 6px;}
  .lb-address-from {margin: 0;}
  .lb-address-to {margin: 0;}
  
  form .dv-airport-to {
    margin: 0px;
 } 

  form .dv-address-to {
     margin: 0px;
  } 

  form label {
    margin: 0;
    padding: 0;
  }
  .lblInDiv {
    display: block;
    margin-bottom: 5px;
  }
  .dv-pass-info2 {
    margin-top: -10px;
  }
  #specialInstructions {
    width: 100%;
    font-size: 17px;
  }
  form p {
    text-align: center;
    margin: 0 auto;
  }

  
  .errors div {
    color: red;
    font-weight: bold;
    text-align: center;
    margin: 5px;
  }



  #rdoRoundTripLabel {margin-left: 1px}



  footer div:first-child {font-size: 27px; font-style: italic; display: block; margin: 20px auto; font-weight: bold;}
  footer div {font-size: 22px; font-style: italic; display: block; margin: 20px auto; font-weight: normal;}
  footer div:last-child {font-size: 20px; font-style: italic; display: block; margin: 20px auto; font-weight: normal;}
  footer p {font-size: 18px; font-style: italic; margin: 0 auto; margin-bottom: 70px;}

  /*
  footer div:last-child,
  footer div:last-child * {
    font-size: 20px !important; 
    font-weight: normal; 
}

footer div {
    font-size: 22px !important; 
}
footer div:first-child {
    font-size: 23px !important; 
}
    */



 @media screen and (max-width: 900px) {       
   #fromAddress {width: 100%}
   #toAddress {width: 100%}
}

 @media screen and (max-width: 710px) {

    #rdoRoundTripLabel {margin-left:15px}
    
    #reservation-form {
        width: 100%;
        max-width: none;
        border-radius: 0;
        border-left: none;
        border-right: none;
        }

        .bt-dir {
          background-color: #fdfdfd;
          padding: 5px;
          margin:10px 5px;
          margin-top: 15px;
          font-size:15px;
          font-weight: 400;
          width:120px;
        }

    .sp_statezip {
        display: block;
        margin-left: 0;
        text-align: left;
      }

    .sp_from_airport {
        display: block;
        margin-top:3px;
      }

    .sp_to_airport {
      display: block;
    }
  }

 @media screen and (max-width: 500px) {

  

  .form-submit-div-response {
    font-size: 35px; 
  }
  .form-submit-div-response-failed {
    font-size: 35px; 
  }

  .bt-dir {
    background-color: #fdfdfd;
    padding: 5px 2px;
    margin:10px 2px;
    margin-top: 15px;
    font-size:13px;
    font-weight: 400;
    width:100px;
  }


form {
    padding: 10px;
    font-size: 15px;
  }

 

  form div {
    margin: 23px 0;
    }

  .sp_statezip {
    display: block;
  }

  #specialInstructions {
    font-size: 16px;
    height: 70px;
  }


  header div {font-size: 19px;}

  .dv-info {font-size: 20px; line-height: 1.5em;}

  .a-res {font-size: 19px; width: 270px;}

  .dv-contact {font-size: 16px; line-height: 1.5em;}

  footer div {font-size: 20px;}

  footer div:last-child {font-size: 14px;}

 }

 @media screen and (max-width: 370px) {
  .form-submit-div-response {
    font-size: 35px; font-weight: bold;
  }
  .form-submit-div-response-failed {
    font-size: 35px; font-weight: bold;
  }

  .bt-dir {
    background-color: #fdfdfd;
    padding: 5px 2px;
    margin:10px 2px;
    margin-top: 15px;
    font-size:15px;
    font-weight: 400;
    width:120px;
  }

  #toAirport, #fromAirport {width:250px}

  }

