﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */


/* 26-2-15 미리 정의 된 p로 팝업 글씨가 보이지 않는 경우, 글자색 변경 */
td p {
    /*font-family: "Poppins", sans-serif !important;
    font-weight: 400;
    font-size: 0.875rem;
    color: #58585e;    
    letter-spacing: 0.015rem;
    margin-bottom: 10px;*/

    color: whitesmoke;
}

/* =================================
   기본 설정 및 변수
   ================================= */
:root {
    --gold-dark: #B8860B;
    --gold-medium: #DAA520;
    --gold-light: #FFD700;
    --gold-sheen: #FFF8DC; /* 금빛 하이라이트 */
    --bg-color: #121212; /* 매우 어두운 배경 */
    --surface-color: #1e1e1e; /* 카드 등 표면 색상 */
    --text-color: #e0e0e0;
    --text-color-dark: #333;
    --font-heading: 'Playfair Display', serif;
    --font-body: 'Lato', sans-serif;
    --shadow-light: 0 0 15px rgba(255, 215, 0, 0.2);
    --shadow-strong: 0 0 30px rgba(218, 165, 32, 0.5);
}

/* 기본 리셋 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

/* =================================
   요청 2: 세련된 배경 (Body) 코드
   ================================= */
body {
    background-color: var(--bg-color);
    /* 창의적인 조명 효과: 미세한 방사형 그라데이션으로 배경에 깊이감 부여 */
    background-image: url('/img/bk_gold.jpg'), radial-gradient(circle at 10% 20%, rgba(218, 165, 32, 0.05), transparent 30%), radial-gradient(circle at 80% 70%, rgba(184, 134, 11, 0.05), transparent 30%);
    background-position: center center; /* 가운데 정렬 */
    background-repeat: no-repeat; /* 반복 금지 */
    background-size: cover; /* 화면에 맞게 확대/축소 */
    background-attachment: fixed; /* 스크롤해도 고정 */


    color: var(--text-color);
    font-family: var(--font-body);
    line-height: 1.6;
}

.container {
    /*max-width: 1200px;*/
    max-width: 1840px;
    margin: 0 auto;
    padding: 0 20px;
}

/* =================================
   요청 3: 헤더 (Header) 코드
   ================================= */
header.site-header {
    background: rgba(18, 18, 18, 0.8); /* 반투명 배경 */
    backdrop-filter: blur(10px); /* 유리 효과 */
    border-bottom: 1px solid var(--gold-dark);
    padding: 20px 0;
    position: sticky;
    top: 0;
    width: 100%;
    z-index: 1000;
    /* 헤더에 은은한 황금빛 조명 효과 */
    box-shadow: 0 4px 20px rgba(218, 165, 32, 0.1);
}

    header.site-header .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

.logo {
    font-family: var(--font-heading);
    font-size: 2rem;
    color: var(--gold-medium);
    text-shadow: var(--shadow-light);
    font-weight: 700;
}

header.site-header nav ul {
    list-style: none;
    display: flex;

    margin:0;
}

header.site-header nav li {
    margin-left: 30px;
    align-content:center;
    
}

header.site-header nav a {
    text-decoration: none;
    color: var(--text-color);
    font-size: 1.1rem;
    font-weight: 300;
    position: relative;
    padding-bottom: 5px;
    transition: color 0.3s ease;
}

    /* 메뉴 호버 시 황금빛 밑줄 효과 */
    header.site-header nav a::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background: var(--gold-light);
        transition: width 0.3s ease;
    }

    header.site-header nav a:hover {
        color: var(--gold-light);
    }

        header.site-header nav a:hover::after {
            width: 100%;
        }
        
/*추가*/
header.site-header nav span {
    text-decoration: none;
    color: var(--text-color);
    font-size: 1.1rem;
    font-weight: 300;
    position: relative;
    padding-bottom: 5px;
    transition: color 0.3s ease;
 
    font-weight:normal;
}

    /* 메뉴 호버 시 황금빛 밑줄 효과 */
    header.site-header nav span::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background: var(--gold-light);
        transition: width 0.3s ease;
    }

    header.site-header nav span:hover {
        color: var(--gold-light);
    }

        header.site-header nav span:hover::after {
            width: 100%;
        }

/* =================================
   요청 4: 섹션 1 (테마 이미지) 코드
   ================================= */
#hero {
    height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px;
    position: relative;
    overflow: hidden;
}

    #hero h1 {
        font-family: var(--font-heading);
        font-size: 4rem;
        color: var(--gold-light);
        text-shadow: 0 0 20px rgba(255, 215, 0, 0.4);
        margin-bottom: 1rem;
    }

    #hero p {
        font-size: 1.5rem;
        color: var(--gold-sheen);
        margin-bottom: 2rem;
    }

