36788-vm/assets/css/custom.css
2025-12-09 14:35:31 +00:00

258 lines
4.6 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Lato:wght@300;400;700&display=swap');
body {
background-color: #FFF5EE;
font-family: 'Lato', sans-serif;
color: #555;
}
h1, h2, h3, h4, h5, h6 {
font-family: 'Great Vibes', cursive;
color: #FFC0CB;
font-weight: normal;
}
.hero {
background: radial-gradient(circle, rgba(255, 192, 203, 0.3) 0%, rgba(255, 245, 238, 0) 70%);
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: #fff;
}
.hero-text {
animation: fadeIn 2s ease-in-out;
}
.hero h1 {
font-size: 5rem;
color: #E6A4B4;
}
.hero p {
font-size: 1.5rem;
color: #E6A4B4;
font-family: 'Lato', sans-serif;
font-weight: 300;
}
.section {
padding: 100px 0;
}
.section h2 {
text-align: center;
margin-bottom: 50px;
font-size: 3.5rem;
}
.timeline {
position: relative;
padding: 50px 0;
}
.timeline::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 2px;
height: 100%;
background-color: #FFC0CB;
}
.timeline-item {
margin-bottom: 50px;
position: relative;
}
.timeline-item:last-child {
margin-bottom: 0;
}
.timeline-content {
position: relative;
width: 45%;
padding: 20px;
background-color: #fff;
border-radius: 0.75rem;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.timeline-item:nth-child(odd) .timeline-content {
left: 55%;
}
.timeline-item:nth-child(even) .timeline-content {
left: 0;
text-align: right;
}
.timeline-dot {
position: absolute;
top: 20px;
left: 50%;
transform: translateX(-50%);
width: 20px;
height: 20px;
border-radius: 50%;
background-color: #FFC0CB;
border: 4px solid #FFF5EE;
}
.gallery-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 15px;
}
.gallery-item {
background-color: #fff;
padding: 10px;
border-radius: 0.75rem;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.gallery-item:hover {
transform: translateY(-5px);
box-shadow: 0 8px 12px rgba(0,0,0,0.15);
}
.gallery-item img {
width: 100%;
height: 200px;
object-fit: cover;
border-radius: 0.5rem;
}
.love-reasons-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 20px;
}
.reason-card {
background: #fff;
padding: 20px;
border-radius: 0.75rem;
text-align: center;
box-shadow: 0 4px 6px rgba(0,0,0,0.05);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.reason-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 20px rgba(255, 192, 203, 0.3);
}
.poem {
max-width: 600px;
margin: 0 auto;
text-align: center;
font-family: 'Great Vibes', cursive;
font-size: 1.8rem;
line-height: 1.8;
color: #777;
}
.final-section {
padding: 150px 0;
text-align: center;
background-color: #FFC0CB;
color: #fff;
position: relative;
overflow: hidden;
}
.final-section h2 {
color: #fff;
font-size: 3rem;
animation: pulse 2s infinite;
}
.floating-hearts {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
.heart {
position: absolute;
width: 20px;
height: 20px;
background-color: rgba(255,255,255,0.8);
transform: rotate(-45deg);
animation: float 10s infinite;
}
.heart::before, .heart::after {
content: '';
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
background-color: rgba(255,255,255,0.8);
}
.heart::before {
top: -10px;
left: 0;
}
.heart::after {
top: 0;
left: 10px;
}
footer {
background-color: #fcebeb;
padding: 20px 0;
text-align: center;
font-size: 0.9rem;
color: #aaa;
}
.navbar {
transition: background-color 0.3s ease;
}
.navbar.scrolled {
background-color: rgba(255, 245, 238, 0.9) !important;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.nav-link {
color: #E6A4B4 !important;
font-weight: 600;
}
.nav-link:hover {
color: #FFC0CB !important;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
@keyframes float {
0% { transform: translateY(100vh) rotate(-45deg); opacity: 1; }
100% { transform: translateY(-10vh) rotate(-45deg); opacity: 0; }
}