.sns-section {
	width: 100%;
	padding: 58px 0 190px;
	background: #fff;
}

.sns-inner {
	position: relative;
	width: 1100px;
	height: 635px;
	margin: 0 auto;
}

/* 하단 배경 */
.sns-bg {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -130px;
	height: 289px;
	background: #082f2e;
}

/* 카드 영역 */
.sns-list {
	position: relative;
	z-index: 2;

	display: flex;
	justify-content: center;
	gap: 25px;
}

/* 개별 SNS */
.sns-item {
	width: 450px;
	text-align: center;
}

/* 카드 */
.sns-card {
    display: block;
	position: relative;
	width: 430px;
	height: 620px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(0, 0, 0, .2);

	transition:
		transform .45s ease,
		box-shadow .45s ease;

	overflow: hidden;
}
.sns-item:hover .sns-card {
	transform: translateY(-12px);
	box-shadow: 0 18px 35px rgba(0, 0, 0, .18);
}

/* 이미지 */
.sns-image {
	position: relative;
	width: 400px;
	height: 620px;
	margin: 28px 0 0;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	overflow: hidden;
}

/* 실제 이미지 */
.youtube-image {
	background-image:
		linear-gradient(
			to bottom,
			rgba(0,0,0,.05),
			rgba(0,0,0,.15)
		),
		url("https://www.prugio.com/asset/images/life/life-img-youtube.png");
}

.instagram-image {
	background-image:
		linear-gradient(
			to bottom,
			rgba(0,0,0,.05),
			rgba(0,0,0,.15)
		),
		url("https://www.prugio.com/asset/images/life/life-img-instagram.png");
}


/* ========================================
   계정명
======================================== */

.sns-account {
	position: absolute;
	top: 14px;
	left: 18px;

	display: flex;
	align-items: center;
	gap: 11px;

	color: #fff;
	font-size: 23px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -1px;
}

.sns-icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 43px;
	height: 43px;

	border-radius: 50%;
	background: #fff;
}

/* 유튜브 */
.youtube-icon svg {
	width: 26px;
	height: 26px;
}

.youtube-icon svg path:first-child {
	fill: #f04438;
}

.youtube-icon svg .play {
	fill: #fff;
}

/* 인스타그램 */
.instagram-icon {
	background: linear-gradient(
		135deg,
		#7b2cff,
		#e1306c 50%,
		#f7a43b
	);
}

.instagram-icon svg {
	width: 27px;
	height: 27px;
	fill: none;
	stroke: #fff;
	stroke-width: 2;
}


/* ========================================
   하단 정보 박스
======================================== */

.sns-info {
	position: absolute;
	left: 0;
	bottom: 0;

	width: 155px;
	height: 170px;

	padding: 31px 27px 22px;
	box-sizing: border-box;

	text-align: left;
}

.youtube-info {
	background: #185b5a;
}

.instagram-info {
	background: #000;
}

.sns-info h3 {
	margin: 0;

	color: #fff;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: -1px;
}


/* ========================================
   잎사귀 아이콘
======================================== */

.leaf-icon {
	width: 32px;
	height: 38px;
	margin-top: 13px;
	opacity: .4;
}

.leaf-icon img {
	width: 100%;
	height: 100%;
}


/* ========================================
   화살표
======================================== */

.sns-arrow {
	position: absolute;
	left: 27px;
	bottom: 23px;

	display: block;
	width: 54px;
	height: 12px;
}

.sns-arrow span {
	position: absolute;
	left: 0;
	top: 5px;

	width: 51px;
	height: 1px;
	background: rgba(255,255,255,.7);
}

.sns-arrow i {
	position: absolute;
	right: 1px;
	top: 2px;

	width: 6px;
	height: 6px;

	border-top: 1px solid rgba(255,255,255,.7);
	border-right: 1px solid rgba(255,255,255,.7);

	transform: rotate(45deg);
}


/* ========================================
   설명
======================================== */

.sns-desc {
	margin: 32px 0 0;

	color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.6px;
}


@media (max-width: 960px) {

	.sns-section {
		padding: 40px 20px;
	}

	.sns-inner {
		width: 100%;
		height: auto;
	}

	.sns-bg {
		height: 250px;
	}

	.sns-list {
		gap: 20px;
	}

	.sns-item {
		width: calc(50% - 10px);
	}

	.sns-card {
		width: 100%;
		height: auto;
		aspect-ratio: 341 / 490;
	}

	.sns-image {
		width: calc(100% - 30px);
		height: calc(100% - 30px);
		margin: 15px auto 0;
	}

	.sns-account {
		font-size: 19px;
	}

	.sns-info {
		width: 46%;
		height: 35%;
		padding: 22px 20px;
	}

	.sns-info h3 {
		font-size: 17px;
	}

	.sns-desc {
		font-size: 13px;
	}
}


