/* ============================================================
   Marby Forms Shared Presentation Foundation
   ============================================================

   Responsibility

   This stylesheet owns reusable member-facing Forms presentation patterns:
   page headers, question headers, question cards, Ask MAI panels, response
   layouts, editable response fields, save sections, and shared responsive
   behavior.

   Page-specific styles belong in their respective page stylesheet only when
   they cannot be reused by another Form.
   ============================================================ */

/* ============================================================
   Shared Page Header
   ============================================================ */

.marby-forms-page-header {
	position: relative;
	display: grid;
	min-height: 160px;
	align-items: center;
	margin: 0;
	padding: 34px var(--marby-page-gutter) 30px;
	overflow: hidden;
	background: linear-gradient(
		180deg,
		var(--marby-color-white) 0%,
		var(--marby-color-white) 72%,
		var(--marby-color-soft-tan) 100%
	);
}

.marby-forms-page-header > div {
	position: relative;
	z-index: 2;
	width: min(1480px, 100%);
	max-width: none;
	margin: 0 auto;
	padding-right: 240px;
}

/*
.marby-forms-page-header h1 {
	margin: 0 0 8px;
	font-size: clamp(44px, 5.5vw, 74px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.03;
	letter-spacing: -0.045em;
}
*/
/*
.marby-forms-page-header p {
	margin: 0;
	color: var(--marby-color-black, #000000);
	font-size: 18px;
}

.marby-forms-page-header .marby-forms-section-eyebrow {
	display: inline-block;
	margin-bottom: 15px;
	padding: 10px 16px;
	border: 1px solid var(--marby-color-border);
}
*/

/* Keep the header title consistently below its bordered eyebrow on every form. 
.frm-ideal-customer-header h1 {
	margin-top: 0;
}
*/

.marby-forms-page-header::before {
	position: absolute;
	top: 50%;
	right: var(--marby-page-gutter);
	width: 220px;
	height: 130px;
	background: radial-gradient(
			circle,
			rgba(112, 170, 221, 0.4) 1.1px,
			transparent 1.4px
		)
		54px 10px / 14px 14px no-repeat;
	content: "";
	transform: translateY(-50%);
}

.marby-forms-page-header::after {
	position: absolute;
	top: 50%;
	right: var(--marby-page-gutter);
	width: 130px;
	height: 130px;
	border: 1px solid rgba(112, 170, 221, 0.3);
	border-radius: 50%;
	box-shadow: 0 0 0 22px rgba(112, 170, 221, 0.05);
	content: "";
	transform: translateY(-50%);
}

/* ============================================================
   Shared Question Header
   ============================================================ */

.marby-forms-question-nav {
	position: relative;
	z-index: 1;
	background: var(--marby-color-black);
}

.marby-forms-question-nav > div {
	display: flex;
	justify-content: center;
	gap: 8px;
	overflow-x: auto;
	padding: 20px var(--marby-page-gutter);
}

.marby-forms-question-nav a {
	padding: 8px 12px;
	border: 1px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-pill);
	color: var(--marby-color-white);
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
	white-space: nowrap;
	text-decoration: none;
}

.marby-forms-question-nav a.is-active,
.marby-forms-question-nav a:hover,
.marby-forms-question-nav a:focus,
.marby-forms-question-nav a:focus-visible {
	background: var(--marby-color-marby-blue);
	border-color: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	outline: 0;
}

.marby-forms-question-header {
	position: relative;
	width: 100%;
	padding: 72px var(--marby-page-gutter);
	overflow: hidden;
	background: var(--marby-color-black);
	color: var(--marby-color-white);
}

.marby-forms-question-header::before {
	position: absolute;
	inset: 0;
	background-image: radial-gradient(
		rgba(255, 255, 255, 0.16) 0.8px,
		transparent 0.8px
	);
	background-size: 28px 28px;
	content: "";
	opacity: 0.18;
}

.marby-forms-question-header::after {
	position: absolute;
	top: 50%;
	left: -130px;
	width: 280px;
	height: 280px;
	border: 1px solid rgba(112, 170, 221, 0.3);
	border-radius: 50%;
	box-shadow: 0 0 0 36px rgba(112, 170, 221, 0.035);
	content: "";
	transform: translateY(-50%);
}

.marby-forms-question-header > div {
	position: relative;
	z-index: 1;
	display: grid;
	width: min(1480px, 100%);
	grid-template-columns: 1.25fr 0.75fr;
	gap: 50px;
	align-items: center;
	margin: 0 auto;
}

/*
.marby-forms-question-header .marby-eyebrow {
	color: var(--marby-color-marby-blue);
}
*/
/*
.marby-forms-question-header h2 {
	margin: 0 0 22px;
	color: var(--marby-color-white);
	font-size: clamp(36px, 4.4vw, 58px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.06;
	letter-spacing: -0.035em;
}

.marby-forms-question-header p {
	max-width: 920px;
	margin: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 19px;
}
*/
.marby-forms-question-note {
	position: relative;
	min-height: 235px;
	padding: 30px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--marby-radius-xl);
	background: rgba(255, 255, 255, 0.06);
}

.marby-forms-question-note::after {
	position: absolute;
	right: -28px;
	bottom: -28px;
	width: 90px;
	height: 90px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	content: "";
}

.marby-forms-question-note-mark {
	display: grid;
	width: 80px;
	height: 80px;
	place-items: center;
	margin-bottom: 30px;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 22px;
	font-weight: var(--marby-font-weight-bold);
}

/*
.marby-forms-question-note p {
	margin: 0;
}
*/

.marby-forms-question-note strong {
	display: block;
	color: var(--marby-color-white);
	font-size: 24px;
	line-height: 1.2;
}

/*
.marby-forms-question-note p span {
	color: rgba(255, 255, 255, 0.64);
}
*/
/* ============================================================
   Shared Responsive Variations
   ============================================================ */

