/* ==============================================
   ABOUT PAGE SPECIFIC STYLES - CLEAN & PROFESSIONAL
   ============================================== */

/* Fade in animations */
.fade-in-up {
    opacity: 0;
    transform: translateY(30px);
    animation: fadeInUp 0.8s ease-out forwards;
}

.fade-in-left {
    opacity: 0;
    transform: translateX(-30px);
    animation: fadeInLeft 0.8s ease-out forwards;
}

.fade-in-right {
    opacity: 0;
    transform: translateX(30px);
    animation: fadeInRight 0.8s ease-out forwards;
}

/* Staggered animation delays */
.delay-1 { animation-delay: 0.2s; }
.delay-2 { animation-delay: 0.4s; }
.delay-3 { animation-delay: 0.6s; }

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Animated line under heading */
.animate-line {
    background-color: var(--accent-brown);
    transform: scaleX(0);
    transform-origin: center;
    animation: growLine 1s ease-out forwards;
    animation-delay: 0.5s;
}

@keyframes growLine {
    from {
        transform: scaleX(0);
    }
    to {
        transform: scaleX(1);
    }
}

/* Timeline Styles */
.timeline-container {
    position: relative;
}

.timeline-line {
    background: linear-gradient(to bottom, var(--primary-blue), var(--accent-brown));
    transform: scaleY(0);
    transform-origin: top;
    animation: growTimeline 1.5s ease-out forwards;
    animation-delay: 0.5s;
}

@keyframes growTimeline {
    from {
        transform: scaleY(0);
    }
    to {
        transform: scaleY(1);
    }
}

.timeline-item {
    position: relative;
}

.timeline-marker {
    top: 1.5rem;
    transition: all 0.3s ease;
}

.timeline-item:hover .timeline-marker {
    transform: scale(1.2);
}

/* Timeline fade-in animation */
.fade-in-timeline {
    opacity: 0;
    transform: translateX(-20px);
    animation: fadeInTimeline 0.6s ease-out forwards;
}

.fade-in-timeline[data-delay="0"] { animation-delay: 0.8s; }
.fade-in-timeline[data-delay="200"] { animation-delay: 1.0s; }
.fade-in-timeline[data-delay="400"] { animation-delay: 1.2s; }
.fade-in-timeline[data-delay="600"] { animation-delay: 1.4s; }

@keyframes fadeInTimeline {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Value cards hover effect */
.fade-in-up[data-delay="0"] { animation-delay: 0.2s; }
.fade-in-up[data-delay="200"] { animation-delay: 0.4s; }
.fade-in-up[data-delay="400"] { animation-delay: 0.6s; }

/* Counter animation */
.counter {
    color: var(--accent-brown);
    font-weight: bold;
}

/* Number showcase styling */
.number-showcase {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-left: 4px solid var(--accent-brown);
}

/* Philosophy section styling */
.philosophy-highlight {
    position: relative;
    padding-left: 1rem;
    border-left: 3px solid var(--accent-brown);
    background: rgba(183, 127, 88, 0.05);
    border-radius: 0 0.5rem 0.5rem 0;
}

/* Hover effects for cards */
.hover-lift {
    transition: all 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* Icon styling */
.value-icon {
    transition: all 0.3s ease;
}

.value-card:hover .value-icon {
    transform: scale(1.1);
    background-color: var(--primary-blue) !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .timeline-line {
        left: 1.5rem;
    }
    
    .timeline-item {
        padding-left: 3rem;
    }
    
    .timeline-marker {
        left: 1rem;
    }
    
    .fade-in-left,
    .fade-in-right {
        transform: translateY(30px);
        animation-name: fadeInUp;
    }
}

@media (max-width: 640px) {
    .fade-in-up,
    .fade-in-left,
    .fade-in-right,
    .fade-in-timeline {
        animation-duration: 0.5s;
    }
}

/* Print styles */
@media print {
    .fade-in-up,
    .fade-in-left,
    .fade-in-right,
    .fade-in-timeline {
        opacity: 1 !important;
        transform: none !important;
        animation: none !important;
    }
    
    .timeline-line {
        transform: scaleY(1) !important;
    }
    
    .animate-line {
        transform: scaleX(1) !important;
    }
}