/* 창의적 요소: 빛나는 프레임 */
.creative-image-frame {
    width: 400px;
    height: 480px;
    margin: 2rem auto;
    border-radius: 10px;
    /* 그라데이션 테두리 */
    border: 4px solid transparent;
    background: linear-gradient(var(--bg-color), var(--bg-color)) padding-box, linear-gradient(45deg, var(--gold-dark), var(--gold-light), var(--gold-dark)) border-box;
    box-shadow: var(--shadow-strong);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-clip: padding-box;
}

    .creative-image-frame img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.9;
    }

    /* 창의적 요소: 이미지 위를 스치는 빛 효과 (Shine Effect) */
    .creative-image-frame .shine-effect {
        position: absolute;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background: linear-gradient( to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 45%, rgba(255, 215, 0, 0.3) 50%, rgba(255, 255, 255, 0) 55%, rgba(255, 255, 255, 0) 100% );
        transform: rotate(25deg);
        animation: shine 5s infinite ease-out;
    }

@keyframes shine {
    0% {
        transform: translateX(-75%) translateY(-75%) rotate(25deg);
    }

    100% {
        transform: translateX(25%) translateY(25%) rotate(25deg);
    }
}


/* =================================
   요청 5: 섹션 2 (갤러리 카드) 코드
   ================================= */
#gallery {
    padding: 60px 20px;
    text-align: center;
}

    #gallery h2 {
        font-size: 2.5rem;
        margin-bottom: 30px;
        text-shadow: var(--shadow-light);
    }

.gallery-grid {
    display: grid;
    /*grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 30px;
    */
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 10px;
}


.gallery-card {
    background: var(--surface-color);
    border-radius: 8px;
    overflow: hidden;

    border: 1px solid var(--gold-dark);
    box-shadow: var(--shadow-light);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .gallery-card img {
        width: 100%;

        margin-top: -12%;
        margin-bottom: -28%;        
        clip-path: inset(8% 0 24% 0);

        opacity: 0.9;
        object-fit: cover;
        object-position: top;
        filter: saturate(1.2); /* 채도 살짝 높여 고급스러움 강조 */
        transition: transform 0.3s ease;
    }

    .gallery-card:hover {
        transform: translateY(-10px);
        box-shadow: var(--shadow-strong);
    }

        .gallery-card:hover img {
            transform: scale(1.05);
            filter: saturate(1.7);
        }


.gallery-card2 {
    background: var(--surface-color);
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--gold-dark);
    box-shadow: var(--shadow-light);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
    .gallery-card2 img {
        width: 100%;
        /*margin-top: -12%;
        
        clip-path: inset(8% 0 24% 0);*/
        margin-bottom: 10%;
        opacity: 0.9;
        object-fit: cover;
        object-position: top;
        filter: saturate(1.2); /* 채도 살짝 높여 고급스러움 강조 */
        transition: transform 0.3s ease;
    }
    .gallery-card2:hover {
        transform: translateY(-10px);
        box-shadow: var(--shadow-strong);
    }

        .gallery-card2:hover img {
            transform: scale(1.05);
            filter: saturate(1.7);
        }


.card-content {
    padding: 20px;

    cursor:pointer;
}

    .card-content h3 {
        font-family: var(--font-heading);
        font-size: 1.5rem;
        color: var(--gold-medium);
        margin-bottom: 10px;
    }

    .card-content p {
        font-size: 1rem;
        color: var(--text-color);
    }

.card-content2 {
    padding: 20px;
    cursor: pointer;
}

    .card-content2 h3 {
        font-family: var(--font-heading);
        font-size: 1.5rem;
        color: var(--gold-medium);
        margin-bottom: 10px;
    }

    .card-content2 p {
        font-size: 1rem;
        color: var(--text-color);
    }




/* =================================
   요청 7: 8종류 버튼 코드
   ================================= */
#buttons {
    padding: 60px 20px;
    text-align: center;
}

    #buttons h2 {
        font-size: 2.5rem;
        margin-bottom: 40px;
    }

