/* Estilos exclusivos da pagina contact.html — extraidos do <style> inline.
   Carregado DEPOIS de global-mdecals.css, entao a cascata nao muda. */

    .page-hero {
      padding: 150px 40px 40px;
      background: #000;
      color: #fff;
      border-bottom: 1px solid #1a1a1a;
      text-align: center;
    }
    .page-hero .wrap {
      max-width: 1200px;
      margin: 0 auto;
    }
    .hero-eyebrow {
      font-family: var(--f-display);
      color: var(--c-lime);
      font-size: 1.05rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      margin-bottom: 14px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
    }
    .page-title {
      font-family: var(--f-display);
      font-size: clamp(3rem, 5.5vw, 5.5rem);
      font-weight: 800;
      line-height: 0.92;
      text-transform: uppercase;
      margin: 0 0 16px 0;
      letter-spacing: -0.02em;
    }
    .page-title .lime {
      color: var(--c-lime);
    }
    .page-desc {
      font-size: 1.1rem;
      line-height: 1.5;
      color: #888888;
      max-width: 600px;
      margin: 0 auto;
    }

    /* MAIN CONTACT SECTION - DARK THEME */
    .contact-section {
      background: #090909;
      padding: 80px 40px 100px;
      color: #fff;
    }
    .contact-grid {
      max-width: 1280px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
    }
    
    .contact-left h2 {
      font-family: var(--f-display);
      font-size: clamp(2.2rem, 4vw, 3.5rem);
      font-weight: 800;
      line-height: 0.96;
      margin: 0 0 1.2rem;
      text-transform: uppercase;
      color: #fff;
    }
    .contact-left h2 .lime {
      color: var(--c-lime);
    }
    .contact-left p {
      font-size: 1.1rem;
      line-height: 1.6;
      color: #aaa;
      margin-bottom: 40px;
    }
    
    .contact-list {
      list-style: none;
      padding: 0;
      margin: 0 0 40px;
    }
    .contact-list li {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 18px 0;
      border-bottom: 1px solid #1f1f1f;
    }
    .contact-list li .lbl {
      font-family: var(--f-body);
      font-weight: 600;
      color: #666;
      text-transform: uppercase;
      font-size: 0.85rem;
      letter-spacing: 0.08em;
    }
    .contact-list li a, .contact-list li .val {
      font-family: var(--f-display);
      font-size: 1.15rem;
      font-weight: 600;
      color: #fff;
      text-decoration: none;
      transition: color 0.2s;
    }
    .contact-list li a:hover {
      color: var(--c-lime);
    }

    .direct-call-box {
      background: #121212;
      border: 1px solid #222;
      border-radius: 8px;
      padding: 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
    }
    .direct-call-title {
      font-family: var(--f-display);
      font-size: 1.1rem;
      font-weight: 700;
      text-transform: uppercase;
      color: #fff;
    }
    .direct-call-desc {
      font-size: 0.9rem;
      color: #777;
    }
    .btn-call {
      background: var(--c-lime);
      color: #000;
      font-family: var(--f-display);
      font-weight: 800;
      text-transform: uppercase;
      padding: 12px 24px;
      font-size: 0.95rem;
      border-radius: 4px;
      text-decoration: none;
      white-space: nowrap;
      transition: background 0.3s ease;
    }
    .btn-call:hover {
      background: #fff;
    }
    
    /* FORM STYLING */
    .contact-form-box {
      background: #121212;
      padding: 40px;
      border: 1px solid #222;
      border-radius: 8px;
      box-shadow: 0 12px 30px rgba(0,0,0,0.4);
    }
    .contact-form-box h3 {
      font-family: var(--f-display);
      font-size: 1.8rem;
      font-weight: 800;
      margin: 0 0 8px;
      text-transform: uppercase;
      color: #fff;
    }
    .contact-form-box p {
      color: #888;
      margin-bottom: 28px;
      font-size: 0.95rem;
    }
    
    .form-group {
      margin-bottom: 20px;
    }
    .form-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }
    .form-group label {
      display: block;
      font-family: var(--f-display);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      margin-bottom: 8px;
      font-size: 0.85rem;
      color: #aaa;
    }
    .form-group input, .form-group select, .form-group textarea {
      width: 100%;
      padding: 14px 16px;
      border: 1px solid #2a2a2a;
      background: #1a1a1a;
      color: #fff;
      font-family: var(--f-body);
      font-size: 0.95rem;
      border-radius: 4px;
      transition: border-color 0.2s;
      box-sizing: border-box;
    }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus {
      outline: none;
      border-color: var(--c-lime);
    }
    .form-group textarea {
      height: 120px;
      resize: vertical;
    }
    
    .btn-submit {
      background: var(--c-lime);
      color: #000;
      font-family: var(--f-display);
      font-weight: 800;
      text-transform: uppercase;
      padding: 16px 30px;
      font-size: 1.05rem;
      letter-spacing: 0.06em;
      border: none;
      cursor: pointer;
      width: 100%;
      border-radius: 4px;
      transition: all 0.3s;
    }
    .btn-submit:hover {
      background: #fff;
      color: #000;
    }

    .form-success-msg {
      display: none;
      background: rgba(204, 255, 0, 0.15);
      border: 1px solid var(--c-lime);
      color: var(--c-lime);
      padding: 16px;
      border-radius: 4px;
      margin-top: 16px;
      text-align: center;
      font-weight: 600;
    }
    .form-error-msg {
      display: none;
      background: rgba(255, 99, 71, 0.12);
      border: 1px solid #ff6347;
      color: #ff8b76;
      padding: 16px;
      border-radius: 4px;
      margin-top: 16px;
      text-align: center;
      font-weight: 600;
      line-height: 1.5;
    }
    .form-error-msg a { color: var(--c-lime); text-decoration: underline; }
    .btn-submit[disabled] { opacity: 0.55; cursor: wait; }
    .hp-field {
      position: absolute;
      left: -9999px;
      width: 1px;
      height: 1px;
      overflow: hidden;
    }
    
    /* MAP SECTION */
    .map-section {
      background: #050505;
      padding: 80px 40px 100px;
      text-align: center;
      color: #fff;
      border-top: 1px solid #1f1f1f;
    }
    .map-section h2 {
      font-family: var(--f-display);
      font-size: clamp(2rem, 4vw, 3.2rem);
      font-weight: 800;
      text-transform: uppercase;
      margin-bottom: 30px;
    }
    .map-box {
      max-width: 1280px;
      margin: 0 auto;
      height: 450px;
      background: #111;
      border: 1px solid #222;
      border-radius: 8px;
      overflow: hidden;
    }

    @media(max-width: 900px) {
      .contact-section { padding: 40px 20px 60px; }
      .contact-grid { grid-template-columns: 1fr; gap: 40px; }
      .form-grid { grid-template-columns: 1fr; }
      .map-section { padding: 40px 20px 60px; }
      .direct-call-box { flex-direction: column; text-align: center; }
    }
