@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;1,400&family=Noto+Sans+KR:wght@300;400&display=swap');
:root {
	--ink:#20201d;
	--paper:#f7f6f3;
	--warm:#ede9e1;
	--gold:#a58a5c;
	--green:#1d2824;
	--line:rgba(35,35,31,.16);
}

* {
	box-sizing:border-box;
}

html {
	scroll-behavior:smooth;
}

body {
	margin:0;
	background:var(--paper);
	color:var(--ink);
	font-family:'Noto Sans KR',sans-serif;
	font-weight:300;
}

body.menu_on {
	overflow:hidden;
}

a {
	color:inherit;
	text-decoration:none;
}

button {
	font:inherit;
}

img {
	display:block;
	width:100%;
	object-fit:cover;
}

.gw_header {
	height:94px;
	padding:0 4vw;
	display:flex;
	align-items:center;
	justify-content:space-between;
	position:relative;
	z-index:50;
	background:var(--paper);
	border-bottom:1px solid var(--line);
}

.gw_header.is_overlay {
	position:absolute;
	width:100%;
	background:transparent;
	color:#fff;
	border-color:#ffffff45;
}

.gw_header.dark_header {
	position:sticky;
	top:0;
	left:0;
	width:100%;
	z-index:100;
	background:var(--green);
	color:#fff;
	border-color:#ffffff20;
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
}

.gw_header:not(.is_overlay):not(.dark_header) .gw_logo {
	width:270px;
	height:64px;
	padding:8px 15px;
	background:#1d2824;
}

.gw_menu_open {
	width:92px;
	padding:0;
	border:0;
	background:none;
	color:inherit;
	text-align:left;
	cursor:pointer;
}

.gw_menu_open i {
	display:block;
	width:28px;
	border-top:1px solid;
	margin:6px 0;
}

.gw_menu_open span {
	font-size:8px;
	letter-spacing:.24em;
}

.gw_logo {
	position:absolute;
	top:50%;
	left:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	transform:translate(-50%,-50%);
}

.gw_logo img {
	display:block;
	width:100%;
	height:auto;
	max-height:40px;
	object-fit:contain;
}

.gw_logo b {
	display:block;
	font:24px 'Cormorant Garamond',serif;
	letter-spacing:.26em;
}

.gw_logo small {
	font-size:7px;
	letter-spacing:.45em;
}

.gw_tel {
	font-size:9px;
	letter-spacing:.2em;
}

.gw_tel span {
	font-size:18px;
	margin-left:10px;
}

.gw_menu {
	position:fixed;
	z-index:200;
	inset:0;
	display:grid;
	grid-template-columns:42% 58%;
	background:#17211e;
	color:#fff;
	transform:translateY(-105%);
	transition:transform .8s cubic-bezier(.77,0,.18,1);
}

.gw_menu.on {
	transform:none;
}

.gw_menu_visual {
	position:relative;
	overflow:hidden;
}

.gw_menu_image {
	position:absolute;
	inset:0;
	background:url('img/gl_0_2.jpg') center/cover;
	opacity:.75;
	transition:background-image .5s;
}

