KAPPA66's picture
crée un site modern de directeur artistique, gen ai digital artist, photographe , il faut que ce soit tres beau et tres modernen tres graphique
04ce8fc verified
/* Base Styles */
@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 */
.portfolio-grid {
display: grid;
grid-template-rows: auto auto auto auto;
}
/* Hero Section */
.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 Grid */
.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 Section */
.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 */
.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 Section */
.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;
}
/* Buttons */
.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;
}
/* Responsive */
@media (max-width: 768px) {
.gallery {
grid-template-columns: 1fr;
}
.about {
grid-template-columns: 1fr;
}
}