-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstyle.css
More file actions
99 lines (88 loc) · 2.19 KB
/
Copy pathstyle.css
File metadata and controls
99 lines (88 loc) · 2.19 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
/* Basic Reset and Body Styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
background-color: #0a0a0a;
font-family: 'Poppins', sans-serif; /* A more modern font */
overflow: hidden;
}
/* The main container that enables the 3D space */
.hero-container {
position: relative; /* This is essential for z-index to work on child elements */
width: 100vw;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
cursor: none; /* Hide the default system cursor */
}
/* --- CURSOR AND LANTERN --- */
.spotlight {
position: fixed;
width: 500px;
height: 500px;
pointer-events: none;
transform: translate(-50%, -50%);
border-radius: 50%;
background: radial-gradient(circle, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 65%);
z-index: 9998;
}
.custom-cursor {
position: fixed;
width: 12px;
height: 12px;
background-color: white;
border-radius: 50%;
pointer-events: none;
transform: translate(-50%, -50%);
transition: transform 0.1s ease-out;
z-index: 9998
}
/* --- LOGO TEXT (Middle Layer) --- */
.logo-text {
font-size: 15vw;
font-weight: 800;
color: white;
letter-spacing: -0.02em;
position: absolute;
z-index: 3;
transform: translateZ(0);
}
/* --- PERSON CONTAINER (Front Layer) --- */
.person {
position: absolute;
/* This places the person in front of the logo */
z-index: 2;
width: 350px;
height: 500px;
filter: brightness(0.9);
transition: filter 0.2s ease;
bottom: 45%;
webkit-mask-image: linear-gradient(to top, transparent 5%, black 10%);
mask-image: linear-gradient(to top, transparent 5%, black 10%);
}
.person-image {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: contain;
transition: opacity 0.2s ease-in-out;
}
.person-image.smiling {
opacity: 0;
}
/* --- HOVER INTERACTIONS --- */
.person:hover {
filter: brightness(1);
}
.person:hover .person-image.smiling {
opacity: 1;
}
.person:hover .person-image.neutral {
opacity: 0;
}