/* Footer "Contact / E-mail / Inquire Now" card — responsive layout.
   Scoped to the WPBakery inner row used in the "Villa Mount Royal" footer. */

/* Tablet: the three columns are too narrow side by side, so give "Inquire Now" its own row. */
@media (min-width: 768px) and (max-width: 991px) {
	.vc_custom_1478513598992 > .col-sm-3 {
		width: 50%;
	}

	.vc_custom_1478513598992 > .col-sm-3:nth-child(2) > .vc_column-inner {
		border-right: 0 !important;
	}

	.vc_custom_1478513598992 > .col-sm-6 {
		width: 100%;
		margin-top: 10px;
		padding-top: 10px;
		border-top: 1px solid rgba(255, 255, 255, .25);
	}

	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3 {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 32px;
	}

	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3_content-container,
	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3-actions {
		display: block;
		width: auto;
		min-width: 200px;
	}
}

/* Mobile: one clean stacked card. */
@media (max-width: 767px) {
	/* .vc_row prefix outranks WPBakery's own !important rule for this row */
	.vc_row.vc_custom_1478513598992 {
		margin-top: 28px !important; /* no desktop overlap: it would cover content above (e.g. the TripAdvisor button) */
		padding: 6px 20px !important;
		border-radius: 6px;
		background-size: cover !important;
	}

	.vc_custom_1478513598992 > [class*="col-sm-"] {
		float: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.vc_custom_1478513598992 > [class*="col-sm-"] > .vc_column-inner {
		padding: 0 !important;
		border-right: 0 !important;
	}

	.vc_custom_1478513598992 > .col-sm-3 > .vc_column-inner {
		border-bottom: 1px solid rgba(255, 255, 255, .25) !important;
	}

	.vc_custom_1478513598992 .vc_cta3-container,
	.vc_custom_1478513598992 .vc_cta3 {
		margin: 0 !important;
	}

	.vc_custom_1478513598992 .vc_cta3 {
		padding: 18px 0 !important;
	}

	.vc_custom_1478513598992 .vc_cta3-content-header h4 {
		margin: 0 0 6px !important;
		font-size: 11px !important;
		line-height: 1.4 !important;
		letter-spacing: .14em;
		text-transform: uppercase;
		opacity: .85;
	}

	.vc_custom_1478513598992 .vc_cta3-content-header h2 {
		margin: 0 !important;
		font-size: 20px !important;
		line-height: 1.3 !important;
		overflow-wrap: anywhere;
	}

	/* Keep the e-mail address on one line on phones. */
	.vc_custom_1478513598992 > .col-sm-3:nth-child(2) .vc_cta3-content-header h2 {
		font-size: clamp(15px, 4.6vw, 20px) !important;
	}

	/* "Inquire Now" block: heading on top, full-width button below. */
	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3 {
		display: block;
		padding: 22px 0 20px !important;
	}

	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3_content-container,
	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3-content,
	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3-actions {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	.vc_custom_1478513598992 > .col-sm-6 .vc_cta3-content-header h2 {
		margin-bottom: 14px !important;
		font-size: 30px !important;
		line-height: 1.15 !important;
	}

	.vc_custom_1478513598992 .vc_btn3-container {
		margin: 0;
	}

	.vc_custom_1478513598992 .vc_btn3.vc_btn3-size-sm {
		padding: 14px 20px;
		font-size: 14px;
		font-weight: 700;
		letter-spacing: .06em;
	}
}

/* Facebook page widget: Facebook no longer renders the timeline in this embed, so the 330px-tall
   iframe left a large empty block. On phones and tablets show just the page header, at the column width. */
@media (max-width: 991px) {
	.pbr-footer iframe[src*="facebook.com/plugins/page"] {
		width: 100% !important;
		max-width: 100%;
		height: 130px !important;
	}
}

/* "Book Now" badges (Booking.com, Agoda, Airbnb, Expedia): four 186px-tall images stacked
   in one column on phones. Show them as a 2x2 grid instead. */
@media (max-width: 767px) {
	.vc_custom_1464756967204 .vc_empty_space {
		display: none;
	}

	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image {
		display: inline-block;
		width: calc(50% - 6px);
		margin: 0 0 12px !important;
		vertical-align: top;
	}

	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image + .wpb_single_image {
		margin-left: 8px !important;
	}

	/* WPBakery's wrapper is shrink-to-fit inline-block; make it block so the image can fill the cell. */
	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image figure,
	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image .vc_single_image-wrapper {
		display: block;
		width: 100%;
	}

	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image img {
		display: block;
		width: 100%;
		height: auto;
	}
}

/* Homepage TripAdvisor widget (last block before the footer). On desktop a 130px spacer lines it up
   with the Testimonials column; stacked on phones that spacer plus the column's 80px margin left a big
   gap above the widget and none below it. */
@media (max-width: 767px) {
	.vc_column-inner.vc_custom_1478519098826 { /* outranks WPBakery's own rule */
		margin-bottom: 30px !important;
	}

	.vc_column-inner:has(.TA_cdswritereviewlg) .vc_empty_space {
		display: none;
	}

	.wpb_raw_html:has(.TA_cdswritereviewlg) {
		margin-bottom: 40px !important;
	}

	/* TripAdvisor injects its own widget CSS, so centre from the container instead of with margins. */
	.TA_cdswritereviewlg {
		display: flex;
		justify-content: center;
	}
}

/* Tablet footer: five narrow columns (about, quick links, two "Book Now" columns, Facebook) were
   cramped. Use two rows: about + quick links, then Book Now (two half-width columns) + Facebook. */
@media (min-width: 768px) and (max-width: 991px) {
	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(1),
	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(2),
	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(5) {
		width: 50%;
	}

	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(3),
	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(4) {
		width: 25%;
	}

	.vc_custom_1464756967204 .vc_row > [class*="col-sm-"]:nth-child(3) {
		clear: left;
	}

	.vc_custom_1464756967204 .col-sm-2 .wpb_single_image img {
		max-width: 100%;
		height: auto;
	}
}
