/* Spectre EDM - Custom Styles (Tailwind base + enhancements) */

body {
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Improve focus visibility for accessibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline: 2px solid #f97316;
  outline-offset: 2px;
}

/* Professional card hover states already handled inline in HTML for simplicity */

/* Form input styling (used on contact page) */
input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select {
  background-color: #18181b;
  border: 1px solid #27272a;
  color: #e4e4e7;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
  border-color: #f97316;
  box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.1);
  background-color: #27272a;
}

/* Equipment spec tables */
.spec-table td,
.spec-table th {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 0.875rem;
}

.spec-table th {
  font-weight: 600;
  color: #f4a261;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 0.7rem;
}

/* Gallery hover zoom effect */
.gallery-img {
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), 
              box-shadow 0.3s ease;
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.2);
}

.gallery-img:hover {
  transform: scale(1.015);
  box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.4);
}

/* Subtle industrial texture overlay (optional decorative) */
.industrial-texture {
  background-image: url('data:image/svg+xml,%3Csvg width=%2260%22 height=%2260%22 viewBox=%220 0 60 60%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg fill-rule=%22evenodd%22%3E%3Cpath fill=%22%2318181b%22 fill-opacity=%22006%22 d=%22M0 60L60 0V60H0z%22/%3E%3C/g%3E%3C/svg%3E');
  background-size: 58px 58px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .section-header {
    font-size: 2.35rem;
    line-height: 1.05;
  }
}

/* Print styles (clean for when users print quotes or pages) */
@media print {
  nav, footer, .no-print {
    display: none !important;
  }
  body {
    background: white;
    color: #111;
  }
}