/* 
  Lopes Talent - Recrutamento Select
  Pure CSS Stylesheet for Elite Corporate Recruiting Hub
  Optimized for direct upload on HostGator shared hosting public_html
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=JetBrains+Mono:wght@400;500;700&display=swap');

/* Reset and Custom Base Variables */
:root {
  scroll-behavior: smooth;
  --color-gold: #C5A059;
  --color-dark: #080808;
  --color-card: #0e0e0e;
  --color-border: #1a1a1a;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: var(--color-dark);
}
::-webkit-scrollbar-thumb {
  background: #252525;
  border-radius: 0px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--color-gold);
}

/* Base Body settings */
body {
  font-family: 'Inter', sans-serif;
  background-color: var(--color-dark);
  color: #ffffff;
  overflow-x: hidden;
}

/* Custom Typography Utility */
.font-serif {
  font-family: 'Playfair Display', serif;
}
.font-mono {
  font-family: 'JetBrains Mono', monospace;
}

/* Form sliders customization */
input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  cursor: pointer;
}

input[type="range"]::-webkit-slider-runnable-track {
  background: #1a1a1a;
  height: 4px;
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--color-gold);
  height: 16px;
  width: 16px;
  margin-top: -6px; /* center it */
  border-radius: 0%; /* No rounds - brutalist architecture */
  transition: transform 0.1s ease, background-color 0.1s ease;
}

input[type="range"]::-webkit-slider-thumb:hover {
  transform: scale(1.2);
  background-color: #ffffff;
}

input[type="range"]::-moz-range-track {
  background: #1a1a1a;
  height: 4px;
}

input[type="range"]::-moz-range-thumb {
  background-color: var(--color-gold);
  height: 16px;
  width: 16px;
  border: none;
  border-radius: 0%;
  transition: transform 0.1s ease, background-color 0.1s ease;
}

input[type="range"]::-moz-range-thumb:hover {
  transform: scale(1.2);
  background-color: #ffffff;
}

/* Custom transitions and blurs */
.glass-header {
  background-color: rgba(8, 8, 8, 0.9);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Simple keyframe fade elements */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
  animation: fadeIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Custom focus ring offsets */
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--color-gold) !important;
}

/* Hide default select arrows down */
select {
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23C5A059' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Modal and slide-out backdrop and overlays */
.modal-overlay {
  background-color: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* Hide elements utility */
.hidden {
  display: none !important;
}

/* Style for collapsible items */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
}

.faq-answer.open {
  max-height: 500px;
}
