/* Minimal Bootstrap-compatible primitives used by logged-out tour detail. */
.single-tour *,
.single-tour *::before,
.single-tour *::after { box-sizing: border-box; }
.single-tour .container { width: 100%; margin-right: auto; margin-left: auto; padding-right: 15px; padding-left: 15px; }
.single-tour .row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.single-tour .col-5,
.single-tour .col-7,
.single-tour .col-md-3,
.single-tour .col-md-6 { position: relative; width: 100%; min-height: 1px; padding-right: 15px; padding-left: 15px; }
.single-tour .col-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
.single-tour .col-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
.single-tour .align-items-center { align-items: center; }
.single-tour .text-right { text-align: right; }
.single-tour .d-none { display: none; }
.single-tour .img-fluid { max-width: 100%; height: auto; }
.single-tour .clearfix::after { display: block; clear: both; content: ""; }
.single-tour .btn { display: inline-block; padding: .375rem .75rem; border: 1px solid transparent; border-radius: .25rem; background: transparent; color: #212529; font-size: 1rem; font-weight: 400; line-height: 1.5; text-align: center; vertical-align: middle; cursor: pointer; user-select: none; }
.single-tour .btn-warning { border-color: #ffc107; background-color: #ffc107; color: #212529; }
.single-tour .btn-success { border-color: #28a745; background-color: #28a745; color: #fff; }
.single-tour .navbar-brand { display: inline-block; margin-right: 1rem; padding-top: .3125rem; padding-bottom: .3125rem; font-size: 1.25rem; line-height: inherit; white-space: nowrap; }
.single-tour .modal { position: fixed; inset: 0; z-index: 1050; display: none; overflow-x: hidden; overflow-y: auto; outline: 0; }
.single-tour .modal.fade { opacity: 0; transition: opacity .15s linear; }
.single-tour .modal.show { opacity: 1; }
.single-tour .modal-dialog { position: relative; width: auto; margin: .5rem; pointer-events: none; }
.single-tour .modal-content { position: relative; display: flex; width: 100%; flex-direction: column; pointer-events: auto; border: 1px solid rgba(0, 0, 0, .2); border-radius: .3rem; outline: 0; background-color: #fff; background-clip: padding-box; }
.single-tour .modal-header { display: flex; align-items: flex-start; justify-content: space-between; padding: 1rem; border-bottom: 1px solid #e9ecef; }
.single-tour .modal-title { margin-bottom: 0; line-height: 1.5; }
.single-tour .modal-body { position: relative; flex: 1 1 auto; padding: 1rem; }
.single-tour .close { float: right; border: 0; background: transparent; color: #000; font-size: 1.5rem; font-weight: 700; line-height: 1; opacity: .5; text-shadow: 0 1px 0 #fff; cursor: pointer; }
.modal-backdrop { position: fixed; inset: 0; z-index: 1040; background-color: #000; }
.modal-backdrop.fade { opacity: 0; }
.modal-backdrop.show { opacity: .5; }
.modal-open { overflow: hidden; }
@media (min-width: 576px) {
	.single-tour .container { max-width: 540px; }
	.single-tour .modal-dialog { max-width: 500px; margin: 1.75rem auto; }
}
@media (min-width: 768px) {
	.single-tour .container { max-width: 720px; }
	.single-tour .col-md-3 { flex: 0 0 25%; max-width: 25%; }
	.single-tour .col-md-6 { flex: 0 0 50%; max-width: 50%; }
	.single-tour .d-md-block { display: block; }
	.single-tour .d-md-inline { display: inline; }
}
@media (min-width: 992px) {
	.single-tour .container { max-width: 960px; }
	.single-tour .d-lg-block { display: block; }
}
@media (min-width: 1200px) {
	.single-tour .container { max-width: 1140px; }
}

/* The public tour footer owns its layout instead of depending on Bootstrap's grid. */
.single-tour #Footer .main-footer .row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
	margin: 0;
}
.single-tour #Footer .main-footer .row > .col-md-3 {
	width: auto;
	max-width: none;
	min-width: 0;
	padding: 0;
}
.single-tour #Footer .title-footer {
	margin-bottom: 12px;
}
.single-tour #Footer .inner p,
.single-tour #Footer .inner li {
	overflow-wrap: anywhere;
}
.single-tour #Footer .inner.payment-method img {
	max-width: 100%;
	height: auto;
}
@media (max-width: 991px) {
	.single-tour #Footer .main-footer .row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 575px) {
	.single-tour #Footer .main-footer .row {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.single-tour #Footer .main-footer .row > .col-md-3 {
		margin-bottom: 0;
	}
}
