/* contact.css - page-specific styles (shared chrome in site.css) */

    .contact-toast { position:fixed; bottom:1.5rem; right:1.5rem; background:#1a1a1a; color:#fff; padding:.75rem 1.2rem; border-radius:10px; font-size:.83rem; box-shadow:0 8px 24px rgba(0,0,0,.25); border-left:4px solid #2ecc71; z-index:9999; opacity:0; transform:translateY(8px); transition:.3s; pointer-events:none; }
    .container { max-width:1000px; margin:0 auto; padding:2.5rem 1.5rem; }
    .contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:2.5rem; margin-bottom:2.5rem; }
    .info-card { background:var(--gray); border-radius:12px; padding:1.8rem; border-left:4px solid var(--accent); }
    .info-card h3 { font-size:1.1rem; color:var(--primary); margin-bottom:1.1rem; }
    .info-row { display:flex; gap:.9rem; align-items:flex-start; margin-bottom:.9rem; }
    .ico { flex-shrink:0; width:26px; display:flex; align-items:center; justify-content:center; margin-top:.15rem; }
    .ico img { width:22px; height:22px; object-fit:contain; }
    .info-row p { font-size:.9rem; line-height:1.7; color:#444; }
    .info-row a { color:#333; }
    .map-box { border-radius:12px; overflow:hidden; height:280px; border:2px solid var(--accent); }
    .map-box iframe { border:0; width:100%; height:100%; display:block; }
    /* ── CONTACT CARD FORM ── */
    .contact-card {
      background:#fff; border-radius:16px;
      padding:2rem 2.4rem;
      box-shadow:0 4px 28px rgba(0,0,0,.08);
      border-top:4px solid var(--accent);
      max-width:740px; margin:0 auto;
    }
    .card-title {
      font-size:1.15rem; font-weight:700; color:var(--primary);
      margin-bottom:1.8rem; display:flex; align-items:center; gap:.55rem;
    }
    .card-title svg { color:var(--accent); }
    .fg-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
    .fg { position:relative; margin-bottom:1.5rem; }
    .fg input, .fg textarea, .fg select {
      width:100%; padding:.72rem .9rem;
      border:1.5px solid #ccc; border-radius:8px;
      font-size:.92rem; font-family:inherit;
      background:transparent; outline:none;
      transition:border-color .2s, box-shadow .2s;
    }
    .fg input:focus, .fg textarea:focus, .fg select:focus {
      border-color:var(--accent);
      box-shadow:0 0 0 3px rgba(255,206,27,.18);
    }
    .fg textarea { resize:vertical; min-height:120px; }
    /* Floating label */
    .fg label {
      position:absolute; top:-10px; left:10px;
      font-size:.78rem; color:#666;
      background:#fff; padding:0 4px;
      transition:all .2s ease; pointer-events:none;
    }
    .fg input:placeholder-shown + label,
    .fg textarea:placeholder-shown + label {
      top:.72rem; font-size:.9rem;
      background:transparent; color:#aaa;
    }
    .fg input:focus + label, .fg textarea:focus + label {
      top:-10px; font-size:.78rem;
      background:#fff; color:var(--primary); font-weight:600;
    }
    /* Select uses static label above */
    .fg-sel label {
      position:static; display:block;
      font-size:.8rem; color:#666;
      margin-bottom:.35rem; background:transparent;
      padding:0; pointer-events:auto;
    }
    .submit-btn {
      width:100%; background:var(--accent); color:#111;
      font-weight:700; border:none; border-radius:30px;
      padding:.72rem; font-size:.95rem;
      cursor:pointer; transition:opacity .2s; font-family:inherit;
      margin-top:.3rem;
    }
    .submit-btn:hover { opacity:.85; }
    @media(max-width:640px) { .contact-grid, .fg-row { grid-template-columns:1fr; } .contact-card { padding:1.5rem 1.2rem; } }
