  @import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200i,300,300i,400,400i,600,600i,700,700i,900,900i&display=swap");
   :root {
      --blue: #79A9F5;
      --indigo: #C45F90;
      --purple: #A16AE8;
      --pink: #FC8BC0;
      --red: #F85C70;
      --orange: #FF8882;
      --yellow: #FAD02C;
      --green: #A3C14A;
      --teal: #20c997;
      --cyan: #47D8E0;
      --white: #fff;
      --gray: #6c757d;
      --gray-dark: #343a40;
      --light-gray: #eee;
      --primary: #F85C70;
      --secondary: #6c757d;
      --success: #A3C14A;
      --info: #47D8E0;
      --warning: #FF8882;
      --danger: #F85C70;
      --light: #f8f9fa;
      --dark: #343a40;
      --breakpoint-xs: 0;
      --breakpoint-sm: 576px;
      --breakpoint-md: 768px;
      --breakpoint-lg: 992px;
      --breakpoint-xl: 1200px;
      --breakpoint-xxl: 1400px;
      --font-family-sans-serif: "Source Sans Pro", sans-serif;
      --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
      /* Enhanced Responsive Grid Container Widths */
      --container-xs: 100%;
      --container-sm: 540px;
      --container-md: 720px;
      --container-lg: 960px;
      --container-xl: 1140px;
      --container-xxl: 1320px;
      /* Enhanced Fluid Typography System */
      --font-size-xs: clamp(0.75rem, 0.5rem + 1.25vw, 0.875rem);
      --font-size-sm: clamp(0.875rem, 0.75rem + 0.625vw, 1rem);
      --font-size-base: clamp(1rem, 0.875rem + 0.625vw, 1.125rem);
      --font-size-md: clamp(1.125rem, 1rem + 0.625vw, 1.25rem);
      --font-size-lg: clamp(1.25rem, 1rem + 1.25vw, 1.5rem);
      --font-size-xl: clamp(1.5rem, 1.125rem + 1.875vw, 2rem);
      --font-size-xxl: clamp(2rem, 1.5rem + 2.5vw, 3rem);
      --font-size-xxxl: clamp(2.5rem, 1.75rem + 3.75vw, 4rem);
      /* Enhanced Spacing System */
      --space-xs: clamp(0.25rem, 0.5vw, 0.5rem);
      --space-sm: clamp(0.5rem, 1vw, 1rem);
      --space-md: clamp(1rem, 2vw, 2rem);
      --space-lg: clamp(1.5rem, 3vw, 3rem);
      --space-xl: clamp(2rem, 4vw, 4rem);
      --space-xxl: clamp(3rem, 6vw, 6rem);
      /* Header Heights */
      --header-height: 80px;
      --mobile-header-height: 90px;
  }
  
  .contact_us_hero {
      display: flex;
      width: 100%;
      height: 70vh;
      align-items: center;
      justify-content: center;
      color: var(--color-text-light);
      text-align: center;
      z-index: -1;
      margin-top: 0.1rem;
  }
  
  .contact_us_hero {
      position: relative;
      width: 100%;
      height: 80vh;
      overflow: hidden;
      background: black;
  }
  
  .contact_us_hero img {
      position: absolute;
      top: 0;
      left: 0;
      width: 101%;
      height: 100%;
      object-fit: cover;
      z-index: 0;
  }
  
  .contact_us_hero .content {
      position: relative;
      z-index: 1;
      color: white;
      text-align: center;
      top: 70%;
  }
  
  .contact_us_hero .content h1 {
      font-family: var(--font-display);
      font-size: 3rem;
      line-height: 0.9;
      font-weight: 700;
      text-shadow: 2px 2px 8px rgba(248, 92, 112, 0.6);
  }
  
  .contact_us_hero .content p {
      font-family: var(--font-display);
      font-size: 1rem;
      line-height: 1;
      font-weight: 400;
      text-shadow: 2px 2px 8px rgba(248, 92, 112, 0.6);
  }
  /* --- Main Content & Form --- */
  
  .main-container {
      max-width: 800px;
      margin: 0 auto 4rem auto;
      padding: 2rem;
      position: relative;
      z-index: 10;
  }
  
  .contact-info {
      background-color: var(--color-surface);
      padding: 2rem;
      border-radius: 12px;
      text-align: center;
      margin-bottom: 2rem;
      box-shadow: 0 4px 15px rgba(248, 92, 112, 0.6);
  }
  
  .contact-info p {
      margin: 0.5rem 0;
      color: var(--color-text-secondary);
  }
  
  .contact-form-wrapper {
      background-color: var(--color-surface);
      padding: 3rem;
      border-radius: 12px;
      box-shadow: 0 4px 15px rgba(248, 92, 112, 0.6);
  }
  
  .form-grid {
      display: grid;
      gap: 1.5rem;
  }
  
  .form-group label {
      display: block;
      margin-bottom: 0.5rem;
      font-weight: 700;
      font-size: 0.9rem;
  }
  
  .form-group label span {
      font-weight: 400;
      color: var(--color-text-secondary);
  }
  
  .form-group input,
  .form-group textarea {
      width: 100%;
      padding: 0.8rem;
      border: 1px solid var(--secondary);
      border-radius: 6px;
      background-color: var(--white);
      font-family: var(--font-primary);
      font-size: 1rem;
      box-sizing: border-box;
      /* Important for consistent sizing */
  }
  
  .form-group input:hover,
  .form-group textarea:hover {
      border: 2px solid var(--primary);
      transition: 0.5 ease-in-out;
  }
  
  .form-group textarea {
      resize: vertical;
      min-height: 120px;
  }
  
  .checkbox-group {
      margin-bottom: 0.5rem;
  }
  
  .checkbox-group label {
      font-weight: 400;
      margin-left: 0.5rem;
  }
  
  .submit-button {
      padding: 1rem 2rem;
      background: var(--primary);
      color: var(--light);
      border: none;
      border-radius: 6px;
      font-size: 1rem;
      font-weight: 700;
      letter-spacing: 0.5px;
      cursor: pointer;
      transition: background-color 0.3s;
  }
  
  .submit-button:hover {
      background-color: var(--white);
      color: var(--primary);
      border: 2px solid var(--primary);
      transition: 0.5s ease-in-out;
  }
  
  #form-message {
      margin-top: 1rem;
      font-weight: bold;
      padding: 1rem;
      border-radius: 6px;
      display: none;
      /* Hidden by default */
  }
  
  #form-message.success {
      background-color: #D4EDDA;
      color: #155724;
  }
  
  #form-message.error {
      background-color: #F8D7DA;
      color: #721C24;
  }