/* A & S Taxi LLC style sheet */
/* file name: taxi-style.css */

/* General Body Styles */
* {
  box-sizing: border-box; /* Apply box-sizing to all elements */
}

body {
  font-family: 'Roboto', sans-serif;
  color: #333;
  background-color: #F2F2F2;
  margin: 0;
  padding: 0;
  overflow-x: hidden; /* Prevent horizontal overflow */
}

/* Navigation Styles */
.navigation {
  background-color: #003366;
  color: #FFFFFF;
  padding: 10px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.navigation a {
  color: #FFCC00;
  text-decoration: none;
}

.navigation ul {
  list-style-type: none;
  display: flex;
  padding: 0; /* Reset padding */
  margin: 0; /* Reset margin */
}

.navigation li {
  margin: 0 10px;
}

.navigation li:hover {
  border-bottom: 2px solid #FFCC00;
}

/* Logo Styles */
.logo img {
  width: 100px;  /* Adjust width as needed */
  height: auto;  /* Maintains aspect ratio */
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .logo img {
    width: 80px;  /* Smaller size for mobile devices */
    height: auto;
  }
}


/* Hero Image Styles */
.hero-image {
  background-image: url('taxi-hero.jpg'); /* Path to your image */
  height: 200px; /* Adjust height as needed */
  background-position: center; /* Centers the image in the div */
  background-repeat: no-repeat;
  background-size: cover; /* Ensures the image covers the entire div */
  display: flex;
  align-items: center; /* Aligns text vertically */
  justify-content: center; /* Aligns text horizontally */
}

/* Index Container General Styles */
.index-container {
  /* width: 80%;  Use 100% to prevent overflow */
  max-width: 800px;
  text-align: center;
  background-color: #FFFFFF;
  margin: 20px auto;
  border: solid 2px #003366;
  border-radius: 10px;
  padding: 20px; /* Adjust as needed */
}

#main-title {
  color: #003366;
}

#slogan {
  color: #003366;
}

.index-container h3 {
  color: #003366;
}

.index-container h2 {
  color: #003366;
}

.intro {
  color: #003366;
}

/* Adjustments for responsive and smaller devices should also include the 'box-sizing' property to manage padding and border. */

@media screen and (max-width: 768px) {
  .hero-image {
      height: 150px; /* Adjusted for smaller devices */
  }
}

/* Media Query for Responsiveness */
@media screen and (max-width: 768px) {
  .index-container {
    margin: 10px; /* Adjusted smaller margin for smaller screens */
  }
}

.phoneButton-container {
    background-color: #FFFFFF;
    padding: 10px;
    margin: 20px;
    border-radius: 8px;
    /*box-shadow: 0 2px 5px rgba(0,0,0,0.1);*/
    text-align: center;
}

.phoneButton-container {
    width: 50%;
    background-color: #FFFFFF;
    padding: 10px;
    margin: 20px auto;  /* Center the container horizontally */
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Adds shadow around the container */
    text-align: center;
}

.phoneButton-container h3 {
  color: #003366;
}

.phone-link {
    background-color: #FFCC00;
    color: #003366;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block; /* Necessary for proper animation and centering */
    transition: background-color 0.3s ease;
    animation: pulse 2s infinite; /* Apply the pulse animation */
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.05);
        opacity: 0.9;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.phone-link:hover {
    background-color: #FFD633;
    transform: scale(1.1); /* Slightly increase size */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* Adds shadow effect on hover */
}

/* A & S Taxi Button Styles */

.taxi-button {
    margin: 0 10px;
}

.taxi-button {
    background-color: #FFCC00;
    color: #003366;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.taxi-button:hover {
    background-color: #FFD633;
}

.form-introduction {
  background-color: #FFFFFF;
  color: #003366;
  max-width: 800px;
  margin: 20px auto;
  padding: 20px;
  border: 2px solid #003366;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  text-align: center;
}

.form-introduction h2 {
  color: #003366; /* Dark blue to match your navigation theme */
  margin-bottom: 5px;
  text-align: center;
}

.form-introduction p {
  color: #666; /* Dark gray for less emphasis */
  font-size: 0.9rem; /* Smaller text for secondary information */
  text-align: center;
}

/* Media Query for Responsiveness */
@media screen and (max-width: 768px) {
  .form-introduction {
    margin: 10px; /* Adjusted smaller margin for smaller screens */
  }
}

/* Additional styles for form introduction */
.form-introduction h2 {
  margin-bottom: 5px;
}

.form-introduction p {
  color: #666; /* Dark gray for less emphasis */
  font-size: 0.9rem; /* Smaller text for secondary information */
}


/* Home Page Form Styles */

