/* Contact page styles — ported from KJM Verkkosivu/yhteystiedot.html <style> */

    .contact-page {
      margin-top: 6.5rem;
      padding: 6rem 0;
      min-height: calc(100vh - 6.5rem - 400px);
    }
    
    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 1.5fr;
      gap: 4rem;
      margin-top: 3rem;
    }
    
    .contact-info__block {
      margin-bottom: 3rem;
    }
    
    .contact-info__block h3 {
      font-size: 1.125rem;
      margin-bottom: 1rem;
      color: var(--ink);
    }
    
    .contact-info__block p {
      color: var(--ink-muted);
      line-height: 1.7;
      margin-bottom: 0.5rem;
    }
    
    .contact-info__block a {
      color: var(--primary);
      font-weight: 500;
      transition: color 150ms ease;
    }
    
    .contact-info__block a:hover {
      color: var(--primary-dim);
    }
    
    .map-placeholder {
      width: 100%;
      aspect-ratio: 16/9;
      background: var(--surface-low);
      border-radius: var(--radius-lg);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--ink-muted);
      margin-top: 2rem;
    }
    
    .contact-form {
      background: var(--surface-card);
      border-radius: var(--radius-lg);
      padding: 3rem;
      box-shadow: var(--shadow-ambient);
    }
    
    .form-group {
      margin-bottom: 1.5rem;
    }
    
    .form-group label {
      display: block;
      font-weight: 600;
      margin-bottom: 0.5rem;
      color: var(--ink);
    }
    
    .form-group input,
    .form-group textarea {
      width: 100%;
      padding: 0.875rem 1rem;
      border: 1.5px solid var(--surface-dim);
      border-radius: var(--radius-md);
      font-family: var(--font-body);
      font-size: 0.9375rem;
      transition: all 150ms ease;
      background: var(--bg);
    }
    
    .form-group input:focus,
    .form-group textarea:focus {
      outline: none;
      border-color: var(--primary);
      background: white;
    }
    
    .form-group textarea {
      min-height: 140px;
      resize: vertical;
    }
    
    .radio-group {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      margin-top: 0.75rem;
    }
    
    .radio-option {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      cursor: pointer;
    }
    
    .radio-option input[type="radio"] {
      width: 20px;
      height: 20px;
      cursor: pointer;
      accent-color: var(--primary);
    }
    
    .radio-option label {
      margin: 0;
      cursor: pointer;
      font-weight: 500;
    }
    
    .form-submit {
      margin-top: 2rem;
    }
    
    @media (max-width: 968px) {
      .contact-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
      }
      
      .contact-form {
        padding: 2rem;
      }
    }
