anycoder-0550837d / index.html
nkjoy's picture
Upload folder using huggingface_hub
c01c7e0 verified
Raw
History Blame Contribute Delete
36.3 kB
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ | ์˜ํ˜ผ์„ ์šธ๋ฆฌ๋Š” ์˜ˆ์ˆ ์˜ ํ–ฅ์—ฐ</title>
<!-- Google Fonts: Noto Sans KR -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet">
<!-- Remix Icons -->
<link href="https://cdn.jsdelivr.net/npm/remixicon@3.5.0/fonts/remixicon.css" rel="stylesheet">
<style>
/* --- CSS Variables & Reset --- */
:root {
--bg-color: #0f0f11;
--surface-color: #1a1a1e;
--surface-hover: #25252a;
--primary-color: #7c4dff;
--secondary-color: #ff4081;
--text-main: #ffffff;
--text-muted: #b0b0b0;
--font-main: 'Noto Sans KR', sans-serif;
--transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
--container-width: 1200px;
--header-height: 80px;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
font-family: var(--font-main);
background-color: var(--bg-color);
color: var(--text-main);
line-height: 1.6;
overflow-x: hidden;
}
a {
text-decoration: none;
color: inherit;
transition: var(--transition);
}
ul {
list-style: none;
}
img {
max-width: 100%;
display: block;
object-fit: cover;
}
/* --- Utility Classes --- */
.container {
max-width: var(--container-width);
margin: 0 auto;
padding: 0 20px;
}
.section-title {
font-size: 2.5rem;
font-weight: 700;
text-align: center;
margin-bottom: 1rem;
background: linear-gradient(to right, var(--primary-color), var(--secondary-color));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.section-subtitle {
text-align: center;
color: var(--text-muted);
margin-bottom: 4rem;
font-size: 1.1rem;
}
.btn {
display: inline-block;
padding: 12px 30px;
border-radius: 50px;
font-weight: 500;
cursor: pointer;
border: none;
transition: var(--transition);
}
.btn-primary {
background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
color: white;
box-shadow: 0 4px 15px rgba(124, 77, 255, 0.4);
}
.btn-primary:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(124, 77, 255, 0.6);
}
.btn-outline {
background: transparent;
border: 2px solid white;
color: white;
}
.btn-outline:hover {
background: white;
color: var(--bg-color);
}
/* --- Header --- */
header {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: var(--header-height);
background: rgba(15, 15, 17, 0.85);
backdrop-filter: blur(10px);
z-index: 1000;
display: flex;
align-items: center;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.nav-container {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
}
.logo {
font-size: 1.8rem;
font-weight: 900;
letter-spacing: -1px;
display: flex;
align-items: center;
gap: 10px;
}
.logo i {
color: var(--secondary-color);
}
.nav-links {
display: flex;
gap: 40px;
}
.nav-links a {
font-size: 1rem;
font-weight: 500;
color: var(--text-muted);
position: relative;
}
.nav-links a:hover, .nav-links a.active {
color: var(--text-main);
}
.nav-links a::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 2px;
background: var(--secondary-color);
transition: var(--transition);
}
.nav-links a:hover::after {
width: 100%;
}
.anycoder-credit {
font-size: 0.85rem;
color: var(--text-muted);
margin-left: 20px;
padding-left: 20px;
border-left: 1px solid rgba(255,255,255,0.1);
}
.anycoder-credit:hover {
color: var(--primary-color);
}
.menu-toggle {
display: none;
font-size: 1.5rem;
cursor: pointer;
color: var(--text-main);
}
/* --- Hero Section --- */
.hero {
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
position: relative;
background: url('https://picsum.photos/seed/artshero/1920/1080') no-repeat center center/cover;
padding-top: var(--header-height);
}
.hero::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to bottom, rgba(15,15,17,0.3), var(--bg-color));
}
.hero-content {
position: relative;
z-index: 1;
text-align: center;
max-width: 800px;
padding: 0 20px;
}
.hero-title {
font-size: 4rem;
font-weight: 900;
margin-bottom: 1.5rem;
line-height: 1.2;
opacity: 0;
transform: translateY(30px);
animation: fadeUp 1s ease forwards 0.5s;
}
.hero-desc {
font-size: 1.25rem;
color: #d0d0d0;
margin-bottom: 2.5rem;
opacity: 0;
transform: translateY(30px);
animation: fadeUp 1s ease forwards 0.7s;
}
.hero-btns {
opacity: 0;
transform: translateY(30px);
animation: fadeUp 1s ease forwards 0.9s;
}
@keyframes fadeUp {
to {
opacity: 1;
transform: translateY(0);
}
}
/* --- About Section --- */
.about {
padding: 100px 0;
background-color: var(--bg-color);
}
.about-content {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: center;
}
.about-img-wrapper {
position: relative;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.about-img-wrapper img {
width: 100%;
height: auto;
transition: transform 0.5s ease;
}
.about-img-wrapper:hover img {
transform: scale(1.05);
}
.about-text h3 {
font-size: 2rem;
margin-bottom: 1.5rem;
}
.about-text p {
color: var(--text-muted);
margin-bottom: 1.5rem;
font-size: 1.05rem;
}
.stats {
display: flex;
gap: 40px;
margin-top: 2rem;
}
.stat-item h4 {
font-size: 2.5rem;
color: var(--primary-color);
font-weight: 700;
}
.stat-item span {
color: var(--text-muted);
font-size: 0.9rem;
}
/* --- Performances Section --- */
.performances {
padding: 100px 0;
background-color: var(--surface-color);
}
.performance-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
}
.card {
background-color: var(--bg-color);
border-radius: 15px;
overflow: hidden;
transition: var(--transition);
border: 1px solid rgba(255,255,255,0.05);
position: relative;
}
.card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 30px rgba(0,0,0,0.3);
border-color: rgba(124, 77, 255, 0.3);
}
.card-image {
height: 250px;
width: 100%;
position: relative;
overflow: hidden;
}
.card-image img {
width: 100%;
height: 100%;
transition: transform 0.5s ease;
}
.card:hover .card-image img {
transform: scale(1.1);
}
.card-tag {
position: absolute;
top: 15px;
right: 15px;
background: rgba(0,0,0,0.7);
color: white;
padding: 5px 12px;
border-radius: 20px;
font-size: 0.8rem;
backdrop-filter: blur(5px);
}
.card-content {
padding: 25px;
}
.card-date {
color: var(--secondary-color);
font-size: 0.9rem;
font-weight: 500;
margin-bottom: 8px;
display: block;
}
.card-title {
font-size: 1.4rem;
margin-bottom: 10px;
font-weight: 700;
}
.card-desc {
color: var(--text-muted);
font-size: 0.95rem;
margin-bottom: 20px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.card-link {
color: var(--primary-color);
font-weight: 500;
display: flex;
align-items: center;
gap: 5px;
}
.card-link:hover {
gap: 10px;
}
/* --- Members Section --- */
.members {
padding: 100px 0;
}
.members-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 40px;
}
.member-card {
text-align: center;
group: 1;
}
.member-img {
width: 180px;
height: 180px;
border-radius: 50%;
margin: 0 auto 20px;
overflow: hidden;
border: 3px solid transparent;
transition: var(--transition);
position: relative;
}
.member-card:hover .member-img {
border-color: var(--secondary-color);
transform: rotate(5deg);
}
.member-img img {
width: 100%;
height: 100%;
}
.member-name {
font-size: 1.3rem;
font-weight: 700;
margin-bottom: 5px;
}
.member-role {
color: var(--primary-color);
font-size: 0.9rem;
font-weight: 500;
}
/* --- Gallery Section --- */
.gallery {
padding: 100px 0;
background-color: var(--surface-color);
}
.gallery-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-auto-rows: 250px;
gap: 15px;
}
.gallery-item {
position: relative;
overflow: hidden;
border-radius: 10px;
cursor: pointer;
}
/* Masonry-like effect with spans */
.gallery-item:nth-child(1) { grid-column: span 2; grid-row: span 2; }
.gallery-item:nth-child(4) { grid-column: span 2; }
.gallery-item img {
width: 100%;
height: 100%;
transition: transform 0.5s ease;
}
.gallery-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.6);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: var(--transition);
}
.gallery-overlay i {
font-size: 2rem;
color: white;
transform: scale(0);
transition: var(--transition);
}
.gallery-item:hover img {
transform: scale(1.1);
}
.gallery-item:hover .gallery-overlay {
opacity: 1;
}
.gallery-item:hover .gallery-overlay i {
transform: scale(1);
}
/* --- Contact Section --- */
.contact {
padding: 100px 0;
}
.contact-wrapper {
display: grid;
grid-template-columns: 1fr 1.5fr;
gap: 60px;
background: var(--surface-color);
padding: 50px;
border-radius: 20px;
}
.contact-info h3 {
font-size: 1.8rem;
margin-bottom: 20px;
}
.info-item {
display: flex;
align-items: flex-start;
gap: 15px;
margin-bottom: 25px;
}
.info-item i {
font-size: 1.5rem;
color: var(--primary-color);
margin-top: 3px;
}
.info-content h5 {
font-size: 1.1rem;
margin-bottom: 5px;
}
.info-content p {
color: var(--text-muted);
}
.contact-form {
display: flex;
flex-direction: column;
gap: 20px;
}
.form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
.form-group input, .form-group textarea {
width: 100%;
padding: 15px;
background: var(--bg-color);
border: 1px solid rgba(255,255,255,0.1);
border-radius: 8px;
color: white;
font-family: var(--font-main);
font-size: 1rem;
transition: var(--transition);
}
.form-group input:focus, .form-group textarea:focus {
outline: none;
border-color: var(--primary-color);
background: #151518;
}
.form-group textarea {
resize: vertical;
height: 150px;
}
/* --- Footer --- */
footer {
background: #050506;
padding: 60px 0 20px;
border-top: 1px solid rgba(255,255,255,0.05);
}
.footer-content {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
margin-bottom: 40px;
gap: 20px;
}
.footer-logo {
font-size: 1.5rem;
font-weight: 700;
display: flex;
align-items: center;
gap: 8px;
}
.social-links {
display: flex;
gap: 15px;
}
.social-link {
width: 40px;
height: 40px;
border-radius: 50%;
background: rgba(255,255,255,0.1);
display: flex;
align-items: center;
justify-content: center;
transition: var(--transition);
}
.social-link:hover {
background: var(--primary-color);
transform: translateY(-3px);
}
.copyright {
text-align: center;
color: var(--text-muted);
font-size: 0.9rem;
padding-top: 20px;
border-top: 1px solid rgba(255,255,255,0.05);
}
/* --- Animations --- */
.reveal {
opacity: 0;
transform: translateY(50px);
transition: all 0.8s ease;
}
.reveal.active {
opacity: 1;
transform: translateY(0);
}
/* --- Responsive Design --- */
@media (max-width: 1024px) {
.gallery-grid {
grid-template-columns: repeat(2, 1fr);
}
.gallery-item:nth-child(1) { grid-column: span 2; grid-row: span 1; }
.gallery-item:nth-child(4) { grid-column: span 1; }
}
@media (max-width: 768px) {
.nav-links, .anycoder-credit {
display: none;
}
.menu-toggle {
display: block;
}
.hero-title {
font-size: 2.5rem;
}
.about-content {
grid-template-columns: 1fr;
}
.contact-wrapper {
grid-template-columns: 1fr;
padding: 30px;
}
.form-row {
grid-template-columns: 1fr;
}
/* Mobile Menu Active State */
.nav-mobile-active {
position: fixed;
top: var(--header-height);
left: 0;
width: 100%;
height: calc(100vh - var(--header-height));
background: var(--bg-color);
flex-direction: column;
align-items: center;
justify-content: center;
display: flex;
gap: 30px;
border-top: 1px solid rgba(255,255,255,0.1);
}
.nav-mobile-active a {
font-size: 1.5rem;
}
}
</style>
</head>
<body>
<!-- Header -->
<header>
<div class="container nav-container">
<a href="#" class="logo">
<i class="ri-brush-2-fill"></i> ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ
</a>
<nav>
<ul class="nav-links" id="navLinks">
<li><a href="#about" class="active">์†Œ๊ฐœ</a></li>
<li><a href="#performances">๊ณต์—ฐ</a></li>
<li><a href="#members">๋ฉค๋ฒ„</a></li>
<li><a href="#gallery">๊ฐค๋Ÿฌ๋ฆฌ</a></li>
<li><a href="#contact">๋ฌธ์˜</a></li>
</ul>
</nav>
<div style="display: flex; align-items: center;">
<a href="https://huggingface.co/spaces/akhaliq/anycoder" target="_blank" class="anycoder-credit">Built with anycoder</a>
<div class="menu-toggle" id="menuToggle">
<i class="ri-menu-4-line"></i>
</div>
</div>
</div>
</header>
<main>
<!-- Hero Section -->
<section class="hero" id="home">
<div class="hero-content">
<h1 class="hero-title">์˜ํ˜ผ์„ ์šธ๋ฆฌ๋Š”<br>์˜ˆ์ˆ ์˜ ํ–ฅ์—ฐ</h1>
<p class="hero-desc">ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ์€ ๋ฌด๋Œ€ ์œ„์—์„œ ๊ฐ๋™์„ ๋„˜์–ด ๊นŠ์€ ์šธ๋ฆผ์„ ์ „ํ•ฉ๋‹ˆ๋‹ค.<br>์šฐ๋ฆฌ์™€ ํ•จ๊ป˜ ํŠน๋ณ„ํ•œ ์ˆœ๊ฐ„์„ ๋งŒ๋“ค์–ด๋ณด์„ธ์š”.</p>
<div class="hero-btns">
<a href="#performances" class="btn btn-primary">๊ณต์—ฐ ๋ณด๊ธฐ</a>
<a href="#contact" class="btn btn-outline" style="margin-left: 15px;">๋ฌธ์˜ํ•˜๊ธฐ</a>
</div>
</div>
</section>
<!-- About Section -->
<section class="about" id="about">
<div class="container">
<div class="about-content reveal">
<div class="about-img-wrapper">
<img src="https://picsum.photos/seed/artsabout/600/700" alt="์˜ˆ์ˆ ๋‹จ ๋ฆฌํ—ˆ์„ค ์‚ฌ์ง„">
</div>
<div class="about-text">
<h3>์šฐ๋ฆฌ๋Š” ์ด์•ผ๊ธฐ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค</h3>
<p>ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ์€ 2010๋…„์— ์„ค๋ฆฝ๋œ ์˜ˆ์ˆ  ๋‹จ์ฒด๋กœ, ์ „ํ†ต ์˜ˆ์ˆ ๊ณผ ํ˜„๋Œ€์  ๊ฐ๊ฐ์„ ์กฐํ™”๋กญ๊ฒŒ ์œตํ•ฉํ•˜์—ฌ ๋…์ฐฝ์ ์ธ ๋ฌด๋Œ€๋ฅผ ์„ ๋ณด์ž…๋‹ˆ๋‹ค. ์ถค, ์Œ์•…, ์—ฐ๊ทน์„ ๋„˜๋‚˜๋“ค๋ฉฐ ๊ด€๊ฐ๋“ค์—๊ฒŒ ์žŠ์ง€ ๋ชปํ•  ๊ฐ๋™์„ ์„ ๋ฌผํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.</p>
<p>๋‹จ์ˆœํ•œ ๊ณต์—ฐ์„ ๋„˜์–ด, ๊ด€๊ฐ๊ณผ ํ˜ธํกํ•˜๋ฉฐ ํ•จ๊ป˜ ๋งŒ๋“ค์–ด๊ฐ€๋Š” ์˜ˆ์ˆ ์„ ์ง€ํ–ฅํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๋ฌด๋Œ€๋Š” ๋์ด ๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค, ์—ฌ๋Ÿฌ๋ถ„์˜ ๋งˆ์Œ์†์—์„œ ๊ณ„์†๋ฉ๋‹ˆ๋‹ค.</p>
<div class="stats">
<div class="stat-item">
<h4>14+</h4>
<span>๋…„์˜ ์—ญ์‚ฌ</span>
</div>
<div class="stat-item">
<h4>500+</h4>
<span>๊ณต์—ฐ ํšŸ์ˆ˜</span>
</div>
<div class="stat-item">
<h4>30+</h4>
<span>์†Œ์† ์•„ํ‹ฐ์ŠคํŠธ</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Performances Section -->
<section class="performances" id="performances">
<div class="container">
<h2 class="section-title reveal">์ตœ์‹  ๊ณต์—ฐ ์•ˆ๋‚ด</h2>
<p class="section-subtitle reveal">๋‹ค๊ฐ€์˜ค๋Š” ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ์˜ ํŠน๋ณ„ํ•œ ๋ฌด๋Œ€๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”.</p>
<div class="performance-grid">
<!-- Card 1 -->
<article class="card reveal">
<div class="card-image">
<span class="card-tag">์ •๊ธฐ ๊ณต์—ฐ</span>
<img src="https://picsum.photos/seed/artperf1/500/350" alt="๊ณต์—ฐ ํฌ์Šคํ„ฐ">
</div>
<div class="card-content">
<span class="card-date">2023. 11. 15 - 11. 20</span>
<h3 class="card-title">๋ฐ”๋žŒ์˜ ๋…ธ๋ž˜</h3>
<p class="card-desc">์ž์—ฐ์˜ ์†Œ๋ฆฌ์™€ ํ˜„๋Œ€ ๋ฌด์šฉ์ด ์–ด์šฐ๋Ÿฌ์ง€๋Š” ์‹คํ—˜์ ์ธ ํผํฌ๋จผ์Šค. ๊ด€๊ฐ์€ ์‹œ๊ฐ๊ณผ ์ฒญ๊ฐ์˜ ์ž์œ ๋ฅผ ๊ฒฝํ—˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.</p>
<a href="#" class="card-link">์ƒ์„ธ ๋ณด๊ธฐ <i class="ri-arrow-right-line"></i></a>
</div>
</article>
<!-- Card 2 -->
<article class="card reveal">
<div class="card-image">
<span class="card-tag">์ดˆ์ฒญ ๊ณต์—ฐ</span>
<img src="https://picsum.photos/seed/artperf2/500/350" alt="๊ณต์—ฐ ํฌ์Šคํ„ฐ">
</div>
<div class="card-content">
<span class="card-date">2023. 12. 05</span>
<h3 class="card-title">๊ฒจ์šธ ๋ฐค์˜ ๊ฟˆ</h3>
<p class="card-desc">์…ฐ์ต์Šคํ”ผ์–ด์˜ ๊ณ ์ „์„ ํ•œ๊ตญ์  ์ •์„œ๋กœ ์žฌํ•ด์„ํ•œ ์Œ์•…๊ทน. ๋”ฐ๋œปํ•œ ํ•˜๋ชจ๋‹ˆ๊ฐ€ ๊ฒจ์šธ ๋ฐค์„ ๊ฐ์‹ธ์•ˆ์Šต๋‹ˆ๋‹ค.</p>
<a href="#" class="card-link">์ƒ์„ธ ๋ณด๊ธฐ <i class="ri-arrow-right-line"></i></a>
</div>
</article>
<!-- Card 3 -->
<article class="card reveal">
<div class="card-image">
<span class="card-tag">ํŠน๋ณ„ ์›Œํฌ์ƒต</span>
<img src="https://picsum.photos/seed/artperf3/500/350" alt="๊ณต์—ฐ ํฌ์Šคํ„ฐ">
</div>
<div class="card-content">
<span class="card-date">2024. 01. 10</span>
<h3 class="card-title">์•„ํ‹ฐ์ŠคํŠธ์™€์˜ ๋Œ€ํ™”</h3>
<p class="card-desc">ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ์˜ ์•„ํ‹ฐ์ŠคํŠธ๋“ค๊ณผ ํ•จ๊ป˜ํ•˜๋Š” ์ฐธ์—ฌํ˜• ์›Œํฌ์ƒต. ์ผ๋ฐ˜์ธ๋„ ์˜ˆ์ˆ ๊ฐ€๊ฐ€ ๋˜์–ด๋ณด๋Š” ์‹œ๊ฐ„.</p>
<a href="#" class="card-link">์ƒ์„ธ ๋ณด๊ธฐ <i class="ri-arrow-right-line"></i></a>
</div>
</article>
</div>
</div>
</section>
<!-- Members Section -->
<section class="members" id="members">
<div class="container">
<h2 class="section-title reveal">์•„ํ‹ฐ์ŠคํŠธ ์†Œ๊ฐœ</h2>
<p class="section-subtitle reveal">ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ์„ ์ด๋„๋Š” ๊ฟˆ์˜ ์—ฐ์ฃผ์ž๋“ค์ž…๋‹ˆ๋‹ค.</p>
<div class="members-grid">
<div class="member-card reveal">
<div class="member-img">
<img src="https://picsum.photos/seed/artist1/300/300" alt="์˜ˆ์ˆ  ์ด๊ฐ๋…">
</div>
<h3 class="member-name">๊น€์ง€ํ›ˆ</h3>
<p class="member-role">์˜ˆ์ˆ  ์ด๊ฐ๋…</p>
</div>
<div class="member-card reveal">
<div class="member-img">
<img src="https://picsum.photos/seed/artist2/300/300" alt="์•ˆ๋ฌด๊ฐ€">
</div>
<h3 class="member-name">์ด์ˆ˜์•„</h3>
<p class="member-role">์ˆ˜์„ ์•ˆ๋ฌด๊ฐ€</p>
</div>
<div class="member-card reveal">
<div class="member-img">
<img src="https://picsum.photos/seed/artist3/300/300" alt="์ž‘๊ณก๊ฐ€">
</div>
<h3 class="member-name">๋ฐ•๋ฏผ์ค€</h3>
<p class="member-role">์ž‘๊ณก ๋ฐ ์—ฐ์ถœ</p>
</div>
<div class="member-card reveal">
<div class="member-img">
<img src="https://picsum.photos/seed/artist4/300/300" alt="์ฃผ์—ฐ ๋ฌด์šฉ์ˆ˜">
</div>
<h3 class="member-name">์ตœ์œค์„œ</h3>
<p class="member-role">์ฃผ์—ฐ ๋ฌด์šฉ์ˆ˜</p>
</div>
</div>
</div>
</section>
<!-- Gallery Section -->
<section class="gallery" id="gallery">
<div class="container">
<h2 class="section-title reveal">ํ•˜์ด๋ผ์ดํŠธ ๊ฐค๋Ÿฌ๋ฆฌ</h2>
<p class="section-subtitle reveal">์ง€๋‚œ ๊ณต์—ฐ๋“ค์˜ ์ƒ์ƒํ•œ ์ˆœ๊ฐ„๋“ค์„ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค.</p>
<div class="gallery-grid">
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery1/600/600" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery2/400/400" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery3/400/400" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery4/600/300" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery5/400/400" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
<div class="gallery-item reveal">
<img src="https://picsum.photos/seed/gallery6/400/400" alt="๊ณต์—ฐ ์‚ฌ์ง„">
<div class="gallery-overlay"><i class="ri-zoom-in-line"></i></div>
</div>
</div>
</div>
</section>
<!-- Contact Section -->
<section class="contact" id="contact">
<div class="container">
<h2 class="section-title reveal">๋ฌธ์˜ํ•˜๊ธฐ</h2>
<p class="section-subtitle reveal">๊ณต์—ฐ ๋ฌธ์˜, ํ˜‘์ฐฌ ์ œ์•ˆ ๋“ฑ ์–ด๋–ค ๋‚ด์šฉ์ด๋“  ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค.</p>
<div class="contact-wrapper reveal">
<div class="contact-info">
<h3>์—ฐ๋ฝ์ฒ˜ ์ •๋ณด</h3>
<div class="info-item">
<i class="ri-map-pin-line"></i>
<div class="info-content">
<h5>์ฃผ์†Œ</h5>
<p>์„œ์šธํŠน๋ณ„์‹œ ๋งˆํฌ๊ตฌ ์˜ˆ์ˆ ์˜๋กœ 123<br>ํ•˜๋Š˜๋นŒ๋”ฉ 5์ธต</p>
</div>
</div>
<div class="info-item">
<i class="ri-mail-send-line"></i>
<div class="info-content">
<h5>์ด๋ฉ”์ผ</h5>
<p>contact@skyarts.or.kr</p>
</div>
</div>
<div class="info-item">
<i class="ri-phone-line"></i>
<div class="info-content">
<h5>์ „ํ™”</h5>
<p>02-1234-5678</p>
</div>
</div>
<div class="info-item">
<i class="ri-time-line"></i>
<div class="info-content">
<h5>์šด์˜ ์‹œ๊ฐ„</h5>
<p>์›” - ๊ธˆ: 09:00 - 18:00</p>
</div>
</div>
</div>
<form class="contact-form" onsubmit="event.preventDefault(); alert('๋ฌธ์˜๊ฐ€ ์ ‘์ˆ˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ ์‹œ์ผ ๋‚ด์— ๋‹ต๋ณ€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.');">
<div class="form-row">
<div class="form-group">
<input type="text" placeholder="์ด๋ฆ„" required>
</div>
<div class="form-group">
<input type="email" placeholder="์ด๋ฉ”์ผ" required>
</div>
</div>
<div class="form-group">
<input type="text" placeholder="์ œ๋ชฉ" required>
</div>
<div class="form-group">
<textarea placeholder="๋ฌธ์˜ ๋‚ด์šฉ์„ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”." required></textarea>
</div>
<button type="submit" class="btn btn-primary" style="align-self: flex-start;">๋ณด๋‚ด๊ธฐ</button>
</form>
</div>
</div>
</section>
</main>
<!-- Footer -->
<footer>
<div class="container">
<div class="footer-content">
<div class="footer-logo">
<i class="ri-brush-2-fill"></i> ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ
</div>
<div class="social-links">
<a href="#" class="social-link"><i class="ri-instagram-line"></i></a>
<a href="#" class="social-link"><i class="ri-youtube-fill"></i></a>
<a href="#" class="social-link"><i class="ri-facebook-fill"></i></a>
<a href="#" class="social-link"><i class="ri-twitter-x-line"></i></a>
</div>
</div>
<p class="copyright">
&copy; 2023 ํ•˜๋Š˜์˜ˆ์ˆ ๋‹จ Sky Arts Group. All rights reserved.
</p>
</div>
</footer>
<!-- JavaScript -->
<script>
// Mobile Menu Toggle
const menuToggle = document.getElementById('menuToggle');
const navLinks = document.getElementById('navLinks');
menuToggle.addEventListener('click', () => {
navLinks.classList.toggle('nav-mobile-active');
// Toggle icon
const icon = menuToggle.querySelector('i');
if (navLinks.classList.contains('nav-mobile-active')) {
icon.classList.remove('ri-menu-4-line');
icon.classList.add('ri-close-line');
} else {
icon.classList.remove('ri-close-line');
icon.classList.add('ri-menu-4-line');
}
});
// Close mobile menu when a link is clicked
document.querySelectorAll('.nav-links a').forEach(link => {
link.addEventListener('click', () => {
navLinks.classList.remove('nav-mobile-active');
const icon = menuToggle.querySelector('i');
icon.classList.remove('ri-close-line');
icon.classList.add('ri-menu-4-line');
});
});
// Scroll Animation (Intersection Observer)
const revealElements = document.querySelectorAll('.reveal');
const revealObserver = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
observer.unobserve(entry.target); // Only animate once
}
});
}, {
root: null,
threshold: 0.15, // Trigger when 15% of element is visible
rootMargin: "0px 0px -50px 0px"
});
revealElements.forEach(el => {
revealObserver.observe(el);
});
// Active Nav Link on Scroll
const sections = document.querySelectorAll('section');
const navItems = document.querySelectorAll('.nav-links a');
window.addEventListener('scroll', () => {
let current = '';
sections.forEach(section => {
const sectionTop = section.offsetTop;
const sectionHeight = section.clientHeight;
if (scrollY >= (sectionTop - 150)) {
current = section.getAttribute('id');
}
});
navItems.forEach(li => {
li.classList.remove('active');
if (li.getAttribute('href').includes(current)) {
li.classList.add('active');
}
});
});
// Header Background on Scroll
const header = document.querySelector('header');
window.addEventListener('scroll', () => {
if (window.scrollY > 50) {
header.style.background = 'rgba(15, 15, 17, 0.95)';
header.style.boxShadow = '0 5px 20px rgba(0,0,0,0.5)';
} else {
header.style.background = 'rgba(15, 15, 17, 0.85)';
header.style.boxShadow =