@charset "utf-8";

/* ----- PAGE ----- */
/* 페이지 배경: 그라데이션 하단색과 동일하게 지정해 푸터(둥근 모서리 틈 포함)까지 어두운 배경 연속 */
/* overflow-x:hidden — 화면 밖 장식/오프캔버스로 인한 가로 스크롤(헤더 가로로 길어짐) 방지 */
html, body { background-color: #160d1d; overflow-x: hidden; }

/* ----- HERO ----- */
.m26-hero {
	position: relative;
	width: 100%;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: clamp(20px, 3vw, 46px) clamp(0px, 1.4vw, 20px) clamp(50px, 5vw, 78px);
	overflow: hidden;
	box-sizing: border-box;
	justify-content: center;
}

.m26-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}
.m26-hero__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}


.m26-hero__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1400px;
	flex: 1; /* 히어로 100vh 채움 — 공지바 하단 고정 기준 */
	display: flex;
	flex-direction: column;
	gap: clamp(28px, 5vw, 88px);
	padding-top: 116px; /* header top(46px) + nav height(70px) */
}

/* ----- HEADER ----- */
.m26-header {
	position: absolute;
	top: 46px;
	left: 0;
	right: 0;
	z-index: 10;
	padding: 0 20px;
}
.m26-header__inner {
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	background: rgba(0, 0, 0, 0.42);
	border-radius: 35px;
	height: 70px;
	padding: 0 clamp(16px, 2.2vw, 40px);
	box-sizing: border-box;
	gap: clamp(16px, 2.2vw, 32px);
	/* Figma "유리(Glass)" 근사 — 흐릿함(4)=배경 블러 + 다중 inset shadow로 두께감 있는 유리 착시
	   (전 브라우저 동일 렌더, 스크롤 리페인트 부담 없음) */
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	box-shadow:
		inset 2px 2px 4px 0 rgba(255, 255, 255, 0.24),  /* -45° 빛: 상단·좌측 밝은 모서리 */
		inset -2px -2px 4px 0 rgba(0, 0, 0, 0.14),       /* 하단·우측 어두운 모서리(깊이) */
		inset 0 0 12px 2px rgba(255, 255, 255, 0.04),    /* 내부 은은한 광 → 볼륨감 */
		inset 0 0 0 1px rgba(255, 255, 255, 0.07);       /* 얇은 외곽 림 */
}
/* ----- LOGO (메뉴바와 분리된 별도 플로팅 엠블럼) ----- */
/* 이전 페이지(default.css .header > a) 참고: 좌측 상단에 크게 띄우고 스크롤 따라 고정(따라옴) */
.m26-logo {
	position: fixed;
	top: 40px;
	left: 40px;
	z-index: 30;
	display: block;
}
.m26-logo img {
	width: clamp(120px, 14vw, 191px);
	height: auto;
	display: block;
}

/* ----- NAV ----- */
.m26-nav {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center; /* 메뉴 가운데 정렬 */
	min-width: 0;
}
.m26-nav > ul {
	display: flex;
	align-items: center;
	gap: clamp(24px, 2.4vw, 46px);
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: nowrap;
}
.m26-nav .nav-dot {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #fff;
	flex-shrink: 0;
}
.m26-nav a {
	font-weight: 700;
	font-size: clamp(16px, 9px + 0.56vw, 20px); /* 1200px에서 16 → 1920px에서 20 */
	color: #fff;
	text-decoration: none;
	letter-spacing: -0.02em;
	white-space: nowrap;
	transition: opacity 0.2s;
}
.m26-nav a:hover { opacity: 0.75; }

