/* Camillas Balloons visual bridge for Celebration Booking Studio 4.4.2+. */
.venueos-body.cbb-venueos {
	background-color: #fff6f0;
	background-image:
		linear-gradient(45deg,#f4bfd1 25%,transparent 25%,transparent 75%,#f4bfd1 75%,#f4bfd1),
		linear-gradient(45deg,#f4bfd1 25%,#fff6f0 25%,#fff6f0 75%,#f4bfd1 75%,#f4bfd1);
	background-position: 0 0, 64px 64px;
	background-repeat: repeat;
	background-size: 128px 128px;
	color: #111111;
}

.cbb-venueos .vo-public,
.cbb-venueos .vo-centered {
	background: transparent;
}

.cbb-venueos .vo-public-head,
.cbb-venueos .vo-customer-head,
.cbb-venueos .vo-dev-head {
	backdrop-filter: blur(14px);
	background: rgba(255,246,240,.92);
	border-bottom: 1px solid rgba(244,191,209,.35);
	height: auto;
	min-height: 92px;
	padding: 12px max(22px,5vw);
	position: relative;
	z-index: 20;
}

.cbb-venueos .cbb-venueos-logo {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(244,191,209,.28);
	border-radius: 14px;
	display: flex;
	height: 60px;
	justify-content: center;
	overflow: hidden;
	padding: 5px 9px;
	width: 150px;
}

.cbb-venueos .cbb-venueos-logo img {
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.cbb-venueos .vo-public-head > div:first-child,
.cbb-venueos .vo-customer-head > div:first-child {
	gap: 14px;
}

.cbb-venueos .vo-public-head h1,
.cbb-venueos .vo-customer-head h1 {
	color: #111111;
	font-family: Georgia, serif;
	font-size: 18px;
}

.cbb-venueos .vo-eyebrow {
	color: #d86e98;
}

.cbb-venueos .cbb-venueos-head-actions {
	align-items: center;
	display: flex;
	gap: 9px;
}

.cbb-venueos .cbb-venueos-home {
	align-items: center;
	background: transparent;
	border: 1px solid rgba(17,17,17,.14);
	border-radius: 999px;
	color: #111111;
	display: inline-flex;
	font-size: 11px;
	font-weight: 800;
	justify-content: center;
	min-height: 42px;
	padding: 0 16px;
}

.cbb-venueos .vo-public-head .vo-btn,
.cbb-venueos .vo-customer-head .vo-btn,
.cbb-venueos .vo-dev-head .vo-btn {
	border-radius: 999px !important;
	min-height: 42px;
}

.cbb-venueos .vo-public-main {
	max-width: 1320px;
	padding-bottom: 95px;
	padding-top: 58px;
}

.cbb-venueos .vo-hero {
	margin-bottom: 34px;
	max-width: 820px;
}

.cbb-venueos .vo-celebration-hero {
	max-width: none;
}

.cbb-venueos .vo-hero h2 {
	color: #111111;
	font-family: Georgia, serif;
	font-size: clamp(40px,6vw,72px);
	font-weight: 700;
	letter-spacing: -.045em;
	line-height: .96;
	margin-top: 8px;
}

.cbb-venueos .vo-hero h2::first-line {
	color: #d86e98;
}

.cbb-venueos .vo-hero p {
	color: #5c5558;
	font-size: 15px;
	line-height: 1.7;
	max-width: 690px;
}

.cbb-venueos .vo-book-grid {
	gap: 24px;
	grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr);
}

.cbb-venueos .vo-card,
.cbb-venueos .vo-login-card {
	background: rgba(255,255,255,.92);
	border: 1px solid rgba(244,191,209,.30);
	border-radius: 26px;
	box-shadow: 0 22px 60px rgba(17,17,17,.07);
	padding: 26px;
}

.cbb-venueos .vo-card-head h2,
.cbb-venueos .vo-card-head h3,
.cbb-venueos .vo-login-card h1 {
	color: #111111;
	font-family: Georgia, serif;
}

.cbb-venueos .vo-calendar-nav a {
	border-color: rgba(244,191,209,.38) !important;
	color: #111111;
}

.cbb-venueos .vo-calendar .vo-day {
	background: #fffdf9 !important;
	border-radius: 16px !important;
	min-height: 92px !important;
}

.cbb-venueos .vo-calendar .vo-day span {
	color: #111111;
	font-size: 13px;
}

.cbb-venueos .vo-form label {
	color: #5c5558;
	font-size: 12px;
}

.cbb-venueos .vo-form input,
.cbb-venueos .vo-form select,
.cbb-venueos .vo-form textarea {
	border-color: rgba(17,17,17,.14) !important;
	border-radius: 13px !important;
	font-size: 13px;
	min-height: 45px;
}

.cbb-venueos .vo-form textarea {
	min-height: 122px;
}

.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger) {
	background: #f4bfd1 !important;
	border-color: #f4bfd1 !important;
	border-radius: 999px !important;
	font-size: 12px !important;
	min-height: 46px;
}

.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover {
	background: #d86e98 !important;
	border-color: #d86e98 !important;
}

.cbb-venueos .vo-selected-date,
.cbb-venueos .vo-public-date-options {
	background: #fff6f0;
	border-color: rgba(244,191,209,.30);
}

.cbb-venueos .cbb-venueos-app-footer {
	align-items: center;
	background: #111111;
	color: rgba(255,255,255,.78);
	display: flex;
	font-size: 11px;
	gap: 18px;
	justify-content: center;
	min-height: 74px;
	padding: 18px 24px;
}

.cbb-venueos .cbb-venueos-app-footer a {
	color: #d86e98;
	font-weight: 800;
}

.cbb-venueos .vo-sidebar {
	background: #111111;
}

.cbb-venueos .vo-sidebar nav a.active {
	box-shadow: inset 3px 0 #f4bfd1;
}

.cbb-venueos .vo-topbar,
.cbb-venueos .vo-shell {
	background-color: rgba(255,246,240,.92);
}

.cbb-venueos .vo-content {
	background: transparent;
}

@media (max-width: 900px) {
	.cbb-venueos .vo-book-grid { grid-template-columns: 1fr; }
	.cbb-venueos .vo-public-head { align-items: flex-start; gap: 12px; }
	.cbb-venueos .cbb-venueos-head-actions { align-items: stretch; flex-direction: column; }
	.cbb-venueos .cbb-venueos-head-actions a { min-width: 145px; }
}

@media (max-width: 620px) {
	.cbb-venueos .vo-public-head,
	.cbb-venueos .vo-customer-head { align-items: stretch; flex-direction: column; padding: 12px 16px; }
	.cbb-venueos .vo-public-head > div:first-child { justify-content: space-between; }
	.cbb-venueos .cbb-venueos-logo { height: 52px; width: 128px; }
	.cbb-venueos .cbb-venueos-head-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
	.cbb-venueos .cbb-venueos-head-actions a { min-width: 0; text-align: center; }
	.cbb-venueos .vo-public-main { padding: 38px 12px 65px; }
	.cbb-venueos .vo-card,
	.cbb-venueos .vo-login-card { border-radius: 20px; padding: 18px 14px; }
	.cbb-venueos .vo-hero h2 { font-size: 42px; }
	.cbb-venueos .vo-calendar,
	.cbb-venueos .vo-weekdays { gap: 3px; }
	.cbb-venueos .vo-calendar .vo-day { border-radius: 11px !important; min-height: 72px !important; padding: 5px; }
	.cbb-venueos .vo-calendar .vo-day small { font-size: 7px; }
	.cbb-venueos .vo-form-grid { grid-template-columns: 1fr; }
	.cbb-venueos .cbb-venueos-app-footer { align-items: flex-start; flex-direction: column; gap: 8px; }
}

/* 1.4.2 — full Playful Balloon Burst website shell and booking-system theme. */
.cbb-booking-skip {
	background: #111111;
	border-radius: 0 0 10px 10px;
	color: #fff !important;
	font-size: 12px;
	font-weight: 800;
	left: 18px;
	padding: 11px 16px;
	position: fixed;
	top: -70px;
	z-index: 10010;
}

.cbb-booking-skip:focus { top: 0; }
.cbb-booking-content-anchor { height: 0; outline: 0; position: relative; }

.cbb-booking-site-header {
	background: rgba(255, 246, 240, .96);
	border-bottom: 1px solid rgba(244, 191, 209, .28);
	box-shadow: 0 10px 34px rgba(17, 17, 17, .055);
	position: relative;
	z-index: 1000;
}

.cbb-booking-header-inner {
	align-items: center;
	display: grid;
	gap: 26px;
	grid-template-columns: 250px minmax(0, 1fr) auto;
	margin: 0 auto;
	max-width: 1320px;
	min-height: 118px;
	padding: 12px 28px;
}

.cbb-booking-header-logo {
	align-items: center;
	display: flex;
	height: 88px;
	overflow: hidden;
	width: 225px;
}

.cbb-booking-header-logo img {
	display: block;
	height: 100%;
	object-fit: contain;
	transform: scale(1.08);
	width: 100%;
}

.cbb-booking-site-nav {
	align-items: center;
	display: flex;
	gap: clamp(13px, 1.45vw, 24px);
	justify-content: center;
}

.cbb-booking-site-nav a {
	color: #111111 !important;
	font-family: Georgia, serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .035em;
	position: relative;
	text-decoration: none !important;
	text-transform: uppercase;
	white-space: nowrap;
}

.cbb-booking-site-nav a::after {
	background: #f4bfd1;
	bottom: -7px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .18s ease;
	width: 100%;
}

.cbb-booking-site-nav a:hover::after,
.cbb-booking-site-nav a:focus-visible::after { transform: scaleX(1); }

.cbb-booking-site-nav .cbb-booking-nav-portal {
	color: #d86e98 !important;
}

.cbb-booking-nav-quote { display: none; }

.cbb-booking-header-quote {
	align-items: center;
	background: #f4bfd1;
	border: 2px solid #f4bfd1;
	border-radius: 999px;
	color: #fff !important;
	display: inline-flex;
	font-size: 11px;
	font-weight: 800;
	gap: 9px;
	justify-content: center;
	letter-spacing: .035em;
	min-height: 46px;
	padding: 0 24px;
	text-decoration: none !important;
	text-transform: uppercase;
	white-space: nowrap;
}

.cbb-booking-header-quote:hover,
.cbb-booking-header-quote:focus-visible {
	background: #e59ab8;
	border-color: #e59ab8;
}

.cbb-booking-menu-toggle {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(17, 17, 17, .12);
	border-radius: 13px;
	display: none;
	flex-direction: column;
	gap: 4px;
	height: 44px;
	justify-content: center;
	padding: 0;
	width: 44px;
}

.cbb-booking-menu-toggle > span:not(.screen-reader-text) {
	background: #111111;
	border-radius: 999px;
	display: block;
	height: 2px;
	width: 19px;
}

.cbb-booking-menu-toggle .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

.has-cbb-site-shell .vo-public-head,
.has-cbb-site-shell .vo-customer-head {
	background: rgba(255, 232, 240, .82) !important;
	border-bottom: 1px solid rgba(244, 191, 209, .30) !important;
	box-sizing: border-box;
	min-height: 66px !important;
	padding: 9px max(24px, calc((100vw - 1260px) / 2)) !important;
}

.has-cbb-site-shell .vo-public-head .cbb-venueos-logo,
.has-cbb-site-shell .vo-customer-head .cbb-venueos-logo { display: none !important; }

.has-cbb-site-shell .vo-public-head h1,
.has-cbb-site-shell .vo-customer-head h1 {
	font-family: Georgia, serif !important;
	font-size: 17px !important;
	margin: 0 !important;
}

.has-cbb-site-shell .vo-public-head .vo-eyebrow,
.has-cbb-site-shell .vo-customer-head .vo-eyebrow {
	font-size: 9px !important;
	letter-spacing: .15em;
}

.has-cbb-site-shell .cbb-venueos-head-actions { margin-left: auto; }
.has-cbb-site-shell .cbb-venueos-home { background: rgba(255,255,255,.68); }

.has-cbb-site-shell .vo-public-main,
.has-cbb-site-shell .vo-customer-main {
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	max-width: 1260px;
	padding: 58px 24px 96px;
	width: 100%;
}

.has-cbb-site-shell .vo-centered {
	box-sizing: border-box;
	min-height: 660px;
	padding: 72px 20px 96px;
}

.has-cbb-site-shell .vo-login-card {
	background: rgba(255,255,255,.96) !important;
	border: 1px solid rgba(244,191,209,.35) !important;
	border-radius: 30px !important;
	box-shadow: 0 30px 80px rgba(17,17,17,.10) !important;
	max-width: 560px;
	padding: 38px !important;
}

.has-cbb-site-shell .vo-login-card .cbb-venueos-logo {
	height: 72px;
	margin: 0 auto 18px;
	width: 180px;
}

.has-cbb-site-shell .vo-login-card h1,
.has-cbb-site-shell .vo-customer-hero h1,
.has-cbb-site-shell .vo-card h2,
.has-cbb-site-shell .vo-card h3 {
	color: #111111 !important;
	font-family: Georgia, serif !important;
}

.has-cbb-site-shell .vo-celebration-hero {
	background-color: #fff0f5 !important;
	border-color: rgba(244,191,209,.38) !important;
	box-shadow: 0 28px 70px rgba(17,17,17,.07);
}

.has-cbb-site-shell .vo-celebration-hero h2 {
	color: #d86e98 !important;
	font-family: Arial, sans-serif !important;
	font-weight: 800;
}

.has-cbb-site-shell .vo-card,
.has-cbb-site-shell .vo-request-card,
.has-cbb-site-shell .vo-customer-bookings > article,
.has-cbb-site-shell .vo-customer-cols > div > section {
	background: rgba(255,255,255,.96) !important;
	border-color: rgba(244,191,209,.30) !important;
	box-shadow: 0 22px 58px rgba(17,17,17,.07) !important;
}

.has-cbb-site-shell .vo-form input,
.has-cbb-site-shell .vo-form select,
.has-cbb-site-shell .vo-form textarea {
	background: #fffdf9 !important;
	border: 1px solid rgba(17,17,17,.16) !important;
	border-radius: 14px !important;
	box-shadow: inset 0 1px 2px rgba(17,17,17,.025);
}

.has-cbb-site-shell .vo-form input:focus,
.has-cbb-site-shell .vo-form select:focus,
.has-cbb-site-shell .vo-form textarea:focus {
	border-color: #f4bfd1 !important;
	box-shadow: 0 0 0 3px rgba(244,191,209,.24) !important;
	outline: 0 !important;
}

.has-cbb-site-shell .vo-service-picker label {
	background: #fff !important;
	border-color: rgba(244,191,209,.30) !important;
	border-radius: 16px !important;
}

.has-cbb-site-shell .vo-service-picker label:has(input:checked) {
	background: #ffe8f0 !important;
	border-color: #f4bfd1 !important;
}

.has-cbb-site-shell .vo-calendar .vo-day {
	background: #fff !important;
	border-color: rgba(17,17,17,.11) !important;
	box-shadow: inset 0 3px 0 var(--vo-public-unavailable), 0 8px 18px rgba(17,17,17,.035) !important;
}

.has-cbb-site-shell .vo-calendar .vo-day-kind-available {
	background: #fff0f5 !important;
	box-shadow: inset 0 3px 0 var(--vo-public-available), 0 8px 18px rgba(17,17,17,.035) !important;
}

.has-cbb-site-shell .vo-calendar .vo-day-kind-limited {
	background: #fff7fb !important;
	box-shadow: inset 0 3px 0 var(--vo-public-limited), 0 8px 18px rgba(17,17,17,.035) !important;
}

.has-cbb-site-shell .vo-calendar .vo-day:has(input:checked) {
	background: #ffe8f0 !important;
	border-color: #f4bfd1 !important;
	box-shadow: inset 0 3px 0 #f4bfd1, 0 0 0 3px rgba(244,191,209,.24) !important;
}

.has-cbb-site-shell .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger) {
	background: #f4bfd1 !important;
	border-color: #f4bfd1 !important;
	box-shadow: 0 10px 24px rgba(244,191,209,.35);
}