@media (max-width: 640px) {

	.sns-section {
		padding: 30px 15px;
	}

	.sns-bg {
		height: 360px;
	}

	.sns-list {
		flex-direction: column;
		align-items: center;
		gap: 40px;
	}

	.sns-item {
		width: 100%;
		max-width: 340px;
	}

	.sns-card {
		height: 490px;
		aspect-ratio: auto;
	}

	.sns-image {
		width: calc(100% - 30px);
		height: 460px;
		margin-top: 15px;
	}

	.sns-account {
		top: 13px;
		left: 15px;
		font-size: 20px;
	}

	.sns-icon {
		width: 38px;
		height: 38px;
	}

	.sns-info {
		width: 155px;
		height: 170px;
		padding: 28px 25px 20px;
	}

	.sns-info h3 {
		font-size: 19px;
	}

	.sns-desc {
		margin-top: 20px;
		font-size: 13px;
	}

	.sns-item:last-child {
		margin-bottom: 20px;
	}
}




.story-section{
    padding:80px 0;
}

.story-list{
    max-width:1280px;
    margin:0 auto;
    display:flex;
    flex-wrap:wrap;
    gap:40px;
}

.story-card{
    width:400px;
}

.story-thumb{
    position:relative;
    display:block;
    overflow:hidden;
}

.story-thumb img{
    width:100%;
    display:block;
    transition:.5s;
}

.story-thumb:hover img{
    transform:scale(1.05);
}

.story-thumb:after{
    content:"";
    position:absolute;
    left:0; right:0; bottom:0;
    height:55%;
    background:linear-gradient(to top,rgba(0,0,0,.65),transparent);
}

.story-overlay{
    position:absolute;
    left:22px;
    bottom:24px;
    z-index:2;
    color:#fff;
}

.episode{
    display:block;
    font-size:28px;
    margin-bottom:10px;
	font-weight: 100;
}

.story-overlay h3{
    font-size:28px;
    line-height:1.35;
    margin:0;
    font-weight:700;
}

.story-content{
    margin-top:16px;
}

.story-content p{
    font-size:15px;
    line-height:1.5;
	font-weight: 400;
    color:#222;
}

.story-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100px;
    height:32px;
    margin-top:20px;
    border:1px solid #999;
    font-size:13px;
    color:#555;
    text-decoration:none;
    transition:all .3s ease;
}
.story-btn span{
	margin-left: 8px;
	transition:transform .3s ease;
}
.story-btn:hover{
    background:#005151;
    color:#fff;
}

.story-btn:hover span{
    transform:translateX(3px);
}
.story-btn-wrap {
	display: flex;
    justify-content: flex-end;
}

@media (max-width:768px){
    .story-list{
        justify-content:center;
        gap:24px;
    }

    .story-card{
        width:100%;
        max-width:320px;
    }
}




.prologue{
    max-width:1100px;
    margin:0 auto;
    padding:80px 20px;
	color: #215051;
}

.prologue strong{
    font-weight:600;
}

/* 상단 */
.prologue-head{
    text-align:center;
    margin-bottom:60px;
}

.prologue-head .sub{
    display:block;
    font-size:26px;
    font-weight:700;
    color:#111;
    letter-spacing:.08em;
    margin-bottom:10px;
}

.prologue-head h2{
    font-size:26px;
    line-height:1.6;
    font-weight:400;
    letter-spacing:-0.03em;
}

.prologue-head h2 em{
    font-style:normal;
    font-weight:700;
}

.prologue-head p{
    margin-top:35px;
    font-size:20px;
    line-height:1.6;
	font-weight: 300;
    letter-spacing:-0.02em;
}

.prologue-photo{
    margin-bottom:70px;
}

.prologue-photo img{
    width:100%;
    display:block;
}

.prologue-video{
    width:100%;
    margin-bottom:70px;
}

.prologue-photo video{
    width:100%;
    display:block;
}

.chapter{
    display:flex;
    gap:80px;
    align-items:flex-start;
}

.chapter-left{
    width:260px;
    flex-shrink:0;
}

.chapter-left span{
    display:block;
    font-size:15px;
    font-weight:700;
    margin-bottom:10px;
    letter-spacing:.05em;
}

.chapter-left h3{
    font-size:22px;
    font-weight:700;
    line-height:1.2;
}

.chapter-right{
    flex:1;
	margin-left: 260px;
	margin-bottom: 50px;
}

.chapter-right p{
    font-size:16px;
    line-height:1.8;
    letter-spacing:-0.02em;
}
.chapter-right span{
    font-size:20px;
	font-weight: 500;
}

/* 반응형 */
@media (max-width:768px){

    .prologue{
        padding:70px 20px;
    }

    .prologue-head .sub{
        font-size:22px;
    }

    .prologue-head h2{
        font-size:22px;
        line-height:1.5;
    }

    .prologue-head p{
        font-size:14px;
        line-height:1.8;
    }

    .chapter{
        flex-direction:column;
        gap:24px;
    }

    .chapter-left{
        width:100%;
    }

    .chapter-left h3{
        font-size:28px;
    }

    .chapter-right p{
        font-size:14px;
    }
}