perling/public/assets/css/frontend/home/news.css

170 lines
3.1 KiB
CSS

@keyframes gradient-x {
0%,
100% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
}
.animate-gradient-x {
background-size: 200% 200%;
animation: gradient-x 3s ease infinite;
}
@keyframes pulse-slow {
0%,
100% {
opacity: 0.3;
}
50% {
opacity: 0.7;
}
}
.animate-pulse-slow {
animation: pulse-slow 6s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes float {
0%,
100% {
transform: translateY(0);
}
50% {
transform: translateY(-15px);
}
}
.animate-float {
animation: float 8s ease-in-out infinite;
}
.animate-float-slow {
animation: float 12s ease-in-out infinite;
}
.animate-float-slow-reverse {
animation: float 12s ease-in-out infinite reverse;
}
@keyframes float-text {
0%,
100% {
transform: translateY(0);
}
50% {
transform: translateY(-5px) rotate(2deg);
}
}
.animate-float-text {
animation: float-text 2s ease-in-out infinite;
display: inline-block;
}
@keyframes subtle-rotate {
0%,
100% {
transform: rotate(-1deg);
}
50% {
transform: rotate(1deg);
}
}
.animate-subtle-rotate {
animation: subtle-rotate 12s ease-in-out infinite;
}
/* efek 3d */
.perspective {
perspective: 1000px;
}
.perspective-hero {
perspective: 2000px;
}
.perspective-card {
perspective: 1000px;
transform-style: preserve-3d;
}
.transform-3d {
transform-style: preserve-3d;
transition: transform 0.6s cubic-bezier(0.2, 0.85, 0.4, 1);
}
.glow-line {
box-shadow: 0 0 15px 2px rgba(124, 207, 0, 0.6);
animation: glow-pulse 3s ease-in-out infinite alternate;
}
@keyframes glow-pulse {
0% {
box-shadow: 0 0 10px 1px rgba(124, 207, 0, 0.5);
}
100% {
box-shadow: 0 0 25px 5px rgba(124, 207, 0, 0.8);
}
}
.ripple-effect {
position: absolute;
width: 70px;
height: 70px;
border-radius: 50%;
background: rgba(72, 127, 255, 0.4);
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
opacity: 0;
animation: ripple 2s linear infinite;
}
@keyframes ripple {
0% {
transform: translate(-50%, -50%) scale(1);
opacity: 0;
}
20% {
transform: translate(-50%, -50%) scale(1.2);
opacity: 0.6;
}
100% {
transform: translate(-50%, -50%) scale(2);
opacity: 0;
}
}
.masonry-card-wide {
grid-row: span 1;
}
@media (min-width: 1024px) {
.masonry-card:nth-child(4n + 1) {
grid-row: span 2;
}
}
#beritaContent,
#videoContent {
transition: all 0.5s cubic-bezier(0.2, 0.85, 0.4, 1);
}
.line-clamp-2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.line-clamp-3 {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.tab-glass-container {
position: relative;
z-index: 1;
}
.tab-glass-container::after {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background: rgba(255, 255, 255, 0.03);
backdrop-filter: blur(10px);
border-radius: inherit;
}