/* ==========================================================
   PILOTBOOKER — SINGLE TRAINING LISTING
   Exact visual system based on the approved SkyPath reference.
   Scoped to Directorist single-listing pages only.
========================================================== */

body.single-at_biz_dir {
	margin: 0;
	background: #F7F9FB;
	color: #0B1E33;
	font-family: 'Inter', sans-serif;
}

body.single-at_biz_dir *,
body.single-at_biz_dir *::before,
body.single-at_biz_dir *::after {
	box-sizing: border-box;
}

body.single-at_biz_dir h1,
body.single-at_biz_dir h2,
body.single-at_biz_dir h3,
body.single-at_biz_dir h4,
body.single-at_biz_dir h5,
body.single-at_biz_dir h6 {
	font-family: 'Space Grotesk', sans-serif;
}

body.single-at_biz_dir a {
	color: inherit;
	text-decoration: none;
}

/* ----------------------------------------------------------
   Existing OneListing header — match the approved navy bar
---------------------------------------------------------- */
body.single-at_biz_dir #masthead,
body.single-at_biz_dir .site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #0B1E33 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
	box-shadow: none !important;
}

body.single-at_biz_dir #masthead > .container,
body.single-at_biz_dir #masthead .container,
body.single-at_biz_dir #masthead .container-fluid,
body.single-at_biz_dir .site-header > .container,
body.single-at_biz_dir .site-header .container,
body.single-at_biz_dir .site-header .container-fluid {
	width: 100%;
	max-width: 1160px;
	min-height: 56px;
	margin: 0 auto;
	padding-right: 24px !important;
	padding-left: 24px !important;
}

body.single-at_biz_dir #masthead a,
body.single-at_biz_dir #masthead button,
body.single-at_biz_dir #masthead .site-title,
body.single-at_biz_dir #masthead .site-title a,
body.single-at_biz_dir #masthead .site-branding a,
body.single-at_biz_dir .site-header a,
body.single-at_biz_dir .site-header button,
body.single-at_biz_dir .site-header .site-title,
body.single-at_biz_dir .site-header .site-title a,
body.single-at_biz_dir .site-header .site-branding a {
	color: #FFFFFF;
}

body.single-at_biz_dir #masthead .site-title,
body.single-at_biz_dir #masthead .site-title a,
body.single-at_biz_dir #masthead .site-branding,
body.single-at_biz_dir #masthead .site-branding a,
body.single-at_biz_dir .site-header .site-title,
body.single-at_biz_dir .site-header .site-title a,
body.single-at_biz_dir .site-header .site-branding,
body.single-at_biz_dir .site-header .site-branding a {
	font-family: 'Inter', sans-serif;
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	line-height: 1.2;
}

body.single-at_biz_dir #masthead nav a,
body.single-at_biz_dir #masthead .menu a,
body.single-at_biz_dir .site-header nav a,
body.single-at_biz_dir .site-header .menu a {
	font-size: 0.88rem;
	color: #B9C6D4;
}

body.single-at_biz_dir #masthead select,
body.single-at_biz_dir .site-header select {
	min-height: 36px;
	padding: 7px 30px 7px 10px;
	color: #FFFFFF;
	font-family: 'Inter', sans-serif;
	font-size: 0.78rem;
	background-color: #122A45;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 6px;
	box-shadow: none;
}

body.single-at_biz_dir #masthead a[href*="add-listing"],
body.single-at_biz_dir .site-header a[href*="add-listing"] {
	padding: 9px 16px !important;
	color: #0B1E33 !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	background: #F2A93B !important;
	border: 1px solid #F2A93B !important;
	border-radius: 6px !important;
	box-shadow: none !important;
}

/* ----------------------------------------------------------
   Directorist wrapper reset
---------------------------------------------------------- */
.ptm-custom-single-template {
	--pb-navy: #0B1E33;
	--pb-navy-2: #122A45;
	--pb-amber: #F2A93B;
	--pb-sky: #2D6FA3;
	--pb-teal: #3FA796;
	--pb-cloud: #F7F9FB;
	--pb-border: #DCE4EA;
	--pb-body: #4A5A6A;
	--pb-muted: #8A99A8;
	--pb-label: #5C6E80;

	width: 100%;
	padding: 0;
	background: var(--pb-cloud);
	color: var(--pb-navy);
	font-family: 'Inter', sans-serif;
}

.ptm-custom-single-template > .directorist-container-fluid,
.ptm-custom-single-template > .container,
.ptm-custom-single-template > .container-fluid {
	max-width: none !important;
	padding: 0 !important;
}

.pb-listing-page {
	width: 100%;
	background: var(--pb-cloud);
}

.pb-wrap {
	width: 100%;
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 24px;
}

.pb-live-source[hidden] {
	display: none !important;
}

/* ----------------------------------------------------------
   Breadcrumb
---------------------------------------------------------- */
.pb-breadcrumb {
	padding: 16px 0;
	color: var(--pb-muted);
	font-size: 0.78rem;
	font-weight: 400;
	line-height: 1.4;
}

