/* =========================
   VELVETEEN CLIENT BUILDER
   FINAL CSS - DARK MODE
========================= */
.vcc-budget-range-wrap{
	grid-column:1 / -1;
	display:flex;
	flex-direction:column;
	gap:14px;
}

.vcc-budget-range-label{
	font-size:14px;
	font-weight:600;
	color:#cbd5e1;
}

.vcc-budget-range-values{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
	font-size:14px;
	color:#94a3b8;
}

#vcc-budget-slider{
	margin:6px 4px 0;
}

#vcc-budget-slider .noUi-target{
	border:none;
	border-radius:999px;
	background:#1e293b;
	box-shadow:none;
	height:8px;
}

#vcc-budget-slider .noUi-connect{
	background:#d8b75f;
}

#vcc-budget-slider .noUi-handle{
	width:20px;
	height:20px;
	right:-10px;
	top:-6px;
	border-radius:50%;
	border:none;
	background:#d8b75f;
	box-shadow:none;
	cursor:pointer;
}

#vcc-budget-slider .noUi-handle:before,
#vcc-budget-slider .noUi-handle:after{
	display:none;
}

.vcc-summary-item{
	margin-bottom:14px;
}

.vcc-activities-panel{
	display:none;
}

.vcc-activities-panel.is-active{
	display:block;
}

.vcc-summary-item:last-child{
	margin-bottom:0;
}

.vcc-summary-item-title{
	font-family:"Cormorant Garamond", serif;
	font-size:20px;
	line-height:1.2;
	color:#f8fafc;
}

.vcc-summary-item-zone{
	font-family:"DM Sans", sans-serif;
	font-size:12px;
	line-height:1.3;
	letter-spacing:2px;
	text-transform:uppercase;
	color:#d8b75f;
	margin-top:4px;
}

.vcc-builder{
	font-family:"Cormorant Garamond", serif;
	color:#e2e8f0;
	width:100%;
	max-width:none;
	border-radius:24px;
	margin:20px auto;
	box-sizing:border-box;
	border-radius:24px;
	overflow:hidden;
	background:#020617;
}

/* HERO */
.vcc-hero{
	background:#0f172a;
	border-radius:0;
	text-align:center;
	color:#ffffff;
	width:100%;
	box-sizing:border-box;
	position:relative;
}

.vcc-top-accent-bar{
	height:17px;
	background:linear-gradient(
	90deg,
	#dcd6c2 2%,
	#f5e5bb 14%,
	#f6e09b 26%,
	#dede95 38%,
	#aad9b0 50%,
	#87d0c4 62%,
	#b4a59f 74%,
	#ca7274 86%,
	#8e4342 98%
);
	border-radius:0;
	margin-bottom:20px;
}

.vcc-title{
	font-size:62px;
	line-height:0.98;
	margin:0 0 10px;
	font-weight:500;
	letter-spacing:-0.4px;
	color:#ffffff;
}

.vcc-subtitle{
	margin:0 0 28px;
	font-size:18px;
	line-height:1.35;
	opacity:0.92;
	color:#cbd5e1;
	font-family:"Cormorant Garamond", serif;
}

/* ZONE TABS */
.vcc-zone-tabs{
	display:flex;
	justify-content:center;
	gap:12px;
	flex-wrap:wrap;
	padding-bottom:20px;
}

.vcc-zone-tab{
	background:#1e293b;
	color:#e2e8f0;
	padding:14px 24px;
	border-radius:999px;
	border:1px solid #334155;
	cursor:pointer;
	font-size:14px;
	line-height:1;
	letter-spacing:2.4px;
	text-transform:uppercase;
	font-family:"DM Sans", sans-serif;
	font-weight:500;
	transition:all .2s ease;
}

.vcc-zone-tab.is-active{
	background:#e3cb7d;
	color:#162551;
}

/* STEP CARDS */
.vcc-step-card{
	background:#0f172a;
	padding:26px 32px 34px;
	margin:0 0 24px;
	box-shadow:none;
	position:relative;
	width:100%;
	box-sizing:border-box;
	border:1px solid #1e293b;
	border-radius:0;
}