@media (max-width: 900px) {
	.marby-form .marby-ai-actions {
		grid-template-columns: 1fr;
	}

	.marby-form .marby-ai-actions .ask-mai-btn {
		width: 100%;
	}

	body
		.frm-competitive-analysis-page
		.marby-ai-actions.is-shared-competitive-analysis-actions {
		grid-template-columns: 1fr;
	}

	body
		.frm-competitive-analysis-page
		.marby-ai-actions.is-shared-competitive-analysis-actions
		.ask-mai-btn {
		width: 100%;
	}

	.marby-forms-page-header > div {
		padding-right: 0;
	}

	.marby-forms-page-header::before,
	.marby-forms-page-header::after {
		opacity: 0.35;
	}

	.marby-forms-question-header > div {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   Shared Question Intro and Cards
   ============================================================ */

.marby-forms-question-intro {
	box-sizing: border-box;
	display: grid;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	grid-template-columns: minmax(0, 1fr);
	margin: auto;
	padding: 78px var(--marby-page-gutter) 34px;
	background: transparent;
}

/*
.marby-forms-section-eyebrow {
	display: block;
	width: max-content;
	margin: 0 0 9px;
	padding: 0;
	border: 0;
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-question-intro h2 {
	margin: 0 0 6px;
	font-size: clamp(30px, 3.5vw, 48px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.1;
	letter-spacing: -0.035em;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-question-intro p {
	margin: 0;
	color: var(--marby-color-muted);
}
*/

.marby-forms-question-intro > div {
	position: relative;
	min-width: 0;
}

/*
.marby-forms-question-intro-number {
	position: absolute;
	top: 0;
	left: -92px;
	display: grid;
	width: 56px;
	height: 56px;
	place-items: center;
	border: 1px solid var(--marby-color-border);
	border-radius: 50%;
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
	color: var(--marby-color-marby-blue, #6f5d4f);
	font-size: 24px;
	font-weight: var(--marby-font-weight-bold);
}
*/

/*
.marby-forms-question-intro .marby-eyebrow {
	color: var(--marby-color-brown, #6f5d4f);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-question-card-heading h3 {
	margin: 0;
	font-size: 22px;
}
*/

.marby-forms-structured-form,
.marby-forms-structured-form .marby-question {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.marby-forms-question-card {
	padding: 28px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
}

.marby-forms-question-card-heading {
	display: flex;
	gap: 15px;
	align-items: center;
	margin-bottom: 20px;
}

.marby-forms-question-card-fields {
	display: grid;
	gap: 16px;
}

/* Shared editable-response scaffold. */
.marby-forms-response-list {
	display: grid;
	gap: 16px;
	/* The review section already supplies the page gutters. */
	width: min(1480px, 100%);
	margin: auto;
}

/* Shared multi-response grid used when each response point is independent. */
.marby-forms-response-grid-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.marby-forms-response-grid-list > * {
	min-width: 0;
}

.is-brand-differentiators-pain .marby-forms-response-card {
	display: block;
	padding: 20px;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.is-brand-differentiators-pain .marby-forms-response-card h3 {
	margin: 0 0 8px;
}
*/

.is-brand-differentiators-gaps .marby-forms-response-ordered-item {
	padding: 16px 0;
}

.is-brand-differentiators-list .frm-brand-differentiators-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.is-brand-differentiators-list .frm-brand-differentiators-card-grid > div {
	min-width: 0;
	padding: 20px;
}

.is-brand-differentiators-list
	.frm-brand-differentiators-card-grid
	> div
	+ div {
	border-left: 1px solid var(--marby-color-border-light);
}

.frm-brand-differentiators-one-sentence {
	border-radius: var(--marby-radius-xl);
}

/* Brand Differentiators composes only shared Forms surfaces. */
.frm-brand-differentiators-page {
	width: 100vw;
	max-width: none;
	margin: 0;
}

.frm-brand-differentiators-page .marby-forms-question-header,
.frm-brand-differentiators-page .marby-forms-page-header {
	width: 100%;
}

.frm-brand-differentiators-page .marby-forms-response-group {
	box-shadow: none;
}

.is-brand-differentiators-list .frm-brand-differentiators-card-list {
	display: grid;
	gap: 16px;
	width: 90%;
	margin: 0 auto;
}

.is-brand-differentiators-list .frm-brand-differentiators-card-grid {
	grid-template-columns: 1fr;
}

.is-brand-differentiators-list
	.frm-brand-differentiators-card-grid
	> div
	+ div {
	border-top: 1px solid var(--marby-color-border-light);
	border-left: 0;
}

.frm-brand-differentiators-one-sentence {
	padding: 24px;
	border-left: 4px solid var(--marby-color-marby-blue);
	background: var(--marby-color-soft-blue);
}

.is-brand-differentiators-gaps .frm-brand-differentiators-textarea,
.is-brand-differentiators-list .frm-brand-differentiators-textarea,
.is-brand-differentiators-summary .frm-brand-differentiators-textarea,
.frm-brand-differentiators-one-sentence .frm-brand-differentiators-textarea {
	border-color: transparent !important;
	background: transparent !important;
	box-shadow: none;
}

.is-brand-differentiators-gaps .frm-brand-differentiators-textarea:hover,
.is-brand-differentiators-gaps .frm-brand-differentiators-textarea:focus,
.is-brand-differentiators-list .frm-brand-differentiators-textarea:hover,
.is-brand-differentiators-list .frm-brand-differentiators-textarea:focus,
.is-brand-differentiators-summary .frm-brand-differentiators-textarea:hover,
.is-brand-differentiators-summary .frm-brand-differentiators-textarea:focus,
.frm-brand-differentiators-one-sentence
	.frm-brand-differentiators-textarea:hover,
.frm-brand-differentiators-one-sentence
	.frm-brand-differentiators-textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	outline: 0;
	box-shadow: none;
}

/*
.is-brand-differentiators-list
	.frm-brand-differentiators-card-grid
	.marby-eyebrow {
	display: inline-block;
	justify-self: start;
	margin-bottom: 8px;
	padding: 10px 16px;
	border: 1px solid var(--marby-color-border);
	color: var(--marby-color-brown, #6f5d4f);
}
*/
.marby-forms-response-card {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 18px;
	padding: 28px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
}

.marby-forms-response-card > header {
	display: contents;
}

.marby-forms-response-number {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
}

.marby-forms-response-card > header .marby-forms-response-number {
	grid-column: 1;
	grid-row: 1;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-card > header h3 {
	grid-column: 2;
	grid-row: 1;
	margin: 7px 0 0;
	font-size: 23px;
	line-height: 1.25;
}
*/

.marby-forms-response-body {
	grid-column: 2;
	min-width: 0;
}

/* Shared response point with a multi-response grid. */
.marby-forms-response-group {
	padding: 28px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
}

.marby-forms-response-group.is-awareness {
	background: var(--marby-color-soft-blue);
}

.marby-forms-response-group.is-social {
	background: var(--marby-color-soft-blue);
}

.marby-forms-response-group-header {
	display: flex;
	gap: 15px;
	align-items: center;
	margin-bottom: 20px;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-group-header h2 {
	margin: 0;
	font-size: 23px;
	line-height: 1.25;
}
*/

.marby-forms-response-group-intro {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	gap: 18px;
	align-items: start;
	margin-bottom: 24px;
}

.marby-forms-response-group-intro-copy {
	min-width: 0;
}

.marby-forms-response-group-intro.is-copy-only {
	grid-template-columns: minmax(0, 1fr);
}
/*
.marby-forms-response-group-intro-copy .marby-eyebrow {
	margin-bottom: 6px;
	color: var(--marby-color-brown, #6f5d4f);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-group-intro-copy h2 {
	margin: 0 0 6px;
	font-size: clamp(30px, 3.5vw, 48px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.1;
	letter-spacing: -0.035em;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-group-intro-copy p:last-child {
	margin: 0;
	color: var(--marby-color-muted);
}
*/

.marby-forms-response-group-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.marby-forms-response-grid-item {
	display: grid;
	gap: 8px;
	min-width: 0;
	padding: 20px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-grid-item h3,
.marby-forms-response-grid-item h4 {
	margin: 0;
	font-size: 18px;
	line-height: 1.25;
}
*/

.marby-forms-response-grid-item textarea {
	min-height: 150px;
	margin: 0;
	padding: 14px;
	border: 1px solid var(--marby-color-border) !important;
	border-radius: 12px !important;
	background: var(--marby-color-white) !important;
}

.marby-forms-response-grid-item textarea:hover {
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-response-grid-item textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(112, 170, 221, 0.15);
}

.marby-forms-response-ordered-list {
	display: grid;
	width: 90%;
	gap: 12px;
	margin-right: auto;
	margin-left: auto;
}

.marby-forms-response-ordered-item {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
	padding: 20px;
	border: 1px solid var(--marby-color-border-light);
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
}

.marby-forms-response-ordered-item[hidden] {
	display: none !important;
}

.marby-forms-response-ordered-number {
	display: grid;
	width: 26px;
	height: 26px;
	place-items: center;
	margin-top: 0;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 11px;
	font-weight: var(--marby-font-weight-bold);
}

/* Semantic markers are interchangeable with ordered numbers when a field's
   meaning matters more than its sequence. */
.marby-forms-response-icon {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	margin-top: 0;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 16px;
	font-weight: var(--marby-font-weight-bold);
	line-height: 1;
}

.marby-forms-response-icon.is-offering,
.marby-forms-response-icon.is-advantage {
	background: var(--marby-color-black);
}

.marby-forms-response-icon.is-weaknesses,
.marby-forms-response-icon.is-why {
	background: var(--marby-color-marby-blue);
}

.marby-forms-response-ordered-item-body {
	display: grid;
	gap: 8px;
	min-width: 0;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-ordered-item h3,
.marby-forms-response-ordered-item h4 {
	margin: 0;
	font-size: 18px;
	line-height: 1.25;
}
*/

.marby-forms-response-ordered-item textarea {
	margin: 0;
	padding: 5px;
	border: 1px solid transparent !important;
	border-radius: 12px !important;
	background: var(--marby-color-white) !important;
}

.marby-forms-response-ordered-item textarea:hover {
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-response-ordered-item textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(112, 170, 221, 0.15);
}

/* Shared response point with an ordered list of ordered fields. */
.marby-forms-double-order-list {
	display: grid;
	gap: 16px;
}

/* Pain-point analysis uses the shared response-group shell with a focused inner list. */
.marby-forms-response-group.is-pain-point-analysis {
	padding: 40px;
}

.marby-forms-response-group.is-pain-point-analysis
	.marby-forms-double-order-list-item {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.marby-forms-response-group.is-recommended-offers
	.marby-forms-double-order-list-item {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

/* Competitive Analysis Question 01 uses the same focused inner-card width.
   Question 02 remains on its page-specific response layout until migration. */
.marby-forms-response-group.is-competitive-top-competitors
	.marby-forms-double-order-list-item,
.marby-forms-response-group.is-competitive-gaps
	.marby-forms-double-order-list-item {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

/* Competitive Analysis Question 02 reuses the shared response shells while
   retaining its website-specific field content. */
.marby-forms-response-group.is-competitive-site-reviews
	.marby-forms-double-order-list-item,
.marby-forms-response-group.is-competitive-site-opportunities
	.marby-forms-double-order-list-item {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.marby-forms-response-group.is-competitive-site-reviews
	.marby-forms-response-list,
.marby-forms-response-group.is-competitive-site-opportunities
	.marby-forms-response-list {
	width: 100%;
}

.marby-forms-response-group.is-competitive-cross-insights
	.frm-competitive-analysis-cross-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	width: 90%;
	margin: 24px auto 0;
}

.marby-forms-response-group.is-competitive-cross-insights
	.frm-competitive-analysis-detail {
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-group.is-competitive-cross-insights
	.frm-competitive-analysis-icon-list
	> h3 {
	grid-column: auto;
}
*/

.marby-forms-response-group.is-competitive-site-opportunities
	.marby-forms-double-order-list-fields {
	grid-template-columns: 1fr;
}

.marby-forms-response-group.is-competitive-site-opportunities
	.frm-competitive-analysis-opportunity-grid {
	grid-template-columns: 1fr;
}

body
	.frm-competitive-analysis-page
	.is-competitive-site-opportunities
	.frm-competitive-analysis-detail {
	padding: 28px;
	border-right: 0 !important;
	border-bottom: 1px solid var(--marby-color-border-light) !important;
	background: var(--marby-color-white) !important;
}

body
	.frm-competitive-analysis-page
	.is-competitive-site-opportunities
	.frm-competitive-analysis-detail:last-child {
	border-bottom: 0 !important;
}

body
	.frm-competitive-analysis-page
	.is-competitive-site-reviews
	.frm-competitive-analysis-site-body {
	display: block !important;
}

body
	.frm-competitive-analysis-page
	.is-competitive-site-reviews
	.frm-competitive-analysis-detail {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	gap: 8px;
	padding: 24px 28px;
	border-right: 0 !important;
	border-bottom: 1px solid var(--marby-color-border-light) !important;
	background: var(--marby-color-white) !important;
}

body
	.frm-competitive-analysis-page
	.is-competitive-site-reviews
	.frm-competitive-analysis-detail::before {
	display: grid;
	width: 28px;
	height: 28px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: "•";
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


body
	.frm-competitive-analysis-page
	.is-competitive-site-reviews
	.frm-competitive-analysis-detail
	> h4 {
	grid-column: 2;
}
*/

body
	.frm-competitive-analysis-page
	.is-competitive-site-reviews
	.frm-competitive-analysis-detail
	> div {
	grid-column: 2;
}

.marby-forms-double-order-list-item {
	overflow: hidden;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
}

.marby-forms-double-order-list-item > header {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 28px;
	background: var(--marby-color-black);
	color: var(--marby-color-white);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-double-order-list-item > header h3 {
	color: var(--marby-color-white);
}

/* Dark double-order headers use the shared H4 hierarchy and white contrast. */
.marby-forms-double-order-list-item > header h3,
.marby-forms-double-order-list-item > header h4 {
	margin: 0;
	color: var(--marby-color-white) !important;
}

/* The Industry Gaps number aligns with its response content rather than the
   outer section edge. */
.frm-brand-differentiators-page
	.is-brand-differentiators-gaps
	.marby-forms-response-ordered-number {
	margin-left: 20px;
}
*/ .marby-forms-double-order-list-item > header .marby-forms-response-number {
	border-radius: 13px;
	background: var(--marby-color-white);
	color: var(--marby-color-black);
}

/*
.marby-forms-double-order-list-item-header-copy .marby-eyebrow {
	justify-self: start;
	margin: 0;
	padding: 10px 16px;
	border: 1px solid var(--marby-color-border);
	color: var(--marby-color-marby-blue);
}
*/
.marby-forms-double-order-list-item-header-copy {
	display: grid;
	gap: 8px;
}

.marby-forms-double-order-list-fields {
	display: grid;
}

.marby-forms-double-order-list-field {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 8px;
	align-items: start;
	padding: 28px;
	border-top: 1px solid var(--marby-color-border-light);
}

.marby-forms-double-order-list-field-body {
	display: grid;
	gap: 8px;
	min-width: 0;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-double-order-list-field-body h3,
.marby-forms-double-order-list-field-body h4 {
	margin: 0;
	font-size: 18px;
	line-height: 1.25;
}
*/

.marby-forms-response-ordered-item.is-competitive-pattern-group {
	border-color: var(--marby-color-border-light);
}

.marby-forms-competitive-list-row[hidden] {
	display: none !important;
}

/*
.marby-forms-double-order-list-field-body .marby-eyebrow {
	margin: 0;
	color: var(--marby-color-brown, #6f5d4f);
}
*/
.marby-forms-double-order-list-field textarea {
	min-height: 92px;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.marby-forms-double-order-list-field textarea:hover {
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-double-order-list-field textarea:focus {
	background: var(--marby-color-soft-blue) !important;
	outline: 0;
	box-shadow: 0 2px 0 var(--marby-color-marby-blue);
}

.marby-forms-double-order-list-field:nth-child(1)
	.marby-forms-response-ordered-number,
.marby-forms-double-order-list-field:nth-child(4)
	.marby-forms-response-ordered-number {
	border-radius: 13px;
	background: var(--marby-color-black);
}

.marby-forms-double-order-list-field:nth-child(2)
	.marby-forms-response-ordered-number {
	border-radius: 13px;
	background: var(--marby-color-marby-blue);
}

.marby-forms-double-order-list-field:nth-child(3)
	.marby-forms-response-ordered-number {
	border-radius: 13px;
	background: var(--marby-color-marby-blue);
}

.marby-forms-double-order-list-field:nth-child(4) {
	background: var(--marby-color-soft-blue);
}

.marby-forms-response-check-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.marby-forms-response-check-grid > .marby-forms-response-check-grid {
	grid-column: 1 / -1;
}

.marby-forms-response-check-card {
	display: grid;
	gap: 16px;
	min-width: 0;
	padding: 20px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-response-check-card h3,
.marby-forms-response-check-card h4 {
	margin: 0;
	font-size: 18px;
	line-height: 1.25;
}
*/

.marby-forms-response-check-list {
	display: grid;
	gap: 8px;
	min-width: 0;
	min-height: 0 !important;
}

.marby-forms-response-check-list .marby-forms-response-check-item {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
}

.marby-forms-response-checkmark {
	display: grid;
	width: 24px;
	height: 24px;
	place-items: center;
	margin-top: 10px;
	color: var(--marby-color-marby-blue);
	font-size: 19px;
	font-weight: var(--marby-font-weight-bold);
	line-height: 1;
}

.marby-forms-response-check-list textarea {
	width: 100% !important;
	min-height: 44px !important;
	margin: 0;
	padding: 9px 10px;
	border: 1px solid var(--marby-color-border) !important;
	border-radius: 12px !important;
	background: var(--marby-color-white) !important;
}

.marby-forms-response-check-list textarea:hover {
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-response-check-list textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(112, 170, 221, 0.15);
}

.marby-forms-response-feature-card {
	grid-column: 1 / -1;
	border-left: 4px solid var(--marby-color-marby-blue) !important;
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-response-feature-card textarea {
	height: auto !important;
	padding-block: 12px;
	background: transparent !important;
}

.marby-forms-response-social-list {
	display: grid;
	gap: 16px;
}

.marby-forms-response-social-item {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 18px;
	min-width: 0;
	padding: 24px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
}

.marby-forms-response-social-rank {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 13px;
	background: var(--marby-color-black);
	color: var(--marby-color-white);
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
}

.marby-forms-response-social-content {
	min-width: 0;
}

/*
.marby-forms-response-social-content > .marby-eyebrow {
	margin-bottom: 6px;
	color: var(--marby-color-brown, #6f5d4f);
}
*/
.marby-forms-response-social-name {
	margin: 0 0 10px;
	color: var(--marby-color-black) !important;
	font-size: 18px;
	font-weight: var(--marby-font-weight-light);
	line-height: 1.25;
}

.marby-forms-response-social-subarea {
	padding: 16px 0 0;
	border-top: 1px solid var(--marby-color-border-light);
}

.marby-forms-response-social-subarea + .marby-forms-response-social-subarea {
	margin-top: 16px;
}

/*
.marby-forms-response-social-subarea .marby-eyebrow {
	margin-bottom: 6px;
	color: var(--marby-color-brown, #6f5d4f);
}
*/

.marby-forms-response-social-subarea textarea {
	min-height: 46px !important;
	margin: 0;
	padding: 5px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.marby-forms-response-social-subarea textarea:hover {
	background: var(--marby-color-soft-blue) !important;
}

.marby-forms-response-social-subarea textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	outline: 0;
	box-shadow: 0 2px 0 var(--marby-color-marby-blue);
}

.marby-forms-question-card-list {
	display: grid;
	gap: 20px;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	margin: auto;
	padding: 0 0 22px;
}

/*
.marby-forms-question-section {
	width: 100%;
	margin: 0;
	padding-bottom: 0px;
	background: linear-gradient(
		180deg,
		var(--marby-color-soft-tan),
		var(--marby-color-soft-blue)
	);
}
*/
/* Brand Persona supplies its own static question heading. */
.frm-brand-persona-page .marby-q-header {
	display: none !important;
}

.frm-ideal-customer-page .marby-q-header {
	display: none !important;
}

.frm-customer-pain-points-page .marby-q-header {
	display: none !important;
}

/* Shared input-field scaffold. */
.marby-form .marby-input-row {
	min-width: 0;
	padding: 0;
}

/*
.marby-form .marby-input-label {
	display: block;
	margin-bottom: 8px;
	color: var(--marby-color-brown, #6f5d4f);
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
*/
.marby-form .marby-input,
.marby-form input[type="text"],
.marby-form select,
.marby-form textarea {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	border: 1px solid var(--marby-color-border);
	border-radius: 12px;
	background: var(--marby-color-white);
	color: var(--marby-color-black) !important;
	font: var(--marby-font-weight-regular) 16px/1.55 var(--marby-font-body);
}

.marby-form input[type="text"],
.marby-form select {
	min-height: 50px;
	padding: 0 14px;
}

.marby-form textarea {
	min-height: 150px;
	padding: 14px;
	resize: vertical;
}

.marby-form .marby-input:focus,
.marby-form input[type="text"]:focus,
.marby-form select:focus,
.marby-form textarea:focus {
	border-color: var(--marby-color-marby-blue);
	outline: 0;
	box-shadow: 0 0 0 4px rgba(112, 170, 221, 0.15);
}

.marby-form .select2-container {
	width: 100% !important;
}

.marby-form .select2-container--default .select2-selection--single {
	height: 50px !important;
	border-color: var(--marby-color-border) !important;
	border-radius: 12px !important;
	background: var(--marby-color-white) !important;
}

.marby-form
	.select2-container--default
	.select2-selection--single
	.select2-selection__rendered {
	height: 48px;
	padding: 0 38px 0 14px;
	line-height: 48px;
}

.marby-form
	.select2-container--default
	.select2-selection--single
	.select2-selection__arrow {
	height: 48px;
}

.marby-form .select2-container--default .select2-selection--multiple {
	min-height: 50px !important;
	padding: 7px 9px !important;
	border-color: var(--marby-color-border) !important;
	border-radius: 12px !important;
	background: var(--marby-color-white) !important;
}

.marby-form
	.select2-container--default
	.select2-selection--multiple
	.select2-selection__rendered {
	display: flex !important;
	min-height: 32px;
	flex-wrap: wrap;
	gap: 7px;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
}

.marby-form .select2-container--default .select2-selection__choice {
	border: 0;
	background: var(--marby-color-soft-blue);
}

/* Shared Ask MAI action panel. */
.marby-form .marby-ai-actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 22px;
	align-items: center;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	margin: 0 auto 78px;
	padding: 30px;
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-black);
	color: var(--marby-color-white);
}

/*
.marby-forms-ai-actions-copy .marby-eyebrow {
	color: var(--marby-color-marby-blue);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-ai-actions-copy h3 {
	margin: 0 0 6px;
	color: var(--marby-color-white);
	font-size: 28px;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-ai-actions-copy p:last-child {
	margin: 0;
	color: rgba(255, 255, 255, 0.76);
}
*/

.marby-form .marby-ai-actions .mai-status {
	grid-column: 1 / -1;
	margin: 0;
	color: var(--marby-color-white);
}

.marby-form .marby-ai-actions .ask-mai-btn {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-white) !important;
}

/* Competitive Analysis Question 01 uses the shared Ask MAI panel while its
   second question retains its page-specific presentation until migrated. */
body
	.frm-competitive-analysis-page
	.marby-ai-actions.is-shared-competitive-analysis-actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 22px;
	align-items: center;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	margin: 0 auto 78px;
	padding: 30px;
	border: 0;
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-black);
	color: var(--marby-color-white);
}

body
	.frm-competitive-analysis-page
	.marby-ai-actions.is-shared-competitive-analysis-actions
	.ask-mai-btn {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-white) !important;
}

body
	.frm-competitive-analysis-page
	.marby-ai-actions.is-shared-competitive-analysis-actions
	.ask-mai-btn:hover,
body
	.frm-competitive-analysis-page
	.marby-ai-actions.is-shared-competitive-analysis-actions
	.ask-mai-btn:focus-visible {
	border-color: var(--marby-color-white) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

/* Superseded: shared save-panel layout now belongs to marby-master.css.
.marby-form .marby-save-actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	grid-template-areas:
		"copy save"
		"back next"
		"status status";
	gap: 18px 24px;
	align-items: center;
	margin: 0;
	padding: 38px var(--marby-page-gutter);
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
}

/* The controls are placed directly in the shared save-panel grid. */
body .marby-form .marby-save-actions .marby-forms-save-actions-copy {
	grid-area: copy;
}

body .marby-form .marby-save-actions .marby-forms-save-controls {
	display: contents;
}

body .marby-form .marby-save-actions .save-mai-btn {
	grid-area: save;
	justify-self: end;
	width: 300px;
	min-width: 0;
}

body .marby-form .marby-save-actions .page-nav-btn.is-previous {
	grid-area: back;
	justify-self: start;
	width: 300px;
	min-width: 0;
}

body .marby-form .marby-save-actions .page-nav-btn.is-next {
	grid-area: next;
	justify-self: end;
	width: 300px;
	min-width: 0;
}

body .marby-form .marby-save-actions .save-status {
	grid-area: status;
	width: 100%;
}
*/

/*
.marby-forms-save-actions-copy .marby-eyebrow {
	color: var(--marby-color-white);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-save-actions-copy h3 {
	margin: 0 0 6px;
	color: var(--marby-color-white);
	font-size: clamp(28px, 3vw, 42px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.15;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-save-actions-copy p:last-child {
	margin: 0;
	color: rgba(255, 255, 255, 0.86);
}
*/

/* Superseded: shared save-panel status presentation now belongs to marby-master.css.
.marby-form .marby-save-actions .save-status {
	margin: 0;
	color: var(--marby-color-white);
}
*/

/* Shared structured-review section. */
.marby-forms-review-section {
	margin: 40px 0 0;
	padding: 78px var(--marby-page-gutter);
	border: 0;
	background: var(--marby-color-white);
}

body
	.frm-competitive-analysis-page
	.marby-ai-editor-wrap.is-shared-competitive-analysis-review {
	margin: 40px 0 0;
	padding: 78px var(--marby-page-gutter);
	border: 0;
	background: var(--marby-color-white);
}

/* Competitive Analysis uses the master-owned shared save component. */

.marby-forms-review-intro {
	box-sizing: border-box;
	display: grid;
	width: min(1480px, 100%);
	grid-template-columns: 68px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
	margin: 0 auto 34px;
}

.marby-forms-review-marker {
	display: grid;
	width: 56px;
	height: 56px;
	place-items: center;
	border: 1px solid var(--marby-color-marby-blue);
	border-radius: 50%;
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
	color: var(--marby-color-marby-blue);
	font-size: 24px;
	font-weight: var(--marby-font-weight-bold);
}

.marby-forms-review-copy {
	min-width: 0;
}

/*
.marby-forms-review-copy .marby-eyebrow {
	margin-bottom: 6px;
	color: var(--marby-color-brown, #6f5d4f);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-review-copy h2 {
	margin: 0 0 6px;
	font-size: clamp(30px, 3.5vw, 48px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.1;
	letter-spacing: -0.035em;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.marby-forms-review-copy p:last-child {
	margin: 0;
	color: var(--marby-color-muted);
}
*/

/* Shared response editor primitives, proven first on Brand Persona. */
.frm-brand-persona-page .frm-brand-persona-response-textarea {
	display: block;
	width: 100%;
	min-height: 126px;
	margin: 0;
	padding: 15px;
	border: 1px solid transparent;
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
	font-size: 16px;
	line-height: 1.7;
	box-shadow: none;
	transition:
		background-color 160ms ease,
		border-color 160ms ease;
}

.frm-brand-persona-page .frm-brand-persona-response-textarea:hover {
	background: var(--marby-color-soft-blue);
}

.marby-forms-response-card:focus-within {
	border-color: transparent;
}

/* Shared response textarea interaction: borderless at rest, then deliberate on interaction. */
.marby-forms-response-card textarea {
	display: block;
	width: 100%;
	margin: 0;
	padding: 14px;
	border: 1px solid transparent !important;
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
	box-shadow: none;
	line-height: 1.6;
	resize: vertical;
	transition: border-color 160ms ease;
}

.marby-forms-response-card textarea:hover {
	border-color: var(--marby-color-border) !important;
}

.marby-forms-response-card textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	outline: 0;
	box-shadow: none;
}

.frm-brand-persona-page .frm-brand-persona-response-textarea:focus {
	border-color: var(--marby-color-marby-blue);
	background: var(--marby-color-white);
	outline: 0;
}

.frm-brand-persona-page .frm-brand-persona-response-source {
	display: none !important;
}

.frm-brand-persona-list-editor,
.frm-brand-persona-behaviours-editor {
	display: grid;
	gap: 12px;
}

.frm-brand-persona-list-item {
	display: flex;
	gap: 12px;
	align-items: start;
	counter-increment: persona-point;
}

.frm-brand-persona-list-item::before {
	display: grid;
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: counter(persona-point);
	font-size: 11px;
	font-weight: var(--marby-font-weight-bold);
}

.frm-brand-persona-list-editor {
	counter-reset: persona-point;
}

.frm-brand-persona-list-item textarea,
.frm-brand-persona-behaviours-item textarea {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 5px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
	font: inherit;
	line-height: 1.7;
	resize: vertical;
	transition:
		background-color 160ms ease,
		border-color 160ms ease;
}

.frm-brand-persona-list-item textarea {
	padding: 5px;
	font-size: 13px;
	line-height: 1.4;
}

/* Page navigation shares the Save control's master button component. */
body .marby-form .marby-save-actions .marby-forms-save-controls > .mf-btn,
body .marby-form .marby-save-actions > .save-mai-btn {
	box-sizing: border-box;
	min-width: 0;
	min-height: 46px;
	margin: 0 !important;
}

.frm-brand-persona-list-item textarea:hover,
.frm-brand-persona-behaviours-item textarea:hover {
	background: var(--marby-color-soft-blue);
}

.frm-brand-persona-list-item textarea:focus,
.frm-brand-persona-behaviours-item textarea:focus {
	border-color: var(--marby-color-marby-blue);
	background: var(--marby-color-white);
	outline: 0;
}

@media (max-width: 700px) {
	.marby-form .marby-save-actions {
		grid-template-columns: 1fr;
		grid-template-areas:
			"copy"
			"save"
			"back"
			"next"
			"status";
	}

	body
		.frm-competitive-analysis-page
		.marby-save-actions.is-shared-competitive-analysis-save {
		grid-template-columns: 1fr;
		grid-template-areas:
			"copy"
			"save"
			"back"
			"next"
			"status";
	}

	body .marby-form .marby-save-actions .save-mai-btn,
	body .marby-form .marby-save-actions .page-nav-btn.is-previous,
	body .marby-form .marby-save-actions .page-nav-btn.is-next {
		justify-self: stretch;
		width: 100%;
	}
}

@media (max-width: 640px) {
	.marby-forms-response-grid-list,
	.is-brand-differentiators-list .frm-brand-differentiators-card-grid {
		grid-template-columns: 1fr;
	}

	.is-brand-differentiators-list
		.frm-brand-differentiators-card-grid
		> div
		+ div {
		border-top: 1px solid var(--marby-color-border-light);
		border-left: 0;
	}

	.marby-forms-review-section {
		padding-top: 56px;
		padding-bottom: 56px;
	}

	.marby-forms-response-card {
		grid-template-columns: 1fr;
		padding: 22px;
	}

	.marby-forms-response-group {
		padding: 22px;
	}

	.marby-forms-response-group.is-pain-point-analysis {
		padding: 22px;
	}

	.marby-forms-response-group.is-pain-point-analysis
		.marby-forms-double-order-list-item {
		width: 100%;
	}

	.marby-forms-response-group.is-recommended-offers
		.marby-forms-double-order-list-item {
		width: 100%;
	}

	.marby-forms-response-ordered-list {
		width: 100%;
	}

	.marby-forms-response-group-grid {
		grid-template-columns: 1fr;
	}

	.marby-forms-response-check-grid {
		grid-template-columns: 1fr;
	}

	.marby-forms-response-group-intro {
		grid-template-columns: 1fr;
	} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


	.marby-forms-response-card > header .marby-forms-response-number,
	.marby-forms-response-card > header h3,
	.marby-forms-response-body {
		grid-column: 1;
	}
*/

	.marby-forms-response-card > header .marby-forms-response-number {
		grid-row: 1;
	} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


	.marby-forms-response-card > header h3 {
		grid-row: 2;
		margin-top: 0;
	}
*/

	.marby-forms-response-body {
		grid-row: 3;
	}
}

.frm-brand-persona-content-behaviours {
	width: calc(100% + (2 * var(--marby-page-gutter)));
	margin: 64px calc(-1 * var(--marby-page-gutter)) -78px;
	padding: 78px var(--marby-page-gutter);
	background: var(--marby-color-soft-blue);
}

.frm-brand-persona-content-behaviours-head {
	display: grid;
	width: min(1480px, 100%);
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	margin: 0 auto 34px;
}

/*
.frm-brand-persona-content-behaviours-head .marby-eyebrow {
	margin-bottom: 6px;
	color: var(--marby-color-brown, #6f5d4f);
}
*/
/* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-persona-content-behaviours-head h2 {
	margin: 0;
	font-size: clamp(30px, 3.5vw, 48px);
	font-weight: var(--marby-font-weight-light);
	line-height: 1.1;
	letter-spacing: -0.035em;
}
*/

.frm-brand-persona-content-behaviours .frm-brand-persona-response-card {
	display: block;
	width: min(1480px, 100%);
	margin: auto;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.frm-brand-persona-content-behaviours
	.frm-brand-persona-response-card
	> header {
	display: none;
}

.frm-brand-persona-content-behaviours .frm-brand-persona-response-body {
	grid-column: auto;
}

.frm-brand-persona-content-behaviours .frm-brand-persona-behaviours-editor {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	min-height: 0;
}

.frm-brand-persona-content-behaviours .frm-brand-persona-behaviours-item {
	display: block;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-persona-content-behaviours .frm-brand-persona-behaviours-item h3 {
	margin: 0 0 8px;
	color: var(--marby-color-black);
	font-size: 23px;
	line-height: 1.25;
}
*/

.frm-brand-persona-content-behaviours
	.frm-brand-persona-behaviours-editor
	textarea {
	min-height: 182px;
	padding: 18px;
	border-radius: var(--persona-radius);
	color: var(--marby-color-text);
	font-size: 16px;
	line-height: 1.65;
}

@media (max-width: 640px) {
	.marby-forms-page-header {
		padding-top: 28px;
	}

	.marby-forms-page-header::before,
	.marby-forms-page-header::after {
		display: none;
	}

	.marby-forms-page-header,
	.marby-forms-question-header {
		padding-right: 20px;
		padding-left: 20px;
	}

	.marby-forms-question-header {
		padding-top: 56px;
		padding-bottom: 56px;
	}

	body.marby-forms-page .marby-forms-question-nav > div {
		display: grid;
		grid-template-columns: 1fr;
		justify-content: stretch;
		overflow-x: visible;
		padding-right: 20px;
		padding-left: 20px;
	}

	body.marby-forms-page .marby-forms-question-nav a {
		display: block;
		width: 100%;
		text-align: center;
	}

	.marby-forms-question-intro {
		padding-top: 56px;
		padding-right: 20px;
		padding-left: 20px;
	}

	.marby-forms-question-intro-number {
		position: static;
		margin-bottom: 14px;
	}

	.marby-forms-question-section {
		padding-bottom: 56px;
	}

	.marby-forms-question-card {
		padding: 22px;
	}

	.marby-forms-review-section,
	.marby-form .marby-save-actions {
		padding-right: 20px;
		padding-left: 20px;
	}

	.frm-brand-persona-content-behaviours {
		width: calc(100% + 40px);
		margin: 56px -20px -56px;
		padding: 56px 20px;
	}

	.frm-brand-persona-content-behaviours-head {
		grid-template-columns: 1fr;
		gap: 14px;
		margin-bottom: 26px;
	}

	.frm-brand-persona-content-behaviours .frm-brand-persona-behaviours-editor {
		grid-template-columns: 1fr;
	}
}

/* Brand Style uses the shared form shells; its source and media analysis remain page-specific. */
body .frm-brand-style-page {
	width: 100vw !important;
	max-width: none !important;
	margin: 0 !important;
}

.frm-brand-style-page .marby-forms-page-header,
.frm-brand-style-page .marby-forms-question-header,
.frm-brand-style-page .frm-brand-style-builder {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.frm-brand-style-page .frm-brand-style-question-intro {
	margin: 0 auto 34px !important;
}

.frm-brand-style-page .frm-brand-style-question {
	width: 100% !important;
	max-width: none !important;
	margin: 0 auto;
}

.frm-brand-style-page .marby-form {
	width: 100% !important;
	max-width: none !important;
}

.frm-brand-style-page .frm-brand-style-control-panel {
	width: 100% !important;
	max-width: none !important;
	margin: 0;
}

.frm-brand-style-page .frm-brand-style-create-main {
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	margin: 0 auto 20px;
	border-radius: 16px;
	overflow: hidden;
}

.frm-brand-style-page
	.frm-brand-style-control-panel.marby-forms-question-card-list {
	width: 100% !important;
	max-width: none !important;
	padding: 0;
}

.frm-brand-style-page .frm-brand-style-controls {
	display: grid;
	gap: 20px;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
	margin: 0 auto;
}

.frm-brand-style-page .frm-brand-style-control-panel.is-upload {
	padding: 28px 32px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: 16px !important;
	background: var(--marby-color-soft);
	overflow: hidden;
}

.frm-brand-style-page
	.frm-brand-style-control-panel.is-upload
	.marby-forms-question-card-heading {
	margin-bottom: 20px;
}

.frm-brand-style-page .frm-brand-style-primary-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 20px !important;
}

.frm-brand-style-page
	.frm-brand-style-primary-grid
	.marby-forms-question-card-heading {
	margin-bottom: 8px;
}

.frm-brand-style-page .frm-brand-style-connections-card {
	margin-top: 20px;
}

.frm-brand-style-page .frm-brand-style-connections-card .marby-input-row {
	padding-bottom: 20px;
}

.frm-brand-style-page
	.frm-brand-style-connections-card
	.marby-input-row:last-child {
	padding-bottom: 0;
}

.frm-brand-style-page
	.frm-brand-style-connections
	.marby-forms-double-order-list-fields {
	padding: 20px 32px 28px;
}

.frm-brand-style-page .frm-brand-style-connections .frm-brand-style-url-grid {
	display: grid;
	gap: 18px;
}

.frm-brand-style-page .frm-brand-style-connections .mbs-social-source-empty {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 14px;
	align-items: center;
	padding: 20px 18px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-soft);
}

.frm-brand-style-page
	.frm-brand-style-connections-card
	.mbs-social-source-empty {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 20px;
	align-items: center;
	padding: 20px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-soft);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-style-page
	.frm-brand-style-connections-card
	.mbs-social-source-empty
	p {
	margin: 0;
}
*/

.frm-brand-style-page
	.frm-brand-style-connections-card
	.mbs-social-source-empty
	.mbs-button {
	justify-self: end;
	width: 300px;
	min-height: 46px;
	padding: 0 18px;
	border: 1px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font: inherit;
	font-weight: var(--marby-font-weight-bold);
	line-height: 44px;
	text-align: center;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-style-page .frm-brand-style-connections .mbs-social-source-empty p {
	margin: 0;
}
*/

.frm-brand-style-page
	.frm-brand-style-connections
	.frm-brand-style-url-grid
	input[readonly] {
	box-sizing: border-box;
	width: 100%;
	min-height: 48px;
	padding: 12px 14px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-soft);
	color: var(--marby-color-marby-blue);
	cursor: default;
}

.frm-brand-style-page
	.frm-brand-style-connections
	.mbs-social-source-empty
	.mbs-button {
	width: 300px;
	min-height: 46px;
	margin: 0;
	padding: 0 18px;
	border: 1px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font: inherit;
	font-weight: var(--marby-font-weight-bold);
	line-height: 44px;
	text-align: center;
}

.frm-brand-style-page
	.marby-image-upload-wrap:has(.marby-upload-preview)
	.marby-image-dropzone {
	display: block;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.frm-brand-style-page
	.marby-image-upload-wrap:has(.marby-upload-preview)
	.marby-image-dropzone::before,
.frm-brand-style-page
	.marby-image-upload-wrap:has(.marby-upload-preview)
	.marby-image-dropzone-instructions {
	display: none;
}

.frm-brand-style-page .marby-image-upload-preview-list {
	display: flex !important;
	flex-wrap: nowrap;
	gap: 14px !important;
	align-items: flex-start;
	overflow-x: auto;
}

.frm-brand-style-page .marby-upload-preview,
.frm-brand-style-page .frm-brand-style-add-image {
	position: relative;
	flex: 1 1 calc((100% - 56px) / 5);
	width: auto;
	max-width: calc((100% - 56px) / 5);
	aspect-ratio: 1;
	height: auto;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-xs);
	background: var(--marby-color-white);
}

.frm-brand-style-page .marby-upload-preview img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: cover !important;
}

.frm-brand-style-page .frm-brand-style-add-image {
	display: grid;
	align-self: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	max-width: none;
	place-items: center;
	border: 0 !important;
	color: var(--marby-color-white);
	font-size: 0;
	cursor: pointer;
}

.frm-brand-style-page .frm-brand-style-add-image::before {
	content: "+";
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	font-size: 30px;
	font-weight: 300;
	line-height: 1;
}

.frm-brand-style-page .marby-image-preview-delete {
	display: grid !important;
	width: 30px !important;
	height: 30px !important;
	place-items: center;
	position: absolute !important;
	top: 8px !important;
	left: 8px !important;
	z-index: 2;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-white) !important;
}

.frm-brand-style-page .frm-brand-style-create-action {
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter)))) !important;
	margin: 20px auto 0 !important;
	padding-right: 32px !important;
	padding-left: 32px !important;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-style-page
	.frm-brand-style-create-action
	.marby-forms-ai-actions-copy
	h3,
.frm-brand-style-page
	.frm-brand-style-create-action
	.frm-brand-style-build-copy
	h3 {
	color: var(--marby-color-white) !important;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-style-page
	.frm-brand-style-create-action
	.marby-forms-ai-actions-copy
	p,
.frm-brand-style-page
	.frm-brand-style-create-action
	.frm-brand-style-build-copy
	p {
	color: var(--marby-color-white);
}
*/

.frm-brand-style-page .marby-ai-editor-wrap {
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter)))) !important;
	max-width: none !important;
	margin: 40px auto 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.frm-brand-style-page .frm-brand-style-response {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

/* Brand Style's dedicated analysis output follows the same response-column
   measure as the shared question and response sections. */
.frm-brand-style-page .mbs-root,
#mbs-root.mbs-root {
	left: 50% !important;
	width: min(1480px, calc(100vw - (2 * var(--marby-page-gutter)))) !important;
	max-width: none !important;
	margin: 40px 0 0 !important;
	transform: translateX(-50%) !important;
}

/* The individual Brand Style analysis sections must not reintroduce their
   own narrower measure inside the shared response column. */
#mbs-root.mbs-root > .mbs-brand-analysis,
#mbs-root.mbs-root > .mbs-perception-gap,
#mbs-root.mbs-root > .mbs-compare-directions,
#mbs-root.mbs-root > .mbs-choose-identity,
#mbs-root.mbs-root > .mbs-brand-consistency,
#mbs-root.mbs-root > .mbs-brand-style-save {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
}

/* Brand Style response 01 retains its live analysis functionality inside the
   shared response-group shell. Response 02 uses the shared stacked
   double-order-list shell while keeping its existing live finding elements. */
#mbs-root.mbs-root .is-brand-style-current-analysis {
	padding: 0 !important;
}

#mbs-root.mbs-root .is-brand-style-web-social {
	margin-top: 20px;
}

#mbs-root.mbs-root .is-brand-style-web-social .mbs-review-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 16px !important;
	width: 90%;
	margin: 0 auto;
}

#mbs-root.mbs-root .is-brand-style-web-social .mbs-review-card {
	padding: 0 !important;
	border: 1px solid var(--marby-color-border) !important;
	border-radius: var(--marby-radius-xl) !important;
	background: var(--marby-color-white) !important;
}

#mbs-root.mbs-root .is-brand-style-web-social .mbs-review-card > header {
	display: grid !important;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 22px 28px;
	background: var(--marby-color-black);
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .is-brand-style-web-social .mbs-review-card > header h3 {
	margin: 0 !important;
	color: var(--marby-color-white) !important;
}
*/

#mbs-root.mbs-root .is-brand-style-web-social .mbs-review-finding {
	margin: 0 !important;
	padding: 20px 28px;
	border-top: 1px solid var(--marby-color-border-light);
}