.pb-breadcrumb a:hover,
.pb-breadcrumb a:focus {
	color: var(--pb-sky);
}

.pb-breadcrumb span {
	color: var(--pb-muted);
}

/* ----------------------------------------------------------
   Hero banner
---------------------------------------------------------- */
.pb-banner {
	position: relative;
	height: 220px;
	margin-bottom: 20px;
	overflow: hidden;
	background: linear-gradient(135deg, var(--pb-sky), var(--pb-navy));
	border-radius: 12px;
}

.pb-banner--interactive {
	cursor: pointer;
}

.pb-banner--interactive:focus-visible {
	outline: 3px solid rgba(45, 111, 163, 0.28);
	outline-offset: 3px;
}

.pb-banner__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}


/* ----------------------------------------------------------
   Listing title and rating row
---------------------------------------------------------- */
.pb-head-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 24px;
}

.pb-head-row__main {
	min-width: 0;
}

.pb-head-row h1 {
	margin: 0 0 6px;
	color: var(--pb-navy);
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
}

.pb-head-row__location {
	color: var(--pb-label);
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.5;
}

.pb-head-row__rating {
	font-family: 'JetBrains Mono', monospace;
	font-size: 1rem;
	line-height: 1.3;
	text-align: right;
}

.pb-head-row__rating strong {
	display: block;
	color: var(--pb-navy);
	font: inherit;
	font-weight: 500;
}

.pb-head-row__rating span {
	display: block;
	margin-top: 2px;
	color: var(--pb-muted);
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.75rem;
	font-weight: 400;
}

/* ----------------------------------------------------------
   Two-column content layout
---------------------------------------------------------- */
.pb-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	align-items: start;
	gap: 32px;
	padding-bottom: 60px;
}

.pb-main,
.pb-aside {
	min-width: 0;
}

.pb-aside {
	position: sticky;
	top: 80px;
}

/* ----------------------------------------------------------
   Shared flat white panels
---------------------------------------------------------- */
.ptm-custom-single-template .pb-panel,
.ptm-custom-single-template .pb-inquiry-card {
	margin: 0 0 20px;
	overflow: visible;
	background: #FFFFFF;
	border: 1px solid var(--pb-border);
	border-radius: 10px;
	box-shadow: none;
}

.ptm-custom-single-template .pb-panel {
	padding: 24px;
}

.ptm-custom-single-template .pb-panel > .directorist-card__header,
.ptm-custom-single-template .pb-panel .directorist-card__header {
	min-height: 0;
	margin: 0 0 14px;
	padding: 0;
	background: transparent;
	border: 0;
}

.ptm-custom-single-template .pb-panel .directorist-card__header--title,
.ptm-custom-single-template .pb-panel .directorist-card__header__title,
.ptm-custom-single-template .pb-panel .directorist-card__header h2,
.ptm-custom-single-template .pb-panel .directorist-card__header h3,
.ptm-custom-single-template .pb-panel .directorist-card__header h4 {
	margin: 0;
	color: var(--pb-navy);
	font-family: 'Space Grotesk', sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
}

.ptm-custom-single-template .pb-panel .directorist-card__header--title i,
.ptm-custom-single-template .pb-panel .directorist-card__header--title svg,
.ptm-custom-single-template .pb-panel .directorist-card__header__title i,
.ptm-custom-single-template .pb-panel .directorist-card__header__title svg {
	display: none;
}

.ptm-custom-single-template .pb-panel > .directorist-card__body,
.ptm-custom-single-template .pb-panel .directorist-card__body {
	padding: 0;
	color: var(--pb-body);
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.6;
}

.ptm-custom-single-template .pb-panel p {
	margin: 0 0 12px;
	color: var(--pb-body);
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.6;
}

.ptm-custom-single-template .pb-panel p:last-child {
	margin-bottom: 0;
}

.ptm-custom-single-template .pb-panel ul,
.ptm-custom-single-template .pb-panel ol {
	margin: 0 0 12px;
	padding-left: 20px;
	color: var(--pb-body);
	font-size: 0.92rem;
	line-height: 1.6;
}

.ptm-custom-single-template .pb-panel a {
	color: var(--pb-sky);
}

/* ----------------------------------------------------------
   Program tags
---------------------------------------------------------- */
.pb-tag-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 4px 0 6px;
}

.pb-tag-row span {
	padding: 4px 10px;
	color: var(--pb-body);
	font-size: 0.72rem;
	font-weight: 400;
	line-height: 1.45;
	background: var(--pb-cloud);
	border: 1px solid var(--pb-border);
	border-radius: 20px;
}

/* ----------------------------------------------------------
   Directorist detail rows inside content panels
---------------------------------------------------------- */
.ptm-custom-single-template .pb-details-panel .directorist-details-info-wrap,
.ptm-custom-single-template .pb-extra-panel .directorist-details-info-wrap {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	overflow: hidden;
	border: 1px solid var(--pb-border);
	border-radius: 8px;
}

