126 lines
3.8 KiB
CSS
126 lines
3.8 KiB
CSS
/* pns_visual_borad module style */
|
|
|
|
/* 기존 스타일 유지하되 글자 가독성을 위해 그림자 추가 */
|
|
.pns-visual-slider { width: 100%; height: 80vh; min-height: 500px; position: relative; overflow: hidden; background: #000; }
|
|
|
|
/* 💡 [수정] 이미지를 부모 컨테이너 크기에 강제로 맞춤 (비율 무시, 꽉 채움) */
|
|
.visual-bg {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
/*background-size: 100% 100%; !* 💡 강제로 꽉 채우기 *!*/
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
transition: transform 7s;
|
|
}
|
|
|
|
.visual-bg img {
|
|
width: 100%;
|
|
height: 100%;
|
|
/*object-fit: 100% 100%; !* 🔥 안 잘림 *!*/
|
|
object-position: center;
|
|
}
|
|
|
|
.swiper-slide-active .visual-bg { transform: scale(1.1); } /* 미세한 줌 효과 */
|
|
.visual-bg::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4); }
|
|
.visual-content { position: relative; z-index: 10; height: 100%; display: flex; flex-direction: column; justify-content: center; color: #fff; padding: 0 10%; }
|
|
.visual-title { font-size: 3.5rem; font-weight: 800; line-height: 1.2; margin-bottom: 20px; word-break: keep-all; text-shadow: 2px 2px 10px rgba(0,0,0,0.5); }
|
|
.visual-desc { font-size: 1.3rem; line-height: 1.6; margin-bottom: 40px; font-weight: 300; opacity: 0.9; text-shadow: 1px 1px 5px rgba(0,0,0,0.5); }
|
|
.visual-btn { display: inline-block; padding: 15px 45px; border: 2px solid #fff; color: #fff; text-decoration: none; font-size: 1rem; transition: 0.3s; width: fit-content; cursor: pointer; }
|
|
.visual-btn:hover { background: #fff; color: #000; }
|
|
|
|
/* 💡 [추가] 라이트박스 스타일 */
|
|
.image-lightbox {
|
|
display: none;
|
|
position: fixed;
|
|
z-index: 9999;
|
|
left: 0;
|
|
top: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: rgba(0, 0, 0, 0.85); /* 배경 어둡게 */
|
|
justify-content: center;
|
|
align-items: center;
|
|
animation: fadeIn 0.3s;
|
|
flex-direction: column; /* 세로 정렬 */
|
|
}
|
|
|
|
.lightbox-content {
|
|
max-width: 90%;
|
|
max-height: 80%; /* 버튼 공간 확보를 위해 줄임 */
|
|
object-fit: contain;
|
|
animation: zoomIn 0.3s;
|
|
cursor: pointer; /* 클릭 가능 표시 */
|
|
margin-bottom: 20px; /* 버튼과의 간격 */
|
|
}
|
|
|
|
.lightbox-close {
|
|
position: absolute;
|
|
top: 20px;
|
|
right: 40px;
|
|
color: #fff;
|
|
font-size: 40px;
|
|
font-weight: bold;
|
|
transition: 0.3s;
|
|
cursor: pointer;
|
|
z-index: 10001;
|
|
}
|
|
|
|
.lightbox-close:hover {
|
|
color: #bbb;
|
|
}
|
|
|
|
/* 💡 [수정] 라이트박스 내 바로가기 버튼 스타일 (위치 및 z-index 보완) */
|
|
.lightbox-link-btn {
|
|
display: none; /* 기본 숨김 (JS에서 제어) */
|
|
padding: 15px 40px;
|
|
background-color: #009fe3;
|
|
color: #fff !important;
|
|
text-decoration: none;
|
|
font-size: 18px;
|
|
font-weight: bold;
|
|
border-radius: 30px;
|
|
transition: background-color 0.3s;
|
|
z-index: 10002; /* 이미지보다 위에 */
|
|
box-shadow: 0 4px 15px rgba(0,0,0,0.3);
|
|
border: 2px solid #fff;
|
|
}
|
|
|
|
.lightbox-link-btn:hover {
|
|
background-color: #007bb5;
|
|
transform: translateY(-2px);
|
|
}
|
|
|
|
/* 💡 [추가] Swiper 네비게이션 버튼 스타일 (잘 보이게 수정) */
|
|
.swiper-button-next, .swiper-button-prev {
|
|
color: #fff !important; /* 흰색으로 변경 */
|
|
text-shadow: 0 0 5px rgba(0,0,0,0.5); /* 그림자 추가 */
|
|
}
|
|
|
|
.swiper-pagination-bullet {
|
|
background: #fff !important;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.swiper-pagination-bullet-active {
|
|
opacity: 1;
|
|
background: #009fe3 !important; /* 활성 불릿 색상 */
|
|
}
|
|
|
|
@keyframes fadeIn {
|
|
from { opacity: 0; }
|
|
to { opacity: 1; }
|
|
}
|
|
|
|
@keyframes zoomIn {
|
|
from { transform: scale(0.8); }
|
|
to { transform: scale(1); }
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
.visual-title { font-size: 2rem; }
|
|
.visual-desc { font-size: 1rem; }
|
|
}
|