/* Optimized CSS for Performance - Consolidated and Minified-like Structure */

/* CSS Reset and Base - Optimized */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',sans-serif;background:#f8f4f0;color:#2d3c34;line-height:1.6}

/* Core Variables for Performance */
:root {
  --primary: #16214c;
  --secondary: #254284;
  --accent: #5ce2e7;
  --text-dark: #2d3c34;
  --text-light: rgba(255,255,255,0.9);
  --bg-light: #f8f4f0;
  --bg-white: #ffffff;
  --shadow: 0 10px 30px rgba(0,0,0,0.1);
  --shadow-hover: 0 20px 40px rgba(0,0,0,0.15);
  --transition: all 0.3s ease;
  --border-radius: 12px;
}

/* Header - Optimized */
header{display:flex;justify-content:space-between;align-items:center;padding:2rem 4rem;max-width:1400px;margin:0 auto}
.logo{display:flex;align-items:center;gap:0.75rem;font-family:'Fraunces',serif;font-size:1.75rem;color:#7e8d95}
.logo a{display:flex;align-items:center;gap:0.75rem;text-decoration:none;color:inherit;transition:var(--transition)}
.logo a:hover{color:var(--primary)}

/* Hero Section - Optimized */
.hero{position:relative;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:white;padding:6rem 0;overflow:hidden;min-height:400px;display:flex;align-items:center}

/* Sacred Geometry - Performance Optimized */
.sacred-geometry-bg{position:absolute;inset:0;overflow:hidden;z-index:0}
.sacred-circle{position:absolute;border:1px solid rgba(92,226,231,0.15);border-radius:50%;will-change:transform}
.sacred-circle-1{width:300px;height:300px;top:-100px;right:-50px;animation:float 20s infinite linear}
.sacred-circle-2{width:200px;height:200px;bottom:-100px;left:-50px;animation:float 20s infinite linear;animation-delay:-10s}
.sacred-circle-3{width:150px;height:150px;top:50%;left:-75px;animation:float 20s infinite linear;animation-delay:-5s}

/* Optimized Animations */
@keyframes float{0%{transform:rotate(0deg) translateX(30px) rotate(0deg)}100%{transform:rotate(360deg) translateX(30px) rotate(-360deg)}}
@keyframes pulse{0%,100%{opacity:0.05;transform:scale(1)}50%{opacity:0.15;transform:scale(1.1)}}
@keyframes floatSlow{0%{transform:rotate(0deg) translateX(20px) rotate(0deg)}100%{transform:rotate(360deg) translateX(20px) rotate(-360deg)}}

/* Typography - Consolidated */
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:1rem}
h1{font-size:3.5rem}
h2{font-size:2.5rem}
h3{font-size:1.8rem}
p{margin-bottom:1.5rem;line-height:1.7}

/* Enhanced Page Titles */
.enhanced-page-title,.about-title,.contact-page-title,.roadmap-page-title{
  font-size:3.5rem;
  font-weight:700;
  margin-bottom:1.5rem;
  background:linear-gradient(135deg,#ffffff,var(--accent));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  line-height:1.2
}

/* Buttons - Optimized */
.primary-button,.contact-submit-btn,.cta-button{
  display:inline-flex;
  align-items:center;
  background:linear-gradient(135deg,var(--primary),var(--secondary));
  color:white;
  padding:1rem 2rem;
  border:none;
  border-radius:50px;
  text-decoration:none;
  font-weight:600;
  transition:var(--transition);
  cursor:pointer;
  box-shadow:0 5px 15px rgba(22,33,76,0.2)
}
.primary-button:hover,.contact-submit-btn:hover,.cta-button:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 25px rgba(22,33,76,0.3);
  color:white
}

/* Cards - Consolidated */
.card,.value-card,.contact-info-card,.team-member,.roadmap-card{
  background:var(--bg-white);
  border-radius:var(--border-radius);
  padding:2rem;
  box-shadow:var(--shadow);
  transition:var(--transition)
}
.card:hover,.value-card:hover,.contact-info-card:hover,.team-member:hover,.roadmap-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-hover)
}

/* Grid Layouts - Optimized */
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}

/* Sections - Consolidated */
.section{padding:5rem 0}
.section-dark{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:white}
.section-light{background:var(--bg-light)}
.container{max-width:1200px;margin:0 auto;padding:0 2rem}

/* Form Elements - Optimized */
.form-control,.form-select{
  width:100%;
  padding:1rem;
  border:2px solid rgba(92,226,231,0.2);
  border-radius:10px;
  font-size:1rem;
  transition:var(--transition);
  background:rgba(248,250,252,0.8)
}
.form-control:focus,.form-select:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(92,226,231,0.1);
  outline:none;
  background:white
}

/* Timeline - Optimized */
.timeline{position:relative;max-width:1200px;margin:0 auto}
.timeline::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  width:4px;
  height:100%;
  background:linear-gradient(to bottom,rgba(92,226,231,0.8),rgba(92,226,231,0.2));
  transform:translateX(-50%);
  border-radius:4px
}

/* Icons - Optimized */
.icon{
  width:60px;
  height:60px;
  border-radius:50%;
  background:rgba(92,226,231,0.1);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--primary);
  font-size:1.5rem;
  margin-bottom:1.5rem
}

/* Responsive Design - Mobile First Approach */
@media (max-width:768px){
  .enhanced-page-title,.about-title,.contact-page-title,.roadmap-page-title{font-size:2.5rem}
  h1{font-size:2.5rem}
  h2{font-size:2rem}
  header{padding:1rem 2rem}
  .hero{padding:4rem 0}
  .section{padding:3rem 0}
  .container{padding:0 1rem}
  .sacred-circle-1,.sacred-circle-2{display:none}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
}

@media (max-width:480px){
  .enhanced-page-title,.about-title,.contact-page-title,.roadmap-page-title{font-size:2rem}
  h1{font-size:2rem}
  .card,.value-card,.contact-info-card{padding:1.5rem}
}

/* Performance Optimizations */
.will-change-transform{will-change:transform}
.gpu-accelerated{transform:translateZ(0)}

/* Print Styles */
@media print{
  .sacred-geometry-bg,.floating-elements{display:none}
  body{background:white;color:black}
}

/* High Contrast Mode Support */
@media (prefers-contrast:high){
  :root{
    --primary:#000000;
    --secondary:#333333;
    --accent:#0066cc
  }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important
  }
  .sacred-circle{animation:none}
  .floating-circle{animation:none}
}

/* Dark Mode Support */
@media (prefers-color-scheme:dark){
  :root{
    --bg-light:#1a1a1a;
    --bg-white:#2d2d2d;
    --text-dark:#ffffff
  }
  body{background:var(--bg-light);color:var(--text-dark)}
}