/* Brand Style response 03 keeps its interactive trait controls while using
   the shared response shell and neutral comparison cards. */
#mbs-root.mbs-root .is-brand-style-perception-gap {
	margin-top: 20px;
}

#mbs-root.mbs-root .is-brand-style-perception-gap > .mbs-results-heading,
#mbs-root.mbs-root .is-brand-style-perception-gap > .mbs-gap-insight {
	display: none !important;
}

/* Retained markup for the pre-migration insight is suppressed everywhere;
   the live response now renders in the shared insight panel below. */
.mbs-gap-insight {
	display: none !important;
}

#mbs-root.mbs-root .is-brand-style-perception-gap .mbs-perception-card {
	border: 1px solid var(--marby-color-border) !important;
	border-left: 1px solid var(--marby-color-border) !important;
	border-radius: var(--marby-radius-xl) !important;
	background: var(--marby-color-white) !important;
}

#mbs-root.mbs-root .frm-brand-style-mai-insight {
	display: grid;
	margin-top: 18px;
	padding: 26px 28px;
	border: 1px solid var(--marby-color-border);
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
}

/*
#mbs-root.mbs-root .frm-brand-style-mai-insight .marby-eyebrow {
	margin: 0 0 6px;
}
*/
#mbs-root.mbs-root .frm-brand-style-mai-insight-heading {
	display: flex;
	gap: 10px;
	align-items: center;
	margin-bottom: 8px;
}