.gw_menu_visual:after {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(0deg,#0008,transparent);
}

.gw_menu_visual p {
	position:absolute;
	z-index:1;
	left:7vw;
	bottom:7vw;
	font:42px/1.05 'Cormorant Garamond';
	letter-spacing:.08em;
}

.gw_menu_list {
	padding:42px 7vw;
}

.gw_menu_close {
	display:block;
	margin-left:auto;
	border:0;
	background:none;
	color:#fff;
	font-size:8px;
	letter-spacing:.2em;
}

.gw_menu_close b {
	font-size:30px;
	font-weight:300;
	margin-left:12px;
}

.gw_menu_home {
	display:inline-block;
	margin:5vh 0 4vh;
	font-size:10px;
	letter-spacing:.25em;
}

.gw_menu nav {
	border-top:1px solid #ffffff28;
}

.gw_menu nav a {
	display:flex;
	align-items:center;
	gap:28px;
	padding:18px 0;
	border-bottom:1px solid #ffffff28;
}

.gw_menu nav em {
	font:11px 'Cormorant Garamond';
	color:#bfa676;
}

.gw_menu nav span {
	font:29px 'Cormorant Garamond';
	letter-spacing:.08em;
}

.gw_menu nav small {
	display:inline;
	margin-left:18px;
	font:9px 'Noto Sans KR';
	color:#8d9994;
}

.gw_menu nav b {
	margin-left:auto;
	font-weight:300;
}

.gw_footer {
	background:#17211e;
	color:#d7dbd8;
	padding:105px 8vw 32px;
	display:grid;
	grid-template-columns:1fr .5fr;
	gap:80px;
}

.gw_footer>div>p {
	font-size:9px;
	letter-spacing:.28em;
	color:#b69b6e;
}

.gw_footer h2 {
	font:34px/1.45 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.gw_footer_info {
	padding-top:20px;
}

.gw_footer_info p {
	letter-spacing:.05em!important;
	color:#8e9894!important;
	line-height:1.7;
}

.gw_footer_bottom {
	grid-column:1/-1;
	border-top:1px solid #ffffff20;
	padding-top:25px;
	display:flex;
	justify-content:space-between;
	font-size:8px;
	letter-spacing:.16em;
	color:#7b8581;
}

.main_slider {
	height:100svh;
	min-height:720px;
	position:relative;
	overflow:hidden;
	background:#111;
	color:#fff;
}

.main_slide {
	position:absolute;
	inset:0;
	background-size:cover;
	background-position:center;
	opacity:0;
	transform:scale(1.06);
	transition:opacity 1.4s,transform 7s;
}

.main_slide.is_active {
	opacity:1;
	transform:scale(1);
}

.main_dim,
.sub_dim {
	position:absolute;
	inset:0;
	background:linear-gradient(90deg,#0008,transparent 70%),linear-gradient(0deg,#0007,transparent 55%);
}

.main_copy {
	position:absolute;
	z-index:2;
	left:9vw;
	top:50%;
	transform:translateY(-43%);
}

.main_copy>span,
.sub_title>span {
	font-size:9px;
	letter-spacing:.38em;
}

.main_copy h1 {
	font:clamp(62px,8vw,125px)/.86 'Cormorant Garamond';
	font-weight:400;
	margin:28px 0;
}

.main_copy h1 i {
	color:#d0b888;
	font-weight:400;
}

.main_copy p {
	font-size:12px;
	letter-spacing:.12em;
}

.slider_control {
	position:absolute;
	z-index:3;
	right:5vw;
	bottom:38px;
	display:flex;
	align-items:center;
	gap:18px;
}

.slider_control button,
.hall_slider_buttons button {
	border:0;
	background:none;
	color:#fff;
	cursor:pointer;
}

.slider_count {
	display:flex;
	align-items:center;
	gap:10px;
	font:12px 'Cormorant Garamond';
}

.slider_count i {
	width:90px;
	border-top:1px solid #ffffff55;
	position:relative;
}

.slider_count i span {
	position:absolute;
	left:0;
	top:-1px;
	width:0;
	border-top:1px solid #fff;
}

.main_slider.is_playing .slider_count i span {
	animation:progress 5.5s linear forwards;
}

@keyframes progress {
	to {
		width:100%;
	}

}

.main_scroll {
	position:absolute;
	z-index:3;
	left:9vw;
	bottom:38px;
	font-size:8px;
	letter-spacing:.25em;
}

.main_scroll span {
	margin-left:12px;
}

.main_intro {
	padding:150px 8vw 160px;
	text-align:center;
}

.section_label,
.main_venues_title>span {
	font-size:10px;
	letter-spacing:.35em;
}

.main_intro h2 {
	font:42px/1.65 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
	margin:40px 0;
}

.main_intro h2 em {
	color:var(--gold);
	font-style:normal;
}

.main_intro_text {
	font-size:13px;
	line-height:2.1;
	color:#777;
}

.main_panorama {
	height:72vh;
	min-height:580px;
	position:relative;
	overflow:hidden;
}

.main_panorama img {
	height:100%;
}

.main_panorama:after {
	content:'';
	position:absolute;
	inset:0;
	background:#0003;
}

.main_panorama div {
	position:absolute;
	z-index:1;
	left:7vw;
	bottom:7vw;
	color:#fff;
}

.main_panorama span {
	font-size:9px;
	letter-spacing:.3em;
}

.main_panorama p {
	font:45px/1.1 'Cormorant Garamond';
	margin:18px 0;
}

.main_venues {
	padding:150px 8vw;
	background:#efede8;
}

.main_venues_title {
	margin-bottom:110px;
}

.main_venues_title h2 {
	font:62px/.95 'Cormorant Garamond';
	font-weight:400;
	margin:28px 0;
}

.venue_preview {
	margin:0 0 145px;
}

.venue_preview a {
	display:grid;
	grid-template-columns:1.35fr .65fr;
	background:#f8f7f4;
	min-height:600px;
}

.venue_preview.reverse a {
	grid-template-columns:.65fr 1.35fr;
}

.venue_preview.reverse .venue_photo {
	order:2;
}

.venue_photo {
	overflow:hidden;
}

.venue_photo img {
	height:100%;
	transition:transform 1s;
}

.venue_preview:hover img {
	transform:scale(1.03);
}

.venue_meta {
	padding:6vw 4vw;
	align-self:center;
}

.venue_meta em {
	font:15px 'Cormorant Garamond';
	color:var(--gold);
}

.venue_meta h3 {
	font:49px 'Cormorant Garamond';
	font-weight:400;
	margin:34px 0;
}

.venue_meta h3 small {
	display:block;
	margin-top:12px;
	font:12px 'Noto Sans KR';
	color:#777;
}

.venue_meta>span {
	font-size:8px;
	letter-spacing:.2em;
}

.main_service {
	display:grid;
	grid-template-columns:1fr 1fr;
	background:var(--green);
	color:#fff;
}

.main_service a {
	padding:100px 7vw;
	border-right:1px solid #ffffff1f;
}

.main_service span {
	font-size:9px;
	letter-spacing:.3em;
	color:#bea472;
}

.main_service h3 {
	font:31px/1.5 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.main_service b {
	font-size:8px;
	letter-spacing:.18em;
}

.sub_hero {
	height:100svh;
	min-height:700px;
	background-size:cover;
	background-position:center;
	position:relative;
	color:#fff;
}

.sub_title {
	position:absolute;
	z-index:2;
	left:8vw;
	bottom:9vw;
}

.sub_title.center {
	left:0;
	right:0;
	bottom:13vh;
	text-align:center;
}

.sub_title h1 {
	font:clamp(65px,9vw,130px)/.9 'Cormorant Garamond';
	font-weight:400;
	margin:24px 0;
}

.sub_title p {
	font-size:12px;
	letter-spacing:.12em;
}

.brand_statement {
	padding:155px 18vw;
	text-align:center;
}

.brand_statement>span,
.hall_intro span,
.obidos_intro>span,
.vista_manifest span,
.banquet_title>span,
.parking_intro>span {
	font-size:9px;
	letter-spacing:.34em;
	color:var(--gold);
}

.brand_statement h2,
.obidos_intro h2,
.vista_manifest h2,
.parking_intro h2 {
	font:40px/1.7 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
	margin:38px 0;
}

.brand_statement p,
.obidos_intro p,
.parking_intro p {
	font-size:13px;
	line-height:2.1;
	color:#777;
}

.brand_split {
	display:grid;
	grid-template-columns:1.25fr .75fr;
	background:var(--warm);
}

.brand_split>div:first-child {
	height:720px;
}

.brand_split img {
	height:100%;
}

.brand_split>div:last-child {
	padding:10vw 6vw;
	align-self:center;
}

.brand_split span {
	font-size:9px;
	letter-spacing:.3em;
}

.brand_split h3 {
	font:48px/1.05 'Cormorant Garamond';
	font-weight:400;
	margin:30px 0;
}

.brand_split p {
	font-size:13px;
	line-height:2;
	color:#666;
}

.brand_words {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	padding:130px 8vw;
}

.brand_words div {
	padding:25px 4vw;
	border-left:1px solid var(--line);
}

.brand_words em {
	font:15px 'Cormorant Garamond';
	color:var(--gold);
}

.brand_words h3 {
	font:34px 'Cormorant Garamond';
	letter-spacing:.08em;
}

.brand_words p {
	font-size:12px;
	color:#777;
}

.hall_hero {
	overflow:hidden;
}

.hall_slider_buttons {
	position:absolute;
	z-index:5;
	bottom:40px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	align-items:center;
	gap:20px;
}

.hall_slider_buttons button {
	font-size:8px;
	letter-spacing:.2em;
}

.hall_slider_buttons i {
	height:1px;
	width:60px;
	background:#ffffff88;
}

.hall_intro {
	padding:140px 10vw;
	display:grid;
	grid-template-columns:1fr .8fr;
	gap:12vw;
}

.hall_intro h2 {
	font:52px/1.05 'Cormorant Garamond';
	font-weight:400;
	margin:28px 0;
}

.hall_intro>p {
	align-self:end;
	font-size:13px;
	line-height:2;
	color:#777;
}

.ravia_gallery {
	padding:0 8vw 140px;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:5vw;
}

.ravia_gallery figure {
	margin:0;
}

.ravia_gallery figure:nth-child(2) {
	padding-top:150px;
}

.ravia_gallery img {
	height:660px;
}

.ravia_gallery figcaption {
	text-align:center;
	margin-top:25px;
	font-size:9px;
	letter-spacing:.35em;
}

.hall_keywords {
	padding:95px 7vw;
	background:#eae4d9;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:4vw;
	font:25px 'Cormorant Garamond';
	letter-spacing:.12em;
}

.hall_keywords i {
	width:70px;
	border-top:1px solid #a7977d;
}

.obidos_page {
	background:#111915;
	color:#edf0ed;
}

.obidos_hero {
	background-position:center;
}

.obidos_stars {
	position:absolute;
	inset:0;
	background-image:radial-gradient(#fff 1px,transparent 1px);
	background-size:45px 45px;
	opacity:.14;
}

.obidos_intro {
	padding:150px 19vw;
	text-align:center;
}

.obidos_intro p {
	color:#9ba29f;
}

.obidos_feature {
	margin:0 8vw 150px;
	display:grid;
	grid-template-columns:1.3fr .7fr;
	background:#1b2521;
}

.obidos_image {
	height:720px;
}

.obidos_image img {
	height:100%;
}

.obidos_feature>div:last-child {
	padding:7vw 5vw;
	align-self:center;
}

.obidos_feature em {
	font:18px 'Cormorant Garamond';
	color:#b79b6d;
}

.obidos_feature span {
	display:block;
	margin-top:25px;
	font-size:8px;
	letter-spacing:.3em;
}

.obidos_feature h3 {
	font:43px/1.4 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.obidos_feature p {
	font-size:12px;
	line-height:2;
	color:#9ba29f;
}

.obidos_notice {
	padding:130px 8vw;
	text-align:center;
	border-top:1px solid #ffffff20;
}

.obidos_notice span {
	font-size:9px;
	letter-spacing:.35em;
	color:#b79b6d;
}

.obidos_notice h3 {
	font:38px 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.obidos_notice p {
	font-size:12px;
	color:#9ba29f;
}

.vista_cover {
	height:100svh;
	min-height:720px;
	display:grid;
	grid-template-columns:65% 35%;
	background:#1d211f;
	color:#fff;
}

.vista_cover_image {
	background-size:cover;
	background-position:center;
}

.vista_cover_text {
	padding:0 5vw;
	align-self:center;
}

.vista_cover_text span {
	font-size:8px;
	letter-spacing:.3em;
}

.vista_cover_text h1 {
	font:90px/.78 'Cormorant Garamond';
	font-weight:400;
	margin:40px 0;
}

.vista_cover_text p {
	font-size:11px;
	line-height:1.8;
}

.vista_manifest {
	padding:150px 8vw;
	text-align:center;
}

.vista_arch {
	padding:0 8vw 160px;
	display:grid;
	grid-template-columns:.9fr 1.1fr;
	gap:9vw;
}

.vista_tall {
	height:800px;
}

.vista_tall img {
	height:100%;
}

.vista_arch_text {
	align-self:center;
}

.vista_arch_text em {
	font:normal 9px 'Noto Sans KR';
	letter-spacing:.3em;
	color:var(--gold);
}

.vista_arch_text h3 {
	font:45px/1.4 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.vista_arch_text p {
	font-size:13px;
	line-height:2;
	color:#777;
}

.vista_panorama {
	margin:0 4vw 140px;
	position:relative;
}

.vista_panorama img {
	height:60vh;
}

.vista_panorama p {
	text-align:center;
	font-size:9px;
	letter-spacing:.3em;
	margin-top:24px;
}

.banquet_page {
	background:#f3f0ea;
}

.banquet_title {
	padding:150px 8vw 100px;
}

.banquet_title h1 {
	font:110px/.9 'Cormorant Garamond';
	font-weight:400;
	margin:25px 0;
}

.banquet_title p {
	font-size:13px;
	color:#777;
}

.banquet_visual {
	margin:0 8vw;
	position:relative;
	height:72vh;
	min-height:580px;
	color:#fff;
}

.banquet_visual img {
	height:100%;
}

.banquet_visual:after {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(0deg,#0009,transparent);
}

.banquet_visual>div {
	position:absolute;
	z-index:1;
	left:6vw;
	bottom:6vw;
}

.banquet_visual span {
	font-size:9px;
	letter-spacing:.3em;
}

.banquet_visual h2 {
	font:42px/1.5 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.banquet_points {
	padding:135px 8vw;
	display:grid;
	grid-template-columns:repeat(3,1fr);
}

.banquet_points article {
	padding:20px 4vw;
	border-left:1px solid var(--line);
}

.banquet_points em,
.parking_flow em {
	font:16px 'Cormorant Garamond';
	color:var(--gold);
}

.banquet_points h3 {
	font:29px 'Cormorant Garamond';
}

.banquet_points p {
	font-size:12px;
	line-height:2;
	color:#777;
}

.banquet_event {
	padding:130px 8vw;
	text-align:center;
	background:#ded7cb;
}

.banquet_event span {
	font-size:9px;
	letter-spacing:.3em;
}

.banquet_event h2 {
	font:38px/1.6 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.banquet_event p {
	font-size:12px;
	color:#777;
}

.parking_hero {
	height:100svh;
	min-height:700px;
	background-size:cover;
	background-position:center;
	position:relative;
	color:#fff;
}

.parking_hero>div:last-child {
	position:absolute;
	z-index:1;
	left:8vw;
	bottom:9vw;
}

.parking_hero span {
	font-size:9px;
	letter-spacing:.3em;
}

.parking_hero h1 {
	font:100px/.9 'Cormorant Garamond';
	font-weight:400;
	margin:24px 0;
}

.parking_hero p {
	font-size:12px;
	letter-spacing:.12em;
}

.parking_intro {
	padding:150px 15vw;
	text-align:center;
}

.parking_vip {
	margin:0 8vw 150px;
	display:grid;
	grid-template-columns:1.2fr .8fr;
	background:var(--warm);
}

.parking_vip>div:first-child {
	height:650px;
}

.parking_vip img {
	height:100%;
}

.parking_vip>div:last-child {
	padding:7vw 5vw;
	align-self:center;
}

.parking_vip span {
	font-size:9px;
	letter-spacing:.3em;
	color:var(--gold);
}

.parking_vip h3 {
	font:40px/1.5 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
}

.parking_vip p {
	font-size:12px;
	line-height:2;
	color:#777;
}

.parking_flow {
	padding:110px 8vw;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:6vw;
	background:#e8e3da;
}

.parking_flow div {
	text-align:center;
}

.parking_flow span {
	display:block;
	font:28px 'Cormorant Garamond';
	margin:15px;
}

.parking_flow p {
	font-size:11px;
	color:#777;
}

.parking_flow>i {
	width:100px;
	border-top:1px solid #aaa;
}

.reveal {
	opacity:0;
	transform:translateY(38px);
	transition:opacity 1s,transform 1s;
}

.reveal.is_visible {
	opacity:1;
	transform:none;
}

@media screen and (max-width: 1024px) {

	.gw_menu_open {
		width:50px;
	}

	.gw_menu_open span,.gw_tel {
		display:none;
	}

	.gw_logo img {
		max-height:36px;
	}

	.gw_header:not(.is_overlay):not(.dark_header) .gw_logo {
		width:170px;
		height:41px;
	}

	.gw_menu {
		grid-template-columns:1fr;
	}

	.gw_menu_visual {
		display:none;
	}

	.gw_menu_list {
		padding:25px;
	}

	.gw_menu_home {
		margin:4vh 0;
	}

	.gw_menu nav a {
		padding:15px 0;
	}

	.gw_menu nav span {
		font-size:26px;
	}

	.gw_menu nav small {
		display:block;
		margin:4px 0 0;
	}

	.gw_footer {
		padding:75px 25px 25px;
		grid-template-columns:1fr;
		gap:35px;
	}

	.gw_footer h2 {
		font-size:27px;
	}

	.main_slider,
.sub_hero,
.parking_hero {
		min-height:650px;
	}

	.main_copy {
		left:25px;
		right:25px;
	}

	.main_copy h1 {
		font-size:58px;
	}

	.main_copy>span {
		font-size:8px;
	}

	.slider_control {
		right:20px;
	}

	.slider_count i {
		width:45px;
	}

	.main_scroll {
		left:25px;
	}

	.main_intro {
		padding:95px 25px;
	}

	.main_intro h2 {
		font-size:31px;
		line-height:1.6;
	}

	.main_intro_text br {
		display:none;
	}

	.main_panorama {
		height:65vh;
		min-height:480px;
	}

	.main_panorama div {
		left:25px;
		bottom:35px;
	}

	.main_panorama p {
		font-size:35px;
	}

	.main_venues {
		padding:95px 20px;
	}

	.main_venues_title {
		margin-bottom:55px;
	}

	.main_venues_title h2 {
		font-size:48px;
	}

	.venue_preview {
		margin-bottom:60px;
	}

	.venue_preview a,
.venue_preview.reverse a {
		display:flex;
		flex-direction:column;
		min-height:0;
	}

	.venue_preview.reverse .venue_photo {
		order:0;
	}

	.venue_photo img {
		height:55vh;
		min-height:390px;
	}

	.venue_meta {
		padding:38px 25px 45px;
	}

	.venue_meta h3 {
		font-size:40px;
		margin:22px 0;
	}

	.main_service {
		grid-template-columns:1fr;
	}

	.main_service a {
		padding:65px 30px;
	}

	.sub_title,
.parking_hero>div:last-child {
		left:25px;
		right:25px;
		bottom:50px;
	}

	.sub_title h1,
.parking_hero h1 {
		font-size:59px;
	}

	.brand_statement,
.obidos_intro,
.parking_intro {
		padding:90px 25px;
	}

	.brand_statement h2,
.obidos_intro h2,
.vista_manifest h2,
.parking_intro h2 {
		font-size:29px;
	}

	.brand_split,
.obidos_feature,
.parking_vip {
		display:flex;
		flex-direction:column;
		margin:0;
	}

	.brand_split>div:first-child,
.obidos_image,
.parking_vip>div:first-child {
		height:58vh;
		min-height:430px;
	}

	.brand_split>div:last-child,
.obidos_feature>div:last-child,
.parking_vip>div:last-child {
		padding:65px 28px;
	}

	.brand_words,
.banquet_points {
		grid-template-columns:1fr;
		padding:70px 25px;
	}

	.brand_words div,
.banquet_points article {
		padding:25px 5px;
		border-left:0;
		border-top:1px solid var(--line);
	}

	.hall_intro {
		padding:90px 25px;
		grid-template-columns:1fr;
		gap:25px;
	}

	.hall_intro h2 {
		font-size:43px;
	}

	.ravia_gallery {
		padding:0 20px 90px;
		grid-template-columns:1fr;
	}

	.ravia_gallery figure:nth-child(2) {
		padding-top:30px;
	}

	.ravia_gallery img {
		height:60vh;
	}

	.hall_keywords {
		padding:60px 20px;
		gap:14px;
		flex-wrap:wrap;
		font-size:18px;
	}

	.hall_keywords i {
		width:25px;
	}

	.obidos_feature {
		margin-bottom:70px;
	}

	.obidos_notice {
		padding:80px 25px;
	}

	.vista_cover {
		height:auto;
		min-height:100svh;
		display:flex;
		flex-direction:column;
	}

	.vista_cover_image {
		height:67vh;
	}

	.vista_cover_text {
		padding:55px 25px;
	}

	.vista_cover_text h1 {
		font-size:67px;
	}

	.vista_manifest {
		padding:90px 25px;
	}

	.vista_arch {
		padding:0 20px 95px;
		grid-template-columns:1fr;
		gap:45px;
	}

	.vista_tall {
		height:65vh;
	}

	.vista_arch_text h3 {
		font-size:34px;
	}

	.vista_panorama {
		margin:0 20px 90px;
	}

	.vista_panorama img {
		height:48vh;
	}

	.banquet_title {
		padding:110px 25px 65px;
	}

	.banquet_title h1 {
		font-size:65px;
	}

	.banquet_visual {
		margin:0;
		height:65vh;
		min-height:500px;
	}

	.banquet_visual>div {
		left:25px;
		right:25px;
		bottom:35px;
	}

	.banquet_visual h2 {
		font-size:29px;
	}

	.banquet_event {
		padding:85px 25px;
	}

	.parking_vip {
		margin:0 20px 90px;
	}

	.parking_flow {
		padding:75px 20px;
		gap:18px;
		flex-wrap:wrap;
	}

	.parking_flow>i {
		width:25px;
	}

	.reveal {
		transform:translateY(25px);
	}

}

@media(prefers-reduced-motion:reduce) {
	* {
		scroll-behavior:auto!important;
	}

	.reveal {
		opacity:1;
		transform:none;
		transition:none;
	}

	.main_slide {
		transition:opacity .2s;
		transform:none;
	}

}

.gw_header.is_overlay.scrolled {
	position:fixed;
	background:rgba(23,33,30,.92);
	backdrop-filter:blur(12px);
	animation:headerDown .45s;
}

@keyframes headerDown {
	from {
		transform:translateY(-100%);
	}

}

.gw_location {
	padding:145px 8vw;
	background:#f7f6f3;
}

.gw_location_head {
	text-align:center;
	margin-bottom:75px;
}

.gw_location_head>span,
.gw_address>span,
.gw_footer_nav>span {
	font-size:9px;
	letter-spacing:.34em;
	color:var(--gold);
}

.gw_location_head h2 {
	font:62px/1 'Cormorant Garamond';
	font-weight:400;
	margin:24px 0;
}

.gw_location_head p {
	font-size:12px;
	color:#777;
}

.gw_location_map {
	height:560px;
	background:#e9e7e1;
	overflow:hidden;
}

.gw_location_map iframe {
	width:100%;
	height:100%;
	border:0;
	filter:grayscale(1) contrast(.88);
	transition:filter .5s;
}

.gw_location_map:hover iframe {
	filter:grayscale(.2);
}

.gw_location_info {
	display:grid;
	grid-template-columns:.8fr 1.2fr;
	gap:8vw;
	padding-top:75px;
}

.gw_address h3 {
	font:30px/1.5 'Cormorant Garamond','Noto Sans KR';
	font-weight:300;
	margin:25px 0 10px;
}

.gw_address>p {
	font-size:11px;
	color:#888;
}

.gw_map_buttons {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:35px;
}

.gw_map_buttons a {
	padding:13px 18px;
	border:1px solid var(--line);
	font-size:9px;
	letter-spacing:.08em;
	transition:.3s;
}

.gw_map_buttons a:hover {
	background:var(--green);
	color:#fff;
}

.gw_transport {
	display:grid;
	grid-template-columns:repeat(3,1fr);
}

.gw_transport article {
	padding:12px 2.5vw;
	border-left:1px solid var(--line);
}

.gw_transport em {
	font:15px 'Cormorant Garamond';
	color:var(--gold);
}

.gw_transport span {
	display:block;
	margin-top:22px;
	font-size:8px;
	letter-spacing:.25em;
}

.gw_transport h4 {
	font-size:14px;
	font-weight:400;
	margin:15px 0;
}

.gw_transport p {
	font-size:10px;
	line-height:1.9;
	color:#777;
}

.gw_footer {
	grid-template-columns:1fr .35fr .65fr;
	gap:5vw;
}

.gw_footer_brand>a {
	display:inline-block;
	margin-top:20px;
	font:25px 'Cormorant Garamond';
	letter-spacing:.08em;
}

.gw_footer_nav nav {
	display:flex;
	flex-direction:column;
	margin-top:22px;
}

.gw_footer_nav nav a {
	padding:4px 0;
	font:15px 'Cormorant Garamond';
	letter-spacing:.08em;
	color:#9da5a1;
}

.gw_footer_company {
	padding-top:2px;
}

.gw_footer_company p {
	margin:0 0 9px!important;
	font-size:9px!important;
	letter-spacing:.03em!important;
	color:#8e9894!important;
}

.gw_footer_company b {
	display:inline-block;
	min-width:72px;
	color:#c2c7c4;
	font-weight:300;
}

.gw_footer_policy {
	grid-column:1/-1;
	display:flex;
	gap:24px;
	font-size:9px;
	color:#9da5a1;
}

.gw_footer_policy b {
	color:#fff;
	font-weight:400;
}

@media screen and (max-width: 1024px) {
	.gw_location {
		padding:90px 20px;
	}

	.gw_location_head {
		margin-bottom:45px;
	}

	.gw_location_head h2 {
		font-size:42px;
	}

	.gw_location_map {
		height:420px;
	}

	.gw_location_info {
		grid-template-columns:1fr;
		padding-top:50px;
		gap:55px;
	}

	.gw_address h3 {
		font-size:24px;
	}

	.gw_transport {
		grid-template-columns:1fr;
	}

	.gw_transport article {
		padding:25px 5px;
		border-left:0;
		border-top:1px solid var(--line);
	}

	.gw_footer {
		grid-template-columns:1fr;
		gap:38px;
	}

	.gw_footer_policy {
		grid-column:auto;
		flex-wrap:wrap;
		gap:12px 20px;
	}

	.gw_footer_bottom {
		grid-column:auto;
		gap:20px;
		align-items:flex-end;
	}

}

body{font-weight:400;word-break:keep-all}

/* 상단 및 전체 메뉴 */
.gw_menu_open span{font-size:10px}
.gw_tel{font-size:11px}
.gw_menu_home{font-size:12px}
.gw_menu nav em{font-size:13px}
.gw_menu nav span{font-size:34px}
.gw_menu nav small{font-size:11px;color:#b7bfbb}

/* 공통 영문 라벨 */
.section_label,
.main_venues_title>span,
.brand_statement>span,
.hall_intro span,
.obidos_intro>span,
.vista_manifest span,
.banquet_title>span,
.parking_intro>span,
.gw_location_head>span,
.gw_address>span,
.gw_footer_nav>span{font-size:12px;font-weight:400}

/* 메인페이지 이미지 바깥 본문 */
.main_intro_text{font-size:16px;line-height:2}
.venue_meta h3 small{font-size:15px;line-height:1.7}
.venue_meta>span{font-size:11px;font-weight:400}
.main_service h3{font-size:35px}
.main_service b{font-size:11px}

/* 브랜드·웨딩홀 상세 본문 */
.brand_statement p,
.brand_split p,
.hall_intro>p,
.obidos_intro p,
.obidos_feature p,
.vista_arch_text p,
.parking_intro p,
.parking_vip p{font-size:16px;line-height:2}
.brand_words p,
.banquet_points p{font-size:15px;line-height:1.9}
.brand_words h3{font-size:38px}
.hall_intro h2{font-size:56px}
.ravia_gallery figcaption{font-size:11px}
.obidos_notice p,
.banquet_event p{font-size:15px;line-height:1.9}
.vista_panorama p{font-size:11px}
.banquet_title p{font-size:16px}
.banquet_points h3{font-size:33px}
.parking_flow p{font-size:14px}

/* 오시는 길 */
.gw_location_head p{font-size:15px}
.gw_address h3{font-size:33px}
.gw_address>p{font-size:14px}
.gw_map_buttons a{font-size:12px;padding:15px 20px}
.gw_transport em{font-size:18px}
.gw_transport span{font-size:11px}
.gw_transport h4{font-size:17px}
.gw_transport p{font-size:13px;line-height:1.8}

/* 하단 회사정보 */
.gw_footer h2{font-size:38px}
.gw_footer_nav nav a{font-size:18px;line-height:1.55}
.gw_footer_company p{font-size:12px!important;line-height:1.7}
.gw_footer_company b{min-width:88px;font-size:12px}
.gw_footer_policy{font-size:12px}
.gw_footer_bottom{font-size:10px}

@media screen and (max-width: 1024px) {
  .section_label,
  .main_venues_title>span,
  .brand_statement>span,
  .hall_intro span,
  .obidos_intro>span,
  .vista_manifest span,
  .banquet_title>span,
  .parking_intro>span,
  .gw_location_head>span,
  .gw_address>span,
  .gw_footer_nav>span{font-size:11px}

  .main_intro_text,
  .brand_statement p,
  .brand_split p,
  .hall_intro>p,
  .obidos_intro p,
  .obidos_feature p,
  .vista_arch_text p,
  .parking_intro p,
  .parking_vip p{font-size:15px;line-height:1.95}

  .venue_meta h3 small{font-size:14px}
  .main_service h3{font-size:30px}
  .brand_words p,
  .banquet_points p{font-size:14px}
  .hall_intro h2{font-size:45px}
  .obidos_notice p,
  .banquet_event p{font-size:14px}

  .gw_location_head p{font-size:14px}
  .gw_address h3{font-size:26px;line-height:1.6}
  .gw_address>p{font-size:13px}
  .gw_map_buttons a{font-size:11px}
  .gw_transport h4{font-size:16px}
  .gw_transport p{font-size:13px}

  .gw_footer h2{font-size:30px}
  .gw_footer_nav nav a{font-size:17px}
  .gw_footer_company p{font-size:12px!important}
  .gw_footer_policy{font-size:11px}
  .gw_footer_bottom{font-size:9px;line-height:1.6}
}



/* 오비도스홀 세 번째 이미지 */
.obidos_panorama{
	margin:0 8vw 150px;
}

.obidos_panorama_image{
	position:relative;
	height:72vh;
	min-height:600px;
	overflow:hidden;
}

.obidos_panorama_image > img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform 1.5s ease;
}

.obidos_panorama:hover .obidos_panorama_image > img{
	transform:scale(1.025);
}

.obidos_panorama_dim{
	position:absolute;
	inset:0;
	background:
		linear-gradient(
			90deg,
			rgba(7,12,10,0.78) 0%,
			rgba(7,12,10,0.25) 58%,
			rgba(7,12,10,0.08) 100%
		);
}

.obidos_panorama_text{
	position:absolute;
	z-index:2;
	left:7%;
	bottom:12%;
	color:#fff;
}

.obidos_panorama_text > span{
	font-size:11px;
	font-weight:400;
	letter-spacing:.32em;
	color:#c2a673;
}

.obidos_panorama_text h3{
	margin:25px 0 20px;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:46px;
	font-weight:300;
	line-height:1.4;
}

.obidos_panorama_text p{
	margin:0;
	font-size:15px;
	font-weight:300;
	line-height:1.9;
	color:rgba(255,255,255,.78);
}

.obidos_panorama_caption{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:22px 0;
	border-bottom:1px solid rgba(255,255,255,.18);
}

.obidos_panorama_caption span,
.obidos_panorama_caption p{
	margin:0;
	font-size:10px;
	letter-spacing:.25em;
	color:#929b97;
}


/* 모바일 */
@media screen and (max-width: 1024px) {

	.obidos_panorama{
		margin:0 20px 90px;
	}

	.obidos_panorama_image{
		height:65vh;
		min-height:500px;
	}

	.obidos_panorama_dim{
		background:
			linear-gradient(
				0deg,
				rgba(7,12,10,.9) 0%,
				rgba(7,12,10,.15) 70%
			);
	}

	.obidos_panorama_text{
		left:25px;
		right:25px;
		bottom:35px;
	}

	.obidos_panorama_text > span{
		font-size:9px;
		line-height:1.6;
	}

	.obidos_panorama_text h3{
		margin:18px 0;
		font-size:32px;
		line-height:1.45;
	}

	.obidos_panorama_text p{
		font-size:14px;
		line-height:1.8;
	}

	.obidos_panorama_caption{
		display:block;
		padding:18px 0;
	}

	.obidos_panorama_caption p{
		margin-top:7px;
		font-size:9px;
	}

}




/* =========================================================
   ÓBIDOS HALL
   ========================================================= */

.obidos_slider{
	position:relative;
	overflow:hidden;
}

.obidos_slider .main_slide{
	position:absolute;
	inset:0;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	opacity:0;
	transform:scale(1.06);
	transition:
		opacity 1.4s ease,
		transform 6.5s ease;
}

.obidos_slider .main_slide.is_active{
	opacity:1;
	transform:scale(1);
}

.obidos_slider .sub_dim{
	z-index:1;
}

.obidos_slider .obidos_stars{
	z-index:2;
	pointer-events:none;
}

.obidos_slider .sub_title{
	z-index:3;
}

.obidos_slider_control{
	position:absolute;
	z-index:5;
	right:5vw;
	bottom:40px;
	display:flex;
	align-items:center;
	gap:18px;
	color:#fff;
}

.obidos_slider_control button{
	padding:5px;
	border:0;
	background:none;
	color:#fff;
	font-size:10px;
	letter-spacing:.22em;
	cursor:pointer;
}

.obidos_slider_count{
	display:flex;
	align-items:center;
	gap:11px;
	font-family:'Cormorant Garamond',serif;
	font-size:14px;
}

.obidos_slider_count b,
.obidos_slider_count em{
	font-style:normal;
	font-weight:400;
}

.obidos_slider_count i{
	position:relative;
	display:block;
	width:80px;
	border-top:1px solid rgba(255,255,255,.35);
}

.obidos_slider_count i span{
	position:absolute;
	top:-1px;
	left:0;
	width:0;
	border-top:1px solid #fff;
}

.obidos_slider.is_playing .obidos_slider_count i span{
	animation:obidosProgress 5.5s linear forwards;
}

@keyframes obidosProgress{
	from{
		width:0;
	}

	to{
		width:100%;
	}
}


/* 하단 공간별 소개 */
.obidos_space{
	margin:0 8vw 150px;
	display:grid;
	grid-template-columns:1.25fr .75fr;
	background:#1b2521;
}

.obidos_space:nth-of-type(even){
	grid-template-columns:.75fr 1.25fr;
}

.obidos_space:nth-of-type(even) .obidos_space_image{
	order:2;
}

.obidos_space_image{
	min-height:680px;
	overflow:hidden;
}

.obidos_space_image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform 1.4s ease;
}

.obidos_space:hover .obidos_space_image img{
	transform:scale(1.025);
}

.obidos_space_text{
	align-self:center;
	padding:7vw 5vw;
}

.obidos_space_text em{
	font-family:'Cormorant Garamond',serif;
	font-size:19px;
	font-style:normal;
	color:#b79b6d;
}

.obidos_space_text > span{
	display:block;
	margin-top:25px;
	font-size:11px;
	font-weight:400;
	letter-spacing:.3em;
	color:#d1d6d3;
}

.obidos_space_text h3{
	margin:28px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:42px;
	font-weight:300;
	line-height:1.45;
	color:#fff;
}

.obidos_space_text p{
	margin:0 0 16px;
	font-size:15px;
	font-weight:300;
	line-height:2;
	color:#aeb6b2;
}


/* 모바일 */
@media screen and (max-width: 1024px) {

	.obidos_slider_control{
		right:20px;
		bottom:25px;
		gap:11px;
	}

	.obidos_slider_control button{
		font-size:9px;
	}

	.obidos_slider_count{
		gap:7px;
		font-size:12px;
	}

	.obidos_slider_count i{
		width:38px;
	}

	.obidos_space,
	.obidos_space:nth-of-type(even){
		display:flex;
		flex-direction:column;
		margin:0 20px 70px;
	}

	.obidos_space:nth-of-type(even) .obidos_space_image{
		order:0;
	}

	.obidos_space_image{
		width:100%;
		height:58vh;
		min-height:420px;
	}

	.obidos_space_text{
		padding:50px 27px 58px;
	}

	.obidos_space_text em{
		font-size:17px;
	}

	.obidos_space_text > span{
		font-size:10px;
	}

	.obidos_space_text h3{
		font-size:32px;
		line-height:1.5;
	}

	.obidos_space_text p{
		font-size:14px;
		line-height:1.9;
	}

}





/* =========================================================
   VISTA HALL
   ========================================================= */

.vista_page{
	background:#f2efe9;
	color:#262520;
}


/* 상단 슬라이드 */
.vista_slider{
	position:relative;
	overflow:hidden;
}

.vista_slider .main_slide{
	position:absolute;
	inset:0;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	opacity:0;
	transform:scale(1.06);
	transition:
		opacity 1.4s ease,
		transform 6.5s ease;
}

.vista_slider .main_slide.is_active{
	opacity:1;
	transform:scale(1);
}

.vista_slider .sub_dim{
	z-index:1;
	background:
		linear-gradient(
			90deg,
			rgba(10,11,10,.8) 0%,
			rgba(10,11,10,.18) 65%,
			rgba(10,11,10,.12) 100%
		),
		linear-gradient(
			0deg,
			rgba(10,11,10,.65) 0%,
			transparent 55%
		);
}

.vista_slider .sub_title{
	z-index:3;
}

.vista_hero_line{
	position:absolute;
	z-index:3;
	top:50%;
	right:8vw;
	width:1px;
	height:130px;
	background:rgba(255,255,255,.45);
}

.vista_slider_control{
	position:absolute;
	z-index:5;
	right:5vw;
	bottom:40px;
	display:flex;
	align-items:center;
	gap:18px;
	color:#fff;
}

.vista_slider_control button{
	padding:5px;
	border:0;
	background:none;
	color:#fff;
	font-size:10px;
	letter-spacing:.22em;
	cursor:pointer;
}

.vista_slider_count{
	display:flex;
	align-items:center;
	gap:11px;
	font-family:'Cormorant Garamond',serif;
	font-size:14px;
}

.vista_slider_count b,
.vista_slider_count em{
	font-style:normal;
	font-weight:400;
}

.vista_slider_count i{
	position:relative;
	display:block;
	width:80px;
	border-top:1px solid rgba(255,255,255,.35);
}

.vista_slider_count i span{
	position:absolute;
	top:-1px;
	left:0;
	width:0;
	border-top:1px solid #fff;
}

.vista_slider.is_playing .vista_slider_count i span{
	animation:vistaProgress 5.5s linear forwards;
}

@keyframes vistaProgress{
	from{
		width:0;
	}

	to{
		width:100%;
	}
}


/* 비스타홀 소개 */
.vista_intro{
	padding:150px 16vw;
	text-align:center;
	background:#f7f5f1;
}

.vista_intro > span{
	font-size:12px;
	font-weight:400;
	letter-spacing:.32em;
	color:#a58a5c;
}

.vista_intro h2{
	margin:38px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.65;
}

.vista_intro p{
	max-width:850px;
	margin:0 auto 13px;
	font-size:16px;
	line-height:2;
	color:#747169;
}


/* 공간별 소개 */
.vista_space{
	margin:0 8vw 150px;
	display:grid;
	grid-template-columns:1.25fr .75fr;
	background:#fff;
	box-shadow:0 25px 70px rgba(40,35,28,.05);
}

.vista_space:nth-of-type(even){
	grid-template-columns:.75fr 1.25fr;
}

.vista_space:nth-of-type(even) .vista_space_image{
	order:2;
}

.vista_space_image{
	min-height:700px;
	overflow:hidden;
}

.vista_space_image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform 1.4s ease;
}

.vista_space:hover .vista_space_image img{
	transform:scale(1.025);
}

.vista_space_text{
	align-self:center;
	padding:7vw 5vw;
}

.vista_space_text em{
	font-family:'Cormorant Garamond',serif;
	font-size:19px;
	font-style:normal;
	color:#a58a5c;
}

.vista_space_text > span{
	display:block;
	margin-top:25px;
	font-size:11px;
	font-weight:400;
	letter-spacing:.3em;
	color:#6f6a60;
}

.vista_space_text h3{
	margin:28px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:41px;
	font-weight:300;
	line-height:1.5;
	color:#2b2924;
}

.vista_space_text p{
	margin:0 0 16px;
	font-size:15px;
	line-height:2;
	color:#77736b;
}


/* 공간별 분위기 차이 */
.vista_space_bridal{
	background:#e8e2d9;
}

.vista_space_lobby{
	background:#252823;
	color:#fff;
}

.vista_space_lobby .vista_space_text > span{
	color:#c5b28e;
}

.vista_space_lobby .vista_space_text h3{
	color:#fff;
}

.vista_space_lobby .vista_space_text p{
	color:#bbc0bb;
}


/* 하단 메시지 */
.vista_message{
	padding:145px 8vw;
	text-align:center;
	background:#ded7cb;
}

.vista_message > span{
	font-size:11px;
	letter-spacing:.3em;
	color:#8a7350;
}

.vista_message h2{
	margin:32px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.6;
}

.vista_message p{
	font-size:15px;
	line-height:2;
	color:#706b63;
}


/* 모바일 */
@media screen and (max-width: 1024px) {

	.vista_hero_line{
		display:none;
	}

	.vista_slider_control{
		right:20px;
		bottom:25px;
		gap:11px;
	}

	.vista_slider_control button{
		font-size:9px;
	}

	.vista_slider_count{
		gap:7px;
		font-size:12px;
	}

	.vista_slider_count i{
		width:38px;
	}

	.vista_intro{
		padding:90px 25px;
	}

	.vista_intro > span{
		font-size:10px;
	}

	.vista_intro h2{
		font-size:29px;
		line-height:1.65;
	}

	.vista_intro p{
		font-size:15px;
		line-height:1.95;
	}

	.vista_space,
	.vista_space:nth-of-type(even){
		display:flex;
		flex-direction:column;
		margin:0 20px 70px;
	}

	.vista_space:nth-of-type(even) .vista_space_image{
		order:0;
	}

	.vista_space_image{
		width:100%;
		height:59vh;
		min-height:430px;
	}

	.vista_space_text{
		padding:50px 27px 58px;
	}

	.vista_space_text em{
		font-size:17px;
	}

	.vista_space_text > span{
		font-size:10px;
	}

	.vista_space_text h3{
		font-size:32px;
		line-height:1.5;
	}

	.vista_space_text p{
		font-size:14px;
		line-height:1.9;
	}

	.vista_message{
		padding:85px 25px;
	}

	.vista_message > span{
		font-size:9px;
		line-height:1.7;
	}

	.vista_message h2{
		font-size:30px;
	}

	.vista_message p{
		font-size:14px;
	}

}








/* =========================================================
   BANQUET HALL
   ========================================================= */

.banquet_page{
	background:#f3f0ea;
	color:#292721;
}


/* 페이지 타이틀 */
.banquet_title{
	padding:150px 8vw 100px;
}

.banquet_title > span{
	font-size:12px;
	font-weight:400;
	letter-spacing:.32em;
	color:#a58a5c;
}

.banquet_title h1{
	margin:25px 0;
	font-family:'Cormorant Garamond',serif;
	font-size:110px;
	font-weight:400;
	line-height:.9;
}

.banquet_title p{
	font-size:16px;
	line-height:1.8;
	color:#77736b;
}


/* 상단 슬라이드 */
.banquet_slider{
	position:relative;
	height:82vh;
	min-height:650px;
	overflow:hidden;
	background:#111;
	color:#fff;
}

.banquet_slider .main_slide{
	position:absolute;
	inset:0;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	opacity:0;
	transform:scale(1.06);
	transition:
		opacity 1.4s ease,
		transform 6.5s ease;
}

.banquet_slider .main_slide.is_active{
	opacity:1;
	transform:scale(1);
}

.banquet_slider_dim{
	position:absolute;
	z-index:1;
	inset:0;
	background:
		linear-gradient(
			90deg,
			rgba(10,11,10,.78) 0%,
			rgba(10,11,10,.16) 70%
		),
		linear-gradient(
			0deg,
			rgba(10,11,10,.72) 0%,
			transparent 58%
		);
}

.banquet_slider_text{
	position:absolute;
	z-index:3;
	left:8vw;
	bottom:9vw;
}

.banquet_slider_text > span{
	font-size:11px;
	font-weight:400;
	letter-spacing:.32em;
	color:#d0b886;
}

.banquet_slider_text h2{
	margin:25px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:46px;
	font-weight:300;
	line-height:1.5;
}

.banquet_slider_text p{
	margin:0;
	font-size:15px;
	font-weight:300;
	line-height:1.9;
	color:rgba(255,255,255,.8);
}

.banquet_slider_control{
	position:absolute;
	z-index:5;
	right:5vw;
	bottom:40px;
	display:flex;
	align-items:center;
	gap:18px;
}

.banquet_slider_control button{
	padding:5px;
	border:0;
	background:none;
	color:#fff;
	font-size:10px;
	letter-spacing:.22em;
	cursor:pointer;
}

.banquet_slider_count{
	display:flex;
	align-items:center;
	gap:11px;
	font-family:'Cormorant Garamond',serif;
	font-size:14px;
}

.banquet_slider_count b,
.banquet_slider_count em{
	font-style:normal;
	font-weight:400;
}

.banquet_slider_count i{
	position:relative;
	display:block;
	width:80px;
	border-top:1px solid rgba(255,255,255,.35);
}

.banquet_slider_count i span{
	position:absolute;
	top:-1px;
	left:0;
	width:0;
	border-top:1px solid #fff;
}

.banquet_slider.is_playing .banquet_slider_count i span{
	animation:banquetProgress 5.5s linear forwards;
}

@keyframes banquetProgress{
	from{
		width:0;
	}

	to{
		width:100%;
	}
}


/* 연회장 소개 */
.banquet_intro{
	padding:150px 17vw;
	text-align:center;
}

.banquet_intro > span{
	font-size:11px;
	font-weight:400;
	letter-spacing:.32em;
	color:#a58a5c;
}

.banquet_intro h2{
	margin:38px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.65;
}

.banquet_intro p{
	max-width:900px;
	margin:0 auto 14px;
	font-size:16px;
	line-height:2;
	color:#747169;
}


/* 사진과 설명 */
.banquet_space{
	margin:0 8vw 150px;
	display:grid;
	grid-template-columns:1.25fr .75fr;
	background:#fff;
	box-shadow:0 25px 70px rgba(40,35,28,.05);
}

.banquet_space:nth-of-type(even){
	grid-template-columns:.75fr 1.25fr;
}

.banquet_space:nth-of-type(even) .banquet_space_image{
	order:2;
}

.banquet_space_image{
	min-height:700px;
	overflow:hidden;
}

.banquet_space_image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform 1.4s ease;
}

.banquet_space:hover .banquet_space_image img{
	transform:scale(1.025);
}

.banquet_space_text{
	align-self:center;
	padding:7vw 5vw;
}

.banquet_space_text em{
	font-family:'Cormorant Garamond',serif;
	font-size:19px;
	font-style:normal;
	color:#a58a5c;
}

.banquet_space_text > span{
	display:block;
	margin-top:25px;
	font-size:11px;
	font-weight:400;
	letter-spacing:.28em;
	color:#716c62;
}

.banquet_space_text h3{
	margin:28px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:39px;
	font-weight:300;
	line-height:1.5;
}

.banquet_space_text p{
	margin:0 0 16px;
	font-size:15px;
	line-height:2;
	color:#77736b;
}


/* 즉석요리 */
.banquet_live{
	background:#202824;
	color:#fff;
}

.banquet_live .banquet_space_text > span{
	color:#c7b28b;
}

.banquet_live .banquet_space_text p{
	color:#b9c0bc;
}


/* 넓은 연회석 */
.banquet_seats{
	padding:140px 8vw 150px;
	background:#e6e0d6;
}

.banquet_seats_title{
	max-width:900px;
	margin:0 auto 80px;
	text-align:center;
}

.banquet_seats_title > span{
	font-size:11px;
	letter-spacing:.32em;
	color:#957b50;
}

.banquet_seats_title h2{
	margin:35px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.6;
}

.banquet_seats_title p{
	font-size:16px;
	line-height:2;
	color:#706c64;
}

.banquet_seats_gallery{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:4vw;
}

.banquet_seats_gallery figure{
	margin:0;
}

.banquet_seats_gallery figure:nth-child(2){
	padding-top:100px;
}

.banquet_seats_gallery img{
	height:620px;
	object-fit:cover;
}

.banquet_seats_gallery figcaption{
	padding:22px 0;
}

.banquet_seats_gallery figcaption span{
	font-size:10px;
	letter-spacing:.28em;
	color:#937b56;
}

.banquet_seats_gallery figcaption p{
	margin:9px 0 0;
	font-size:14px;
	color:#67635c;
}

.banquet_seats_description{
	max-width:900px;
	margin:80px auto 0;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:5vw;
}

.banquet_seats_description p{
	margin:0;
	font-size:15px;
	line-height:2;
	color:#706c64;
}


/* VIP룸 */
.banquet_vip{
	background:#e9e2d8;
}


/* 음식 동선 */
.banquet_flow{
	background:#fff;
}


/* 음식 서비스 약속 */
.banquet_quality{
	padding:145px 8vw;
	background:#1f2824;
	color:#fff;
}

.banquet_quality_title{
	margin-bottom:80px;
	text-align:center;
}

.banquet_quality_title > span{
	font-size:11px;
	letter-spacing:.32em;
	color:#c3a873;
}

.banquet_quality_title h2{
	margin:35px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.6;
}

.banquet_quality_list{
	display:grid;
	grid-template-columns:repeat(4,1fr);
}

.banquet_quality_list article{
	padding:30px 3vw;
	border-left:1px solid rgba(255,255,255,.18);
}

.banquet_quality_list em{
	font-family:'Cormorant Garamond',serif;
	font-size:18px;
	font-style:normal;
	color:#c3a873;
}

.banquet_quality_list h3{
	font-family:'Cormorant Garamond',serif;
	font-size:29px;
	font-weight:400;
}

.banquet_quality_list p{
	font-size:14px;
	line-height:1.9;
	color:#afb7b3;
}


/* 소규모 행사 */
.banquet_event{
	padding:130px 8vw;
	text-align:center;
	background:#dcd4c7;
}

.banquet_event > span{
	font-size:11px;
	letter-spacing:.32em;
	color:#8e7650;
}

.banquet_event h2{
	margin:35px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:38px;
	font-weight:300;
	line-height:1.6;
}

.banquet_event p{
	font-size:15px;
	line-height:2;
	color:#706b63;
}


/* 모바일 */
@media screen and (max-width: 1024px) {

	.banquet_title{
		padding:110px 25px 65px;
	}

	.banquet_title > span{
		font-size:10px;
	}

	.banquet_title h1{
		font-size:65px;
	}

	.banquet_title p{
		font-size:14px;
	}

	.banquet_slider{
		height:72vh;
		min-height:570px;
	}

	.banquet_slider_text{
		left:25px;
		right:25px;
		bottom:75px;
	}

	.banquet_slider_text > span{
		font-size:9px;
	}

	.banquet_slider_text h2{
		font-size:31px;
		line-height:1.5;
	}

	.banquet_slider_text p{
		font-size:13px;
	}

	.banquet_slider_control{
		right:20px;
		bottom:24px;
		gap:10px;
	}

	.banquet_slider_control button{
		font-size:9px;
	}

	.banquet_slider_count{
		gap:7px;
		font-size:12px;
	}

	.banquet_slider_count i{
		width:35px;
	}

	.banquet_intro{
		padding:90px 25px;
	}

	.banquet_intro > span{
		font-size:9px;
		line-height:1.7;
	}

	.banquet_intro h2{
		font-size:29px;
	}

	.banquet_intro p{
		font-size:15px;
		line-height:1.95;
	}

	.banquet_space,
	.banquet_space:nth-of-type(even){
		display:flex;
		flex-direction:column;
		margin:0 20px 70px;
	}

	.banquet_space:nth-of-type(even) .banquet_space_image{
		order:0;
	}

	.banquet_space_image{
		width:100%;
		height:58vh;
		min-height:420px;
	}

	.banquet_space_text{
		padding:50px 27px 58px;
	}

	.banquet_space_text em{
		font-size:17px;
	}

	.banquet_space_text > span{
		font-size:9px;
		line-height:1.7;
	}

	.banquet_space_text h3{
		font-size:31px;
	}

	.banquet_space_text p{
		font-size:14px;
		line-height:1.9;
	}

	.banquet_seats{
		padding:90px 20px;
	}

	.banquet_seats_title{
		margin-bottom:50px;
	}

	.banquet_seats_title > span{
		font-size:9px;
	}

	.banquet_seats_title h2{
		font-size:29px;
	}

	.banquet_seats_title p{
		font-size:14px;
	}

	.banquet_seats_gallery{
		grid-template-columns:1fr;
		gap:35px;
	}

	.banquet_seats_gallery figure:nth-child(2){
		padding-top:0;
	}

	.banquet_seats_gallery img{
		height:55vh;
		min-height:400px;
	}

	.banquet_seats_description{
		margin-top:50px;
		grid-template-columns:1fr;
		gap:18px;
	}

	.banquet_seats_description p{
		font-size:14px;
		line-height:1.9;
	}

	.banquet_quality{
		padding:90px 25px;
	}

	.banquet_quality_title{
		margin-bottom:50px;
	}

	.banquet_quality_title > span{
		font-size:9px;
	}

	.banquet_quality_title h2{
		font-size:29px;
	}

	.banquet_quality_list{
		grid-template-columns:1fr;
	}

	.banquet_quality_list article{
		padding:30px 5px;
		border-left:0;
		border-top:1px solid rgba(255,255,255,.18);
	}

	.banquet_quality_list h3{
		font-size:27px;
	}

	.banquet_quality_list p{
		font-size:14px;
	}

	.banquet_event{
		padding:85px 25px;
	}

	.banquet_event > span{
		font-size:9px;
	}

	.banquet_event h2{
		font-size:29px;
	}

	.banquet_event p{
		font-size:14px;
	}

}



/* =========================================================
   PARKING LOT
   ========================================================= */

.parking_page{
	background:#f2f0eb;
	color:#282722;
}


/* 상단 주차장 슬라이드 */
.parking_slider{
	position:relative;
	height:100svh;
	min-height:700px;
	overflow:hidden;
	background:#111;
	color:#fff;
}

.parking_slider .main_slide{
	position:absolute;
	inset:0;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	opacity:0;
	transform:scale(1.06);
	transition:
		opacity 1.4s ease,
		transform 6.5s ease;
}

.parking_slider .main_slide.is_active{
	opacity:1;
	transform:scale(1);
}

.parking_slider .sub_dim{
	z-index:1;
	background:
		linear-gradient(
			90deg,
			rgba(8,11,10,.78) 0%,
			rgba(8,11,10,.15) 68%
		),
		linear-gradient(
			0deg,
			rgba(8,11,10,.72) 0%,
			transparent 58%
		);
}

.parking_hero_text{
	position:absolute;
	z-index:3;
	left:8vw;
	bottom:9vw;
}

.parking_hero_text > span{
	font-size:10px;
	font-weight:400;
	letter-spacing:.32em;
}

.parking_hero_text h1{
	margin:25px 0;
	font-family:'Cormorant Garamond',serif;
	font-size:100px;
	font-weight:400;
	line-height:.9;
}

.parking_hero_text p{
	font-size:15px;
	letter-spacing:.1em;
}

.parking_slider_control{
	position:absolute;
	z-index:5;
	right:5vw;
	bottom:40px;
	display:flex;
	align-items:center;
	gap:18px;
}

.parking_slider_control button{
	padding:5px;
	border:0;
	background:none;
	color:#fff;
	font-size:10px;
	letter-spacing:.22em;
	cursor:pointer;
}

.parking_slider_count{
	display:flex;
	align-items:center;
	gap:11px;
	font-family:'Cormorant Garamond',serif;
	font-size:14px;
}

.parking_slider_count b,
.parking_slider_count em{
	font-style:normal;
	font-weight:400;
}

.parking_slider_count i{
	position:relative;
	display:block;
	width:80px;
	border-top:1px solid rgba(255,255,255,.35);
}

.parking_slider_count i span{
	position:absolute;
	top:-1px;
	left:0;
	width:0;
	border-top:1px solid #fff;
}

.parking_slider.is_playing .parking_slider_count i span{
	animation:parkingProgress 5.5s linear forwards;
}

@keyframes parkingProgress{
	from{
		width:0;
	}

	to{
		width:100%;
	}
}


/* 주차장 소개 */
.parking_intro{
	padding:150px 16vw;
	text-align:center;
	background:#f7f5f1;
}

.parking_intro > span{
	font-size:11px;
	font-weight:400;
	letter-spacing:.32em;
	color:#a58a5c;
}

.parking_intro h2{
	margin:38px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.65;
}

.parking_intro p{
	max-width:900px;
	margin:0 auto 13px;
	font-size:16px;
	line-height:2;
	color:#747169;
}


/* 주차장 규모 */
.parking_scale{
	padding:140px 8vw 150px;
	background:#e7e2d9;
}

.parking_scale_title{
	max-width:900px;
	margin:0 auto 80px;
	text-align:center;
}

.parking_scale_title > span{
	font-size:11px;
	letter-spacing:.32em;
	color:#947a50;
}

.parking_scale_title h2{
	margin:35px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.6;
}

.parking_scale_title p{
	font-size:16px;
	line-height:2;
	color:#706c64;
}

.parking_scale_gallery{
	display:grid;
	grid-template-columns:1.25fr .75fr;
	gap:3vw;
}

.parking_scale_gallery figure{
	margin:0;
}

.parking_scale_large img{
	height:760px;
}

.parking_scale_small{
	display:grid;
	grid-template-rows:1fr 1fr;
	gap:3vw;
}

.parking_scale_small img{
	height:315px;
}

.parking_scale_gallery img{
	object-fit:cover;
}

.parking_scale_gallery figcaption{
	padding:18px 0;
}

.parking_scale_gallery figcaption span{
	font-size:10px;
	letter-spacing:.25em;
	color:#8d7550;
}

.parking_scale_gallery figcaption p{
	margin:8px 0 0;
	font-size:14px;
	color:#69655d;
}


/* 안내요원 */
.parking_guide{
	margin:150px 8vw;
	display:grid;
	grid-template-columns:1.25fr .75fr;
	background:#fff;
	box-shadow:0 25px 70px rgba(40,35,28,.05);
}

.parking_guide_image{
	min-height:700px;
	overflow:hidden;
}

.parking_guide_image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform 1.4s ease;
}

.parking_guide:hover .parking_guide_image img{
	transform:scale(1.025);
}

.parking_guide_text{
	align-self:center;
	padding:7vw 5vw;
}

.parking_guide_text em,
.parking_vip_text em{
	font-family:'Cormorant Garamond',serif;
	font-size:19px;
	font-style:normal;
	color:#a58a5c;
}

.parking_guide_text > span,
.parking_vip_text > span{
	display:block;
	margin-top:25px;
	font-size:11px;
	font-weight:400;
	letter-spacing:.28em;
	color:#716c62;
}

.parking_guide_text h3,
.parking_vip_text h3{
	margin:28px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:39px;
	font-weight:300;
	line-height:1.5;
}

.parking_guide_text p,
.parking_vip_text p{
	margin:0 0 16px;
	font-size:15px;
	line-height:2;
	color:#77736b;
}


/* VIP 주차장 */
.parking_vip_highlight{
	margin:0;
	display:grid;
	grid-template-columns:1fr 1fr;
	background:#1f2824;
	color:#fff;
}

.parking_vip_image{
	position:relative;
	min-height:780px;
	overflow:hidden;
}

.parking_vip_image img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.parking_vip_badge{
	position:absolute;
	top:40px;
	left:40px;
	min-width:170px;
	padding:22px;
	background:#ae8f58;
	color:#fff;
}

.parking_vip_badge span{
	display:block;
	font-size:9px;
	letter-spacing:.25em;
}

.parking_vip_badge b{
	display:block;
	margin-top:8px;
	font-family:'Cormorant Garamond',serif;
	font-size:23px;
	font-weight:400;
	letter-spacing:.08em;
}

.parking_vip_text{
	align-self:center;
	padding:7vw 6vw;
}

.parking_vip_text > span{
	color:#c7b28b;
}

.parking_vip_text h3{
	color:#fff;
}

.parking_vip_text strong{
	display:block;
	margin:0 0 30px;
	padding:22px 0;
	border-top:1px solid rgba(255,255,255,.2);
	border-bottom:1px solid rgba(255,255,255,.2);
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:23px;
	font-weight:300;
	line-height:1.7;
	color:#d9c49b;
}

.parking_vip_text p{
	color:#b6bfba;
}

.parking_vip_points{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:32px;
}

.parking_vip_points span{
	padding:10px 14px;
	border:1px solid rgba(255,255,255,.25);
	font-size:10px;
	color:#d3d8d5;
}


/* 주차 이용 흐름 */
.parking_flow{
	padding:120px 7vw;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:4vw;
	background:#ded8ce;
}

.parking_flow > div{
	flex:1;
	text-align:center;
}

.parking_flow > i{
	width:70px;
	border-top:1px solid #aaa08e;
}

.parking_flow em{
	font-family:'Cormorant Garamond',serif;
	font-size:18px;
	font-style:normal;
	color:#9b8053;
}

.parking_flow span{
	display:block;
	margin:18px 0 12px;
	font-family:'Cormorant Garamond',serif;
	font-size:29px;
	letter-spacing:.08em;
}

.parking_flow h4{
	margin:0 0 15px;
	font-size:15px;
	font-weight:400;
}

.parking_flow p{
	font-size:13px;
	line-height:1.8;
	color:#777167;
}


/* 하단 메시지 */
.parking_message{
	padding:140px 8vw;
	text-align:center;
	background:#f7f5f1;
}

.parking_message > span{
	font-size:11px;
	letter-spacing:.32em;
	color:#947a50;
}

.parking_message h2{
	margin:35px 0;
	font-family:'Cormorant Garamond','Noto Sans KR',serif;
	font-size:40px;
	font-weight:300;
	line-height:1.6;
}

.parking_message p{
	max-width:800px;
	margin:0 auto;
	font-size:15px;
	line-height:2;
	color:#706c64;
}


/* 모바일 */
@media screen and (max-width: 1024px) {

	.parking_slider{
		height:72vh;
		min-height:570px;
	}

	.parking_hero_text{
		left:25px;
		right:25px;
		bottom:75px;
	}

	.parking_hero_text > span{
		font-size:8px;
		line-height:1.7;
	}

	.parking_hero_text h1{
		font-size:58px;
	}

	.parking_hero_text p{
		font-size:13px;
	}

	.parking_slider_control{
		right:20px;
		bottom:24px;
		gap:10px;
	}

	.parking_slider_control button{
		font-size:9px;
	}

	.parking_slider_count{
		gap:7px;
		font-size:12px;
	}

	.parking_slider_count i{
		width:35px;
	}

	.parking_intro{
		padding:90px 25px;
	}

	.parking_intro > span{
		font-size:9px;
		line-height:1.7;
	}

	.parking_intro h2{
		font-size:29px;
	}

	.parking_intro p{
		font-size:15px;
		line-height:1.95;
	}

	.parking_scale{
		padding:90px 20px;
	}

	.parking_scale_title{
		margin-bottom:50px;
	}

	.parking_scale_title > span{
		font-size:9px;
	}

	.parking_scale_title h2{
		font-size:29px;
	}

	.parking_scale_title p{
		font-size:14px;
	}

	.parking_scale_gallery{
		grid-template-columns:1fr;
		gap:35px;
	}

	.parking_scale_large img,
	.parking_scale_small img{
		height:55vh;
		min-height:390px;
	}

	.parking_scale_small{
		display:block;
	}

	.parking_scale_small figure + figure{
		margin-top:35px;
	}

	.parking_guide{
		display:flex;
		flex-direction:column;
		margin:70px 20px;
	}

	.parking_guide_image{
		height:58vh;
		min-height:420px;
	}

	.parking_guide_text{
		padding:50px 27px 58px;
	}

	.parking_guide_text h3,
	.parking_vip_text h3{
		font-size:31px;
	}

	.parking_guide_text p,
	.parking_vip_text p{
		font-size:14px;
		line-height:1.9;
	}

	.parking_vip_highlight{
		display:flex;
		flex-direction:column;
	}

	.parking_vip_image{
		height:60vh;
		min-height:440px;
	}

	.parking_vip_badge{
		top:20px;
		left:20px;
		min-width:145px;
		padding:17px;
	}

	.parking_vip_badge b{
		font-size:20px;
	}

	.parking_vip_text{
		padding:60px 27px 70px;
	}

	.parking_vip_text strong{
		font-size:20px;
	}

	.parking_vip_points span{
		font-size:9px;
	}

	.parking_flow{
		padding:80px 25px;
		display:grid;
		grid-template-columns:1fr 1fr;
		gap:40px 20px;
	}

	.parking_flow > i{
		display:none;
	}

	.parking_flow span{
		font-size:25px;
	}

	.parking_flow p{
		font-size:12px;
	}

	.parking_message{
		padding:90px 25px;
	}

	.parking_message > span{
		font-size:9px;
	}

	.parking_message h2{
		font-size:29px;
	}

	.parking_message p{
		font-size:14px;
	}

}


@media screen and (max-width:1024px) and (orientation:landscape) {

    .gw_menu nav small {
        display:none;
    }

}















.main_popup {
	display: none;
	position: fixed;
	top: 90px;
	left: 30px;
	z-index: 9999;
	width: 600px;
	max-width: calc(100% - 40px);
	background: #000;
	box-shadow: 0 15px 45px rgba(0, 0, 0, .35);
}

.main_popup_inner {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: #fff;
}

/*
 * 영상 영역
 */
.main_popup_video_area {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: #000;
}

/*
 * 영상
 *
 * 브라우저 기본 컨트롤러가 영상 내부 하단에 표시됩니다.
 */
.main_popup_video {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	aspect-ratio: 600 / 338;
	object-fit: cover;
	background: #000;
}

/*
 * 팝업 하단 버튼
 *
 * 영상 컨트롤러를 가리지 않도록
 * 영상 영역 밖에 배치합니다.
 */
.main_popup_buttons {
	display: flex;
	position: relative;
	width: 100%;
	height: 48px;
	margin: 0;
	padding: 0;
	border-top: 1px solid #ddd;
	background: #fff;
	box-sizing: border-box;
}

.main_popup_buttons button {
	display: block;
	flex: 1;
	height: 47px;
	margin: 0;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	color: #333;
	background: #fff;
	font-size: 14px;
	line-height: 47px;
	text-align: center;
	cursor: pointer;
	box-sizing: border-box;
}

.main_popup_buttons button + button {
	border-left: 1px solid #ddd;
}

.main_popup_buttons button:hover {
	background: #f5f5f5;
}

/*
 * 모바일
 */
@media (max-width: 767px) {
	.main_popup {
		top: 50%;
		left: 50%;
		width: calc(100% - 30px);
		max-width: 600px;
		transform: translate(-50%, -50%);
	}

	.main_popup_video {
		width: 100%;
		height: auto;
		aspect-ratio: 600 / 338;
	}

	.main_popup_buttons {
		height: 46px;
	}

	.main_popup_buttons button {
		height: 45px;
		font-size: 13px;
		line-height: 45px;
	}
}