.has-cbb-site-shell .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover,
.has-cbb-site-shell .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):focus {
	background: #e59ab8 !important;
	border-color: #e59ab8 !important;
}

.has-cbb-site-shell .vo-alert-success { background: #fff0f5 !important; border-color: #f2cade !important; color: #111111 !important; }
.has-cbb-site-shell .vo-alert-error { background: #fff0f5 !important; border-color: #f4bfd1 !important; color: #111111 !important; }
.has-cbb-site-shell .vo-alert-info { background: #fff0f5 !important; border-color: #f2cade !important; color: #5c5558 !important; }

.cbb-booking-site-footer {
	background: #111111;
	color: rgba(255,255,255,.76);
	position: relative;
	z-index: 10;
}

.cbb-booking-footer-inner {
	align-items: start;
	display: grid;
	gap: 42px;
	grid-template-columns: minmax(250px,1.4fr) .65fr .9fr minmax(180px,.8fr);
	margin: 0 auto;
	max-width: 1260px;
	min-height: 310px;
	overflow: hidden;
	padding: 64px 28px 46px;
}

.cbb-booking-footer-brand img {
	background: #fff;
	border-radius: 2px;
	height: 92px;
	margin-bottom: 25px;
	object-fit: contain;
	width: 250px;
}

.cbb-booking-footer-brand p {
	color: rgba(255,255,255,.76) !important;
	font-size: 14px;
	line-height: 1.75;
	max-width: 350px;
}

.cbb-booking-footer-column { display: grid; gap: 11px; align-content: start; }
.cbb-booking-footer-column h2 { color: #d86e98; font-family: Arial, sans-serif; font-size: 18px; margin: 4px 0 10px; }
.cbb-booking-footer-column a,
.cbb-booking-footer-column span { color: rgba(255,255,255,.78) !important; font-size: 12px; text-decoration: none !important; }
.cbb-booking-footer-column a:hover,
.cbb-booking-footer-column a:focus { color: #d86e98 !important; }
.cbb-booking-footer-art { align-self: end; margin: 0 -60px -65px -30px; }
.cbb-booking-footer-art img { display: block; filter: drop-shadow(0 20px 30px rgba(0,0,0,.2)); max-width: none; transform: rotate(-4deg); width: 340px; }

.cbb-booking-footer-bottom {
	align-items: center;
	background: #181818;
	display: flex;
	font-size: 11px;
	justify-content: space-between;
	min-height: 62px;
	padding: 14px max(28px, calc((100vw - 1204px) / 2));
}

.cbb-booking-footer-bottom a { color: #d86e98 !important; font-weight: 800; }

@media (max-width: 1080px) {
	.cbb-booking-header-inner { gap: 14px; grid-template-columns: 205px minmax(0,1fr) auto; padding-left: 18px; padding-right: 18px; }
	.cbb-booking-header-logo { height: 78px; width: 195px; }
	.cbb-booking-site-nav { gap: 12px; }
	.cbb-booking-site-nav a { font-size: 10px; }
	.cbb-booking-header-quote { padding: 0 17px; }
	.cbb-booking-footer-inner { grid-template-columns: 1.2fr .6fr .8fr; }
	.cbb-booking-footer-art { display: none; }
}

@media (max-width: 980px) {
	.cbb-booking-header-inner { grid-template-columns: 1fr auto auto; min-height: 92px; position: relative; }
	.cbb-booking-header-logo { height: 72px; width: 190px; }
	.cbb-booking-menu-toggle { display: flex; grid-column: 2; }
	.cbb-booking-header-quote { grid-column: 3; grid-row: 1; }
	.cbb-booking-site-nav {
		align-items: stretch;
		background: #fff6f0;
		border: 1px solid rgba(244,191,209,.30);
		border-radius: 18px;
		box-shadow: 0 24px 55px rgba(17,17,17,.10);
		display: none;
		grid-column: 1 / -1;
		grid-template-columns: repeat(2,minmax(0,1fr));
		left: 18px;
		padding: 15px;
		position: absolute;
		right: 18px;
		top: calc(100% - 3px);
	}
	.cbb-booking-site-header.is-menu-open .cbb-booking-site-nav { display: grid; }
	.cbb-booking-site-nav a { border-radius: 10px; padding: 11px 12px; }
	.cbb-booking-site-nav a:hover { background: #ffe8f0; }
	.cbb-booking-site-nav a::after { display: none; }
	.has-cbb-site-shell .vo-book-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 720px) {
	.cbb-booking-header-inner { grid-template-columns: 1fr auto; min-height: 82px; padding: 8px 14px; }
	.cbb-booking-header-logo { height: 65px; width: 170px; }
	.cbb-booking-header-quote { display: none; }
	.cbb-booking-menu-toggle { grid-column: 2; }
	.cbb-booking-nav-quote { background: #f4bfd1; color: #fff !important; display: block; }
	.cbb-booking-site-nav { grid-template-columns: 1fr; left: 10px; max-height: calc(100vh - 105px); overflow-y: auto; right: 10px; }
	.has-cbb-site-shell .vo-public-head,
	.has-cbb-site-shell .vo-customer-head { align-items: stretch !important; gap: 9px; padding: 10px 14px !important; }
	.has-cbb-site-shell .cbb-venueos-head-actions { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
	.has-cbb-site-shell .vo-public-main,
	.has-cbb-site-shell .vo-customer-main { padding: 38px 12px 70px; }
	.has-cbb-site-shell .vo-centered { min-height: 560px; padding: 45px 12px 70px; }
	.has-cbb-site-shell .vo-login-card { border-radius: 22px !important; padding: 24px 18px !important; }
	.has-cbb-site-shell .vo-celebration-hero { border-radius: 22px !important; }
	.cbb-booking-footer-inner { gap: 34px; grid-template-columns: 1fr 1fr; min-height: 0; padding: 52px 22px 45px; }
	.cbb-booking-footer-brand { grid-column: 1 / -1; }
	.cbb-booking-footer-brand img { height: 82px; width: 220px; }
	.cbb-booking-footer-bottom { align-items: flex-start; flex-direction: column; gap: 8px; padding: 18px 22px; }
}

@media (max-width: 440px) {
	.cbb-booking-header-logo { width: 155px; }
	.cbb-booking-footer-inner { grid-template-columns: 1fr; }
	.cbb-booking-footer-brand { grid-column: auto; }
	.has-cbb-site-shell .cbb-venueos-head-actions { grid-template-columns: 1fr; }
}

/* 1.4.3 — turn the booking intro into a Camillas-style portfolio sample. */
.has-cbb-site-shell .vo-celebration-hero.has-sample {
	background: #fff6f0 !important;
	border: 1px solid rgba(244,191,209,.38) !important;
	box-shadow: 0 30px 80px rgba(17,17,17,.10) !important;
	display: grid !important;
	gap: 0;
	grid-template-columns: minmax(0,.9fr) minmax(440px,1.1fr) !important;
	max-width: none !important;
	min-height: 640px;
	overflow: visible !important;
	padding: 0 !important;
	width: 100%;
}

.has-cbb-site-shell .vo-celebration-hero-copy {
	align-self: center;
	box-sizing: border-box;
	padding: clamp(38px,4.7vw,72px) clamp(32px,4.2vw,66px) !important;
}

.has-cbb-site-shell .vo-celebration-hero-copy .vo-eyebrow {
	color: #d86e98 !important;
	font-size: 9px !important;
	letter-spacing: .16em !important;
}

.has-cbb-site-shell .vo-celebration-hero.has-sample h2 {
	color: #d86e98 !important;
	font-family: Arial, sans-serif !important;
	font-size: clamp(48px,4.6vw,72px) !important;
	font-weight: 800 !important;
	letter-spacing: -.055em !important;
	line-height: .92 !important;
	margin: 20px 0 25px !important;
	max-width: 570px !important;
}

.has-cbb-site-shell .vo-celebration-hero.has-sample h2 em {
	color: #f4bfd1 !important;
	display: inline-block;
	font-family: Georgia, serif !important;
	font-size: .88em;
	font-style: italic;
	font-weight: 600 !important;
	letter-spacing: -.045em;
	margin-top: 7px;
}

.has-cbb-site-shell .vo-celebration-hero.has-sample p {
	color: #5c5558 !important;
	font-size: 15px !important;
	line-height: 1.72 !important;
	max-width: 540px;
}

.has-cbb-site-shell .vo-celebration-hero.has-sample .vo-service-chips {
	gap: 8px;
	margin-top: 28px;
}

.has-cbb-site-shell .vo-celebration-hero.has-sample .vo-service-chips span {
	background: #fff !important;
	border: 1px solid rgba(244,191,209,.55) !important;
	box-shadow: 0 6px 18px rgba(17,17,17,.045);
	color: #111111 !important;
	font-size: 10px !important;
	padding: 8px 11px !important;
}

.has-cbb-site-shell .vo-celebration-hero-sample {
	align-self: stretch;
	box-sizing: border-box;
	margin: 18px 18px 18px 0 !important;
	min-height: 604px !important;
	position: relative;
	z-index: 2;
}

.has-cbb-site-shell .vo-celebration-hero-sample > img {
	border-radius: 16px 26px 26px 16px;
	box-shadow: 0 24px 60px rgba(17,17,17,.12);
	height: 100% !important;
	max-height: none !important;
	min-height: 604px !important;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.has-cbb-site-shell .vo-celebration-hero-sample::after {
	background: url("../images/balloon-edge.png") center/contain no-repeat;
	content: "";
	height: 300px;
	pointer-events: none;
	position: absolute;
	right: -95px;
	top: -105px;
	transform: rotate(14deg);
	width: 285px;
	z-index: 3;
}

.has-cbb-site-shell .vo-celebration-hero-sample figcaption {
	background: rgba(255,255,255,.94) !important;
	border: 1px solid rgba(244,191,209,.30);
	border-radius: 16px !important;
	bottom: 24px !important;
	box-shadow: 0 18px 42px rgba(17,17,17,.14) !important;
	left: 24px !important;
	padding: 13px 16px !important;
}

.has-cbb-site-shell .vo-celebration-hero-sample figcaption span {
	color: #d86e98 !important;
	font-size: 8px !important;
}

.has-cbb-site-shell .vo-celebration-hero-sample figcaption strong {
	color: #111111 !important;
	font-family: Georgia, serif;
	font-size: 14px !important;
}

@media (max-width: 1000px) {
	.has-cbb-site-shell .vo-celebration-hero.has-sample {
		grid-template-columns: 1fr !important;
		min-height: 0;
	}
	.has-cbb-site-shell .vo-celebration-hero-copy { padding: 46px 38px 38px !important; }
	.has-cbb-site-shell .vo-celebration-hero.has-sample h2 { max-width: 720px !important; }
	.has-cbb-site-shell .vo-celebration-hero-sample { margin: 0 20px 20px !important; min-height: 520px !important; }
	.has-cbb-site-shell .vo-celebration-hero-sample > img { border-radius: 18px 18px 25px 25px; max-height: 620px !important; min-height: 520px !important; }
	.has-cbb-site-shell .vo-celebration-hero-sample::after { height: 235px; right: -67px; top: -72px; width: 225px; }
}

@media (max-width: 620px) {
	.has-cbb-site-shell .vo-celebration-hero-copy { padding: 34px 22px 27px !important; }
	.has-cbb-site-shell .vo-celebration-hero.has-sample h2 { font-size: clamp(42px,13.5vw,58px) !important; }
	.has-cbb-site-shell .vo-celebration-hero.has-sample p { font-size: 14px !important; }
	.has-cbb-site-shell .vo-celebration-hero-sample { margin: 0 10px 10px !important; min-height: 395px !important; }
	.has-cbb-site-shell .vo-celebration-hero-sample > img { min-height: 395px !important; object-position: 52% center; }
	.has-cbb-site-shell .vo-celebration-hero-sample::after { height: 170px; right: -43px; top: -54px; width: 165px; }
	.has-cbb-site-shell .vo-celebration-hero-sample figcaption { bottom: 15px !important; left: 15px !important; max-width: calc(100% - 30px); }
}

/* 1.4.4 — remove the duplicate public booking label and divider. */
.cbb-venueos .vo-celebration-public .vo-public-head {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box;
	height: auto !important;
	justify-content: flex-end !important;
	margin: 18px auto -22px;
	max-width: 1260px;
	min-height: 0 !important;
	padding: 0 24px !important;
	width: 100%;
}

.cbb-venueos .vo-celebration-public .vo-public-head > div:first-child {
	display: none !important;
}

.cbb-venueos .vo-celebration-public .vo-public-head > .vo-btn,
.cbb-venueos .vo-celebration-public .vo-public-head .cbb-venueos-head-actions {
	margin: 0 !important;
}

.cbb-venueos .vo-celebration-public .vo-public-head .vo-btn {
	background: #fff !important;
	border: 1px solid rgba(17,17,17,.12) !important;
	box-shadow: 0 8px 22px rgba(17,17,17,.06) !important;
	color: #111111 !important;
	min-height: 42px !important;
	padding: 0 17px !important;
}

@media (max-width: 720px) {
	.cbb-venueos .vo-celebration-public .vo-public-head {
		align-items: flex-end !important;
		margin: 12px auto -16px;
		padding: 0 12px !important;
	}
	.cbb-venueos .vo-celebration-public .vo-public-head .cbb-venueos-head-actions {
		display: flex !important;
		justify-content: flex-end;
		width: auto;
	}
}

/* 1.5.0 — main-site integration owns shared chrome; final mobile guard for public Studio routes. */
.venueos-body { max-width: 100%; overflow-x: clip; }
.venueos-body .vo-shell,
.venueos-body .vo-public,
.venueos-body .vo-public-main,
.venueos-body .vo-customer-main,
.venueos-body .vo-card,
.venueos-body .vo-request-card,
.venueos-body form,
.venueos-body fieldset { box-sizing: border-box; min-width: 0; max-width: 100%; }
.venueos-body img,
.venueos-body video,
.venueos-body iframe { height: auto; max-width: 100%; }

@media (max-width: 720px) {
	.venueos-body input:not([type="checkbox"]):not([type="radio"]),
	.venueos-body select,
	.venueos-body textarea { box-sizing: border-box; font-size: 16px !important; max-width: 100%; width: 100%; }
	.venueos-body .vo-actions,
	.venueos-body .vo-row,
	.venueos-body .vo-public-head,
	.venueos-body .vo-customer-head { min-width: 0; max-width: 100%; }
	.venueos-body .vo-actions { display: flex; flex-wrap: wrap; gap: 10px; }
	.venueos-body .vo-actions > * { max-width: 100%; }
	.venueos-body .vo-calendar,
	.venueos-body .vo-calendar-grid { box-sizing: border-box; min-width: 0; max-width: 100%; width: 100%; }
	.venueos-body .vo-calendar .vo-day { box-sizing: border-box; min-width: 0; overflow: hidden; }
	.venueos-body .vo-btn { box-sizing: border-box; max-width: 100%; white-space: normal; }
}


/* 1.7.2 — booking/customer/owner palette follows global site settings */
.venueos-body.cbb-venueos{color:#111!important;}
.cbb-venueos .vo-public-head,.cbb-venueos .vo-customer-head,.cbb-venueos .vo-dev-head{background:rgba(255,246,240,.96)!important;border-color:#f2cade!important;}
.cbb-venueos .vo-eyebrow,.cbb-venueos .vo-hero h2::first-line,.cbb-venueos .vo-card-head .vo-eyebrow{color:#d86e98!important;}
.cbb-venueos .vo-card,.cbb-venueos .vo-login-card,.cbb-venueos .vo-event-card,.cbb-venueos .vo-metric{border-color:#f2cade!important;}
.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger),.cbb-venueos button.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger),.cbb-venueos a.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger){background:#f4bfd1!important;border-color:#f4bfd1!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover,.cbb-venueos a.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover{background:#e59ab8!important;border-color:#e59ab8!important;color:#fff!important;}
.cbb-venueos .vo-sidebar{background:linear-gradient(180deg,#111,#181818)!important;}
.cbb-venueos .vo-sidebar nav a.active{box-shadow:inset 3px 0 #f4bfd1!important;}
.cbb-venueos .vo-topbar{background:rgba(255,246,240,.95)!important;border-bottom-color:#f2cade!important;}
.cbb-venueos .vo-form input:focus,.cbb-venueos .vo-form select:focus,.cbb-venueos .vo-form textarea:focus{border-color:#f4bfd1!important;box-shadow:0 0 0 4px rgba(244,191,209,.25)!important;}
.cbb-venueos .vo-calendar .vo-day:has(input:checked){border-color:#111!important;box-shadow:inset 0 3px 0 #111,0 0 0 3px rgba(244,191,209,.28)!important;}
.cbb-booking-site-footer,.cbb-global-site-footer{border-top:1px solid #f2cade!important;}
.cbb-booking-footer-column h2{color:#111!important}.cbb-booking-footer-column a:hover,.cbb-booking-footer-column a:focus{color:#d86e98!important;}


/* 1.7.3 — sitewide homepage-palette audit: all Celebration Studio surfaces */
.cbb-venueos .vo-card,.cbb-venueos .vo-metric,.cbb-venueos .vo-event-card,.cbb-venueos .vo-login-card,.cbb-venueos .vo-calendar-card,.cbb-venueos .vo-action-row,.cbb-venueos .vo-callout,.cbb-venueos .vo-attention-card,.cbb-venueos .vo-empty{background:#fffdf9!important;border-color:#f2cade!important;color:#111!important;}
.cbb-venueos .vo-card h1,.cbb-venueos .vo-card h2,.cbb-venueos .vo-card h3,.cbb-venueos .vo-card h4,.cbb-venueos .vo-detail-head h2,.cbb-venueos .vo-event-main h3,.cbb-venueos .vo-topbar h1{color:#111!important;}
.cbb-venueos .vo-card p,.cbb-venueos .vo-help,.cbb-venueos .vo-event-main p,.cbb-venueos .vo-info-list span,.cbb-venueos .vo-mini-list span,.cbb-venueos .vo-table td small{color:#5c5558!important;}
.cbb-venueos .vo-filter-pills a,.cbb-venueos .vo-tabs a,.cbb-venueos .vo-quick a,.cbb-venueos .vo-money-grid>div{background:#fff0f5!important;border-color:#f2cade!important;color:#111!important;}
.cbb-venueos .vo-filter-pills a.active,.cbb-venueos .vo-tabs a.active{background:#111!important;border-color:#111!important;color:#fff!important;}
.cbb-venueos .vo-status-pending,.cbb-venueos .vo-status-awaiting_contract,.cbb-venueos .vo-status-awaiting_deposit{background:#ffe8f0!important;color:#5c5558!important;}
.cbb-venueos .vo-status-confirmed,.cbb-venueos .vo-status-signed,.cbb-venueos .vo-status-sent,.cbb-venueos .vo-status-paid{background:#fff0f5!important;color:#111!important;border:1px solid #f2cade!important;}
.cbb-venueos .vo-status-completed{background:#f4bfd1!important;color:#111!important;}
.cbb-venueos .vo-status-declined,.cbb-venueos .vo-status-cancelled,.cbb-venueos .vo-status-voided,.cbb-venueos .vo-status-failed{background:#f7f3f4!important;color:#5c5558!important;border:1px solid #e5dadd!important;}
.cbb-venueos .vo-alert-success{background:#fff0f5!important;border-color:#f2cade!important;color:#111!important;}
.cbb-venueos .vo-alert-error,.cbb-venueos .vo-alert-warning{background:#fff6f0!important;border-color:#d86e98!important;color:#111!important;}
.cbb-venueos .vo-user,.cbb-venueos .vo-avatar,.cbb-venueos .vo-event-balance,.cbb-venueos .vo-public-date-options{background:#fff0f5!important;border-color:#f2cade!important;color:#111!important;}
.cbb-venueos .vo-sidebar{background:linear-gradient(180deg,#111 0%,#181818 100%)!important;}
.cbb-venueos .vo-sidebar nav a.active{background:rgba(244,191,209,.16)!important;box-shadow:inset 3px 0 #f4bfd1!important;}
.cbb-venueos .vo-calendar .vo-day,.cbb-venueos .vo-owner-day{border-color:#f2cade!important;}
.cbb-venueos .vo-calendar .vo-day:not(.vo-day-closed):hover,.cbb-venueos .vo-owner-day:hover{border-color:#f4bfd1!important;}
.cbb-venueos .vo-global-site-footer,.cbb-venueos .vo-global-site-header,.cbb-booking-site-footer,.cbb-booking-site-header{border-color:#f2cade!important;}

/* 1.7.3 public booking/customer surface lock to homepage palette */
.cbb-venueos .vo-public,.cbb-venueos .vo-celebration-public,.cbb-venueos .vo-confirmation-public,.cbb-venueos .vo-agreement-public,.cbb-venueos .vo-centered,.cbb-venueos .vo-shell,.cbb-venueos .vo-content{background:#fff6f0!important;color:#111!important;}
.cbb-venueos .vo-celebration-hero,.cbb-venueos .vo-booking-hero,.cbb-venueos .vo-customer-hero,.cbb-venueos .vo-booking-success,.cbb-venueos .vo-confirmation-main,.cbb-venueos .vo-agreement-public-shell{background:linear-gradient(135deg,#fff,#fff0f5)!important;border-color:#f2cade!important;color:#111!important;}
.cbb-venueos .vo-form-section,.cbb-venueos .vo-upload-field,.cbb-venueos .vo-service-picker label,.cbb-venueos .vo-addon-card,.cbb-venueos .vo-date-wrap,.cbb-venueos .vo-public-date-options{background:#fffdf9!important;border-color:#f2cade!important;}
.cbb-venueos .vo-service-picker label:has(input:checked),.cbb-venueos .vo-addon-card:has(input:checked){background:#fff0f5!important;border-color:#f4bfd1!important;box-shadow:0 0 0 3px rgba(244,191,209,.22)!important;}
.cbb-venueos .vo-btn-danger,.cbb-venueos a.vo-btn-danger,.cbb-venueos button.vo-btn-danger{background:#111!important;border-color:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}


/* Camillas 1.7.4 — Booking Studio contrast sync (loads after app.css) */
.cbb-venueos{--cbb-action:#b84d77;--cbb-action-hover:#a93f68;}
.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger),.cbb-venueos button.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger),.cbb-venueos a.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger){background:var(--cbb-action)!important;border-color:var(--cbb-action)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.cbb-venueos .vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover,.cbb-venueos a.vo-btn:not(.vo-btn-ghost):not(.vo-btn-danger):hover{background:var(--cbb-action-hover)!important;border-color:var(--cbb-action-hover)!important;}
.cbb-venueos .vo-celebration-hero,.cbb-venueos .vo-booking-hero,.cbb-venueos .vo-customer-hero,.cbb-venueos .vo-booking-success,.cbb-venueos .vo-confirmation-main,.cbb-venueos .vo-agreement-public-shell{background:linear-gradient(135deg,#fffdf9,#fff0f5)!important;color:#111!important;}
.cbb-venueos .vo-celebration-hero h1,.cbb-venueos .vo-booking-hero h1,.cbb-venueos .vo-customer-hero h1,.cbb-venueos .vo-confirmation-main h1{color:#111!important;text-shadow:0 1px 0 rgba(255,255,255,.8);}
.cbb-venueos .vo-celebration-hero p,.cbb-venueos .vo-booking-hero p,.cbb-venueos .vo-customer-hero p,.cbb-venueos .vo-card p,.cbb-venueos .vo-help{color:#4f484b!important;}
.cbb-venueos .vo-event-balance,.cbb-venueos .vo-public-date-options,.cbb-venueos .vo-money-grid>div{background:#fff0f5!important;color:#111!important;border-color:#f2cade!important;}
.cbb-venueos .vo-event-balance *{color:#111!important;}


/* 1.7.11 Booking Studio background independence: the Booking Studio owns its own page background unless sync is explicitly enabled in the main-site settings. */


/* Camillas 1.8.0 — customer booking PHONE polish only. Owner Studio and tablet/desktop are untouched. */
@media (max-width:767px){
  .venueos-body.cbb-venueos .vo-public,
  .venueos-body.cbb-venueos .vo-celebration-public,
  .venueos-body.cbb-venueos .vo-confirmation-public,
  .venueos-body.cbb-venueos .vo-agreement-public,
  .venueos-body.cbb-venueos .vo-customer-main{overflow-x:hidden!important}
  .venueos-body.cbb-venueos .vo-public-main,
  .venueos-body.cbb-venueos .vo-customer-main,
  .venueos-body.cbb-venueos .vo-confirmation-main,
  .venueos-body.cbb-venueos .vo-agreement-public-shell{box-sizing:border-box!important;margin-left:auto!important;margin-right:auto!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;width:100%!important}
  .venueos-body.cbb-venueos .vo-celebration-hero,
  .venueos-body.cbb-venueos .vo-booking-hero,
  .venueos-body.cbb-venueos .vo-customer-hero,
  .venueos-body.cbb-venueos .vo-booking-success{border-radius:22px!important;padding:24px 18px!important}
  .venueos-body.cbb-venueos .vo-celebration-hero h1,
  .venueos-body.cbb-venueos .vo-booking-hero h1,
  .venueos-body.cbb-venueos .vo-customer-hero h1,
  .venueos-body.cbb-venueos .vo-confirmation-main h1{font-size:clamp(30px,9vw,40px)!important;line-height:1.05!important}
  .venueos-body.cbb-venueos .vo-card,
  .venueos-body.cbb-venueos .vo-form-section,
  .venueos-body.cbb-venueos .vo-event-card{border-radius:18px!important;padding:18px!important}
  .venueos-body.cbb-venueos .vo-row,
  .venueos-body.cbb-venueos .vo-actions{display:grid!important;gap:10px!important;grid-template-columns:1fr!important;width:100%!important}
  .venueos-body.cbb-venueos .vo-btn{align-items:center!important;display:flex!important;font-size:15px!important;justify-content:center!important;min-height:50px!important;padding:12px 16px!important;width:100%!important}
  .venueos-body.cbb-venueos input:not([type=checkbox]):not([type=radio]),
  .venueos-body.cbb-venueos select,
  .venueos-body.cbb-venueos textarea{font-size:16px!important;min-height:48px!important}
  .venueos-body.cbb-venueos .vo-help,
  .venueos-body.cbb-venueos .vo-card p{font-size:14px!important;line-height:1.55!important}
  .venueos-body.cbb-venueos .vo-calendar-grid{gap:4px!important}
  .venueos-body.cbb-venueos .vo-calendar .vo-day{border-radius:10px!important;min-height:58px!important;padding:6px 3px!important}
  .venueos-body.cbb-venueos .vo-public-head{align-items:center!important;gap:8px!important;margin-top:8px!important;padding-left:14px!important;padding-right:14px!important}
}

/* Camillas Site 1.8.2 — keep Booking Studio 4.6.2 Celebration Request design authoritative */
.has-cbb-site-shell .vo-celebration-hero.has-sample{
  background:linear-gradient(135deg,#fffdfb 0%,#fff0f5 100%)!important;
  border:1px solid #f2cade!important;
  border-radius:30px!important;
  box-shadow:0 20px 50px rgba(84,48,61,.08)!important;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  min-height:0!important;
  overflow:hidden!important;
  padding:0!important;
}
.has-cbb-site-shell .vo-celebration-hero-copy{padding:clamp(34px,4.5vw,64px)!important}
.has-cbb-site-shell .vo-celebration-hero.has-sample h2{
  color:#111!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(46px,5.2vw,72px)!important;font-weight:700!important;line-height:.98!important;max-width:720px!important;margin:12px 0 18px!important;
}
.has-cbb-site-shell .vo-celebration-hero.has-sample h2 em{color:#b84d77!important;font-family:Georgia,'Times New Roman',serif!important;font-size:1em!important;font-style:italic!important;font-weight:600!important;margin-top:0!important}
.has-cbb-site-shell .vo-celebration-hero.has-sample p{color:#4f4549!important;font-size:16px!important;line-height:1.7!important;max-width:690px!important}
.has-cbb-site-shell .vo-celebration-hero-sample{margin:0!important;min-height:520px!important}
.has-cbb-site-shell .vo-celebration-hero-sample>img{border-radius:0!important;box-shadow:none!important;min-height:520px!important;max-height:620px!important}
.has-cbb-site-shell .vo-celebration-hero-sample::after{display:none!important;content:none!important}
.has-cbb-site-shell .vo-celebration-hero-sample figcaption{background:rgba(255,253,251,.96)!important;border:1px solid #f2cade!important}

@media(max-width:980px){
  .has-cbb-site-shell .vo-celebration-hero.has-sample{grid-template-columns:1fr!important}
  .has-cbb-site-shell .vo-celebration-hero-sample{margin:0!important;min-height:340px!important}
  .has-cbb-site-shell .vo-celebration-hero-sample>img{border-radius:0!important;min-height:340px!important;max-height:440px!important}
}
@media(max-width:767px){
  .venueos-body.cbb-venueos.venueos-app-booking .vo-public-main{box-sizing:border-box!important;margin:0 auto!important;max-width:none!important;padding:14px 0 50px!important;width:calc(100% - 24px)!important}
  .has-cbb-site-shell .vo-celebration-hero.has-sample{border-radius:22px!important;padding:0!important}
  .has-cbb-site-shell .vo-celebration-hero-copy{padding:26px 18px!important}
  .has-cbb-site-shell .vo-celebration-hero.has-sample h2{font-size:clamp(36px,11vw,46px)!important;line-height:1!important}
  .has-cbb-site-shell .vo-celebration-hero.has-sample p{font-size:15px!important;line-height:1.62!important}
  .has-cbb-site-shell .vo-celebration-hero-sample{margin:0!important;min-height:240px!important}
  .has-cbb-site-shell .vo-celebration-hero-sample>img{min-height:240px!important;max-height:290px!important;object-position:center!important}
  .venueos-body.cbb-venueos.venueos-app-booking .vo-calendar-card,
  .venueos-body.cbb-venueos.venueos-app-booking .vo-request-card{padding:18px 15px!important}
  .venueos-body.cbb-venueos.venueos-app-booking .vo-day small{display:none!important}
}


/* 1.8.3 — booking/customer header must match the homepage global header exactly. */
.cbb-booking-site-header .cbb-booking-header-inner{
  box-sizing:border-box!important;
  gap:24px!important;
  grid-template-columns:250px minmax(0,1fr) auto!important;
  max-width:1260px!important;
  min-height:116px!important;
  padding:12px 24px!important;
  width:100%!important;
}
.cbb-booking-site-header .cbb-booking-header-logo{
  align-items:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:flex!important;
  height:88px!important;
  overflow:hidden!important;
  padding:0!important;
  width:225px!important;
}
.cbb-booking-site-header .cbb-booking-header-logo picture{
  align-items:center!important;display:flex!important;height:100%!important;width:100%!important;
}
.cbb-booking-site-header .cbb-booking-header-logo img{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:block!important;
  height:100%!important;
  margin:0!important;
  max-width:100%!important;
  object-fit:contain!important;
  padding:0!important;
  transform:none!important;
  width:100%!important;
}
@media(max-width:1100px){
  .cbb-booking-site-header .cbb-booking-header-inner{gap:14px!important;grid-template-columns:205px minmax(0,1fr) auto!important;padding-left:18px!important;padding-right:18px!important}
  .cbb-booking-site-header .cbb-booking-header-logo{height:78px!important;width:195px!important}
}
@media(max-width:980px){
  .cbb-booking-site-header .cbb-booking-header-inner{grid-template-columns:1fr auto auto!important;min-height:92px!important;position:relative!important}
  .cbb-booking-site-header .cbb-booking-header-logo{height:72px!important;width:190px!important}
}
@media(max-width:767px){
  .cbb-booking-site-header .cbb-booking-header-inner{grid-template-columns:1fr auto!important;min-height:82px!important;padding:8px 14px!important}
  .cbb-booking-site-header .cbb-booking-header-logo{height:58px!important;max-width:178px!important;width:42vw!important}
  .cbb-booking-site-header .cbb-booking-header-logo img{height:100%!important;max-width:100%!important;object-fit:contain!important}
}
@media(max-width:390px){.cbb-booking-site-header .cbb-booking-header-logo{max-width:150px!important;width:45vw!important}}


/* 2.0.2 booking-route navigation collision guard */
@media (min-width:981px) and (max-width:1320px){
  .cbb-booking-header-inner{grid-template-columns:170px minmax(0,1fr) auto;gap:10px;padding-left:16px;padding-right:16px}
  .cbb-booking-header-logo{height:68px;max-width:170px;width:170px}
  .cbb-booking-site-nav{gap:5px;min-width:0}
  .cbb-booking-site-nav .cbb-menu-list{gap:2px;min-width:0}
  .cbb-menu-list>.cbb-menu-item>.cbb-menu-link-row>.cbb-menu-link{font-size:10px;letter-spacing:.012em;padding:8px 5px}
  .cbb-menu-special-actions{gap:3px;min-width:0}
  .cbb-booking-site-nav .cbb-booking-nav-portal{font-size:10px;padding-left:5px;padding-right:5px}
  .cbb-booking-header-quote{font-size:10px;min-height:42px;padding-left:14px;padding-right:14px}
}


/* 2.0.3 header action contrast + spacing fix */
@media (min-width:981px){
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-menu-special-actions{gap:10px!important;margin-left:10px!important;min-width:max-content!important}
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal{
    align-items:center!important;
    background:#fff9f7!important;
    border:1px solid #e9a5c0!important;
    border-radius:999px!important;
    color:#8d365b!important;
    -webkit-text-fill-color:#8d365b!important;
    display:inline-flex!important;
    font-family:Arial,sans-serif!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:0!important;
    line-height:1!important;
    min-height:38px!important;
    padding:0 13px!important;
    text-transform:none!important;
    white-space:nowrap!important;
  }
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal::before{content:"♡";color:#d86e98;margin-right:6px;font-size:13px;line-height:1}
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal::after{display:none!important}
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal:hover,
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal:focus-visible{background:#fff0f5!important;border-color:#d86e98!important;color:#7b2e50!important;-webkit-text-fill-color:#7b2e50!important}
  body .cbb-booking-site-header .cbb-booking-header-quote{margin-left:2px!important}
}
@media (min-width:981px) and (max-width:1320px){
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-menu-special-actions{gap:7px!important;margin-left:7px!important}
  body .cbb-booking-site-header .cbb-booking-site-nav .cbb-booking-nav-portal{font-size:10px!important;min-height:36px!important;padding:0 10px!important}
  body .cbb-booking-site-header .cbb-booking-header-quote{font-size:10px!important;min-height:40px!important;padding-left:12px!important;padding-right:12px!important}
}


/* 2.0.4 desktop header structural alignment */
.cbb-booking-header-actions{display:none;}
@media (min-width:981px){
  .cbb-booking-header-inner{
    align-items:center!important;
    grid-template-columns:130px minmax(0,1fr) auto!important;
    column-gap:18px!important;
    max-width:min(1480px,calc(100vw - 32px))!important;
    min-height:104px!important;
    padding:10px 16px!important;
  }
  .cbb-booking-header-logo{align-self:center!important;height:76px!important;max-width:130px!important;width:130px!important;}
  .cbb-booking-header-logo picture,.cbb-booking-header-logo img{height:76px!important;max-width:130px!important;width:130px!important;object-fit:contain!important;}
  .cbb-booking-site-nav{align-items:center!important;align-self:stretch!important;display:flex!important;justify-content:center!important;min-width:0!important;}
  .cbb-booking-site-nav .cbb-menu-list{align-items:center!important;display:flex!important;gap:clamp(3px,.55vw,10px)!important;justify-content:center!important;min-width:0!important;width:100%!important;}
  .cbb-booking-site-nav .cbb-menu-item,.cbb-booking-site-nav .cbb-menu-link-row{align-items:center!important;display:flex!important;}
  .cbb-menu-list>.cbb-menu-item>.cbb-menu-link-row{min-height:42px!important;}
  .cbb-menu-list>.cbb-menu-item>.cbb-menu-link-row>.cbb-menu-link{align-items:center!important;display:inline-flex!important;font-size:11px!important;line-height:1!important;min-height:42px!important;padding:0 6px!important;}
  .cbb-booking-site-nav>.cbb-menu-special-actions{display:none!important;}
  .cbb-booking-header-actions{align-items:center!important;align-self:center!important;display:flex!important;gap:12px!important;justify-content:flex-end!important;min-width:max-content!important;}
  .cbb-booking-header-actions .cbb-booking-nav-portal{align-items:center!important;background:#fff9f7!important;border:1px solid #e9a5c0!important;border-radius:999px!important;box-sizing:border-box!important;color:#8d365b!important;-webkit-text-fill-color:#8d365b!important;display:inline-flex!important;font-family:Arial,sans-serif!important;font-size:11px!important;font-weight:700!important;height:40px!important;justify-content:center!important;letter-spacing:0!important;line-height:1!important;margin:0!important;padding:0 14px!important;text-transform:none!important;white-space:nowrap!important;}
  .cbb-booking-header-actions .cbb-booking-nav-portal::before{content:"♡";color:#d86e98;margin-right:6px;font-size:13px;line-height:1;}
  .cbb-booking-header-actions .cbb-booking-nav-portal::after{display:none!important;}
  .cbb-booking-header-actions .cbb-booking-header-quote{align-items:center!important;box-sizing:border-box!important;display:inline-flex!important;height:44px!important;justify-content:center!important;margin:0!important;min-height:44px!important;vertical-align:middle!important;}
}
@media (min-width:981px) and (max-width:1180px){
  .cbb-booking-header-inner{grid-template-columns:108px minmax(0,1fr) auto!important;column-gap:10px!important;padding-left:10px!important;padding-right:10px!important;}
  .cbb-booking-header-logo,.cbb-booking-header-logo picture,.cbb-booking-header-logo img{height:62px!important;max-width:108px!important;width:108px!important;}
  .cbb-booking-site-nav .cbb-menu-list{gap:1px!important;}
  .cbb-menu-list>.cbb-menu-item>.cbb-menu-link-row>.cbb-menu-link{font-size:9px!important;letter-spacing:0!important;padding:0 3px!important;}
  .cbb-booking-header-actions{gap:6px!important;}
  .cbb-booking-header-actions .cbb-booking-nav-portal{font-size:9.5px!important;height:36px!important;padding:0 9px!important;}
  .cbb-booking-header-actions .cbb-booking-header-quote{font-size:9.5px!important;height:40px!important;min-height:40px!important;padding-left:11px!important;padding-right:11px!important;}
}
@media (max-width:980px){
  .cbb-booking-header-actions{display:none!important;}
  .cbb-booking-site-nav>.cbb-menu-special-actions{display:grid!important;}
}
