@font-face {
	font-family: 'NanumGothic';
	src: url('/fonts/NanumGothic.woff2') format('woff2'),
		url('/fonts/NanumGothic.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}


	@font-face {
    font-family: 'BMJUA';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/BMJUA.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'RecipeKorea';
    src: url('/fonts/Recipekorea.otf');
    font-weight: normal;
    font-style: normal;
}


* {
	padding: 0;
}


body {
	font-family: 'BMJUA','NanumGothic', sans-serif;
	margin: 0;
	background-color: #f4f4f4;
	overflow-x: hidden;
	
}

.title_font{
	font-family: 'RecipeKorea','BMJUA', sans-serif;
	
}

:root {
	--green: #15CB5E;
	--lightgreen: #E6FFB7;
	--cream: #F8F9FA;
}


.shadow-effect {
	background: #fff;
	padding: 20px;
	border-radius: 4px;
	text-align: center;
	border: 1px solid #ECECEC;
	box-shadow: 0 19px 38px rgba(0, 0, 0, 0.10), 0 15px 12px
		rgba(0, 0, 0, 0.02);
}

#customers-testimonials .shadow-effect p, #customers-popular-recipe .shadow-effect p
	{
	font-size: 17px;
	line-height: 1.5;
	margin: 0 0 17px 0;
	font-weight: 300;

}


#customers-testimonials .item, #customers-popular-recipe .item {
	/* padding: 50px; */
	margin-bottom: 80px;
	opacity: 0.75 !important;
	-webkit-transform: scale3d(0.8, 0.8, 1);
	transform: scale3d(0.8, 0.8, 1);
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#customers-testimonials .owl-item.active.center .item,
	#customers-popular-recipe .owl-item.active.center .item {
	opacity: 1 !important;
	-webkit-transform: scale3d(1.0, 1.0, 1);
	transform: scale3d(1.0, 1.0, 1);
	position: relative;
}

.owl-carousel {
  display: flex;
  justify-content: center;
  width: 100%;
}

.owl-carousel .owl-item img {
	transform-style: preserve-3d;
	/* max-width: 90px; */
	margin: 0 auto 17px;
}



#customers-testimonials.owl-carousel .owl-dots .owl-dot.active span,
	#customers-testimonials.owl-carousel .owl-dots .owl-dot:hover span,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot.active span,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:hover span {
	/* 효과를 주는 구간  */
	background: var(--green);
	transform: translate3d(0px, -50%, 0px) scale(0.7);
}