/*
#mbs-root.mbs-root .frm-brand-style-mai-insight-heading .marby-eyebrow {
	margin: 0;
}
*/

#mbs-root.mbs-root .frm-brand-style-mai-insight strong {
	display: block;
	margin-bottom: 8px;
	font-size: 20px;
	line-height: 1.35;
}

#mbs-root.mbs-root .frm-brand-style-mai-insight .mbs-gap-insight-copy {
	margin: 0;
}

/* Brand Style response 04: two live direction boards with editable palette
   cards, retained storyboards, and ordered visual attributes. */
#mbs-root.mbs-root .is-brand-style-directions {
	margin-top: 20px;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-summary {
	display: none !important;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-board {
	border-radius: var(--marby-radius-xl);
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-palette-editor {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-palette-card {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-rows: 68px auto 42px;
	gap: 0;
	padding: 0;
	overflow: hidden;
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card:nth-child(-n + 2) {
	grid-column: span 3;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card:nth-child(n + 3) {
	grid-column: span 2;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-palette-card > h4 {
	grid-column: 1 / -1;
	grid-row: 2;
	margin: 0;
	padding: 12px 14px 6px;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	input[type="color"] {
	grid-column: 1 / -1;
	grid-row: 1;
	width: 100%;
	height: 68px;
	border: 0;
	padding: 0;
	border-radius: var(--marby-radius-xl) var(--marby-radius-xl) 0 0;
	background: transparent;
	appearance: none;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	input[type="color"]::-webkit-color-swatch-wrapper {
	padding: 0;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	input[type="color"]::-webkit-color-swatch {
	border: 0;
	border-radius: var(--marby-radius-xl) var(--marby-radius-xl) 0 0;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	input[type="text"] {
	grid-column: 1;
	height: 42px;
	padding: 8px 14px;
	border: 0;
	border-radius: 0;
	background: transparent;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	.mbs-direction-colour-name {
	grid-row: 3;
	grid-column: 1;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-palette-card
	.mbs-direction-colour-hex {
	grid-row: 3;
	grid-column: 2;
	color: var(--marby-color-muted);
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-storyboard-heading {
	margin-top: 38px;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-storyboard-heading span {
	display: block;
	margin: 4px 0 0;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-lead {
	min-height: 72px;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details {
	counter-reset: brand-style-attribute;
	width: 100%;
	gap: 0;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details div {
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 12px;
	padding: 18px 0;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-direction-details
	div::before {
	counter-increment: brand-style-attribute;
	content: counter(brand-style-attribute, decimal-leading-zero);
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 11px;
	font-weight: var(--marby-font-weight-bold);
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details dt,
#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details dd {
	grid-column: 2;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details dt {
	grid-row: 1;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-details dd {
	grid-row: 2;
}

/* The Brand Style analysis headings use the same response number and theme
   H2 treatment as every other shared form response. */
#mbs-root.mbs-root .mbs-current-analysis > .mbs-results-heading > div,
#mbs-root.mbs-root .is-brand-style-web-social > .mbs-results-heading > div,
#mbs-root.mbs-root .is-brand-style-directions > .mbs-results-heading > div {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

#mbs-root.mbs-root .mbs-current-analysis .mbs-section-number,
#mbs-root.mbs-root .is-brand-style-directions .mbs-section-number,
#mbs-root.mbs-root
	.is-brand-style-web-social
	> .mbs-results-heading
	> div::before {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 12px;
	font-weight: var(--marby-font-weight-bold);
}

#mbs-root.mbs-root
	.is-brand-style-web-social
	> .mbs-results-heading
	> div::before {
	content: "02";
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .mbs-current-analysis > .mbs-results-heading h2,
#mbs-root.mbs-root .is-brand-style-web-social > .mbs-results-heading h2,
#mbs-root.mbs-root .is-brand-style-directions > .mbs-results-heading h2 {
	margin: 0 !important;
	font-family: var(--marby-font-heading) !important;
	font-size: clamp(30px, 3.5vw, 48px) !important;
	font-weight: var(--marby-font-weight-light) !important;
	line-height: 1.1 !important;
	letter-spacing: -0.035em;
}
*/

/* Brand Style responses 01, 02, 05, and 06 use the same shared response
   hierarchy as 03 and 04: number, bordered eyebrow, theme H2, then copy. */
#mbs-root.mbs-root
	.is-brand-style-current-analysis
	> .mbs-current-analysis
	> .mbs-results-heading,
#mbs-root.mbs-root .is-brand-style-web-social > .mbs-results-heading,
#mbs-root.mbs-root .is-brand-style-identity > .mbs-results-heading,
#mbs-root.mbs-root .is-brand-style-consistency > .mbs-results-heading {
	margin-bottom: 28px;
}

#mbs-root.mbs-root .is-brand-style-identity,
#mbs-root.mbs-root .is-brand-style-consistency {
	margin-top: 40px !important;
	margin-bottom: 0 !important;
	padding: 40px !important;
	border: 1px solid var(--marby-color-border) !important;
	border-radius: var(--marby-radius-xl) !important;
	background: var(--marby-color-white) !important;
}

#mbs-root.mbs-root .is-brand-style-current-analysis .mbs-results-heading > div,
#mbs-root.mbs-root .is-brand-style-web-social .mbs-results-heading > div,
#mbs-root.mbs-root .is-brand-style-identity .mbs-results-heading > div,
#mbs-root.mbs-root .is-brand-style-consistency .mbs-results-heading > div {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .is-brand-style-current-analysis .mbs-results-heading > p,
#mbs-root.mbs-root .is-brand-style-web-social .mbs-results-heading > p {
	display: none !important;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root
	.is-brand-style-current-analysis
	.marby-forms-response-group-intro-copy
	h2,
#mbs-root.mbs-root
	.is-brand-style-web-social
	.marby-forms-response-group-intro-copy
	h2,
#mbs-root.mbs-root
	.is-brand-style-identity
	.marby-forms-response-group-intro-copy
	h2,
#mbs-root.mbs-root
	.is-brand-style-consistency
	.marby-forms-response-group-intro-copy
	h2 {
	margin: 0 !important;
	font-family: var(--marby-font-heading) !important;
	font-size: clamp(30px, 3.5vw, 48px) !important;
	font-weight: var(--marby-font-weight-light) !important;
	line-height: 1.1 !important;
	letter-spacing: -0.035em;
}
*/

#mbs-root.mbs-root .mbs-response-description {
	margin: 10px 0 0 !important;
	color: var(--marby-color-muted);
}

/* Every Brand Direction component is its own aligned panel. A consistent
   intro minimum keeps the subsequent palette, storyboard, and attributes
   rows aligned even when one column has an extra line of copy. */
#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-board {
	display: grid;
	gap: 16px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-intro-panel,
#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-part {
	box-sizing: border-box;
	padding: 24px;
	border: 1px solid var(--marby-color-border);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-intro-panel {
	min-height: 172px;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-part-heading {
	margin: 0 0 16px;
}

#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions {
	background: var(--marby-color-black) !important;
}

#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-white) !important;
}

#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity:hover,
#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity:focus-visible {
	border-color: var(--marby-color-white) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

.frm-competitive-analysis-page .is-competitive-market-patterns {
	border-left: 0;
}

.frm-competitive-analysis-page
	.is-competitive-market-patterns
	.marby-forms-response-ordered-item {
	border-left: 4px solid var(--marby-color-marby-blue);
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-direction-palette-panel
	.mbs-palette-editor {
	margin: 0;
}

#mbs-root.mbs-root
	.is-brand-style-directions
	.mbs-direction-storyboard-panel
	.mbs-storyboard-heading {
	margin-top: 0;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-attributes-panel {
	padding-bottom: 0;
}

/* Brand Drift Protection retains its saved checkbox value but presents a
   button control, matching the shared response treatment. */
#mbs-root.mbs-root
	.is-brand-style-consistency
	.frm-brand-style-drift-protection {
	display: grid;
	gap: 20px;
	margin: 0;
	padding: 28px 30px;
	border: 1px solid var(--marby-color-border);
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-xl);
	background: var(--marby-color-white);
}

#mbs-root.mbs-root .frm-brand-style-drift-copy {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .frm-brand-style-drift-copy h3 {
	margin: 4px 0 8px;
}
*/ /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .frm-brand-style-drift-copy p {
	margin: 0;
}
*/

#mbs-root.mbs-root .frm-brand-style-drift-action {
	display: flex;
	justify-content: flex-end;
	padding-top: 20px;
	border-top: 1px solid var(--marby-color-border-light);
}

#mbs-root.mbs-root .frm-brand-style-drift-action input {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

#mbs-root.mbs-root .mbs-drift-toggle {
	min-width: 300px;
	border: 1px solid var(--marby-color-marby-blue);
	border-radius: 999px;
	padding: 13px 22px;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font: inherit;
	font-weight: var(--marby-font-weight-bold);
	cursor: pointer;
}

#mbs-root.mbs-root .mbs-drift-toggle:hover,
#mbs-root.mbs-root .mbs-drift-toggle:focus-visible {
	background: var(--marby-color-white);
	color: var(--marby-color-marby-blue);
}

/* Brand Style response headings now use the shared header structure directly:
   number and copy are siblings, never nested inside an old result grid. */
#mbs-root.mbs-root
	.is-brand-style-current-analysis
	.mbs-results-heading
	> .marby-forms-response-group-intro-copy,
#mbs-root.mbs-root
	.is-brand-style-web-social
	.mbs-results-heading
	> .marby-forms-response-group-intro-copy,
#mbs-root.mbs-root
	.is-brand-style-identity
	.mbs-results-heading
	> .marby-forms-response-group-intro-copy,
#mbs-root.mbs-root
	.is-brand-style-consistency
	.mbs-results-heading
	> .marby-forms-response-group-intro-copy {
	display: block !important;
	grid-template-columns: none !important;
	gap: 0 !important;
}

#mbs-root.mbs-root
	.is-brand-style-web-social
	> .mbs-results-heading
	> div::before {
	content: none !important;
	display: none !important;
}

/* renderDirectionPalette retains its legacy internal label for compatibility;
   the shared direction part supplies the single visible heading. */
#mbs-root.mbs-root .is-brand-style-directions .mbs-palette-heading {
	display: none !important;
}

/* Grid subrows make both direction columns use the same row heights. */
#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-grid {
	grid-template-rows: auto auto auto auto;
	gap: 16px;
	align-items: stretch;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-board {
	grid-row: span 4;
	grid-template-rows: subgrid;
	align-content: stretch;
}

/* Brand Style's static save action uses the same shared Save layout as every
   form, including the second-row previous/next navigation. */
#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 300px;
	grid-template-areas:
		"copy save"
		"back next"
		"status status";
	gap: 18px 24px;
	align-items: center;
	margin: 40px 0 0 !important;
	padding: 38px var(--marby-page-gutter) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--marby-color-black) !important;
}

#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions,
#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions h3,
#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions p {
	color: var(--marby-color-white) !important;
}

#mbs-root.mbs-root .mbs-brand-style-save .marby-forms-save-actions-copy {
	grid-area: copy;
}
#mbs-root.mbs-root .mbs-brand-style-save .marby-forms-save-controls {
	display: contents;
}
#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity {
	grid-area: save;
	justify-self: end;
	width: 300px;
}
#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn.is-previous {
	grid-area: back;
	justify-self: start;
	width: 300px;
}
#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn.is-next {
	grid-area: next;
	justify-self: end;
	width: 300px;
}
#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity-status {
	grid-area: status;
}

/* Page navigation is the tan inverse of the white Save action across every
   shared save panel, including Brand Style's static save section. 
body .marby-form .marby-save-actions .page-nav-btn,
#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn {
	background: var(--marby-color-marby-blue) !important;
	background-color: var(--marby-color-marby-blue) !important;
	border-color: var(--marby-color-white) !important;
	color: var(--marby-color-white) !important;
}

body .marby-form .marby-save-actions .page-nav-btn:hover,
body .marby-form .marby-save-actions .page-nav-btn:focus-visible,
#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn:hover,
#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn:focus-visible {
	background: var(--marby-color-white) !important;
	background-color: var(--marby-color-white) !important;
	border-color: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-marby-blue) !important;
}
*/
/* Brand Style response shells remain full-width. Their actual response data
   follows the shared readable 90% measure inside the shell. */
#mbs-root.mbs-root
	> .marby-forms-response-group:not(.is-brand-style-web-social) {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

#mbs-root.mbs-root .mbs-current-analysis > .mbs-analysis-layout,
#mbs-root.mbs-root .is-brand-style-perception-gap .mbs-perception-columns,
#mbs-root.mbs-root .is-brand-style-perception-gap .frm-brand-style-mai-insight,
#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-grid,
#mbs-root.mbs-root .is-brand-style-identity .mbs-identity-choice-grid,
#mbs-root.mbs-root
	.is-brand-style-consistency
	.frm-brand-style-drift-protection {
	width: 90% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

#mbs-root.mbs-root > .mbs-brand-style-save {
	width: 100% !important;
}

/* Response 01 uses body copy for the MAI summary, with its evidence note
   intentionally placed after the live score graphics. */
#mbs-root.mbs-root .mbs-analysis-summary-title {
	margin: 0 0 18px;
	font-size: 18px;
	line-height: 1.45;
}

#mbs-root.mbs-root .mbs-analysis-summary-copy {
	margin: 22px 0 0;
	color: var(--marby-color-muted);
}

/* Response 02 semantic icons share the same blue circular treatment. */
#mbs-root.mbs-root
	.is-brand-style-web-social
	.mbs-review-card
	> header
	.marby-forms-response-icon {
	display: grid;
	width: 56px;
	height: 56px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 26px;
	line-height: 1;
}

/* Response 03 trait chips stay compact on one row whenever the column allows. */
#mbs-root.mbs-root .mbs-trait-buttons button {
	padding: 10px !important;
	font-size: 12px !important;
}

#mbs-root.mbs-root .is-brand-style-directions .mbs-storyboard-heading span {
	display: none !important;
}