.button-showcase {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

/* 기본 버튼 스타일 */
.btn {
    font-family: var(--font-body);
    font-size: 1rem;
    font-weight: 400;
    text-decoration: none;
    padding: 12px 28px;
    border: 2px solid transparent;
    border-radius: 50px; /* 세련된 캡슐 형태 */
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
}

/* 1. Primary (확인) - 솔리드 골드 */
.btn-primary2 {
    background-color: var(--gold-medium);
    border-color: var(--gold-medium);
    color: var(--text-color-dark);
    font-weight: 700;
}

    .btn-primary2:hover {
        background-color: var(--gold-light);
        border-color: var(--gold-light);
        box-shadow: var(--shadow-light);
        transform: translateY(-2px);
    }

/* 2. Secondary (취소) - 골드 아웃라인 */
.btn-secondary2 {
    background-color: transparent;
    border-color: var(--gold-dark);
    color: var(--gold-dark);
}

    .btn-secondary2:hover {
        background-color: var(--gold-dark);
        color: var(--surface-color);
        box-shadow: var(--shadow-light);
    }

/* 3. Login (로그인) - 그라데이션 + 빛나는 효과 */
.btn-gradient-shine {
    background: linear-gradient(45deg, var(--gold-dark), var(--gold-light));
    border: none;
    color: var(--text-color-dark);
    font-weight: 700;
    padding: 14px 30px; /* 테두리 없으므로 패딩 2px 추가 */
    position: relative;
    overflow: hidden;
}

    .btn-gradient-shine::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 40%;
        height: 100%;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
        transform: skewX(-20deg);
        transition: left 0.5s ease;
    }

    .btn-gradient-shine:hover::before {
        left: 130%;
    }

/* 4. Ghost (로그아웃) - 투명, 아웃라인 없음 */
.btn-ghost {
    background-color: transparent;
    border-color: var(--gold-sheen);
    color: var(--gold-sheen);
}

    .btn-ghost:hover {
        background-color: var(--gold-sheen);
        color: var(--text-color-dark);
    }

/* 5. Pulsing (확인) - 빛나는 애니메이션 */
.btn-primary-pulse {
    background-color: var(--gold-medium);
    border-color: var(--gold-medium);
    color: var(--text-color-dark);
    font-weight: 700;
    animation: pulse-gold 2s infinite;
}

@keyframes pulse-gold {
    0% {
        box-shadow: 0 0 0 0 rgba(218, 165, 32, 0.7);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(218, 165, 32, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(218, 165, 32, 0);
    }
}

/* 6. Outline Dark - 어두운 아웃라인 */
.btn-outline-dark {
    background: transparent;
    border-color: #555;
    color: #888;
}

    .btn-outline-dark:hover {
        border-color: var(--gold-dark);
        color: var(--gold-dark);
    }

/* 7. Text Button - 텍스트만 */
.btn-text {
    background: transparent;
    border: none;
    color: var(--gold-medium);
    padding: 14px 30px;
}

    .btn-text:hover {
        color: var(--gold-light);
        text-shadow: var(--shadow-light);
    }

/* 8. Disabled - 비활성화 */
.btn-disabled {
    background-color: #444;
    border-color: #444;
    color: #888;
    cursor: not-allowed;
}


/* =================================
   요청 6: 푸터 (Footer) 코드
   ================================= */
footer.site-footer {
    background: var(--surface-color);
    border-top: 3px solid var(--gold-dark);
    padding: 40px 0 20px 0;
    margin-top: 60px;
    /* 푸터 상단에 조명 효과 */
    box-shadow: 0 -10px 30px rgba(218, 165, 32, 0.1);
}

.footer-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 20px;
}

.footer-links a,
.footer-social a {
    text-decoration: none;
    color: var(--text-color);
    margin: 0 15px;
    transition: color 0.3s ease;
}

    .footer-links a:hover,
    .footer-social a:hover {
        color: var(--gold-light);
    }

.footer-bottom {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #333;
    font-size: 0.9rem;
    color: #888;
}




/* =================================
   요청 8: 팝업창 (Modal) 코드
   ================================= */
.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(5px); /* 배경 흐림 효과 */
    /*z-index: 2000;*/
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

    .modal-backdrop:not(.hidden) {
        opacity: 1;
    }

.modal-content {
    background: var(--surface-color);
    border-radius: 8px;
    border-top: 4px solid var(--gold-medium);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    /*padding: 30px 40px;*/
    /*width: 90%;
    max-width: 500px;*/
    position: relative;
    /* 팝업창 고급 조명 효과 */
    box-shadow: var(--shadow-strong);
    /* 팝업 등장 애니메이션 */
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

.modal-backdrop:not(.hidden) .modal-content {
    transform: translateY(0);
}

.modal-content h3 {
    font-family: var(--font-heading);
    font-size: 2rem; /*추가*/
    color: var(--gold-light);
    text-align: center;
}

/*.modal-content h2 {
    font-family: var(--font-heading);
    color: var(--gold-light);
    text-align: center;
    margin-bottom: 20px;
}

.modal-content p {
    margin-bottom: 30px;
    text-align: center;
}*/

.modal-close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    background: none;
    border: none;
    font-size: 2rem;
    color: #888;
    cursor: pointer;
    transition: color 0.3s ease;
}

    .modal-close-btn:hover {
        color: var(--gold-light);
    }

.modal-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}