/* 하위 메뉴 드롭다운 */
.m26-nav__item--has-sub {
	position: relative;
}
/* 메뉴 항목→드롭다운 사이 18px 틈을 투명 브리지로 연결 (틈 지날 때 hover 끊김 방지) */
.m26-nav__item--has-sub:hover::after {
	content: '';
	position: absolute;
	top: 100%;
	left: -20px;
	right: -20px;
	height: 20px;
}
/* 기존(이전 페이지) 하위메뉴 스타일: 흰 배경 · 라운드 12px · 드롭섀도 · 호버 시 #2c0e46 볼드 */
.m26-nav__sub {
	display: none;
	position: absolute;
	top: calc(100% + 18px);
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.18);
	list-style: none;
	margin: 0;
	padding: 8px 0;
	min-width: 150px;
	white-space: nowrap;
	z-index: 100;
	overflow: hidden;
}
.m26-nav__item--has-sub:hover .m26-nav__sub { display: block; }
.m26-nav__sub li + li { border-top: 1px solid rgba(0, 0, 0, 0.06); }
.m26-nav__sub a {
	display: block;
	padding: 10px 22px;
	font-size: clamp(14px, 13px + 0.16vw, 16px);
	font-weight: 400;
	color: #333;
	text-align: center;
	letter-spacing: -0.3px;
	text-decoration: none;
	transition: color 0.15s, font-weight 0.15s;
}
.m26-nav__sub a:hover {
	color: #2c0e46;
	font-weight: 700;
	opacity: 1;
}

/* ----- HERO CONTENT ----- */
.m26-hero__content {
	flex: 1; /* 남는 세로 공간 확보 → 공지바 margin-top:auto가 하단으로 밀착 */
	display: flex;
	flex-direction: column;
	gap: clamp(28px, 4vw, 63px);
	width: 100%;
	align-items: center;
}

.m26-title-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(24px, 3vw, 42px);
	width: 649.5px;
	/* 위(헤더 아래)와 아래(공지바 위)의 auto 마진이 남는 공간을 반씩 가져가
	   타이틀+날짜 블록이 세로 가운데에 위치 */
	margin-top: auto;
}
.m26-title-wrap .m26-title-img { width: 100%; display: block; }
.m26-title-wrap .m26-sub-img { width: 450px; height: 16px; object-fit: cover; display: block; }

/* ----- DATES ----- */
.m26-dates {
	display: flex;
	gap: 19.5px;
	align-items: center;
	width: 100%;
	justify-content: center;
	/* auto 마진이 위 1 : 아래 2 비율로 나뉘어 블록이 정중앙보다 살짝 위에 위치 */
	margin-bottom: auto;
}
.m26-dates a {
	background: rgba(0, 0, 0, 0.36);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	border-radius: 70px;
	width: 122px;
	padding: 35px 32px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	box-shadow: 0 0 10px 0 #fffc9c;
	text-decoration: none;
	transition: background 0.2s, box-shadow 0.2s;
	box-sizing: border-box;
}
.m26-dates a:hover {
	background: rgba(0, 0, 0, 0.55);
	box-shadow: 0 0 18px 4px #fffc9c;
}
.m26-dates .d-day, .m26-dates .d-num {
	font-weight: 500;
	color: #fff;
	text-shadow: 0 0 10px #fffc9c;
	text-align: center;
	display: block;
	width: 100%;
	line-height: 1.2;
}
.m26-dates .d-day { font-size: clamp(10px, 8px + 0.52vw, 18px); letter-spacing: -0.02em; }
.m26-dates .d-num { font-size: clamp(12px, 9px + 0.78vw, 24px); letter-spacing: -0.02em; }