#customers-testimonials.owl-carousel .owl-dots,
	#customers-popular-recipe.owl-carousel .owl-dots {
	display: inline-block;
	width: 100%;
	position: relative;
	bottom: 35px;
	text-align: center;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot {
	display: inline-block;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot span,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot span {
	position: relative;
	background: var(--lightgreen);
	display: inline-block;
	height: 50px;
	margin: 0 2px 5px;
	transform: translate3d(0px, -50%, 0px) scale(0.3);
	transform-origin: 50% 50% 0;
	transition: all 250ms ease-out 0s;
	width: 50px;
	border-radius: 15px;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(1) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(1) span::before
	{
	content: "1";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 15px;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(2) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(2) span::before
	{
	content: "2";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(3) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(3) span::before
	{
	content: "3";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(4) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(4) span::before
	{
	content: "4";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(5) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(5) span::before
	{
	content: "5";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(6) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(6) span::before
	{
	content: "6";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(7) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(7) span::before
	{
	content: "7";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(8) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(8) span::before
	{
	content: "8";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(9) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(9) span::before
	{
	content: "9";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#customers-testimonials.owl-carousel .owl-dots .owl-dot:nth-child(10) span::before,
	#customers-popular-recipe.owl-carousel .owl-dots .owl-dot:nth-child(10) span::before
	{
	content: "10";
	font-size: 34px;
	color: white;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.recipe-list {
	background: url("/img/background/back.jpg") no-repeat 5% 32%/auto;
	/* 	background:url("/img/background/back2.jpg")no-repeat bottom/cover ;  */
	height: 90vh;
}

.categories {
	background: url("/img/background/back2.jpg") no-repeat bottom/auto;
	height: 90vh;
}
#shopping{
	background: url("/img/background/back4.jpg") no-repeat top/cover;
	height: 90vh;
}

.popular-row{
	position:relative;

}


.recommend-row{
	position:relative;
}



/* 전체 사이드바 스타일 */
.side-bar {
    position: fixed;
    top: 100px;
    left: -350px; /* 기본적으로 숨김 */
    width: 390px;
    height: 90vh;
    display: flex;
    transition: left 0.5s ease;
    z-index: 150;
    background-color: var(--green);
}

/* 호버 시 사이드바 표시 */
.side-bar:hover {
    left: 0;
}



.menu-tab span {
    font-size: 2.5rem;
    transition: transform 0.3s ease;
}
.side-bar:hover .menu-tab span {
    transform: rotate(180deg);
}

/* 메뉴 컨테이너 */
.side-menu-container {
    width: 390px;
    height: 100%;
    background-color: var(--green);
    box-shadow: 10px 1px 40px rgba(0, 0, 0, 0.3);
}

/* 메뉴 탭 (오른쪽에 고정) */
.menu-tab {
    width: 50px;
    height: 100%;
    background-color: var(--green);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
    cursor: pointer;
    writing-mode: vertical-rl;
	text-orientation: upright;
    font-weight: bold;
    font-size: 1.2rem;
}

/* 메뉴 아이템 스타일 */
.side-menu-1, .side-menu-2, .side-menu-3 {
    width: 100%;
    height: 30vh;
    transform: translateX(-100%);
    transition: transform 0.5s ease;
    position: relative;
       font-family: 'RecipeKorea','BMJUA', sans-serif;
}

.side-bar:hover .side-menu-1,
.side-bar:hover .side-menu-2,
.side-bar:hover .side-menu-3 {
    transform: translateX(0);
}

.side-menu-1 {
    background: url("/img/background/back.jpg") no-repeat right/cover;
    transition-delay: 0.1s;
    	text-shadow: -1px 0px white, 0px 1px white, 1px 0px white, 0px -1px white;
}

.side-menu-2 {
    background: url("/img/background/back2.jpg") no-repeat right/cover;
    transition-delay: 0.2s;
    	text-shadow: -1px 0px black, 0px 1px black, 1px 0px black, 0px -1px black;
}

.side-menu-3 {
    background: url("/img/background/back4.jpg") no-repeat right/cover;
    transition-delay: 0.3s;
    	text-shadow: -1px 0px black, 0px 1px black, 1px 0px black, 0px -1px black;
    
}
/* .side-bar-btn{
	position: absolute;
	top: 50%;
	left: 380px;
	writing-mode: vertical-rl;
	text-orientation: upright;
} */

.box-active {
	border: 1px solid var(--green);
}



/*==============================*/
.recipe-card i{
	font-size: 2.8em;
	margin-bottom: 0.2em;
}	
.recipe-card {
	position: relative;
	border-radius: 15px;
	display: flex;
	  margin: 0 auto;
}

.recipe-card__cover {
	cursor: pointer;
	background: #EEE;
	border-radius: 15px;
	position: relative;
	height: 500px;
	width: 300px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	z-index: 30;
	transition: transform 0.3s ease-in-out, border-radius 0.3s ease-in-out;
	min-width: 300px;
	text-shadow: -1px 0px black, 0px 1px black, 1px 0px black, 0px -1px black;
}

.recipe-card__cover-details {
	z-index: 20;
	color: white;
	height: 100%;
	width: 100%;
	position: relative;
	min-width: 300px;
}

.recipe-card__img {
	display: flex;
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	overflow: hidden;
		min-width: 300px;
}

.recipe-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.3s ease-in;
}

.recipe-card__cover--open {
	transform: translateX(0%);
}

.recipe-card__cover:hover .recipe-card__img img {
	transform: scale(1.1);
}

.recipe-card__servings, .recipe-card__duration {
	background: rgba(255, 255, 255, 0.2);
	border: 1px solid rgba(255, 255, 255, 0.4); 
	backdrop-filter : blur(15px);
	width: 60px;
	height: 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin: 10px;
	text-align: center;
	font-size: 0.4em;
	transform: translatex(-120%);
	transition: transform 0.3s ease-in;
	text-transform: uppercase;
	backdrop-filter: blur(15px);
}

.recipe-card__rate {
	float: right;
	background: rgba(255, 255, 255, 0.2);
	border: 1px solid rgba(255, 255, 255, 0.4); 
	backdrop-filter : blur(15px);
	width: 60px;
	height: 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin: 10px;
	text-align: center;
	font-size: 0.4em;
	transform: translatex(120%);
	transition: transform 0.3s ease-in;
	text-transform: uppercase;
}

.recipe-card__ingredients {
	opacity: 0;
	position: absolute;
	bottom: 0px;
	z-index: 999;
	transition: opacity 0.3s ease;
	/* opacity에 애니메이션 추가 */
}

.recipe-card__cover:hover .recipe-card__ingredients {
	opacity: 1;
}

.recipe-card__cover:hover .recipe-card__servings, .recipe-card__cover:hover .recipe-card__duration,
	.recipe-card__cover:hover .recipe-card__rate {
	transform: translatex(0);
}

.recipe-card__servings--show, .recipe-card__duration--show {
	transform: translatex(0);
}

.recipe-card__servings span, .recipe-card__duration span,
	.recipe-card__rate span {
	display: block;
	font-size: 3em;
}

.recipe-card__info {
	position: absolute;
	bottom: 0;
	padding: 0 20px;
	transition: opacity 0.3s ease;
	transform: translateY(5%);
}

.recipe-card__cover:hover .recipe-card__info {
	opacity: 0;
}

.recipe-card__info--show {
	transform: translateY(0%);
}

.recipe-card__title {
	font-size: 1.2em;
}

.recipe-card__description {
	font-size: 1.1em;
	line-height: 1.3;
}

.recipe-card .recipe-views {
	position: absolute;
	bottom: -10px;
	right: 10px;
}


.recipe-card__content-container {
	width: 300px;
	height: 450px;
	margin-top: 25px;
	background: #f5f5f5;
	position: absolute;
	box-shadow: 0 2.8px 2.2px rgba(0, 0, 0, 0.02), 0 6.7px 5.3px
		rgba(0, 0, 0, 0.028), 0 12.5px 10px rgba(0, 0, 0, 0.035), 0 22.3px
		17.9px rgba(0, 0, 0, 0.042), 0 41.8px 33.4px rgba(0, 0, 0, 0.05), 0
		50px 80px rgba(0, 0, 0, 0.07);
	transition: 0.3s ease-in-out;
	border-radius: 15px;
	overflow: hidden;
}

.recipe-card__content-container--open {
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
	transform: translateX(60%);
	width: 480px;
}

.recipe-card__actions ul {
	padding: 0;
	margin: 0;
	list-style-type: none;
	display: flex;
	height: 60px;
	width: 100%;
	align-items: center;
}

.recipe-card__actions li {
	display: flex;
	height: 60px;
	width: 100%;
	transition: background-color 0.2s ease;
	align-items: center;
	justify-content: center;
	position: relative;
}

.recipe-card__actions li:hover {
	background-color: #eee;
}

.recipe-card__actions a {
	padding: 10px;
	text-decoration: none;
	color: #333;
	text-transform: uppercase;
	border-bottom: 2px solid transparent;
	transition: border-bottom 0.2s ease;
	font-weight: 900;
}

.recipe-card__actions a:hover {
	border-bottom: 2px solid #2c3e50;
}

.recipe-card__actions a::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.recipe-card__actions a.active {
	border-bottom: 2px solid #34495e;
}

.recipe-card__content {
	display: none;
	padding: 10px 20px;
	height: 360px;
	overflow-y: scroll;
}

.recipe-card__content ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
}

.recipe-card__content span {
	font-weight: 900;
	padding: 5px 3px;
}

.recipe-card__content .menu {
	background-color: var(--green);
	color: white;
	text-align: center;
}

.recipe-card__content li {
	min-height: 30px;
	display: flex;
	align-items: center;
	padding: 5px 3px;
	line-height: 1.4;
}

.recipe-card__content li:nth-child(odd) {
	background: #eee;
}

.recipe-card__content--active {
	display: block;
}

.preparation-steps {
	counter-reset: section;
}

.preparation-steps li {
	margin-left: 10px;
	padding-left: 30px;
	position: relative;
	border-left: 3px solid #1f944e;
}

.preparation-steps li::before {
	content: '1';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -21px;
	background: var(--green); color : white;
	border-radius: 50%;
	height: 2em;
	width: 2em;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 4px solid #F5F5F5;
	counter-increment: section;
	content: counter(section);
	color: white;
}
.desktop{
	display: block;
}
.mobile{
	display: none;
}

/* 좌우 버튼 스타일 */
.carousel-controls {
	position: absolute;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
	display: flex;
	justify-content: space-between;
	pointer-events: none;
	/* 카드 클릭 이벤트 방해 안 하도록 설정 */
}

.carousel-btn {
	background: rgba(0, 0, 0, 0.5);
	color: white;
	border: none;
	font-size: 24px;
	cursor: pointer;
	padding: 10px 15px;
	border-radius: 5px;
	pointer-events: all;
	/* 버튼은 클릭 가능하도록 */
}

.carousel-btn:hover {
	background: rgba(0, 0, 0, 0.8);
}

/*
  .owl-carousel .owl-stage-outer,
  .owl-carousel .owl-stage,
  .owl-carousel .owl-item {
  overflow: visible !important;
  }
  */
.owl-carousel .owl-item {
	z-index: 1 !important;
	  display: flex;
  justify-content: center;
}

.owl-carousel .owl-item.center {
	z-index: 50 !important;
	/* 활성화된 카드를 더 높이 위치시킴 */
}


@media screen and (max-width: 1200px) {
	
	.desktop{
		display: none;
		
	}
	.mobile{
		display: block;
	}
	
	.side-bar {
    display: none;
	}
}





.bg-shadow {
	background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
	width: 100%;
}

.tagify {
	--tags-border-color: none;
	--tags-hover-border-color: none;
	--tags-focus-border-color: none;
	--tag-bg: #000000f0;
	--tag-hover: #000000f0;
	--tag-text-color: white;
	--tag-border-radius: 16px;
	border: none;
	border-radius: 16px !important;
		max-height: 260px !important;
	overflow: hidden;
	
}

.recipe-card__content-container .tagify {
	--tags-border-color: none;
	--tags-hover-border-color: none;
	--tags-focus-border-color: none;
	--tag-bg: var(--lightgreen);
	--tag-hover: var(--lightgreen);
	--tag-text-color: #555;
}

.r_ingredients.tagify[readonly] {
    --tag-pad: 0.45em 0.75em;
}

.r_ingredients.tagify[readonly] .tagify__tag > div::before {
	display:flex;
    content: "재료";
    font-size:0.6rem;
    color: var(--green);
}

.ingredients.tagify[readonly] .tagify__tag > div::before {
			display:flex;
    content: "재료";
    font-size:0.7rem;
    color: var(--green);
    font-weight: bold;
}

.tagify[readonly] {
    background-color: transparent;
}


.tagify[readonly] .tagify__tag {
    border-radius: 16px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    color: #555;
}

a {
	color: #000;
}

