@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

/* Base styles */
body { 
    font-family: 'Inter', sans-serif; 
}

/* AWS Brand Colors */
.text-aws-orange {
    color: #FF9900;
}

.bg-aws-orange {
    background-color: #FF9900;
}

.bg-aws-dark {
    background-color: #232F3E;
}

.bg-aws-light {
    background-color: #F8F9FA;
}

.border-aws-orange {
    border-color: #FF9900;
}

/* Professional color palette */
.text-primary {
    color: #1a202c;
}

.text-secondary {
    color: #4a5568;
}

.text-accent {
    color: #2563eb;
}

.bg-primary {
    background-color: #1a202c;
}

.bg-secondary {
    background-color: #f7fafc;
}

.bg-accent {
    background-color: #2563eb;
}

.bg-professional-blue {
    background-color: #1e40af;
}

.bg-professional-gray {
    background-color: #374151;
}

.text-professional-blue {
    color: #1e40af;
}

/* Professional gradient utilities */
.gradient-bg {
    background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%);
}

.gradient-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
}

.gradient-secondary {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.text-gradient {
    background: linear-gradient(135deg, #FF9900 0%, #f59e0b 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.text-gradient-blue {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Professional pattern utilities */
.hero-pattern {
    background-image: 
        linear-gradient(135deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.5) 100%),
        radial-gradient(circle at 25% 25%, rgba(255, 153, 0, 0.08) 0%, transparent 50%),
        radial-gradient(circle at 75% 75%, rgba(30, 64, 175, 0.08) 0%, transparent 50%);
}

.section-pattern {
    background-image: 
        linear-gradient(45deg, rgba(255, 153, 0, 0.05) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(255, 153, 0, 0.05) 25%, transparent 25%);
    background-size: 60px 60px;
}

/* Professional shadow utilities */
.shadow-professional {
    box-shadow: 0 10px 25px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.shadow-professional-lg {
    box-shadow: 0 20px 35px -5px rgba(0, 0, 0, 0.15), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* Professional spacing and typography */
.section-padding {
    padding: 5rem 0;
}

.section-padding-sm {
    padding: 3rem 0;
}

/* Clean section heading styles */
.section-heading {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: #1a202c;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 1rem 0 !important;
}

.section-heading-white {
    color: #ffffff !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

.heading-primary {
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1.1;
    color: #1a202c;
}

.heading-secondary {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: #1a202c;
}

.text-lead {
    font-size: 1.25rem;
    line-height: 1.7;
    color: #4a5568;
}

/* Professional border utilities */
.border-professional {
    border: 1px solid rgba(30, 64, 175, 0.1);
}

.border-accent {
    border: 2px solid #FF9900;
}

/* Enhanced spacing */
.space-professional > * + * {
    margin-top: 2rem;
}

/* Professional background overlays */
.bg-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(30, 64, 175, 0.05);
    pointer-events: none;
}

/* Hero section specific styling */
.hero-text {
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);
    color: #ffffff;
    font-weight: 800;
}

.hero-text-secondary {
    color: rgba(255, 255, 255, 0.95);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

/* Enhanced dark background utility */
.bg-dark-overlay {
    background: linear-gradient(135deg, rgba(26, 32, 44, 0.95) 0%, rgba(30, 58, 138, 0.9) 100%);
}

.gradient-who-section {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
}

.section-dark-pattern {
    background-image: 
        linear-gradient(135deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.4) 100%),
        radial-gradient(circle at 30% 30%, rgba(255, 153, 0, 0.05) 0%, transparent 50%),
        radial-gradient(circle at 70% 70%, rgba(30, 64, 175, 0.05) 0%, transparent 50%);
}

/* Specific styles for dark section headers */
.gradient-who-section header,
.section-dark-pattern header,
[class*="gradient-"] header {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    padding: 0 !important;
}

.section-text {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    color: #ffffff;
}

.section-text-secondary {
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