/* Brand Style image controls use the same reversible hover language. */
.frm-brand-style-page .marby-image-preview-delete:hover,
.frm-brand-style-page .marby-image-preview-delete:focus-visible {
	border: 1px solid var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

.frm-brand-style-page .frm-brand-style-add-image:hover::before,
.frm-brand-style-page .frm-brand-style-add-image:focus-visible::before {
	box-sizing: border-box;
	border: 1px solid var(--marby-color-marby-blue);
	background: var(--marby-color-white);
	color: var(--marby-color-marby-blue);
}

/* The Drift Protection copy and action each use the panel's full measure. */
#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-copy,
#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-action {
	width: 100%;
}

/* The Brand Style root is intentionally column-bound.  The save section is
   the one exception: it is a full-viewport shared action band. */
#mbs-root.mbs-root > .mbs-brand-style-save.marby-save-actions {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

/* Keep the Drift panel's data at the shared 90% measure, while allowing its
   copy and action row to use every pixel of that panel. */
#mbs-root.mbs-root
	.is-brand-style-consistency
	.frm-brand-style-drift-protection {
	box-sizing: border-box;
	max-width: none !important;
	grid-template-columns: minmax(0, 1fr);
}

#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-copy,
#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-action {
	box-sizing: border-box;
	min-width: 0;
	max-width: none !important;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-copy p {
	max-width: none !important;
}
*/