.ptm-custom-single-template .pb-details-panel .directorist-single-info,
.ptm-custom-single-template .pb-extra-panel .directorist-single-info {
	display: grid;
	grid-template-columns: minmax(120px, 42%) minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	min-width: 0;
	margin: 0;
	padding: 10px 12px;
	border-bottom: 1px dashed var(--pb-border);
}

.ptm-custom-single-template .pb-details-panel .directorist-single-info:nth-child(odd),
.ptm-custom-single-template .pb-extra-panel .directorist-single-info:nth-child(odd) {
	border-right: 1px solid var(--pb-border);
}

.ptm-custom-single-template .pb-details-panel .directorist-single-info__label,
.ptm-custom-single-template .pb-extra-panel .directorist-single-info__label {
	color: var(--pb-label);
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.45;
}

.ptm-custom-single-template .pb-details-panel .directorist-single-info__value,
.ptm-custom-single-template .pb-extra-panel .directorist-single-info__value {
	min-width: 0;
	color: var(--pb-navy);
	font-size: 0.84rem;
	font-weight: 600;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

/* ----------------------------------------------------------
   Pricing breakdown — table-like rows
---------------------------------------------------------- */
.ptm-custom-single-template .pb-pricing-panel .directorist-details-info-wrap {
	display: block;
	width: 100%;
	border: 0;
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 20px;
	margin: 0;
	padding: 10px 0;
	border: 0;
	border-bottom: 1px dashed var(--pb-border);
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:last-child {
	border-bottom: 0;
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info__label {
	color: var(--pb-body);
	font-size: 0.88rem;
	font-weight: 400;
	line-height: 1.5;
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info__value {
	color: var(--pb-navy);
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: right;
	white-space: pre-line;
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:last-child .directorist-single-info__label,
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:last-child .directorist-single-info__value {
	font-weight: 700;
}

/* Long inclusion fields should remain readable */
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value br),
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value ul),
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value p) {
	grid-template-columns: 1fr;
	gap: 6px;
}

.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value br) .directorist-single-info__value,
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value ul) .directorist-single-info__value,
.ptm-custom-single-template .pb-pricing-panel .directorist-single-info:has(.directorist-single-info__value p) .directorist-single-info__value {
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	text-align: left;
	white-space: normal;
}

/* ----------------------------------------------------------
   Reviews
---------------------------------------------------------- */
.ptm-custom-single-template .pb-reviews-panel .directorist-review-single,
.ptm-custom-single-template .pb-reviews-panel .directorist-review-content,
.ptm-custom-single-template .pb-reviews-panel [class*="review-item"] {
	padding: 16px 0;
	border-bottom: 1px solid var(--pb-border);
}

.ptm-custom-single-template .pb-reviews-panel .directorist-review-single:first-child,
.ptm-custom-single-template .pb-reviews-panel .directorist-review-content:first-child,
.ptm-custom-single-template .pb-reviews-panel [class*="review-item"]:first-child {
	padding-top: 0;
}

.ptm-custom-single-template .pb-reviews-panel .directorist-review-single:last-child,
.ptm-custom-single-template .pb-reviews-panel .directorist-review-content:last-child,
.ptm-custom-single-template .pb-reviews-panel [class*="review-item"]:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.ptm-custom-single-template .pb-reviews-panel [class*="review"] {
	font-size: 0.88rem;
}

.ptm-custom-single-template .pb-reviews-panel [class*="rating"] {
	color: var(--pb-muted);
	font-family: 'JetBrains Mono', monospace;
}

/* ----------------------------------------------------------
   Location / map
---------------------------------------------------------- */
.ptm-custom-single-template .pb-location-panel iframe,
.ptm-custom-single-template .pb-location-panel .directorist-map,
.ptm-custom-single-template .pb-location-panel [class*="map"] {
	max-width: 100%;
	border-radius: 8px;
}

/* ----------------------------------------------------------
   Sticky inquiry card
---------------------------------------------------------- */
.ptm-custom-single-template .pb-inquiry-card {
	padding: 22px;
}

.ptm-custom-single-template .pb-inquiry-card > .directorist-card__header,
.ptm-custom-single-template .pb-inquiry-card .directorist-card__header {
	display: none;
}

.ptm-custom-single-template .pb-inquiry-card > .directorist-card__body,
.ptm-custom-single-template .pb-inquiry-card .directorist-card__body {
	padding: 0;
}

.pb-inquiry-summary {
	margin: 0;
}

.pb-price-big {
	margin: 0 0 2px;
	color: var(--pb-navy);
	font-family: 'JetBrains Mono', monospace;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.25;
}

.pb-price-note {
	margin: 0 0 18px;
	color: var(--pb-muted);
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 1.5;
}

.ptm-custom-single-template .pb-inquiry-card form {
	margin: 0;
}

.ptm-custom-single-template .pb-inquiry-card label,
.ptm-custom-single-template .pb-inquiry-card .directorist-form-group > label,
.ptm-custom-single-template .pb-inquiry-card [class*="form-group"] > label {
	display: block;
	margin: 12px 0 4px;
	color: var(--pb-label);
	font-family: 'Inter', sans-serif;
	font-size: 0.78rem;
	font-weight: 400;
	line-height: 1.4;
}