/* ----- NOTICE BAR ----- */
.m26-notice {
	background: rgba(0, 0, 0, 0.13);
	border-radius: 35px;
	height: 70px;
	width: 100%;
	display: flex;
	align-items: center;
	padding: 0 clamp(20px, 2.08vw, 40px);
	box-sizing: border-box;
	margin-top: auto; /* 히어로 하단에 붙임 (남는 공간은 위로) */
	/* Figma "유리(Glass)" 근사 — 헤더·푸터와 동일 기법 */
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	box-shadow:
		inset 0px 0px 4px 0 rgba(255, 255, 255, 0.24), 
		inset 0px 0px 4px 0 rgba(0, 0, 0, 0.14), 
		inset 0 0 12px 2px rgba(255, 255, 255, 0.04), 
		inset 0 0 0 1px rgba(255, 255, 255, 0.07)
}
.m26-notice__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}
.m26-notice__left {
	display: flex;
	align-items: center;
	gap: clamp(16px, 1.9vw, 36px);
	flex: 1;
	min-width: 0;
}
.m26-notice__left img { width: 20px; height: 20px; flex-shrink: 0; }
.m26-notice__texts {
	display: flex;
	align-items: center;
	gap: clamp(20px, 2.6vw, 50px);
	min-width: 0;
	overflow: hidden;
}
.m26-notice__title {
	font-weight: 500;
	font-size: clamp(12px, 10px + 0.52vw, 20px);
	letter-spacing: -0.4px;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	flex-shrink: 1;
	min-width: 0;
}
.m26-notice__date {
	font-weight: 500;
	font-size: clamp(12px, 10px + 0.52vw, 20px);
	letter-spacing: -0.4px;
	color: rgba(255, 255, 255, 0.45);
	white-space: nowrap;
	flex-shrink: 0;
}
.m26-notice__more {
	font-weight: 500;
	font-size: clamp(12px, 10px + 0.52vw, 20px);
	letter-spacing: -0.4px;
	color: rgba(255, 255, 255, 0.68);
	white-space: nowrap;
	text-decoration: none;
	flex-shrink: 0;
	margin-left: auto;
	padding-left: clamp(16px, 1.56vw, 30px);
	transition: color 0.2s;
}
.m26-notice__more:hover { color: #fff; }

/* ----- CATEGORIES ----- */
.m26-cats-wrap {
	background: linear-gradient(to bottom, #487f67, #160d1d);
	position: relative;
	overflow: hidden;
}

/* 장식 라인 (Figma node 1:4 기준 — cats 섹션 내부) */
.m26-deco {
	position: absolute;
	pointer-events: none;
	height: 107px;
	width: 1549px;
	z-index: 1;
}
.m26-deco img { width: 100%; height: 100%; object-fit: contain; display: block; }
.m26-deco--top { top: 57px;  right: 0; }
.m26-deco--btm { top: 769px; left: -913px; }
.m26-cats {
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: clamp(60px, 13vw, 206px) 0 clamp(80px, 10vw, 154px); /* Figma: cats-wrap top→footer top 912px, 카드 551px → 하단 207px */
}
.m26-cats__watermark {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-weight: 900;
	font-size: clamp(80px, 14vw, 200px);
	color: rgba(255, 255, 255, 0.04);
	white-space: nowrap;
	letter-spacing: 10px;
	pointer-events: none;
	user-select: none;
	line-height: 1;
}
/* 공연부문 Swiper (계속 슬라이드) */
.m26-cats__swiper {
	position: relative;
	width: 100%;
	max-width: 1920px; /* 울트라와이드에서 카드가 가로로 늘어나지 않게 디자인 기준 폭으로 캡 */
	margin: 0 auto;
	overflow: hidden;
	padding: 0 40px;
	box-sizing: border-box;
}
/* 울트라와이드(1920 캡 초과)에서만: 화면 중간에서 카드가 뚝 잘려 보이는 각진 느낌 완화 — 양끝 페이드 */
@media (min-width: 1921px) {
	.m26-cats__swiper {
		-webkit-mask-image: linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%);
		mask-image: linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%);
	}
}
.m26-cats__swiper .swiper-wrapper {
	align-items: flex-start;        /* 위아래 엇갈림 배치 기준(위 정렬) */
}
/* 로딩 처리 — Swiper 초기화 전(느린 회선)엔 풀폭 슬라이드가 그대로 노출되므로
   숨기고 카드 높이만큼 자리 유지 + 스피너 (init 후 JS가 is-ready 부여) */
