/* Website Styles - DaisyUI + Tailwind CSS */
/* Theme: cyberpunk */

/* Google Fonts Import */
@import url('https://fonts.googleapis.com/css?family=Inter:400,500,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto:400,500&display=swap');

/* Typography Variables */
:root {
  --font-primary: Inter, sans-serif;
  --font-secondary: Roboto, sans-serif;
}

/* Critical: Global box-sizing reset */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Prevent horizontal overflow */
html {
  overflow-x: hidden;
}

/* Global body styles */
body {
  font-family: var(--font-secondary);
  margin: 0;
  padding: 0;
  line-height: 1.6;
  overflow-x: hidden;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Main content container */
main {
  flex: 1 0 auto;
  width: 100%;
}

/* Section containment - prevent overlaps and maintain structure */
section {
  position: relative;
  width: 100%;
  overflow: visible;
  clear: both;
}

section + section {
  margin-top: 0;
}

/* Z-index management for sticky header */
header {
  position: sticky;
  top: 0;
  z-index: 50;
}

footer {
  position: relative;
  z-index: 10;
  margin-top: auto;
}

/* Responsive images */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Text utilities for better typography */
.text-balance {
  text-wrap: balance;
}

.break-words {
  word-break: break-word;
  overflow-wrap: break-word;
}

/* Custom text shadow for hero sections */
.text-shadow-lg {
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
}
