Repository navigation
Expand file tree
/
Copy pathgaleri.css
More file actions
146 lines (127 loc) · 3.31 KB
/
Copy pathgaleri.css
File metadata and controls
146 lines (127 loc) · 3.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
/* ========================================= */
/* CSS KHUSUS UNTUK HALAMAN GALERI */
/* ========================================= */
.gallery-section {
padding: 3rem;
border-radius: 20px;
text-align: center;
}
.section-title {
font-size: 2rem;
color: var(--text-main);
font-weight: 700;
margin-bottom: 0.5rem;
}
.section-subtitle {
color: var(--text-muted);
margin-bottom: 2.5rem;
font-size: 1rem;
}
/* --- Container Carousel --- */
.carousel {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
margin: 0 auto;
}
.carousel-container {
width: 100%;
/* Radius sedikit melengkung agar menyatu dengan efek glass luar */
border-radius: 12px;
overflow: hidden;
position: relative;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
background-color: var(--text-main); /* Background gelap saat gambar loading */
}
.carousel-track {
display: flex;
align-items: center;
/* Transisi diatur di JavaScript, tapi kita beri fallback di sini */
transition: transform 0.4s ease-in-out;
}
.carousel-slide {
min-width: 100%;
position: relative;
box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}
/* --- Gambar --- */
.carousel-image {
width: 100%;
height: 450px; /* Tinggi gambar dibuat konsisten */
object-fit: cover; /* Agar gambar tidak gepeng, akan terpotong rapi sesuai rasio */
display: block;
}
/* --- Caption (Overlay di atas gambar) --- */
.carousel-caption {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
padding: 2rem 1.5rem 1.5rem 1.5rem;
text-align: left;
color: #fff;
/* Efek gradien hitam transparan dari bawah ke atas agar teks mudah dibaca */
background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0) 100%);
}
.carousel-caption h3 {
margin: 0 0 0.5rem 0;
font-size: 1.3rem;
font-weight: 600;
text-shadow: 0 2px 4px rgba(0,0,0,0.5);
}
.carousel-caption p {
margin: 0;
font-size: 0.95rem;
color: #e0e0e0;
line-height: 1.4;
}
/* --- Tombol Navigasi Carousel --- */
.carousel-btn {
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(5px);
border: 1px solid rgba(255, 255, 255, 0.5);
color: var(--text-main);
width: 45px;
height: 45px;
border-radius: 50%;
font-size: 1.8rem;
line-height: 1;
cursor: pointer;
position: absolute;
z-index: 10;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
transition: all 0.2s ease;
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 4px; /* Penyesuaian optikal panah */
}
.carousel-btn:hover {
background: #fff;
transform: scale(1.1);
color: var(--primary); /* Warna aksen dari tema utama */
}
.carousel-btn.prev {
left: -20px; /* Tombol sedikit keluar dari batas gambar */
}
.carousel-btn.next {
right: -20px;
}
/* --- Responsive untuk Galeri --- */
@media (max-width: 768px) {
.gallery-section {
padding: 1.5rem;
}
.carousel-image {
height: 300px; /* Gambar lebih pendek di HP */
}
.carousel-btn.prev { left: 10px; } /* Tombol masuk ke dalam gambar agar tidak terpotong layar */
.carousel-btn.next { right: 10px; }
.carousel-btn {
width: 35px;
height: 35px;
font-size: 1.5rem;
}
}