.m26-cats__swiper:not(.is-ready) { min-height: 551px; } /* 카드 466 + 엇갈림 85 */
.m26-cats__swiper:not(.is-ready) .swiper-wrapper { visibility: hidden; }
.m26-cats__swiper:not(.is-ready)::after {
	content: '';
	position: absolute;
	top: 50%; left: 50%;
	width: 40px; height: 40px;
	margin: -20px 0 0 -20px;
	border: 3px solid rgba(255, 255, 255, 0.25);
	border-top-color: #fff;
	border-radius: 50%;
	animation: m26-spin 0.8s linear infinite;
}
@keyframes m26-spin { to { transform: rotate(360deg); } }
/* 슬라이드 폭은 Swiper(slidesPerView)가 지정 → 카드는 고정 높이 */
/* height는 swiper.css의 .swiper-slide{height:100%} 를 이기도록 specificity 확보 */
.m26-cats__swiper .swiper-slide.m26-cat { height: 466px; }
.m26-cat {
	position: relative;
	border-radius: 164px;           /* 원래 둥근 캡슐형 카드 */
	overflow: hidden;
	transform: translateZ(0);
	-webkit-mask-image: -webkit-radial-gradient(white, black);
}
/* 짝수 카드 아래로 → 위아래 엇갈림(클론에도 클래스 유지되어 안정적) */
.m26-cat--down { margin-top: 85px; }
.m26-cat__link { display: block; width: 100%; height: 100%; }
.m26-cat img {
	-webkit-user-drag: none;
	user-select: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.m26-cat:hover img { transform: scale(1.05); }
.m26-cat__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 83, 48, 0.55);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.m26-cat:hover .m26-cat__overlay { opacity: 1; }
.m26-cat__label {
	font-weight: 700;
	font-size: clamp(28px, 2.4vw, 40px);
	color: #fff;
	letter-spacing: -1.6px;
	text-align: center;
}
.m26-cat__more {
	background: rgba(1, 150, 86, 0.09);
	border-radius: 200px;
	padding: 7px clamp(18px, 1.4vw, 27px) 7px clamp(22px, 1.7vw, 33px);
	height: 33px;
	font-weight: 700;
	font-size: clamp(13px, 12px + 0.21vw, 16px);
	color: #fff;
	letter-spacing: -0.32px;
	text-transform: uppercase;
	white-space: nowrap;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: background 0.2s;
	/* 유리(Glass) 효과 — 헤더·공지바와 동일 기법: 배경 블러 + 다중 inset shadow */
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	box-shadow:
		inset 2px 2px 4px 0 rgba(255, 255, 255, 0.24),  /* 상단·좌측 밝은 모서리 */
		inset -2px -2px 4px 0 rgba(0, 0, 0, 0.14),       /* 하단·우측 어두운 모서리(깊이) */
		inset 0 0 12px 2px rgba(255, 255, 255, 0.04),    /* 내부 은은한 광 */
		inset 0 0 0 1px rgba(255, 255, 255, 0.07);       /* 얇은 외곽 림 */
}
.m26-cat__more:hover { background: rgba(1, 150, 86, 0.25); color: #fff; }

/* ----- FOOTER ----- */
.m26-footer {
	width: 100%;
	background: rgba(0, 0, 0, 0.13);
	border-radius: 100px 100px 0 0;
	padding: clamp(50px, 6vw, 95px) 20px clamp(30px, 3vw, 37px);
	min-height: 360px;
	box-sizing: border-box;
	/* Figma "유리(Glass)" 근사 — 흐릿함(4)=배경 블러 + 다중 inset shadow로 두께감 있는 유리 착시
	   (헤더와 동일 기법, 전 브라우저 동일 렌더) */
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	box-shadow:
		inset 2px 2px 4px 0 rgba(255, 255, 255, 0.24),  /* -45° 빛: 상단·좌측 밝은 모서리 */
		inset -2px -2px 4px 0 rgba(0, 0, 0, 0.14),       /* 하단·우측 어두운 모서리(깊이) */
		inset 0 0 12px 2px rgba(255, 255, 255, 0.04),    /* 내부 은은한 광 → 볼륨감 */
		inset 0 0 0 1px rgba(255, 255, 255, 0.07);       /* 얇은 외곽 림 */
}
.m26-footer__inner {
	display: flex;
	flex-direction: column;
	gap: clamp(32px, 3.4vw, 48px);
	max-width: 1600px; /* Figma 푸터 내부 폭(1598) 라운딩 — 콘텐츠 1400보다 넓음 */
	margin: 0 auto;
}
.m26-footer__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.m26-footer__info {
	display: flex;
	flex-direction: column;
	gap: 7px;
}
.m26-footer__name {
	font-weight: 600;
	font-size: clamp(16px, 16px + 0.25vw, 20px);
	line-height: clamp(28px, 2.5vw, 40px);
	letter-spacing: -0.4px;
	color: #fffc9c;
}
.m26-footer__addr {
	font-weight: 600;
	font-size: clamp(16px, 16px + 0.25vw, 20px);
	line-height: clamp(28px, 2.5vw, 40px);
	letter-spacing: -0.4px;
	color: #fff;
}
.m26-footer__contact {
	display: flex;
	align-items: center;
	gap: 50px;
}
.m26-footer__ci {
	display: flex;
	align-items: center;
	gap: 9px;
}
.m26-footer__ci img { width: 21px; height: 21px; flex-shrink: 0; }
.m26-footer__ci span {
	font-weight: 600;
	font-size: clamp(16px, 16px + 0.25vw, 20px);
	line-height: clamp(28px, 2.5vw, 40px);
	letter-spacing: -0.4px;
	color: #fff;
	white-space: nowrap;
}
.m26-footer__links {
	display: flex;
	flex-direction: column;
}
.m26-footer__links a {
	font-weight: 700;
	font-size: clamp(16px, 16px + 0.25vw, 20px);
	line-height: clamp(28px, 2.5vw, 40px);
	letter-spacing: -0.4px;
	color: #717171;
	text-decoration: none;
	transition: color 0.2s;
	display: block;
}
.m26-footer__links a:hover { color: #aaa; }
.m26-footer__copy {
	font-weight: 600;
	font-size: clamp(16px, 16px + 0.25vw, 20px);
	line-height: clamp(28px, 2.5vw, 40px);
	letter-spacing: -0.4px;
	color: #757575;
	text-align: center;
}

/* 로그인 메시지 */
#hd_login_msg_m26 {
	position: fixed;
	top: 0; right: 0;
	background: rgba(0,0,0,0.6);
	color: #fff;
	padding: 4px 12px;
	font-size: 12px;
	z-index: 9999;
}
#hd_login_msg_m26 a { color: #fffc9c; margin-left: 8px; }


/* ============================================================
   RESPONSIVE
   ============================================================ */

/* 햄버거 버튼 — 기본 숨김 */
.m26-nav__toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 6px;
	flex-direction: column;
	gap: 5px;
	flex-shrink: 0;
}
.m26-nav__toggle span {
	display: block;
	width: 24px;
	height: 2px;
	background: #fff;
	border-radius: 2px;
	transition: transform 0.3s, opacity 0.3s;
}
.m26-nav__toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.m26-nav__toggle.is-open span:nth-child(2) { opacity: 0; }
.m26-nav__toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }


