Files
dog_training/static/css/pages/core/home.css
2025-06-21 17:51:07 +01:00

126 lines
2.1 KiB
CSS

/* Hero Section */
.hero {
padding: 8rem 0 4rem;
background: linear-gradient(45deg, #f8fafc, #eff6ff);
}
.hero-content {
max-width: 600px;
}
.hero h1 {
font-size: 3rem;
line-height: 1.2;
margin-bottom: 1.5rem;
color: var(--text);
}
.hero p {
font-size: 1.25rem;
margin-bottom: 2rem;
color: var(--subheading);
}
/* Services Section */
.services {
padding: 6rem 0;
background: white;
}
.services-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2rem;
margin-top: 3rem;
}
.service-card {
padding: 2rem;
background: var(--light);
border-radius: 8px;
transition: transform 0.3s ease;
}
.service-card:hover {
transform: translateY(-5px);
}
/* Testimonial Section */
.testimonial {
padding: 6rem 0;
background: var(--light);
}
.testimonial-card {
background: white;
padding: 2rem;
border-radius: 8px;
max-width: 800px;
margin: 3rem auto 0;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
/* Pricing Section */
.pricing {
padding: 6rem 0;
background: white;
}
.pricing-card {
background: var(--light);
padding: 2rem;
border-radius: 8px;
text-align: center;
max-width: 400px;
margin: 3rem auto 0;
}
.price {
font-size: 2.5rem;
color: var(--primary);
font-weight: bold;
margin: 1rem 0;
}
/* CTA Section */
.cta {
padding: 6rem 0;
background: var(--primary);
color: white;
text-align: center;
}
/* Animations */
/* Fallback styles to ensure content is visible without JS */
.reveal {
opacity: 1; /* Default visible state */
}
/* Only hide elements if browser supports Intersection Observer */
@supports (animation-name: fade) {
.reveal {
opacity: 0;
}
.reveal.active {
animation: fade-up 0.8s ease-out forwards;
}
}
@keyframes fade-up {
0% {
opacity: 0;
transform: translateY(30px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
.delay-1 { animation-delay: 0.1s; }
.delay-2 { animation-delay: 0.2s; }
.delay-3 { animation-delay: 0.3s; }
.delay-4 { animation-delay: 0.4s; }