/* Complete redesign with black/white minimalist aesthetic */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
  color: #111;
  background: #fff;
}

html {
  scroll-behavior: smooth;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  line-height: 1.2;
}

p {
  line-height: 1.7;
}

/* Focus styles */
input:focus,
textarea:focus,
button:focus {
  outline: none;
}

/* Form inputs */
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  transition: border-color 0.3s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
  border-color: #000;
}

input[type="checkbox"] {
  cursor: pointer;
}

/* Buttons and links */
button,
a {
  transition: all 0.3s ease;
}

/* Images */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Service cards hover effect */
.service-card {
  transition: transform 0.3s ease;
}

.service-card:hover {
  transform: translateY(-5px);
}

/* Read more functionality */
.read-more-btn {
  cursor: pointer;
  display: inline-block;
}

/* Flip card effect for case studies */
.flip-card {
  background-color: transparent;
  perspective: 1000px;
  height: 500px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: left;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: white;
  overflow: hidden;
}

.flip-card-front {
  background-color: white;
  color: black;
}

.flip-card-back {
  background-color: #000;
  color: white;
  transform: rotateY(180deg);
}

/* Grayscale images */
img.grayscale {
  filter: grayscale(100%);
  transition: filter 0.3s ease;
}

img.grayscale:hover {
  filter: grayscale(0%);
}

/* Animation for fade in */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in-up {
  animation: fadeInUp 0.6s ease-out;
}

/* Mobile menu */
#mobileMenu {
  transition: all 0.3s ease-in-out;
}

/* Cookie popup */
#cookiePopup {
  animation: slideUp 0.5s ease-out;
}

@keyframes slideUp {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}

/* Responsive iframe */
iframe {
  width: 100%;
  min-height: 400px;
}

@media (min-width: 768px) {
  iframe {
    min-height: 600px;
  }
}

/* Hover effects for cards */
.hover\:shadow-lg:hover {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* Print styles */
@media print {
  header,
  footer,
  #cookiePopup {
    display: none;
  }
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #000;
}

::-webkit-scrollbar-thumb:hover {
  background: #333;
}

/* Selection color */
::selection {
  background: #000;
  color: #fff;
}

::-moz-selection {
  background: #000;
  color: #fff;
}