.contact-form {
    width: 400px;
    background-color: var(--main-contact-details-color);
    margin: 20px auto;
    border: solid 2px #003366;
    border-radius: 10px;
    padding: 20px; /* Adjust as needed */
  }
  
  /* Responsive adjustments */
  @media screen and (max-width: 768px) {
    .contact-form {
        width: auto; /* Make the width auto to fit the screen */
        margin: 20px; /* Adjust margin to add space around the form */
        padding: 20px; /* Add more padding to ensure space between the form and the screen edges */
    }
  }
  
  .form {
    width: 400px;
    margin: 20px auto; 
    border: 1px solid #333;
    border-radius: 5px;
  }
    
  form label {
    color: #003366;
    display: block;
    font-weight: bold;
    margin-top: 10px;
    margin-left: 20px;
    padding: 10px;
  }
    
  form input[type="text"], form input[type="email"], form textarea, form select {
    width: 80%;
    padding: 10px;
    margin: 10px 20px;
    border: 1px solid var(--border-line-color);
    border-radius: 5px;
  }
    
  form .error, form .message {
    color: red;
    font-size: 0.9em;
  }
    
  /* Form clear button */
    
  .clearButton {
    padding: 5px 10px;
    font-size: 12px;
    cursor: pointer;
    color: #333;
    margin-top: 10px;
    margin-left: 10px;
      
  }
  
  /* Form submit button */
  
  .submitButton {
    padding: 15px 25px;
    font-size: 18px;
    cursor: pointer;
    color: #fff;
    background-color: #333;
    border: none;
    border-radius: 5px;
    transition: background-color 0.3s;
    display: block;
    margin: 20px auto;
    text-shadow: 1px 1px 2px #000; 
  }
    
  .submitButton:hover {
    background-color: #4CAF50; /* Change color on hover */
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2); /* Add shadow effect */
    transform: scale(1.1); /* Slightly increase size */
    
  }
    
  /* Modal Styles */
  .modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
  }
    
  /* Modal Content */
  .modal-content {
    color: red;
    background-color: #fefefe;
    margin: 15% auto; /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 80%; /* Could be more or less, depending on screen size */
  }
    
  /* The Close Button */
  .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
    
  .close:hover,
  .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }
    
  /* Privacy Policy checkbox */
    
  .privacy-policy-agreement input[type="checkbox"] {
    margin-left: 20px;
    cursor: pointer; /* Optional: Changes cursor to pointer when hovering over the checkbox */
  }
    
  .privacy-policy-agreement {
    margin: 20px 0;
    display: flex;
    align-items: center;
  }
    
  .privacy-policy-agreement label {
    margin-left: 10px;
  }
    
  /* Privacy Policy page styles */
  .privacy-policy-container {
    background-color: #f7faff; /* Light background to match your theme */
    color: #333; /* Text color */
    padding: 20px;
    margin: 20px auto;
    max-width: 800px; /* Adjust width as needed */
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
  }
    
  .privacy-policy-container h2, .privacy-policy-container h3 {
    color: var(--Logo-blue); /* Color for headings */
    margin-top: 20px;
  }
    
  .privacy-policy-container p, .privacy-policy-container ul {
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 10px;
  }
    
  .privacy-policy-container ul {
    padding-left: 20px; /* Proper alignment for bullet points */
  }
    
  .privacy-policy-container ul li {
    margin-bottom: 10px; /* Spacing between list items */
  }
    
    /* Responsive adjustments */
    @media screen and (max-width: 768px) {
      .privacy-policy-container {
          padding: 15px;
          margin: 10px;
          max-width: 100%;
      }
  }

/* A & S Taxi About Page */

.about-section {
    background-color: #FFFFFF;
    color: #003366;
    padding: 20px;
    margin: 20px auto;
    max-width: 800px;
    border: 2px solid #003366;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    text-align: center;
}

.about-section img {
  border-radius: 20px;
}

.about-container {
  background-color: #FFFFFF;
  color: #003366;
  text-align: center;
  margin: 30px auto;
  border: 1px solid #003366;
  border-radius: 10px;
  max-width: 800px;
  padding: 1rem;
  overflow: hidden; /* Added to clear floats */

}

.main-title, .about-container h2 {
    color: #003366;
}

.intro, .about-container p, blockquote {
    margin-bottom: 15px;
    line-height: 1.6;
}

blockquote {
    font-style: italic;
    color: #003366;
    border-left: 3px solid #FFCC00;
    padding-left: 15px;
}

.about-button-container {
    margin-top: 20px;
}

/* A & S Taxi Services Page */



.service-container {
  background-color: #FFFFFF;
  color: #003366;
  padding: 20px;
  margin: 20px auto;
  max-width: 800px;
  border: 2px solid #003366;
  border-radius: 8px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  text-align: center;}

.service {
  background-color: #FFFFFF;
  color: #003366;
  text-align: center;
  margin: 30px auto;
  border: 1px solid #003366;
  border-radius: 10px;
  max-width: 800px;
  padding: 1rem;
  overflow: hidden; /* Added to clear floats */

}

.service-container h1 {
    color: #003366;
    margin-bottom: 5px;
}

.service h2 {
    color: #003366;
    margin-bottom: 5px;
}

.service-button-container {
  text-align: center;
  margin: 20px auto;
}


/* A & S Taxi Contact Page */



/* A & S Taxi Success Page */

/* Success Page Styles */
.success-container {
  max-width: 800px;
  background-color: #FFFFFF;
  padding: 40px;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  text-align: center;
  margin: 50px auto;
}

.success-container h2 {
  color: #003366;
  margin-bottom: 20px;
}

.success-container p {
  color: #333;
  font-size: 1.1em; /* Slightly larger text for better readability */
  line-height: 1.6;
  margin-bottom: 25px;
}

.btn {
  background-color: #FFCC00;
  color: #003366;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 5px;
  display: inline-block; /* Center the button */
  transition: background-color 0.3s;
}

.btn:hover {
  background-color: #FFD633;
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}


/* Footer Styles */
.footer-container {
    background-color: #003366;
    color: #FFFFFF;
    text-align: center;
    padding: 10px;
    left: 0;
    bottom: 0;
    width: 100%;
}


