/* Quote Page Specific Styles */
    .quote-page {
      background: var(--color-bg-secondary);
      min-height: 100vh;
      padding-top: 80px;
    }

    .quote-container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 60px 24px 100px;
      display: grid;
      grid-template-columns: 1fr 380px;
      gap: 60px;
      align-items: start;
    }

    /* Form Section */
    .quote-form-section {
      background: var(--color-bg-white);
      border-radius: var(--radius-lg);
      padding: 48px;
      border: 1px solid var(--color-border);
      box-shadow: var(--shadow-sm);
    }

    .form-header {
      margin-bottom: 40px;
    }

    .form-header h1 {
      font-size: 2rem;
      font-weight: 600;
      color: var(--color-text-primary);
      margin-bottom: 12px;
    }

    .form-header p {
      color: var(--color-text-muted);
      font-size: 1.05rem;
      line-height: 1.6;
      margin: 0;
    }

    /* Form Sections */
    .form-section {
      margin-bottom: 40px;
      padding-bottom: 40px;
      border-bottom: 1px solid var(--color-border);
    }

    .form-section:last-of-type {
      border-bottom: none;
      margin-bottom: 32px;
      padding-bottom: 0;
    }

    .form-section-title {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--color-text-primary);
      margin-bottom: 24px;
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .form-section-title span {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 28px;
      height: 28px;
      background: var(--color-gold);
      color: var(--color-text-primary);
      border-radius: 50%;
      font-size: 0.85rem;
      font-weight: 600;
    }

    /* Form Groups */
    .form-group {
      margin-bottom: 24px;
    }

    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }

    .form-label {
      display: block;
      font-size: 0.9rem;
      font-weight: 500;
      color: var(--color-text-primary);
      margin-bottom: 8px;
    }

    .form-label .required {
      color: var(--color-gold);
      margin-left: 4px;
    }

    .form-hint {
      display: block;
      font-size: 0.8rem;
      color: var(--color-text-muted);
      margin-top: 6px;
    }

    /* Form Inputs */
    .form-input,
    .form-textarea,
    .form-select {
      width: 100%;
      padding: 14px 16px;
      font-family: var(--font-primary);
      font-size: 1rem;
      color: var(--color-text-primary);
      background: var(--color-bg-primary);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-sm);
      transition: all var(--transition-base);
    }

    .form-input:focus,
    .form-textarea:focus,
    .form-select:focus {
      outline: none;
      border-color: var(--color-gold);
      box-shadow: 0 0 0 3px var(--color-gold-bg);
    }

    .form-input::placeholder,
    .form-textarea::placeholder {
      color: var(--color-text-light);
    }

    .form-textarea {
      min-height: 120px;
      resize: vertical;
    }

    .form-select {
      cursor: pointer;
      appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B6B6B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 16px center;
      padding-right: 48px;
    }

    /* Staff Type Checkboxes */
    .staff-types {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 12px;
    }

    .staff-type-option {
      position: relative;
    }

    .staff-type-option input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
    }

    .staff-type-label {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 14px 16px;
      background: var(--color-bg-primary);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all var(--transition-base);
    }

    .staff-type-label:hover {
      border-color: var(--color-gold);
    }

    .staff-type-option input:checked + .staff-type-label {
      border-color: var(--color-gold);
      background: var(--color-gold-bg);
    }

    .staff-type-checkbox {
      width: 20px;
      height: 20px;
      border: 2px solid var(--color-border);
      border-radius: 4px;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all var(--transition-base);
      flex-shrink: 0;
    }

    .staff-type-option input:checked + .staff-type-label .staff-type-checkbox {
      background: var(--color-gold);
      border-color: var(--color-gold);
    }

    .staff-type-checkbox svg {
      width: 12px;
      height: 12px;
      stroke: var(--color-bg-white);
      stroke-width: 3;
      opacity: 0;
      transition: opacity var(--transition-base);
    }

    .staff-type-option input:checked + .staff-type-label .staff-type-checkbox svg {
      opacity: 1;
    }

    .staff-type-text {
      font-size: 0.95rem;
      color: var(--color-text-primary);
    }

    /* Quantity Input */
    .quantity-group {
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .quantity-input {
      width: 100px;
    }

    /* Error States */
    .form-input.error,
    .form-textarea.error,
    .form-select.error {
      border-color: var(--color-error);
      background: var(--color-error-bg);
    }

    .form-error {
      display: none;
      color: var(--color-error);
      font-size: 0.85rem;
      margin-top: 8px;
      padding: 8px 12px;
      background: var(--color-error-bg);
      border-radius: var(--radius-sm);
      border-left: 3px solid var(--color-error);
    }

    .form-error.visible {
      display: block;
    }

    /* Submit Button */
    .submit-section {
      margin-top: 8px;
    }

    .submit-btn {
      width: 100%;
      padding: 18px 32px;
      font-size: 1rem;
    }

    .submit-note {
      text-align: center;
      margin-top: 16px;
      font-size: 0.85rem;
      color: var(--color-text-muted);
    }

    /* Success State */
    .form-success {
      display: none;
      text-align: center;
      padding: 60px 40px;
    }

    .form-success.visible {
      display: block;
    }

    .form-success-icon {
      width: 80px;
      height: 80px;
      background: var(--color-gold-bg);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 24px;
    }

    .form-success-icon svg {
      width: 40px;
      height: 40px;
      stroke: var(--color-gold);
      stroke-width: 2;
    }

    .form-success h2 {
      font-size: 1.5rem;
      font-weight: 600;
      margin-bottom: 12px;
      color: var(--color-text-primary);
    }

    .form-success p {
      color: var(--color-text-muted);
      font-size: 1.05rem;
      line-height: 1.7;
      margin-bottom: 32px;
    }

    /* Sidebar */
    .quote-sidebar {
      position: sticky;
      top: 100px;
    }

    .sidebar-card {
      background: var(--color-bg-white);
      border-radius: var(--radius-lg);
      padding: 32px;
      border: 1px solid var(--color-border);
      margin-bottom: 24px;
    }

    .sidebar-card h3 {
      font-size: 1.1rem;
      font-weight: 600;
      margin-bottom: 20px;
      color: var(--color-text-primary);
    }

    .sidebar-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .sidebar-list li {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      padding: 12px 0;
      border-bottom: 1px solid var(--color-border);
      font-size: 0.9rem;
      color: var(--color-text-secondary);
      line-height: 1.5;
    }

    .sidebar-list li:last-child {
      border-bottom: none;
      padding-bottom: 0;
    }

    .sidebar-list li svg {
      flex-shrink: 0;
      width: 18px;
      height: 18px;
      stroke: var(--color-gold);
      stroke-width: 2;
      margin-top: 2px;
    }

    .sidebar-contact {
      text-align: center;
      padding-top: 8px;
    }

    .sidebar-contact p {
      font-size: 0.9rem;
      color: var(--color-text-muted);
      margin-bottom: 12px;
    }

    .sidebar-contact a {
      color: var(--color-gold);
      font-weight: 500;
    }

    .sidebar-contact a:hover {
      text-decoration: underline;
    }

    /* Responsive */
    @media (max-width: 1024px) {
      .quote-container {
        grid-template-columns: 1fr;
        gap: 40px;
      }
      .quote-sidebar {
        position: static;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 24px;
      }
      .sidebar-card {
        margin-bottom: 0;
      }
    }

    @media (max-width: 768px) {
      .quote-form-section {
        padding: 32px 24px;
      }
      .form-row {
        grid-template-columns: 1fr;
      }
      .staff-types {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 480px) {
      .quote-container {
        padding: 40px 16px 80px;
      }
      .quote-form-section {
        padding: 24px 20px;
      }
    }