#mbs-root.mbs-root .is-brand-style-consistency .frm-brand-style-drift-action {
	display: flex !important;
	justify-content: flex-end !important;
}

#mbs-root.mbs-root .is-brand-style-consistency .mbs-drift-toggle {
	margin-left: auto;
}

/* Identity choices reverse to their panel colour on hover and keyboard focus. */
#mbs-root.mbs-root .mbs-identity-choice.is-preserve .mbs-identity-toggle:hover,
#mbs-root.mbs-root
	.mbs-identity-choice.is-preserve
	.mbs-identity-toggle:focus-visible {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

#mbs-root.mbs-root .mbs-identity-choice.is-reimagine .mbs-identity-toggle:hover,
#mbs-root.mbs-root
	.mbs-identity-choice.is-reimagine
	.mbs-identity-toggle:focus-visible {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

@media (max-width: 767px) {
	#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-grid {
		grid-template-rows: none;
	}

	#mbs-root.mbs-root .is-brand-style-directions .mbs-direction-board {
		grid-row: auto;
		grid-template-rows: auto;
	}

	#mbs-root.mbs-root .mbs-brand-style-save.marby-save-actions {
		grid-template-columns: 1fr;
		grid-template-areas: "copy" "save" "back" "next" "status";
	}

	#mbs-root.mbs-root .mbs-brand-style-save .mbs-save-identity,
	#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn.is-previous,
	#mbs-root.mbs-root .mbs-brand-style-save .page-nav-btn.is-next {
		justify-self: stretch;
		width: 100%;
	}
}

.frm-brand-style-page .frm-brand-style-connections {
	margin-top: 20px;
}

/* Brand DNA Report question foundation: the long report renderer remains
   page-specific, while its page, question, and Ask MAI journey use the shared
   Forms components. */
