/* Additional custom styles beyond Tailwind */

/* Geometric decorative elements */
.geo-shape {
    position: absolute;
    pointer-events: none;
}

/* Smooth scroll offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Image hover zoom effect */
.img-frame img {
    transition: transform 0.5s ease;
}

.img-frame:hover img {
    transform: scale(1.05);
}

/* Gradient text utility */
.text-gradient {
    background: linear-gradient(135deg, #fbbf24, #d97706);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Custom bullet points */
.feature-list li {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 0.75rem;
}

.feature-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.5rem;
    width: 8px;
    height: 8px;
    background: linear-gradient(135deg, #9333ea, #fbbf24);
    border-radius: 50%;
}

/* Noise texture overlay */
.noise-overlay {
    position: relative;
}

.noise-overlay::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    opacity: 0.03;
    pointer-events: none;
}

/* Mobile responsive adjustments */
@media (max-width: 767px) {
    .hero-split {
        min-height: auto;
    }
    
    .hero-split > div:first-child {
        min-height: 100vh;
    }
    
    .geo-circle,
    .geo-square {
        display: none;
    }
}

/* Print styles */
@media print {
    nav,
    .mobile-menu {
        display: none;
    }
    
    body {
        background: white;
        color: black;
    }
}