.ptm-custom-single-template .pb-inquiry-card input[type="text"],
.ptm-custom-single-template .pb-inquiry-card input[type="email"],
.ptm-custom-single-template .pb-inquiry-card input[type="tel"],
.ptm-custom-single-template .pb-inquiry-card input[type="number"],
.ptm-custom-single-template .pb-inquiry-card input[type="date"],
.ptm-custom-single-template .pb-inquiry-card select,
.ptm-custom-single-template .pb-inquiry-card textarea {
	display: block;
	width: 100%;
	min-height: 40px;
	margin: 0;
	padding: 10px 12px;
	color: var(--pb-navy);
	font-family: 'Inter', sans-serif;
	font-size: 0.88rem;
	font-weight: 400;
	line-height: 1.4;
	background: #FFFFFF;
	border: 1px solid var(--pb-border);
	border-radius: 6px;
	box-shadow: none;
	outline: none;
}

.ptm-custom-single-template .pb-inquiry-card textarea {
	min-height: 80px;
	resize: vertical;
}

.ptm-custom-single-template .pb-inquiry-card input:focus,
.ptm-custom-single-template .pb-inquiry-card select:focus,
.ptm-custom-single-template .pb-inquiry-card textarea:focus {
	border-color: var(--pb-sky);
	box-shadow: 0 0 0 3px rgba(45, 111, 163, 0.12);
}

.ptm-custom-single-template .pb-inquiry-card button[type="submit"],
.ptm-custom-single-template .pb-inquiry-card input[type="submit"],
.ptm-custom-single-template .pb-inquiry-card .directorist-btn-primary,
.ptm-custom-single-template .pb-inquiry-card .directorist-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 42px;
	margin-top: 16px;
	padding: 12px 0;
	color: var(--pb-navy) !important;
	font-family: 'Inter', sans-serif;
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	background: var(--pb-amber) !important;
	border: 1px solid var(--pb-amber) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	cursor: pointer;
}

.ptm-custom-single-template .pb-inquiry-card button[type="submit"]:hover,
.ptm-custom-single-template .pb-inquiry-card input[type="submit"]:hover,
.ptm-custom-single-template .pb-inquiry-card .directorist-btn-primary:hover,
.ptm-custom-single-template .pb-inquiry-card .directorist-btn:hover {
	background: #C98A2A !important;
	border-color: #C98A2A !important;
	transform: none;
}

.pb-inquiry-note {
	margin: 10px 0 0 !important;
	color: var(--pb-muted) !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	text-align: center;
}

/* ----------------------------------------------------------
   Save/favourite control — preserve original behaviour
---------------------------------------------------------- */
.ptm-custom-single-template .pb-save-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 40px;
	margin: -8px 0 20px !important;
	padding: 9px 14px !important;
	color: var(--pb-navy) !important;
	font-family: 'Inter', sans-serif;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	line-height: 1.2;
	background: #FFFFFF !important;
	border: 1px solid var(--pb-border) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
}

.ptm-custom-single-template .pb-save-button:hover,
.ptm-custom-single-template .pb-save-button:focus {
	color: var(--pb-sky) !important;
	border-color: var(--pb-sky) !important;
}

/* ----------------------------------------------------------
   Privacy-safe training-provider card
---------------------------------------------------------- */
.ptm-custom-single-template .ptm-provider-card,
.ptm-custom-single-template .pb-provider-card {
	margin: 0 0 20px;
	padding: 22px;
	background: #FFFFFF;
	border: 1px solid var(--pb-border);
	border-radius: 10px;
	box-shadow: none;
}

.ptm-custom-single-template .ptm-provider-card__header {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ptm-custom-single-template .ptm-provider-card__logo-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	overflow: hidden;
	background: var(--pb-cloud);
	border: 1px solid var(--pb-border);
	border-radius: 50%;
}

.ptm-custom-single-template .ptm-provider-card__logo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ptm-custom-single-template .ptm-provider-card__identity {
	min-width: 0;
}