body .frm-brand-dna-report-page {
	width: 100vw !important;
	max-width: none !important;
	margin: 0 !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-builder,
.frm-brand-dna-report-page .marby-form,
.frm-brand-dna-report-page .marby-question {
	width: 100% !important;
	max-width: none !important;
	margin: 0;
}

.frm-brand-dna-report-page .marby-question {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.frm-brand-dna-report-page .marby-forms-question-intro,
.frm-brand-dna-report-page .marby-forms-question-card-list,
.frm-brand-dna-report-page
	.marby-ai-actions.is-shared-brand-dna-report-actions {
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter))));
}

.frm-brand-dna-report-page .marby-forms-question-intro {
	margin: 0 auto;
}

/* The Brand DNA Report's long renderer uses the same outer response measure
   as its question cards. Individual report components stay page-specific. */
.frm-brand-dna-report-page #frm-brand-dna-report-review {
	box-sizing: border-box;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter)))) !important;
	max-width: none !important;
	margin: 40px auto 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.frm-brand-dna-report-page
	#frm-brand-dna-report-review
	.marby-forms-review-intro {
	width: 100%;
}

.frm-brand-dna-report-page
	#frm-brand-dna-report-review
	.frm-brand-dna-report-output {
	width: 100%;
}

/* Brand DNA Report response grammar. The report keeps its own data model, but
   its response cards use the shared Forms order-list and double-order-list
   presentation from this point forward. */
:root {
	--marby-forms-response-content-width: 90%;
}

/* Shared response-list inset for every Brand DNA renderer that uses the
   standard response-group shell. Page renderers can reuse the same token. */
.marby-forms-response-group > .marby-forms-response-ordered-list,
.marby-forms-response-group > .marby-forms-double-order-list {
	width: var(--marby-forms-response-content-width);
	margin-right: auto;
	margin-left: auto;
}

.frm-brand-dna-report-page .frm-brand-dna-report-output {
	display: grid;
	gap: 24px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-card {
	min-width: 0;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-lg);
	background: var(--marby-color-white);
	box-shadow: none;
	overflow: hidden;
}

.frm-brand-dna-report-page .frm-brand-dna-report-section-heading {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 28px 32px 20px;
	border: 0;
}

