Generaltoa's picture
Create a yoga studio website with calming hero section, class types with descriptions, instructor bios with photos, weekly schedule calendar, pricing packages, meditation tips blog, studio location map, and booking form.
e50934a verified
/* Custom Styles for ZenFlow Harmony Studio */
/* Smooth Scrolling */
html {
scroll-behavior: smooth;
}
/* Custom Animations */
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.animate-fadeInUp {
animation: fadeInUp 0.6s ease-out;
}
/* Custom Scrollbar */
::-webkit-scrollbar {
width: 10px;
}
::-webkit-scrollbar-track {
background: #1f2937;
}
::-webkit-scrollbar-thumb {
background: #4b5563;
border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
background: #6b7280;
}
/* Selection Color */
::selection {
background-color: rgba(14, 165, 233, 0.3);
color: #ffffff;
}
/* Focus Styles */
.focus-visible {
outline: 2px solid #0ea5e9;
outline-offset: 2px;
}
/* Smooth Transitions */
.transition-all {
transition-property: all;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 300ms;
}
/* Glass Effect */
.glass-effect {
background: rgba(31, 41, 55, 0.7);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.1);
}
/* Gradient Text */
.gradient-text {
background: linear-gradient(135deg, #0ea5e9 0%, #ec4899 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
/* Custom Shadows */
.shadow-glow {
box-shadow: 0 0 30px rgba(14, 165, 233, 0.2);
}
/* Page Load Animation */
.page-load {
opacity: 0;
animation: fadeInUp 0.8s ease-out forwards;
}
/* Responsive Typography */
@media (max-width: 768px) {
.text-responsive {
font-size: calc(1.5rem + 1vw);
}
}
/* Custom Form Styling */
.form-input:focus {
box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.1);
}
/* Table Responsive */
@media (max-width: 768px) {
.table-responsive {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
}
/* Image Hover Effects */
.img-hover-zoom {
overflow: hidden;
}
.img-hover-zoom img {
transition: transform 0.5s ease;
}
.img-hover-zoom:hover img {
transform: scale(1.1);
}
/* Loading Spinner */
.spinner {
border: 3px solid rgba(255, 255, 255, 0.1);
border-radius: 50%;
border-top: 3px solid #0ea5e9;
width: 40px;
height: 40px;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/* Card Hover Effects */
.card-hover {
transition: all 0.3s ease;
}
.card-hover:hover {
transform: translateY(-5px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}
/* Section Spacing */
.section-padding {
padding-top: 5rem;
padding-bottom: 5rem;
}
@media (max-width: 768px) {
.section-padding {
padding-top: 3rem;
padding-bottom: 3rem;
}
}