.vcc-step-card .vcc-top-accent-bar{
	margin:-26px -32px 24px;
	height:7px;
}

.vcc-step-label{
	font-family:"DM Sans", sans-serif;
	font-size:18px;
	letter-spacing:6px;
	text-transform:uppercase;
	color:#cbd5e1;
	margin-bottom:8px;
}

.vcc-step-copy{
	font-family:"DM Sans", sans-serif;
	font-size:17px;
	line-height:1.4;
	color:#94a3b8;
	margin:0 0 20px;
}

.vcc-section-title{
	font-size:62px;
	line-height:0.95;
	margin:10px 0 18px;
	color:#f8fafc;
	font-weight:500;
	letter-spacing:-0.5px;
}

/* HOTEL SHELL */
.vcc-hotels-shell{
	position:relative;
	border:1px solid #334155;
	border-radius:24px;
	padding:26px 22px 24px;
	background:#0b1220;
	overflow:visible;
}

.vcc-hotels-layout{
	display:grid;
	grid-template-columns:minmax(0,1.08fr) minmax(380px,0.92fr);
	gap:28px;
	align-items:start;
}

.vcc-hotels-list{
	position:relative;
	z-index:1;
	padding-right:8px;
}

.vcc-zone-panel{
	display:none;
}

.vcc-zone-panel.is-active{
	display:block;
}

.vcc-zone-title{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	margin:2px 0 18px;
	font-family:"DM Sans", sans-serif;
	font-size:15px;
	letter-spacing:4px;
	text-transform:uppercase;
	color:#d8b75f;
	font-weight:700;
}

.vcc-pick-multiple{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:9px 18px;
	border-radius:999px;
	background:#d6b45d;
	color:#111827;
	font-size:12px;
	line-height:1;
	letter-spacing:3px;
	text-transform:uppercase;
	font-family:"DM Sans", sans-serif;
	font-weight:600;
	white-space:nowrap;
}

.vcc-hotel-row{
	display:flex;
	align-items:center;
	gap:14px;
	margin:0;
	padding:10px 0;
	cursor:pointer;
}

.vcc-hotel-heart{
	flex:0 0 24px;
	width:24px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:21px;
	line-height:1;
	color:transparent;
	opacity:0;
	transition:all .2s ease;
	transform:translateY(-1px);
}

.vcc-hotel-row.is-favorited .vcc-hotel-heart{
	color:#d8b75f;
	opacity:1;
}

.vcc-hotel-name{
	flex:0 1 auto;
	font-family:"DM Sans", sans-serif;
	font-size:26px;
	line-height:1.15;
	letter-spacing:0.2px;
	font-weight:400;
	color:#64748b;
	transition:all .2s ease;
	white-space:nowrap;
}

.vcc-hotel-row.is-active .vcc-hotel-name,
.vcc-hotel-row.is-favorited .vcc-hotel-name{
	color:#f8fafc;
}

.vcc-hotel-line{
	flex:1 1 auto;
	height:1.5px;
	background:#334155;
	margin-left:10px;
}

.vcc-hotel-preview{
	position:relative;
	z-index:2;
	margin:-6px -8px -58px 0;
	display:flex;
	align-items:flex-start;
	justify-content:flex-end;
}

.vcc-preview-img{
	width:60%;
	max-width:300px;
	height:200px;
	object-fit:cover;
	object-position:center;
	border-radius:34px;
	display:block;
	box-shadow:none;
}

.vcc-preview-heart{
	position:absolute;
	top:16px;
	right:16px;
	width:54px;
	height:54px;
	border-radius:18px;
	background:rgba(15,23,42,0.68);
	backdrop-filter:blur(6px);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:24px;
	color:#ffffff;
	box-shadow:0 6px 18px rgba(0,0,0,0.35);
	z-index:3;
	cursor:pointer;
	transition:all .25s ease;
}

/* hover feedback */
.vcc-preview-heart:hover{
	transform:scale(1.08);
	background:rgba(30,41,59,0.85);
}

/* selected state */
.vcc-preview-heart.is-favorited{
	background:#f0d36f;
	color:#1d2954;
	transform:scale(1.05);
}

