/* Custom styles for Haven of Beauty */

/* Smooth scroll offset for fixed nav */
html {
    scroll-padding-top: 80px;
}

/* Selection color */
::selection {
    background: rgba(26, 184, 148, 0.3);
    color: #f0fdf9;
}

/* Focus styles */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 2px solid #1ab894;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Hero gradient overlay on image */
.hero-img-wrapper::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: linear-gradient(180deg, transparent 50%, rgba(10, 22, 40, 0.4) 100%);
    pointer-events: none;
    z-index: 1;
}

/* Service card icon animation */
.service-card:hover .w-14 {
    transform: scale(1.1) rotate(5deg);
    transition: transform 0.3s ease;
}

/* Custom select arrow */
select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231ab894' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 40px;
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
    .service-card { transition: none !important; }
    .service-card:hover { transform: none; }
    .gallery-item img { transition: none !important; }
    .gallery-item:hover img { transform: none; }
    .btn-primary, .btn-secondary { transition: none !important; }
    .btn-primary:hover, .btn-secondary:hover { transform: none; }
}