/* ----- 1400px 이하 ----- */
@media (max-width: 1400px) {
	.m26-hero__inner { padding: 116px 20px 0; } /* 상단 116px 유지 (0으로 덮으면 타이틀이 헤더 밑으로 들어감) */
	.m26-title-wrap { width: 100%; max-width: 580px; }
	.m26-dates {
		flex-wrap: wrap;
		justify-content: center;
		gap: 12px;
	}
	.m26-dates a {
		width: calc(20% - 10px); /* 5열: 10개 ÷ 2행 */
		max-width: 122px; /* 데스크톱 pill 폭과 동일 상한 — 원이 과대해지지 않게 */
		aspect-ratio: 1;
		padding: 0;
		justify-content: center;
		border-radius: 50%;
	}
	.m26-footer__inner { padding: 0 40px; }
}


/* ----- 1200px 이하 ----- */
/* 폰트·간격은 clamp가 커버 — 잔여 오버라이드만 유지 */
@media (max-width: 1200px) {
	.m26-nav { padding: 0 32px; }
	.m26-nav .nav-dot { width: 4px; height: 4px; }
}


/* ----- 1024px 이하: 햄버거 메뉴 전환 ----- */
@media (max-width: 1024px) {
	/* Hero — 세로를 화면 높이만큼 유지 (콘텐츠가 위로 몰리지 않게 공지바는 하단, 나머지는 여유 배분) */
	.m26-hero { min-height: 100svh; }
	.m26-hero__inner { padding-top: 130px; }
	/* 타이틀·날짜·공지바가 남는 세로 공간을 고르게 배분
	   (margin-top:auto가 여유를 독식하면 space-evenly가 무력화되므로 해제) */
	.m26-hero__content { justify-content: space-evenly; }
	.m26-notice { margin-top: 0; }
	.m26-title-wrap { margin-top: 0; } /* 모바일은 space-evenly가 배분 담당 */
	.m26-dates { margin-bottom: 0; }

	/* Header — 시안: 가로 전체 검은 반투명 바 + 우측 큰 햄버거 */
	.m26-header { top: 0; padding: 0; }
	.m26-header__inner {
		width: 100%;
		max-width: none;
		margin: 0;
		height: 64px;
		border-radius: 0;
		position: relative;
		justify-content: flex-end;
		gap: 0;
		padding: 0 12px;
		box-shadow: none;
	}
	/* 플로팅 로고 — 모바일 축소 + 조금 아래로 */
	.m26-logo { top: 76px; left: 16px; transition: opacity 0.2s; } /* 검은 바(64px) 아래 */
	.m26-logo img { width: clamp(72px, 20vw, 110px); }
	/* 햄버거 메뉴 열리면 로고 숨김 (드롭다운 첫 항목 가림 방지) */
	body.m26-nav-open .m26-logo { opacity: 0; visibility: hidden; pointer-events: none; }

	/* Nav → 햄버거 (버튼은 우측 끝, 로고는 좌측) */
	/* 데스크톱 메뉴는 모바일에서 mgnb_all로 대체 → 숨김 (pill이 햄버거만 감싸도록) */
	.m26-nav { display: none; }
	.m26-nav__toggle { display: flex; order: 2; gap: 8px; padding: 10px; }
	/* 시안 비율의 큰 햄버거 바 — X 전환 이동량 = gap(8) + 두께(5) = 13px */
	.m26-nav__toggle span { width: 38px; height: 5px; border-radius: 3px; }
	.m26-nav__toggle.is-open span:nth-child(1) { transform: translateY(13px) rotate(45deg); }
	.m26-nav__toggle.is-open span:nth-child(3) { transform: translateY(-13px) rotate(-45deg); }
	.m26-nav > ul {
		display: none;
		position: absolute;
		top: calc(100% + 8px);
		left: 0;
		right: 0;
		background: rgba(0, 0, 0, 0.92);
		backdrop-filter: blur(10px);
		border-radius: 16px;
		flex-direction: column;
		gap: 0;
		padding: 8px 0;
		z-index: 200;
	}
	.m26-nav.is-open > ul { display: flex; }
	.m26-nav > ul .nav-dot { display: none; }
	.m26-nav > ul > li { width: 100%; }
	.m26-nav > ul > li > a {
		display: block;
		padding: 12px 24px;
		font-size: 16px;
	}
	.m26-nav > ul > li + li { border-top: 1px solid rgba(255,255,255,0.08); }

	/* 하위 메뉴 인라인 표시 */
	.m26-nav__sub {
		position: static;
		transform: none;
		background: rgba(255,255,255,0.05);
		border-radius: 0;
		min-width: auto;
		padding: 0;
		display: block !important;
	}
	.m26-nav__sub li + li { border-top: 1px solid rgba(255,255,255,0.05); }
	.m26-nav__sub a { padding: 10px 24px 10px 40px; } /* 폰트는 clamp가 커버 */

	/* Title */
	.m26-title-wrap { max-width: 420px; }

	/* Dates → 2줄 스크롤 */
	.m26-dates { gap: 10px; }

	/* Notice — 패딩·여백은 clamp가 커버 */
	.m26-notice__date { display: none; }
	/* 자세히보기 숨김 — 제목 공간 확보 (제목 자체를 링크로 클릭 가능하게 유지) */
	.m26-notice__more { display: none; }

	/* Cats Swiper → 카드 높이 축소, 엇갈림 해제 (폭은 slidesPerView가 제어) */
	.m26-cats__swiper { padding: 0 20px; }
	.m26-cats__swiper .swiper-slide.m26-cat { height: 420px; }
	.m26-cats__swiper:not(.is-ready) { min-height: 420px; }
	.m26-cat--down { margin-top: 0; }

	/* Footer */
	.m26-footer { border-radius: 50px 50px 0 0; }
	.m26-footer__top { flex-direction: column; gap: 24px; }
	.m26-footer__contact { flex-wrap: wrap; gap: 16px; }
	.m26-footer__info { gap: 4px; }
}


