|
|
|
|
|
|
|
|
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Montserrat:wght@300;400;500;600;700&display=swap'); |
|
|
|
|
|
:root { |
|
|
--primary: #ff4d4d; |
|
|
--secondary: #f9cb28; |
|
|
--dark: #101010; |
|
|
--light: #f8f8f8; |
|
|
} |
|
|
|
|
|
body { |
|
|
margin: 0; |
|
|
padding: 0; |
|
|
font-family: 'Montserrat', sans-serif; |
|
|
color: var(--light); |
|
|
line-height: 1.8; |
|
|
background-color: var(--dark); |
|
|
overflow-x: hidden; |
|
|
} |
|
|
|
|
|
.portfolio-grid { |
|
|
display: grid; |
|
|
grid-template-rows: auto auto auto auto; |
|
|
} |
|
|
|
|
|
.hero { |
|
|
height: 100vh; |
|
|
background: linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%); |
|
|
color: white; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
justify-content: center; |
|
|
text-align: center; |
|
|
position: relative; |
|
|
overflow: hidden; |
|
|
} |
|
|
|
|
|
.hero::before { |
|
|
content: ''; |
|
|
position: absolute; |
|
|
top: -50%; |
|
|
left: -50%; |
|
|
width: 200%; |
|
|
height: 200%; |
|
|
background: radial-gradient(circle, rgba(255,77,77,0.1) 0%, rgba(0,0,0,0) 70%); |
|
|
animation: pulse 20s infinite alternate; |
|
|
} |
|
|
|
|
|
@keyframes pulse { |
|
|
0% { transform: rotate(0deg); } |
|
|
100% { transform: rotate(360deg); } |
|
|
} |
|
|
|
|
|
.hero-content { |
|
|
z-index: 2; |
|
|
max-width: 1200px; |
|
|
padding: 0 2rem; |
|
|
} |
|
|
|
|
|
.hero h1 { |
|
|
font-size: 6rem; |
|
|
font-weight: 700; |
|
|
letter-spacing: 8px; |
|
|
margin-bottom: 2rem; |
|
|
font-family: 'Bebas Neue', sans-serif; |
|
|
text-transform: uppercase; |
|
|
background: linear-gradient(90deg, var(--primary), var(--secondary)); |
|
|
-webkit-background-clip: text; |
|
|
background-clip: text; |
|
|
color: transparent; |
|
|
line-height: 1; |
|
|
margin-bottom: 2rem; |
|
|
} |
|
|
|
|
|
.hero p { |
|
|
font-size: 1.2rem; |
|
|
max-width: 600px; |
|
|
margin: 0 auto 3rem; |
|
|
opacity: 0.9; |
|
|
} |
|
|
|
|
|
.subtitle { |
|
|
font-size: 1.4rem; |
|
|
letter-spacing: 4px; |
|
|
text-transform: uppercase; |
|
|
display: inline-block; |
|
|
margin-bottom: 3rem; |
|
|
position: relative; |
|
|
} |
|
|
|
|
|
.subtitle::after { |
|
|
content: ''; |
|
|
position: absolute; |
|
|
bottom: -10px; |
|
|
left: 50%; |
|
|
transform: translateX(-50%); |
|
|
width: 100px; |
|
|
height: 3px; |
|
|
background: linear-gradient(90deg, var(--primary), var(--secondary)); |
|
|
} |
|
|
|
|
|
.gallery { |
|
|
display: grid; |
|
|
grid-template-columns: repeat(3, 1fr); |
|
|
grid-auto-rows: 500px; |
|
|
gap: 0; |
|
|
} |
|
|
|
|
|
.grid-item { |
|
|
position: relative; |
|
|
overflow: hidden; |
|
|
transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); |
|
|
} |
|
|
|
|
|
.grid-item:nth-child(1) { grid-column: span 2; } |
|
|
.grid-item:nth-child(5) { grid-column: span 2; } |
|
|
|
|
|
.grid-item img { |
|
|
width: 100%; |
|
|
height: 100%; |
|
|
object-fit: cover; |
|
|
filter: grayscale(100%) contrast(120%); |
|
|
transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); |
|
|
} |
|
|
|
|
|
.grid-item:hover { |
|
|
transform: translateY(-10px); |
|
|
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); |
|
|
} |
|
|
|
|
|
.grid-item:hover img { |
|
|
filter: grayscale(0%) contrast(100%); |
|
|
transform: scale(1.1); |
|
|
} |
|
|
|
|
|
.overlay { |
|
|
position: absolute; |
|
|
bottom: 3rem; |
|
|
left: 3rem; |
|
|
color: white; |
|
|
opacity: 0; |
|
|
transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); |
|
|
transform: translateY(20px); |
|
|
z-index: 2; |
|
|
} |
|
|
|
|
|
.grid-item:hover .overlay { |
|
|
opacity: 1; |
|
|
transform: translateY(0); |
|
|
} |
|
|
|
|
|
.overlay .title { |
|
|
font-size: 1.8rem; |
|
|
font-weight: 700; |
|
|
margin-bottom: 0.5rem; |
|
|
text-transform: uppercase; |
|
|
letter-spacing: 3px; |
|
|
text-shadow: 0 2px 10px rgba(0,0,0,0.5); |
|
|
} |
|
|
|
|
|
.overlay .category { |
|
|
font-size: 0.9rem; |
|
|
letter-spacing: 2px; |
|
|
display: inline-block; |
|
|
padding: 0.2rem 1rem; |
|
|
background: linear-gradient(90deg, var(--primary), var(--secondary)); |
|
|
} |
|
|
|
|
|
.about { |
|
|
display: grid; |
|
|
grid-template-columns: 1fr 1fr; |
|
|
min-height: 80vh; |
|
|
align-items: center; |
|
|
} |
|
|
|
|
|
.about-content { |
|
|
padding: 4rem; |
|
|
} |
|
|
|
|
|
.about-image { |
|
|
height: 100%; |
|
|
} |
|
|
|
|
|
.about-image img { |
|
|
width: 100%; |
|
|
height: 100%; |
|
|
object-fit: cover; |
|
|
} |
|
|
|
|
|
|
|
|
.featured-project { |
|
|
height: 100vh; |
|
|
background: #000; |
|
|
color: white; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
justify-content: center; |
|
|
text-align: center; |
|
|
padding: 0 20%; |
|
|
background-image: url('http://static.photos/black/1200x630/1'); |
|
|
background-size: cover; |
|
|
background-position: center; |
|
|
position: relative; |
|
|
} |
|
|
|
|
|
.featured-project::before { |
|
|
content: ''; |
|
|
position: absolute; |
|
|
top: 0; |
|
|
left: 0; |
|
|
right: 0; |
|
|
bottom: 0; |
|
|
background: rgba(0,0,0,0.5); |
|
|
} |
|
|
|
|
|
.featured-project .project-content { |
|
|
z-index: 1; |
|
|
} |
|
|
|
|
|
|
|
|
.contact { |
|
|
padding: 8rem 4rem; |
|
|
background: #f9f9f9; |
|
|
text-align: center; |
|
|
} |
|
|
|
|
|
.contact-form { |
|
|
max-width: 500px; |
|
|
margin: 2rem auto 0; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
gap: 1rem; |
|
|
} |
|
|
|
|
|
|
|
|
.cta-button { |
|
|
display: inline-block; |
|
|
padding: 1rem 2rem; |
|
|
background: transparent; |
|
|
color: #000; |
|
|
border: 1px solid #000; |
|
|
text-decoration: none; |
|
|
transition: all 0.3s ease; |
|
|
} |
|
|
|
|
|
.cta-button:hover { |
|
|
background: #000; |
|
|
color: white; |
|
|
} |
|
|
|
|
|
|
|
|
@media (max-width: 768px) { |
|
|
.gallery { |
|
|
grid-template-columns: 1fr; |
|
|
} |
|
|
|
|
|
.about { |
|
|
grid-template-columns: 1fr; |
|
|
} |
|
|
} |