.frm-brand-dna-report-page .frm-brand-dna-report-section-heading > span {
	display: grid;
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	place-items: center;
	border-radius: 11px;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 14px;
	font-weight: 700;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-dna-report-page .frm-brand-dna-report-section-heading h2 {
	margin: 0;
}
*/

.frm-brand-dna-report-page .frm-brand-dna-report-card-body {
	padding: 0 32px 32px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-foundation-grid,
.frm-brand-dna-report-page .frm-brand-dna-report-analysis-grid,
.frm-brand-dna-report-page .frm-brand-dna-report-foundation-first {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 24px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-field {
	min-width: 0;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-card-body,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.marby-forms-response-ordered-list {
	counter-reset: report-order;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-field {
	position: relative;
	padding: 20px 20px 20px 64px;
	border: 1px solid var(--marby-color-border-light);
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
	counter-increment: report-order;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-field
	+ .frm-brand-dna-report-field {
	margin-top: 12px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-field::before {
	display: grid;
	position: absolute;
	left: 20px;
	top: 20px;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: counter(report-order);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-field:last-child {
	margin-bottom: 0;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	> .frm-brand-dna-report-card-body
	> .frm-brand-dna-report-field,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	> .frm-brand-dna-report-card-body
	> .marby-forms-response-ordered-list,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	> .frm-brand-dna-report-card-body
	> .frm-brand-dna-report-style-column,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-order-list
	.frm-brand-dna-report-opportunities {
	width: var(--marby-forms-response-content-width);
	margin-right: auto;
	margin-left: auto;
}

/* Report-specific use of the shared x-small textarea size. */
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-xsmall-textareas
	.frm-brand-dna-report-textarea,
.frm-brand-dna-report-page
	.frm-brand-dna-report-pain
	> .frm-brand-dna-report-field:first-of-type
	.frm-brand-dna-report-textarea,
.frm-brand-dna-report-page
	.frm-brand-dna-report-list-row
	.frm-brand-dna-report-field:first-child
	.frm-brand-dna-report-textarea,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	.frm-brand-dna-report-field:first-child
	.frm-brand-dna-report-textarea {
	min-height: calc(2lh + var(--marby-textarea-extra-height, 20px)) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-quote-list
	.frm-brand-dna-report-field::before {
	content: "\201C";
	font-size: 25px;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-dna-report-page .frm-brand-dna-report-field h3,
.frm-brand-dna-report-page .frm-brand-dna-report-name {
	margin: 0 0 7px;
}
*/

.frm-brand-dna-report-page .frm-brand-dna-report-textarea {
	box-sizing: border-box;
	display: block;
	width: 100%;
	min-width: 0;
	padding: 10px 12px;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: var(--marby-radius-xs);
	background: transparent;
	color: var(--marby-color-text);
	font: inherit;
	line-height: 1.55;
	resize: none;
}

.frm-brand-dna-report-page .frm-brand-dna-report-textarea:hover {
	border-color: var(--marby-color-border-light);
}

.frm-brand-dna-report-page .frm-brand-dna-report-textarea:focus {
	border-color: var(--marby-color-marby-blue);
	outline: 0;
	background: var(--marby-color-white);
	box-shadow: 0 0 0 3px rgba(112, 170, 221, 0.14);
	resize: vertical;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-quote-icon
	.frm-brand-dna-report-section-heading
	> span,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-star-icon
	.frm-brand-dna-report-section-heading
	> span {
	font-size: 26px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-double-order-list
	.frm-brand-dna-report-card-body
	> .marby-forms-double-order-list {
	width: var(--marby-forms-response-content-width);
	margin: 0 auto;
}

.frm-brand-dna-report-page .frm-brand-dna-report-pain-grid,
.frm-brand-dna-report-page .frm-brand-dna-report-differentiators,
.frm-brand-dna-report-page .frm-brand-dna-report-competitors,
.frm-brand-dna-report-page .frm-brand-dna-report-channel-grid,
.frm-brand-dna-report-page .frm-brand-dna-report-promotions {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-pain,
.frm-brand-dna-report-page .frm-brand-dna-report-list-row,
.frm-brand-dna-report-page .frm-brand-dna-report-competitor,
.frm-brand-dna-report-page .frm-brand-dna-report-channel,
.frm-brand-dna-report-page .frm-brand-dna-report-promotion {
	box-sizing: border-box;
	min-width: 0;
	padding: 20px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
}

.frm-brand-dna-report-page .frm-brand-dna-report-pain,
.frm-brand-dna-report-page .frm-brand-dna-report-list-row,
.frm-brand-dna-report-page .frm-brand-dna-report-promotion {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 14px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-pain
	> .frm-brand-dna-report-field {
	grid-column: 2;
}

.frm-brand-dna-report-page .frm-brand-dna-report-pain > span,
.frm-brand-dna-report-page .frm-brand-dna-report-list-row > span,
.frm-brand-dna-report-page .frm-brand-dna-report-promotion > span {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-differentiators
	.frm-brand-dna-report-list-row
	> div {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 18px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-name,
.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	.frm-brand-dna-report-name {
	padding-bottom: 12px;
	border-bottom: 1px solid var(--marby-color-border-light);
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor,
.frm-brand-dna-report-page .frm-brand-dna-report-channel {
	counter-reset: report-sub-list;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field,
.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	.frm-brand-dna-report-field {
	position: relative;
	padding: 0 0 14px 46px;
	border-bottom: 1px solid var(--marby-color-border-light);
	counter-increment: report-sub-list;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field::before,
.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	.frm-brand-dna-report-field::before {
	display: grid;
	position: absolute;
	left: 0;
	top: 0;
	width: 28px;
	height: 28px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: counter(report-sub-list);
	font-size: 11px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field:last-child,
.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	.frm-brand-dna-report-field:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.frm-brand-dna-report-page .frm-brand-dna-report-channel-grid {
	counter-reset: report-channel;
}

.frm-brand-dna-report-page .frm-brand-dna-report-channel {
	position: relative;
	padding-left: 68px;
	counter-increment: report-channel;
}

.frm-brand-dna-report-page .frm-brand-dna-report-channel::before {
	display: grid;
	position: absolute;
	left: 20px;
	top: 20px;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: counter(report-channel);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page .frm-brand-dna-report-opportunities {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-opportunity {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 12px;
	padding: 16px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-md);
}

.frm-brand-dna-report-page .frm-brand-dna-report-opportunity > span {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.frm-brand-dna-report-card-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 18px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-style-column {
	min-width: 0;
	padding: 18px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-md);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-panel {
	grid-column: 1 / -1;
	width: var(--marby-forms-response-content-width);
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	border: 0;
	background: transparent;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-panel
	> h3 {
	margin: 12px 0;
}
*/

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-list {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 14px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	overflow: hidden;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-md);
	background: var(--marby-color-white);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-swatch {
	width: 100%;
	height: 96px;
	border: 0;
	border-radius: 0;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-label,
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-value {
	display: block;
	padding: 0 15px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-label {
	padding-top: 14px;
	color: var(--marby-color-marby-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.marby-colour-palette-value {
	padding-top: 8px;
	padding-bottom: 16px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-priority-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-priority-grid
	.frm-brand-dna-report-field {
	box-sizing: border-box;
	padding: 18px 18px 18px 54px !important;
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-md) !important;
	background: var(--marby-color-light-tan);
}

/* Brand Summary adapters: its original renderer uses report-specific field
   markup, so map those fields onto the shared order/double-order appearance. */
.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.frm-brand-dna-report-style-column {
	padding: 0;
	border: 0;
	background: transparent;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.frm-brand-dna-report-style-column
	> .frm-brand-dna-report-field {
	position: relative;
	margin: 0 0 16px !important;
	padding: 20px 20px 20px 64px !important;
	border: 1px solid var(--marby-color-border-light) !important;
	border-left: 4px solid var(--marby-color-marby-blue) !important;
	border-radius: var(--marby-radius-md) !important;
	background: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.frm-brand-dna-report-style-column
	> .frm-brand-dna-report-field::before {
	display: grid;
	position: absolute;
	left: 20px;
	top: 20px;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: "✦";
	font-size: 13px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-card.is-brand-style
	.frm-brand-dna-report-style-column
	> .frm-brand-dna-report-field:last-child {
	margin-bottom: 0 !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitors {
	counter-reset: report-competitor;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor {
	position: relative;
	padding: 0 !important;
	overflow: hidden;
	border-radius: var(--marby-radius-xl) !important;
	box-shadow: var(--marby-shadow-soft);
	counter-increment: report-competitor;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor::before {
	display: grid;
	position: absolute;
	left: 28px;
	top: 28px;
	z-index: 1;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: var(--marby-color-white);
	color: var(--marby-color-black);
	content: counter(report-competitor, decimal-leading-zero);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-name {
	min-height: 100px;
	margin: 0 !important;
	padding: 28px 28px 28px 92px;
	border: 0;
	background: var(--marby-color-black);
	color: var(--marby-color-white);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field {
	padding: 20px 28px 20px 76px !important;
	border-right: 0 !important;
	border-bottom: 1px solid var(--marby-color-border-light) !important;
	border-left: 0 !important;
	border-radius: 0 !important;
	background: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field::before {
	left: 28px;
	top: 20px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field:last-child {
	border-bottom: 0 !important;
}

/* Brand Summary report channels and promotions are double-order data. Map the
   original report markup to the shared black-header card treatment. */
.frm-brand-dna-report-page .frm-brand-dna-report-channel-grid,
.frm-brand-dna-report-page .frm-brand-dna-report-promotions {
	counter-reset: report-double-card;
}

.frm-brand-dna-report-page .frm-brand-dna-report-channel,
.frm-brand-dna-report-page .frm-brand-dna-report-promotion {
	position: relative;
	display: block;
	padding: 0 !important;
	overflow: hidden;
	border-radius: var(--marby-radius-xl) !important;
	box-shadow: var(--marby-shadow-soft);
	counter-increment: report-double-card;
}

.frm-brand-dna-report-page .frm-brand-dna-report-channel::before,
.frm-brand-dna-report-page .frm-brand-dna-report-promotion::before {
	display: grid;
	position: absolute;
	left: 28px;
	top: 28px;
	z-index: 1;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 13px;
	background: var(--marby-color-white);
	color: var(--marby-color-black);
	content: counter(report-double-card, decimal-leading-zero);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	> .frm-brand-dna-report-name,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:first-child {
	box-sizing: border-box;
	display: block;
	min-height: 100px;
	margin: 0 !important;
	padding: 28px 28px 28px 92px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--marby-color-black) !important;
	color: var(--marby-color-white);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	> .frm-brand-dna-report-name {
	font-size: 24px;
	line-height: 1.25;
	color: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:first-child
	h3,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:first-child
	h4 {
	color: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-promotion > span {
	display: none;
}

.frm-brand-dna-report-page .frm-brand-dna-report-promotion > div {
	counter-reset: report-promotion-field;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:first-child
	h3,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:first-child
	textarea {
	color: var(--marby-color-white) !important;
}
*/

/*
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field.is-report-promotion-title
	.marby-eyebrow {
	display: inline-block;
	margin: 0 0 6px;
	color: var(--marby-color-marby-blue);
}
*/

.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	> .frm-brand-dna-report-field,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:not(:first-child) {
	position: relative;
	padding: 20px 28px 20px 76px !important;
	border-right: 0 !important;
	border-bottom: 1px solid var(--marby-color-border-light) !important;
	border-left: 0 !important;
	border-radius: 0 !important;
	background: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:not(:first-child) {
	counter-increment: report-promotion-field;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	> .frm-brand-dna-report-field::before,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:not(:first-child)::before {
	left: 28px;
	top: 20px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:not(:first-child)::before {
	display: grid;
	position: absolute;
	width: 32px;
	height: 32px;
	place-items: center;
	border-radius: 50%;
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
	content: counter(report-promotion-field);
	font-size: 12px;
	font-weight: 700;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-channel
	> .frm-brand-dna-report-field:last-child,
.frm-brand-dna-report-page
	.frm-brand-dna-report-promotion
	> div
	> .frm-brand-dna-report-field:last-child {
	border-bottom: 0 !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-pain.marby-forms-double-order-list-item,
.frm-brand-dna-report-page
	.frm-brand-dna-report-list-row.marby-forms-double-order-list-item {
	display: block;
	padding: 0 !important;
	overflow: hidden;
	border-radius: var(--marby-radius-xl) !important;
	background: var(--marby-color-white);
	box-shadow: var(--marby-shadow-soft);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-pain.marby-forms-double-order-list-item
	> header,
.frm-brand-dna-report-page
	.frm-brand-dna-report-list-row.marby-forms-double-order-list-item
	> header {
	display: grid;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-pain
	.marby-forms-response-icon,
.frm-brand-dna-report-page
	.frm-brand-dna-report-list-row
	.marby-forms-response-icon {
	border-radius: 13px;
	background: var(--marby-color-white);
	color: var(--marby-color-black);
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor-url {
	display: block;
	position: absolute;
	left: 92px;
	top: 24px;
	z-index: 2;
	margin: 0;
	padding: 6px 10px;
	border: 1px solid var(--marby-color-border);
	color: var(--marby-color-marby-blue);
	font-size: 11px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-name {
	padding-top: 68px;
	background: var(--marby-color-black) !important;
	color: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field.is-report-strength::before {
	content: "+";
	font-size: 18px;
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-competitor
	.frm-brand-dna-report-field.is-report-weakness::before {
	background: var(--marby-color-marby-blue);
	content: "−";
	font-size: 18px;
}

.frm-brand-dna-report-page .frm-brand-dna-report-opportunity {
	border-left: 4px solid var(--marby-color-marby-blue);
	border-radius: var(--marby-radius-md);
}

.frm-brand-dna-report-page
	.frm-brand-dna-report-priority-grid
	.frm-brand-dna-report-field {
	padding-left: 68px !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.frm-brand-dna-pitch-textarea {
	border-color: transparent !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.frm-brand-dna-pitch-textarea:hover {
	border-color: var(--marby-color-border-light) !important;
	background: var(--marby-color-soft-blue) !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.frm-brand-dna-pitch-textarea:focus {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page .marby-save-actions {
	width: 100%;
	margin: 40px 0 0;
	padding: 24px max(var(--marby-page-gutter), calc((100% - 1480px) / 2));
	background: var(--marby-color-marby-blue);
	color: var(--marby-color-white);
}

/* Brand DNA Report pitch questions reuse the same shared Forms journey as the
   main report question: full-width header, contained question/review content,
   Ask MAI panel, one response card, and shared save treatment. */
.frm-brand-dna-report-page .frm-brand-dna-pitch-question {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.marby-forms-question-intro,
.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.marby-forms-question-card-list,
.frm-brand-dna-report-page .frm-brand-dna-pitch-question .marby-ai-actions,
.frm-brand-dna-report-page .frm-brand-dna-pitch-question .marby-ai-editor-wrap {
	box-sizing: border-box;
	width: min(1480px, calc(100% - (2 * var(--marby-page-gutter)))) !important;
	max-width: none !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.marby-forms-question-intro {
	margin-top: 0 !important;
}

.frm-brand-dna-report-page .frm-brand-dna-pitch-question .marby-ai-editor-wrap {
	margin-top: 40px !important;
	padding: 0 !important;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.marby-forms-review-intro {
	width: 100%;
}

.frm-brand-dna-report-page
	.frm-brand-dna-pitch-question
	.marby-forms-response-card {
	margin-top: 0;
}

.frm-brand-dna-report-page .frm-brand-dna-pitch-question .marby-save-actions {
	width: 100%;
	margin-top: 40px;
} /* Superseded: .marby-public-page in marby-master.css owns heading and paragraph presentation.


.frm-brand-dna-report-page .marby-save-actions h3,
.frm-brand-dna-report-page .marby-save-actions p {
	color: var(--marby-color-white) !important;
}
*/
/*
body .frm-brand-dna-report-page .save-mai-btn {
	border-color: var(--marby-color-marby-blue) !important;
	background: var(--marby-color-white) !important;
	color: var(--marby-color-marby-blue) !important;
}

body .frm-brand-dna-report-page .save-mai-btn:hover,
body .frm-brand-dna-report-page .save-mai-btn:focus-visible {
	border-color: var(--marby-color-white) !important;
	background: var(--marby-color-marby-blue) !important;
	color: var(--marby-color-white) !important;
}
*/

@media (max-width: 820px) {
	.frm-brand-dna-report-page .frm-brand-dna-report-card-body,
	.frm-brand-dna-report-page .frm-brand-dna-report-section-heading {
		padding-left: 20px;
		padding-right: 20px;
	}

	.frm-brand-dna-report-page
		.frm-brand-dna-report-card.is-double-order-list
		.frm-brand-dna-report-card-body
		> .marby-forms-double-order-list {
		width: 100%;
	}

	.frm-brand-dna-report-page
		.frm-brand-dna-report-card.is-brand-style
		.frm-brand-dna-report-card-body {
		grid-template-columns: 1fr;
	}

	.frm-brand-dna-report-page
		.frm-brand-dna-report-card.is-brand-style
		.marby-colour-palette-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.frm-brand-style-page .frm-brand-style-connections .mbs-social-source-empty {
		grid-template-columns: 1fr;
	}

	.frm-brand-style-page
		.frm-brand-style-connections-card
		.mbs-social-source-empty {
		grid-template-columns: 1fr;
	}

	.frm-brand-style-page
		.frm-brand-style-connections-card
		.mbs-social-source-empty
		.mbs-button {
		justify-self: stretch;
		width: 100%;
	}

	.frm-brand-style-page
		.frm-brand-style-connections
		.mbs-social-source-empty
		.mbs-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.marby-forms-structured-form *,
	.marby-forms-structured-form *::before,
	.marby-forms-structured-form *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* Brand DNA Report sections 08 and 11 now use the canonical double-order-list
   markup. Retire their former report-only positioning so the shared component
   owns every header, number, field, and border. */
.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item {
	display: block !important;
	padding: 0 !important;
	border: 1px solid var(--marby-color-border-light) !important;
	border-radius: var(--marby-radius-xl) !important;
	background: var(--marby-color-white) !important;
	box-shadow: var(--marby-shadow-soft);
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item::before,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item::before {
	content: none !important;
	display: none !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item > header,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item > header {
	display: grid !important;
	position: static;
	padding: 24px 28px !important;
	border: 0 !important;
	background: var(--marby-color-black) !important;
	color: var(--marby-color-white) !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item .frm-brand-dna-report-competitor-url {
	display: block;
	position: static !important;
	margin: 0;
	padding: 0;
	border: 0 !important;
}

/* All form pages use the same useful initial-loading panel as the Planner.
   Typography remains owned by marby-master.css. */
.marby-form-loading[hidden] {
	display: none !important;
}

.marby-form-loading {
	margin: 18px 0 24px;
}

.marby-form-loading-status {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
	padding: 13px 15px;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-lg);
	background: var(--marby-color-white);
	color: var(--marby-color-black);
}

.marby-form-loading-status > div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.marby-form-loading-spinner {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	border: 3px solid var(--marby-color-border-light);
	border-top-color: var(--marby-color-marby-blue);
	border-radius: 999px;
	animation: marby-form-loading-spin 0.8s linear infinite;
}

.marby-form-loading-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.marby-form-loading-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-height: 130px;
	padding: 18px;
	overflow: hidden;
	border: 1px solid var(--marby-color-border-light);
	border-radius: var(--marby-radius-lg);
	background: var(--marby-color-white);
}

.marby-form-loading-card::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, transparent 20%, rgba(255, 255, 255, 0.88) 48%, transparent 76%);
	transform: translateX(-100%);
	animation: marby-form-loading-shimmer 1.35s ease-in-out infinite;
	content: "";
}

.marby-form-loading-card > span {
	display: block;
	width: 100%;
	height: 12px;
	border-radius: 999px;
	background: var(--marby-color-border-light);
}

.marby-form-loading-card > .is-short {
	width: 35%;
	height: 14px;
}

.marby-form-loading-card > .is-medium {
	width: 72%;
}

@keyframes marby-form-loading-spin {
	to {
		transform: rotate(360deg);
	}
}

@keyframes marby-form-loading-shimmer {
	to {
		transform: translateX(100%);
	}
}

@media (max-width: 720px) {
	.marby-form-loading-status {
		align-items: flex-start;
	}

	.marby-form-loading-cards {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.marby-form-loading-spinner,
	.marby-form-loading-card::after {
		animation: none;
	}
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item .marby-forms-double-order-list-fields,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item .marby-forms-double-order-list-fields {
	display: grid !important;
	gap: 0;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item .frm-brand-dna-report-field,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item .frm-brand-dna-report-field {
	position: static;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.frm-brand-dna-report-page .frm-brand-dna-report-competitor.marby-forms-double-order-list-item .frm-brand-dna-report-field::before,
.frm-brand-dna-report-page .frm-brand-dna-report-channel.marby-forms-double-order-list-item .frm-brand-dna-report-field::before {
	content: none !important;
	display: none !important;
}