.ptm-custom-single-template .ptm-provider-card__eyebrow {
	display: block;
	margin: 0 0 4px;
	color: var(--pb-sky);
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.68rem;
	font-weight: 500;
	line-height: 1.35;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.ptm-custom-single-template .ptm-provider-card__name {
	margin: 0;
	color: var(--pb-navy);
	font-family: 'Space Grotesk', sans-serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.ptm-custom-single-template .ptm-provider-card__location {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 14px;
	padding-top: 14px;
	color: var(--pb-label);
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 1.45;
	border-top: 1px solid var(--pb-border);
}

.ptm-custom-single-template .ptm-provider-card__location[hidden] {
	display: none !important;
}

.ptm-custom-single-template .ptm-provider-card__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 40px;
	margin-top: 16px;
	padding: 9px 14px;
	color: var(--pb-navy);
	font-size: 0.82rem;
	font-weight: 600;
	text-align: center;
	background: #FFFFFF;
	border: 1px solid var(--pb-navy);
	border-radius: 6px;
}

.ptm-custom-single-template .ptm-provider-card__button:hover,
.ptm-custom-single-template .ptm-provider-card__button:focus {
	color: #FFFFFF;
	background: var(--pb-navy);
}

/* ----------------------------------------------------------
   Remove old custom systems if stale markup remains briefly
---------------------------------------------------------- */
.ptm-custom-single-template .ptm-listing-tabs,
.ptm-custom-single-template .ptm-enquiry-modal,
.ptm-custom-single-template .ptm-professional-gallery,
.ptm-custom-single-template .ptm-decision-card,
.ptm-custom-single-template .ptm-listing-workspace {
	box-shadow: none;
}

/* ----------------------------------------------------------
   Responsive layout — exact reference breakpoint
---------------------------------------------------------- */
@media (max-width: 860px) {
	.pb-layout {
		grid-template-columns: 1fr;
	}

	.pb-aside {
		position: static;
	}
}

@media (max-width: 600px) {
	body.single-at_biz_dir #masthead > .container,
	body.single-at_biz_dir #masthead .container,
	body.single-at_biz_dir #masthead .container-fluid,
	body.single-at_biz_dir .site-header > .container,
	body.single-at_biz_dir .site-header .container,
	body.single-at_biz_dir .site-header .container-fluid {
		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.pb-wrap {
		padding-right: 16px;
		padding-left: 16px;
	}

	.pb-banner {
		height: 220px;
	}

	.pb-head-row h1 {
		font-size: 1.5rem;
	}

	.pb-head-row__rating {
		text-align: left;
	}

	.ptm-custom-single-template .pb-panel {
		padding: 20px;
	}

	.ptm-custom-single-template .pb-details-panel .directorist-details-info-wrap,
	.ptm-custom-single-template .pb-extra-panel .directorist-details-info-wrap {
		grid-template-columns: 1fr;
	}

	.ptm-custom-single-template .pb-details-panel .directorist-single-info:nth-child(odd),
	.ptm-custom-single-template .pb-extra-panel .directorist-single-info:nth-child(odd) {
		border-right: 0;
	}

	.ptm-custom-single-template .pb-details-panel .directorist-single-info,
	.ptm-custom-single-template .pb-extra-panel .directorist-single-info {
		grid-template-columns: minmax(105px, 40%) minmax(0, 1fr);
	}

	.ptm-custom-single-template .pb-pricing-panel .directorist-single-info {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.ptm-custom-single-template .pb-pricing-panel .directorist-single-info__value {
		text-align: left;
		white-space: normal;
	}
}

/* ==================================================
   PILOTBOOKER — CLEAN COURSE DETAILS
================================================== */

.ptm-custom-single-template
.pb-details-panel
.directorist-card__body {
	padding: 24px;
}

.ptm-custom-single-template
.pb-course-details-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid #DCE4EA;
	border-radius: 10px;
	background: #ffffff;
}

.ptm-custom-single-template
.pb-course-detail-row {
	display: grid !important;
	grid-template-columns: minmax(118px, 38%) minmax(0, 1fr);
	align-items: center;
	gap: 16px;
	min-width: 0;
	margin: 0 !important;
	padding: 14px 16px !important;
	border: 0 !important;
	border-bottom: 1px solid #DCE4EA !important;
	background: #ffffff;
}

.ptm-custom-single-template
.pb-course-detail-row:nth-child(odd) {
	border-right: 1px solid #DCE4EA !important;
}

.ptm-custom-single-template
.pb-course-detail-row:nth-last-child(-n + 2) {
	border-bottom: 0 !important;
}

.ptm-custom-single-template
.pb-course-detail-row
.directorist-single-info__label {
	display: block;
	margin: 0;
	color: #8A99A8;
	font-family: "JetBrains Mono", monospace;
	font-size: 0.68rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ptm-custom-single-template
.pb-course-detail-row
.directorist-single-info__value {
	display: block;
	min-width: 0;
	margin: 0;
	color: #0B1E33;
	font-family: "Inter", sans-serif;
	font-size: 0.86rem;
	font-weight: 600;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.ptm-custom-single-template
.pb-course-detail-row
.directorist-single-info__value a {
	color: #0B1E33;
	text-decoration: none;
}

.ptm-custom-single-template
.pb-course-detail-row
.directorist-single-info__value ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ptm-custom-single-template
.pb-course-detail-row
.directorist-single-info__value li {
	margin: 0;
	padding: 3px 8px;
	color: #4A5A6A;
	font-size: 0.72rem;
	font-weight: 500;
	background: #F7F9FB;
	border: 1px solid #DCE4EA;
	border-radius: 999px;
}

.ptm-custom-single-template
.pb-course-detail-row
i,
.ptm-custom-single-template
.pb-course-detail-row
svg,
.ptm-custom-single-template
.pb-course-detail-row
.directorist-icon-mask {
	display: none !important;
}

/* Tablet and mobile */
@media (max-width: 767px) {

	.ptm-custom-single-template
	.pb-details-panel
	.directorist-card__body {
		padding: 18px;
	}

	.ptm-custom-single-template
	.pb-course-details-grid {
		grid-template-columns: 1fr;
	}

	.ptm-custom-single-template
	.pb-course-detail-row {
		grid-template-columns: 1fr;
		gap: 5px;
		padding: 13px 14px !important;
		border-right: 0 !important;
		border-bottom: 1px solid #DCE4EA !important;
	}

	.ptm-custom-single-template
	.pb-course-detail-row:nth-last-child(-n + 2) {
		border-bottom: 1px solid #DCE4EA !important;
	}

	.ptm-custom-single-template
	.pb-course-detail-row:last-child {
		border-bottom: 0 !important;
	}
}

/* ==================================================
   PILOTBOOKER — CLEAN PRICING BREAKDOWN
================================================== */

.ptm-custom-single-template
.pb-pricing-panel
.directorist-card__body {
	padding: 24px;
}

.ptm-custom-single-template
.pb-pricing-panel
.directorist-details-info-wrap {
	display: block !important;
	overflow: visible !important;
	background: transparent;
	border: 0 !important;
	border-radius: 0;
}

.ptm-custom-single-template
.pb-pricing-table {
	display: block;
	width: 100%;
	margin: 0;
}

.ptm-custom-single-template
.pb-pricing-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;
	width: 100%;
	margin: 0 !important;
	padding: 11px 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px dashed #DCE4EA !important;
	border-radius: 0 !important;
}

.ptm-custom-single-template
.pb-pricing-row:last-child {
	border-bottom: 0 !important;
}

.ptm-custom-single-template
.pb-pricing-row
.directorist-single-info__label {
	display: block;
	min-width: 0;
	margin: 0;
	color: #4A5A6A;
	font-family: "Inter", sans-serif;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.5;
}

.ptm-custom-single-template
.pb-pricing-row
.directorist-single-info__value {
	display: block;
	min-width: max-content;
	margin: 0;
	color: #0B1E33;
	font-family: "JetBrains Mono", monospace;
	font-size: 0.86rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: right;
	overflow-wrap: anywhere;
}

.ptm-custom-single-template
.pb-pricing-row:last-child
.directorist-single-info__label,
.ptm-custom-single-template
.pb-pricing-row:last-child
.directorist-single-info__value {
	font-weight: 700;
}

.ptm-custom-single-template
.pb-pricing-row
.directorist-single-info__value a {
	color: #0B1E33;
	text-decoration: none;
}

.ptm-custom-single-template
.pb-pricing-row
i,
.ptm-custom-single-template
.pb-pricing-row
svg,
.ptm-custom-single-template
.pb-pricing-row
.directorist-icon-mask {
	display: none !important;
}

/*
 * Included and excluded information remains below the
 * pricing table, using compact matching cards.
 */
.ptm-custom-single-template
.pb-pricing-panel
.ptm-inclusion-panel {
	margin-top: 16px !important;
	padding: 18px !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}

.ptm-custom-single-template
.pb-pricing-panel
.ptm-inclusion-panel__heading {
	margin-bottom: 14px;
	font-family: "Space Grotesk", sans-serif;
	font-size: 1rem;
	font-weight: 600;
}

.ptm-custom-single-template
.pb-pricing-panel
.ptm-inclusion-panel__list {
	gap: 9px;
}

.ptm-custom-single-template
.pb-pricing-panel
.ptm-inclusion-panel__list li {
	font-family: "Inter", sans-serif;
	font-size: 0.84rem;
	font-weight: 500;
	line-height: 1.5;
}

/* Mobile */
@media (max-width: 767px) {

	.ptm-custom-single-template
	.pb-pricing-panel
	.directorist-card__body {
		padding: 18px;
	}

	.ptm-custom-single-template
	.pb-pricing-row {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 14px;
		padding: 10px 0 !important;
	}

	.ptm-custom-single-template
	.pb-pricing-row
	.directorist-single-info__label {
		font-size: 0.82rem;
	}

	.ptm-custom-single-template
	.pb-pricing-row
	.directorist-single-info__value {
		min-width: 0;
		font-size: 0.8rem;
		text-align: right;
	}
}

/* ==================================================
   PILOTBOOKER — INCLUDED / NOT INCLUDED GRID
================================================== */

.ptm-custom-single-template
.pb-inclusion-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 20px;
}

.ptm-custom-single-template
.pb-inclusion-column {
	min-width: 0;
	padding: 18px;
	background: #F7F9FB;
	border: 1px solid #DCE4EA;
	border-radius: 10px;
}

.ptm-custom-single-template
.pb-inclusion-column__heading {
	margin: 0 0 14px;
	color: #0B1E33;
	font-family: "Space Grotesk", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.35;
}

.ptm-custom-single-template
.pb-inclusion-column__list {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ptm-custom-single-template
.pb-inclusion-column__list li {
	display: grid;
	grid-template-columns: 12px minmax(0, 1fr);
	align-items: start;
	gap: 8px;
	margin: 0;
	padding: 0;
	color: #4A5A6A;
	font-family: "Inter", sans-serif;
	font-size: 0.84rem;
	font-weight: 500;
	line-height: 1.5;
}

.ptm-custom-single-template
.pb-inclusion-column__marker {
	display: block;
	color: #8A99A8;
	font-family: "JetBrains Mono", monospace;
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}

/*
 * Remove the older hidden inclusion elements from layout.
 */
.ptm-custom-single-template
.pb-pricing-panel
.ptm-inclusion-panel[hidden],
.ptm-custom-single-template
.pb-pricing-panel
.directorist-single-info[hidden] {
	display: none !important;
}

/* Mobile */
@media (max-width: 767px) {

	.ptm-custom-single-template
	.pb-inclusion-grid {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-top: 16px;
	}

	.ptm-custom-single-template
	.pb-inclusion-column {
		padding: 16px;
	}

	.ptm-custom-single-template
	.pb-inclusion-column__heading {
		margin-bottom: 12px;
		font-size: 0.96rem;
	}

	.ptm-custom-single-template
	.pb-inclusion-column__list li {
		font-size: 0.82rem;
	}
}

/* ==================================================
   PILOTBOOKER — CLEAN TRAINING LOCATION
================================================== */

.ptm-custom-single-template
.pb-location-panel
.directorist-card__body {
	padding: 24px;
}

.ptm-custom-single-template
.pb-location-row {
	display: grid !important;
	grid-template-columns: 110px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	width: 100%;
	margin: 0 !important;
	padding: 14px 16px !important;
	background: #F7F9FB;
	border: 1px solid #DCE4EA !important;
	border-radius: 10px;
}

.ptm-custom-single-template
.pb-location-row
.directorist-single-info__label {
	display: block;
	margin: 0;
	color: #8A99A8;
	font-family: "JetBrains Mono", monospace;
	font-size: 0.68rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ptm-custom-single-template
.pb-location-row
.directorist-single-info__value {
	display: block;
	min-width: 0;
	margin: 0;
	color: #0B1E33;
	font-family: "Inter", sans-serif;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.5;
	text-transform: capitalize;
	overflow-wrap: anywhere;
}

.ptm-custom-single-template
.pb-location-row
.directorist-single-info__value a {
	color: #0B1E33;
	text-decoration: none;
}

.ptm-custom-single-template
.pb-location-row
i,
.ptm-custom-single-template
.pb-location-row
svg,
.ptm-custom-single-template
.pb-location-row
.directorist-icon-mask {
	display: none !important;
}

/* Mobile */
@media (max-width: 767px) {

	.ptm-custom-single-template
	.pb-location-panel
	.directorist-card__body {
		padding: 18px;
	}

	.ptm-custom-single-template
	.pb-location-row {
		grid-template-columns: 1fr;
		gap: 5px;
		padding: 14px !important;
	}
}

/* ==================================================
   PILOTBOOKER — FORMGENT SIDEBAR ENQUIRY CARD
   Append this block to:
   /wp-content/themes/onelisting-child/assets/css/single-listing.css
================================================== */

.ptm-custom-single-template
.pb-legacy-inquiry-card[hidden] {
	display: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card {
	width: 100%;
	padding: 22px;
	overflow: hidden;
	background: #FFFFFF;
	border: 1px solid var(--pb-border);
	border-radius: 10px;
	box-shadow: none;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.directorist-card__header {
	display: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.directorist-card__body,
.ptm-custom-single-template
.pb-formgent-inquiry-card
.directorist-details-info-wrap,
.ptm-custom-single-template
.pb-formgent-inquiry-card
.directorist-single-formgent-form {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-form {
	--formgent-form-background-color: transparent;
	--formgent-form-padding-desktop: 0;
	--formgent-form-padding-tablet: 0;
	--formgent-form-padding-mobile: 0;
	--formgent-form-margin-desktop: 0;
	--formgent-form-margin-tablet: 0;
	--formgent-form-margin-mobile: 0;
	--formgent-form-border-width: 0;
	--formgent-form-border: 0 solid transparent;
	--formgent-form-border-radius: 0;

	--formgent-field-vertical-spacing-desktop: 12px;
	--formgent-field-vertical-spacing-tablet: 12px;
	--formgent-field-vertical-spacing-mobile: 12px;
	--formgent-field-horizontal-spacing-desktop: 0;
	--formgent-field-horizontal-spacing-tablet: 0;
	--formgent-field-horizontal-spacing-mobile: 0;
	--formgent-field-background-color: #FFFFFF;
	--formgent-field-background-color-hover: #FFFFFF;
	--formgent-field-placeholder-color: #8A99A8;
	--formgent-field-label-color: #5C6E80;
	--formgent-field-description-color: #8A99A8;
	--formgent-field-error-message-color: #C83A3A;
	--formgent-field-input-color: #0B1E33;
	--formgent-field-border: 1px solid #DCE4EA;
	--formgent-field-border-radius: 6px;

	--formgent-fixed-btn-bg-color: #F2A93B;
	--formgent-fixed-btn-text-color: #0B1E33;
	--formgent-fixed-btn-border-color: #F2A93B;
	--formgent-fixed-btn-alignment: stretch;

	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-list {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field {
	width: 100% !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-single {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-label {
	display: block;
	margin: 0 0 4px !important;
	color: var(--pb-label) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.78rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-required {
	color: #C83A3A;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-single__wrapper,
.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-has-input-icon {
	display: block;
	width: 100%;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-single__input {
	display: block !important;
	width: 100% !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	color: var(--pb-navy) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.88rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	background: #FFFFFF !important;
	border: 1px solid var(--pb-border) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	outline: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
textarea.formgent-field-single__input {
	min-height: 80px !important;
	resize: vertical !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-single__input:focus {
	border-color: var(--pb-sky) !important;
	box-shadow:
		0 0 0 3px
		rgba(45, 111, 163, 0.12) !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-fixed-submit-button {
	display: block !important;
	width: 100% !important;
	margin: 4px 0 0 !important;
	padding: 0 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-fixed-submit-button
button[type="submit"] {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 12px 0 !important;
	color: var(--pb-navy) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	background: var(--pb-amber) !important;
	border: 1px solid var(--pb-amber) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-fixed-submit-button
button[type="submit"]:hover,
.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-fixed-submit-button
button[type="submit"]:focus-visible {
	background: #C98A2A !important;
	border-color: #C98A2A !important;
	outline: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-field-single--paypal-button {
	display: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.pb-formgent-inquiry-note {
	margin-top: 10px !important;
}

/*
 * FormGent success confirmation.
 */
.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-confirmation-wrap {
	width: 100%;
	margin: 0;
	padding: 0;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-confirmation-wrap--hidden {
	display: none !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-notices {
	width: 100%;
	margin: 0;
	padding: 18px 14px;
	color: var(--pb-body);
	background: var(--pb-cloud);
	border: 1px solid var(--pb-border);
	border-radius: 8px;
	text-align: center;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-notices h3 {
	margin: 0 0 7px !important;
	color: var(--pb-navy) !important;
	font-family: 'Space Grotesk', sans-serif !important;
	font-size: 1.15rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
}

.ptm-custom-single-template
.pb-formgent-inquiry-card
.formgent-notices p {
	margin: 0 !important;
	color: var(--pb-body) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.82rem !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
}

@media (max-width: 600px) {
	.ptm-custom-single-template
	.pb-formgent-inquiry-card {
		padding: 20px;
	}
}

/* ==================================================
   PILOTBOOKER — EXACT REVIEW BUTTON OVERRIDE
================================================== */

body.single-at_biz_dir
.ptm-custom-single-template
form.directorist-review-submit__form
button#submit.directorist-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 11px 22px !important;

	color: #0B1E33 !important;
	font-family: "Inter", sans-serif !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;

	background: #F2A93B !important;
	background-color: #F2A93B !important;
	background-image: none !important;

	border: 1px solid #F2A93B !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	text-shadow: none !important;
	appearance: none !important;
	transform: none !important;
}

body.single-at_biz_dir
.ptm-custom-single-template
form.directorist-review-submit__form
button#submit.directorist-btn:hover,
body.single-at_biz_dir
.ptm-custom-single-template
form.directorist-review-submit__form
button#submit.directorist-btn:focus {
	color: #0B1E33 !important;
	background: #C98A2A !important;
	background-color: #C98A2A !important;
	background-image: none !important;
	border-color: #C98A2A !important;
	box-shadow: none !important;
	transform: none !important;
}

.pb-authority-notice{border-left:4px solid #F2A93B!important;}
.pb-authority-notice .directorist-card__body p{margin:0 0 14px;color:#5A6B7A;font-size:14px;line-height:1.65;}
.pb-authority-notice__link{display:inline-flex;align-items:center;color:#2D6FA3;font-weight:700;text-decoration:none;}
.pb-authority-notice__link:hover,.pb-authority-notice__link:focus{text-decoration:underline;}

/* ==============================================================
   v1.9.19 — PRIVATE MESSAGING ONLY
   Retire the old public FormGent/Directorist contact path before JavaScript.
   Historical submissions remain untouched in WordPress administration.
   ============================================================== */
body.single-at_biz_dir .directorist-single-formgent-form,
body.single-at_biz_dir .directorist-card-contact-owner,
body.single-at_biz_dir .pb-formgent-inquiry-card,
.ptm-custom-single-template [data-pb-legacy-contact-retired="1"] {
	display: none !important;
}

.ptm-custom-single-template .pb-private-message-card {
	padding: 22px;
	background: #fff;
	border: 1px solid var(--pb-border, #dce4ea);
	border-radius: 10px;
}

.ptm-custom-single-template .pb-private-message-card h2 {
	margin: 0 0 8px;
	color: var(--pb-navy, #0b1e33);
	font-family: "Space Grotesk", sans-serif;
	font-size: 1.15rem;
}

.ptm-custom-single-template .pb-private-message-card__note {
	margin: 0 0 15px;
	color: var(--pb-body, #5a6b7a);
	font-size: 0.86rem;
	line-height: 1.55;
}