/* FEATURED ACTIVITIES */
.vcc-featured-activities{
	margin:78px 0 34px;
	padding:18px 18px 26px;
	border:1.5px dashed #334155;
	border-radius:24px;
	background:#020617;
}

.vcc-featured-activities h3{
	margin:0 0 18px;
	font-size:26px;
	line-height:1.1;
	font-weight:500;
	color:#f8fafc;
}

.vcc-activities-grid{
	display:flex;
	flex-wrap:wrap;
	gap:14px;
}

.vcc-activity-card{
	position:relative;
	min-width:158px;
	max-width:190px;
	padding:20px 16px 28px;
	border-radius:34px 0 0 0;
	background:linear-gradient(135deg,#1e293b 0%, #0f172a 100%);
	border:1px solid #334155;
	cursor:pointer;
	box-sizing:border-box;
	transition:all .2s ease;
}

.vcc-activity-card.is-active{
	background:linear-gradient(135deg,#c8a44b 0%, #b98a2f 100%);
	border-color:#9d7427;
}

.vcc-activity-card.is-active .vcc-activity-title{
	color:#ffffff;
}

.vcc-activity-title{
	font-family:"Cormorant Garamond", serif;
	font-size:18px;
	line-height:1.05;
	color:#e2e8f0;
	text-align:center;
	min-height:58px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.vcc-activity-add{
	position:absolute;
	bottom:-14px;
	left:50%;
	transform:translateX(-50%);
	background:#bb3c42;
	color:#ffffff;
	width:28px;
	height:28px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	font-size:22px;
	line-height:1;
	font-family:"DM Sans", sans-serif;
	transition:all .2s ease;
}

.vcc-activity-card.is-active .vcc-activity-add{
	background:#1d2954;
}

/* SUMMARY */
.vcc-selection-summary{
	display:grid;
	grid-template-columns:1fr 1fr 220px;
	gap:30px;
	margin:18px 0 36px;
	align-items:center;
}

.vcc-summary-col{
	padding:10px 0;
}

.vcc-summary-col h4{
	margin:0 0 16px;
	font-family:"DM Sans", sans-serif;
	font-size:18px;
	line-height:1;
	letter-spacing:5px;
	text-transform:uppercase;
	color:#cbd5e1;
	font-weight:600;
}

.vcc-summary-hotels,
.vcc-summary-activities{
	font-family:"Cormorant Garamond", serif;
	font-size:18px;
	line-height:1.45;
	color:#e2e8f0;
	min-height:60px;
}

.vcc-summary-logo{
	display:flex;
	align-items:center;
	justify-content:center;
}

.vcc-summary-logo img{
	max-width:150px;
	width:100%;
	height:auto;
	display:block;
}

.vcc-itinerary-grid{
	display:flex;
	flex-wrap:wrap;
	gap:18px;
}

.vcc-itinerary-card{
	width:240px;
	border-radius:22px;
	overflow:hidden;
	cursor:pointer;
	position:relative;
	background:#0f172a;
	transition:all .22s ease;
	box-shadow:0 6px 18px rgba(0,0,0,0.35);
}

.vcc-itinerary-card img{
	width:100%;
	height:auto;
	display:block;
	border-radius:22px;
}

.vcc-itinerary-card:hover img{
	transform:scale(1.04);
}

.vcc-itinerary-card::after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(to top, rgba(0,0,0,0.65), rgba(0,0,0,0.15));
}

.vcc-itinerary-label{
	position:absolute;
	left:0;
	right:0;
	bottom:20px;
	text-align:center;
	color:#ffffff;
	font-size:30px;
	font-family:"Cormorant Garamond", serif;
	letter-spacing:1px;
	z-index:2;
	pointer-events:none;
}

/* PICK BADGE */
.vcc-itinerary-pick{
	position:absolute;
	top:14px;
	left:50%;
	transform:translateX(-50%);
	z-index:3;
	display:flex;
	align-items:center;
	gap:6px;
	padding:6px 14px;
	background:rgba(15,23,42,0.92);
	border-radius:999px;
	font-family:"DM Sans", sans-serif;
	font-size:12px;
	letter-spacing:2px;
	text-transform:uppercase;
	color:#e2e8f0;
	box-shadow:0 4px 10px rgba(0,0,0,0.25);
	transition:all .2s ease;
}

/* circle */
.vcc-itinerary-dot{
	width:14px;
	height:14px;
	border-radius:50%;
	border:2px solid #64748b;
	background:#ffffff;
	display:inline-block;
	position:relative;
	transition:all .2s ease;
}

/* inner filled dot when active */
.vcc-itinerary-card.is-active .vcc-itinerary-dot{
	border-color:#d8b75f;
}

.vcc-itinerary-card.is-active .vcc-itinerary-dot::after{
	content:"";
	position:absolute;
	top:2px;
	left:2px;
	width:6px;
	height:6px;
	background:#d8b75f;
	border-radius:50%;
}

/* highlight active card */
.vcc-itinerary-card.is-active{
	transform:translateY(-4px);
	box-shadow:0 14px 30px rgba(0,0,0,0.28);
}

/* FORM */
.vcc-inquiry-form{
	margin-top:12px;
}

.vcc-form-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:14px;
	margin-bottom:14px;
}

.vcc-form-grid input,
.vcc-inquiry-form textarea{
	width:100%;
	padding:14px 16px;
	border-radius:10px;
	border:1px solid #334155;
	background:#0f172a;
	font-family:"DM Sans", sans-serif;
	font-size:14px;
	color:#e2e8f0;
	box-sizing:border-box;
}

.vcc-form-grid input::placeholder,
.vcc-inquiry-form textarea::placeholder{
	color:#94a3b8;
}

.vcc-inquiry-form textarea{
	height:140px;
	resize:vertical;
	margin-bottom:16px;
}

.vcc-checkbox{
	display:flex;
	align-items:center;
	gap:12px;
	font-family:"DM Sans", sans-serif;
	font-size:15px;
	line-height:1.4;
	color:#cbd5e1;
	margin:10px 0 18px;
	padding:18px 20px;
	border-radius:18px;
	background:#0f172a;
	border:1px solid #334155;
}

.vcc-checkbox input{
	width:16px;
	height:16px;
}

.vcc-submit-btn{
	background:#b73b3b;
	color:#ffffff;
	padding:16px 34px;
	border:none;
	border-radius:999px;
	font-size:16px;
	line-height:1;
	cursor:pointer;
	font-family:"Cormorant Garamond", serif;
	float:right;
}

/* RESPONSIVE */
@media (max-width: 1200px){
	.vcc-title{
		font-size:52px;
	}

	.vcc-section-title{
		font-size:54px;
	}

	.vcc-hotels-layout{
		grid-template-columns:1fr;
	}

	.vcc-hotel-preview{
		margin:6px 0 0;
		justify-content:flex-start;
	}

	.vcc-preview-img{
		max-width:none;
		height:420px;
	}

	.vcc-selection-summary{
		grid-template-columns:1fr;
	}

	.vcc-summary-logo{
		justify-content:flex-start;
		display: none;
	}
}

@media (max-width: 900px){
	.vcc-builder{
		padding-bottom:28px;
	}

	.vcc-hero{
		padding:28px 18px 24px;
	}

	.vcc-title{
		font-size:40px;
	}

	.vcc-subtitle{
		font-size:16px;
	}

	.vcc-step-card{
		padding:22px 18px 28px;
	}

	.vcc-step-card .vcc-top-accent-bar{
		margin:-22px -18px 20px;
	}

	.vcc-section-title{
		font-size:44px;
	}

	.vcc-hotels-shell{
		padding:18px 16px 18px;
		border-radius:18px;
	}

	.vcc-zone-title{
		flex-direction:column;
		align-items:flex-start;
		gap:12px;
	}

	.vcc-hotel-name{
		font-size:20px;
		white-space:normal;
	}

	.vcc-preview-img{
		height:300px;
		border-radius:22px;
	}

	.vcc-featured-activities{
		margin-top:28px;
	}

	.vcc-activities-grid{
		gap:18px;
	}

	.vcc-activity-card{
		min-width:140px;
		max-width:unset;
		width:calc(50% - 9px);
	}

	.vcc-itinerary-card{
		width:calc(50% - 8px);
	}

	.vcc-itinerary-card img{
		height:210px;
	}

	.vcc-form-grid{
		grid-template-columns:1fr;
	}
}

@media (max-width: 640px){
	.vcc-zone-tabs{
		justify-content:flex-start;
	}

	.vcc-zone-tab{
		font-size:12px;
		padding:12px 16px;
	}

	.vcc-title{
		font-size:34px;
	}

	.vcc-section-title{
		font-size:36px;
	}

	.vcc-featured-activities h3,
	.vcc-builder h3{
		font-size:28px;
	}

	.vcc-activity-card,
	.vcc-itinerary-card{
		width:100%;
	}

	.vcc-itinerary-card img{
		height:240px;
	}
}

/* =========================
   CLIENT BUILDER MOBILE PATCH
   ADD THIS AT THE END
========================= */

@media (max-width: 1024px){
	.vcc-builder{
		margin:14px auto;
		border-radius:20px;
	}

	.vcc-title{
		font-size:46px;
		line-height:1.02;
	}

	.vcc-section-title{
		font-size:48px;
		line-height:1;
	}

	.vcc-hotels-layout{
		grid-template-columns:1fr;
		gap:20px;
	}

	.vcc-hotel-preview{
		margin:8px 0 0;
		justify-content:flex-start;
	}

	.vcc-preview-img{
		width:100%;
		max-width:none;
		height:360px;
	}

	.vcc-selection-summary{
		grid-template-columns:1fr;
		gap:18px;
		align-items:start;
	}

	.vcc-summary-logo{
		justify-content:flex-start;
		display: none;
	}
}

@media (max-width: 900px){
	.vcc-builder{
		border-radius:18px;
		overflow:hidden;
	}

	.vcc-hero{
		padding:26px 18px 22px;
	}

	.vcc-top-accent-bar{
		height:12px;
		margin-bottom:18px;
	}

	.vcc-title{
		font-size:38px;
		line-height:1.05;
		margin-bottom:10px;
	}

	.vcc-subtitle{
		font-size:16px;
		line-height:1.4;
		margin-bottom:22px;
		padding:0 6px;
	}

	.vcc-zone-tabs{
		justify-content:flex-start;
		gap:10px;
		padding-bottom:12px;
		overflow-x:auto;
		flex-wrap:nowrap;
		scrollbar-width:none;
		-webkit-overflow-scrolling:touch;
	}

	.vcc-zone-tabs::-webkit-scrollbar{
		display:none;
	}

	.vcc-zone-tab{
		flex:0 0 auto;
		padding:12px 18px;
		font-size:12px;
		letter-spacing:1.8px;
	}

	.vcc-step-card{
		padding:22px 18px 24px;
		margin:0 0 18px;
	}

	.vcc-step-card .vcc-top-accent-bar{
		margin:-22px -18px 18px;
		height:6px;
	}

	.vcc-step-label{
		font-size:14px;
		letter-spacing:4px;
	}

	.vcc-step-copy{
		font-size:15px;
		line-height:1.5;
		margin-bottom:16px;
	}

	.vcc-section-title{
		font-size:40px;
		line-height:1.02;
		margin:6px 0 16px;
	}

	.vcc-hotels-shell{
		padding:18px 14px 16px;
		border-radius:18px;
	}

	.vcc-zone-title{
		flex-direction:column;
		align-items:flex-start;
		gap:10px;
		font-size:13px;
		letter-spacing:3px;
		margin:0 0 14px;
	}

	.vcc-pick-multiple{
		padding:8px 14px;
		font-size:11px;
		letter-spacing:2px;
	}

	.vcc-hotels-list{
		padding-right:0;
	}

	.vcc-hotel-row{
		gap:10px;
		padding:10px 0;
		align-items:center;
	}

	.vcc-hotel-heart{
		flex:0 0 18px;
		width:18px;
		font-size:16px;
	}

	.vcc-hotel-name{
		font-size:20px;
		line-height:1.2;
		white-space:normal;
		word-break:break-word;
	}

	.vcc-hotel-line{
		margin-left:0;
		min-width:20px;
	}

	.vcc-preview-img{
		height:280px;
		border-radius:22px;
	}

	.vcc-preview-heart{
		width:46px;
		height:46px;
		border-radius:14px;
		top:12px;
		right:12px;
		font-size:20px;
	}

	.vcc-featured-activities{
		margin:26px 0 24px;
		padding:16px 14px 22px;
		border-radius:18px;
	}

	.vcc-featured-activities h3{
		font-size:24px;
		margin-bottom:14px;
	}

	.vcc-activities-grid{
		gap:16px;
	}

	.vcc-activity-card{
		width:calc(50% - 8px);
		min-width:0;
		max-width:none;
		padding:18px 14px 26px;
		border-radius:26px 0 0 0;
	}

	.vcc-activity-title{
		font-size:17px;
		min-height:52px;
	}

	.vcc-activity-add{
		width:26px;
		height:26px;
		font-size:20px;
		bottom:-13px;
	}

	.vcc-selection-summary{
		margin:12px 0 28px;
		gap:12px;
	}

	.vcc-summary-col{
		padding:0;
	}

	.vcc-summary-col h4{
		font-size:14px;
		letter-spacing:3px;
		margin-bottom:10px;
	}

	.vcc-summary-hotels,
	.vcc-summary-activities{
		font-size:17px;
		line-height:1.4;
		min-height:0;
	}

	.vcc-summary-item-title{
		font-size:18px;
	}

	.vcc-summary-item-zone{
		font-size:11px;
		letter-spacing:1.5px;
	}

	.vcc-summary-logo img{
		max-width:120px;
		display: none;
	}

	.vcc-itinerary-grid{
		gap:14px;
	}

	.vcc-itinerary-card{
		width:calc(50% - 7px);
		border-radius:18px;
	}

	.vcc-itinerary-card img{
		height:210px;
		object-fit:cover;
		border-radius:18px;
	}

	.vcc-itinerary-label{
		font-size:24px;
		bottom:16px;
	}

	.vcc-itinerary-pick{
		top:12px;
		padding:6px 12px;
		font-size:11px;
		letter-spacing:1.5px;
	}

	.vcc-form-grid{
		grid-template-columns:1fr;
		gap:12px;
		margin-bottom:12px;
	}

	.vcc-form-grid input,
	.vcc-inquiry-form textarea{
		font-size:14px;
		padding:14px 14px;
	}

	.vcc-inquiry-form textarea{
		height:120px;
	}

	.vcc-checkbox{
		padding:14px 14px;
		font-size:14px;
		border-radius:14px;
		gap:10px;
	}

	.vcc-submit-btn{
		float:none;
		width:100%;
		padding:15px 24px;
		font-size:18px;
		text-align:center;
	}

	.vcc-budget-range-values{
		font-size:13px;
		gap:10px;
	}
}

@media (max-width: 640px){
	.vcc-builder{
		margin:10px auto;
		border-radius:16px;
	}

	.vcc-hero{
		padding:22px 14px 18px;
	}

	.vcc-top-accent-bar{
		height:10px;
		margin-bottom:16px;
	}

	.vcc-title{
		font-size:32px;
		line-height:1.06;
		letter-spacing:-0.2px;
	}

	.vcc-subtitle{
		font-size:15px;
		line-height:1.45;
		margin-bottom:18px;
		padding:0;
	}

	.vcc-zone-tabs{
		gap:8px;
		padding-bottom:8px;
	}

	.vcc-zone-tab{
		font-size:11px;
		padding:11px 14px;
		letter-spacing:1.4px;
	}

	.vcc-step-card{
		padding:18px 14px 22px;
	}

	.vcc-step-card .vcc-top-accent-bar{
		margin:-18px -14px 16px;
	}

	.vcc-step-label{
		font-size:12px;
		letter-spacing:3px;
	}

	.vcc-step-copy{
		font-size:14px;
	}

	.vcc-section-title{
		font-size:32px;
		line-height:1.05;
	}

	.vcc-hotels-shell{
		padding:14px 12px 14px;
		border-radius:16px;
	}

	.vcc-zone-title{
		font-size:12px;
		letter-spacing:2.5px;
	}

	.vcc-pick-multiple{
		font-size:10px;
		letter-spacing:1.5px;
		padding:7px 12px;
	}

	.vcc-hotel-row{
		gap:8px;
		padding:9px 0;
	}

	.vcc-hotel-name{
		font-size:17px;
		line-height:1.2;
	}

	.vcc-hotel-line{
		min-width:14px;
	}

	.vcc-preview-img{
		height:220px;
		border-radius:18px;
	}

	.vcc-preview-heart{
		width:42px;
		height:42px;
		border-radius:12px;
		font-size:18px;
		top:10px;
		right:10px;
	}

	.vcc-featured-activities{
		margin:22px 0 20px;
		padding:14px 12px 20px;
		border-radius:16px;
	}

	.vcc-featured-activities h3,
	.vcc-builder h3{
		font-size:22px;
		line-height:1.1;
	}

	.vcc-activities-grid{
		gap:14px;
	}

	.vcc-activity-card{
		width:100%;
		padding:18px 14px 24px;
		border-radius:22px 0 0 0;
	}

	.vcc-activity-title{
		font-size:16px;
		min-height:auto;
		padding:4px 0;
	}

	.vcc-selection-summary{
		margin:10px 0 22px;
	}

	.vcc-summary-col h4{
		font-size:12px;
		letter-spacing:2.5px;
	}

	.vcc-summary-hotels,
	.vcc-summary-activities{
		font-size:16px;
	}

	.vcc-summary-item{
		margin-bottom:10px;
	}

	.vcc-summary-item-title{
		font-size:17px;
	}

	.vcc-summary-item-zone{
		font-size:10px;
		letter-spacing:1.3px;
	}

	.vcc-itinerary-grid{
		gap:12px;
	}

	.vcc-itinerary-card{
		width:100%;
		border-radius:16px;
	}

	.vcc-itinerary-card img{
		height:220px;
		border-radius:16px;
	}

	.vcc-itinerary-label{
		font-size:24px;
		bottom:18px;
		padding:0 10px;
	}

	.vcc-itinerary-pick{
		font-size:10px;
		padding:6px 10px;
	}

	.vcc-budget-range-wrap{
		gap:10px;
	}

	.vcc-budget-range-label{
		font-size:13px;
	}

	.vcc-budget-range-values{
		font-size:12px;
		flex-wrap:wrap;
		gap:8px;
	}

	.vcc-form-grid input,
	.vcc-inquiry-form textarea{
		padding:13px 12px;
		font-size:13px;
		border-radius:9px;
	}

	.vcc-inquiry-form textarea{
		height:110px;
		margin-bottom:14px;
	}

	.vcc-checkbox{
		font-size:13px;
		line-height:1.45;
		padding:12px 12px;
		border-radius:12px;
		align-items:flex-start;
	}

	.vcc-checkbox input{
		margin-top:2px;
	}

	.vcc-submit-btn{
		width:100%;
		padding:14px 20px;
		font-size:17px;
	}
}

@media (max-width: 420px){
	.vcc-title{
		font-size:28px;
	}

	.vcc-subtitle{
		font-size:14px;
	}

	.vcc-section-title{
		font-size:28px;
	}

	.vcc-zone-tab{
		font-size:10px;
		padding:10px 12px;
		letter-spacing:1.2px;
	}

	.vcc-hotel-name{
		font-size:15px;
	}

	.vcc-preview-img{
		height:190px;
	}

	.vcc-featured-activities h3,
	.vcc-builder h3{
		font-size:20px;
	}

	.vcc-activity-title{
		font-size:15px;
	}

	.vcc-summary-hotels,
	.vcc-summary-activities{
		font-size:15px;
	}

	.vcc-itinerary-card img{
		height:200px;
	}

	.vcc-itinerary-label{
		font-size:21px;
	}

	.vcc-submit-btn{
		font-size:16px;
	}
}

@media (max-width: 768px){
	.vcc-summary-logo{
		display:none;
		justify-content:center;
		align-items:center;
		text-align:center;
		margin:0 auto;
		width:100%;
	}

	.vcc-summary-logo img{
		margin:0 auto;
		max-width:120px;
	}
}