/* ----- 768px 이하: 2열 카드 ----- */
@media (max-width: 768px) {
	.m26-hero__inner { padding: 130px 16px 0; } /* 상단 패딩 유지 — 타이틀이 로고·햄버거와 겹치지 않게 */
	.m26-nav { border-radius: 14px; }

	.m26-title-wrap { max-width: 300px; }
	.m26-sub-img { width: 100% !important; height: auto !important; }

	.m26-dates a { width: calc(20% - 8px); }

	.m26-cats__swiper .swiper-slide.m26-cat { height: 380px; }
	.m26-cats__swiper:not(.is-ready) { min-height: 380px; }

	.m26-footer__addr { word-break: keep-all; }
	/* 모바일 통일성 — 연락처(전화·팩스)도 좌측정렬 (copy만 예외로 가운데 유지) */
	.m26-footer__contact { flex-direction: column; align-items: flex-start; gap: 8px; }
}


/* ----- 480px 이하: 카드 한 장씩 스와이프 (slidesPerView:1) ----- */
@media (max-width: 480px) {
	.m26-cats__swiper .swiper-slide.m26-cat { height: 440px; }
	.m26-cat__overlay { opacity: 1; background: rgba(0,83,48,0.40); }
}


/* ============================================================
   모바일 전체메뉴(mgnb_all) 오프캔버스 — default.css 위치값 오버라이드
   (body 선택자로 specificity 확보 → default.css의 -500% 를 확실히 이김)
   ============================================================ */
@media (max-width: 1400px) {
	body #mgnb_all { right: -100%; transition: right 0.35s ease; }
	body #mgnb_all.active { right: 0 !important; }
}
/* mgnb_all 닫기(X) 버튼 — 파란 상단 우측 (mgnb_top은 우측 패딩 80px 예약됨) */
.mgnb_close {
	position: absolute;
	top: 50%;
	right: 22px;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	padding: 0;
	border: none;
	background: transparent;
	color: #fff;
	font-size: 34px;
	line-height: 1;
	cursor: pointer;
	z-index: 2;
}
.mgnb_close .fa { font-size: inherit; }
.mgnb_close:hover { opacity: 0.75; }

