/* Page sections (Fact Strip, Intro Split, Card Grid, Simple Table, Numbered Steps, Option Cards, Form Split),
   2026-11-12, from the HubSpot Audit page redesign v1.0; Page Header and Closing CTA added 2026-11-13. Brand Standards v1.5: Andada Pro headings and numerals,
   Montserrat text, square corners, no shadows or gradients, a cyan rule under section headings. Cyan, seafoam and
   red-orange are never text on white; seafoam is the eyebrow and numeral color on dark blue and night. Nothing
   here animates, so sections never move or jump. */
.pgs {
	--pgs-night: #071431;
	--pgs-seafoam: #a9e8da;
	--pgs-ink: var(--base, #263040);
	--pgs-head: var(--color1, #19468d);
	--pgs-accent: var(--color1, #19468d);
	--pgs-line: var(--line, #dddddd);
	--pgs-card: #fff;
	position: relative;
	background: #fff;
	color: var(--pgs-ink);
	font-family: var(--font-base, Montserrat, Arial, sans-serif);
	padding: 96px 0;
}
.pgs--compact { padding: 56px 0; }
.pgs--gray { background: var(--grey, #ededed); }
.pgs--blue, .pgs--night {
	--pgs-ink: #fff;
	--pgs-head: #fff;
	--pgs-accent: var(--pgs-seafoam);
	--pgs-line: rgba(255, 255, 255, .22);
	--pgs-card: rgba(255, 255, 255, .06);
}
.pgs--blue { background: var(--color1, #19468d); }
.pgs--night { background: var(--pgs-night); }
.pgs *, .pgs *::before, .pgs *::after { box-sizing: border-box; }
.pgs__inner {
	max-width: 1248px;
	margin: 0 auto;
	padding: 0 max(24px, env(safe-area-inset-right, 0px)) 0 max(24px, env(safe-area-inset-left, 0px));
}
.pgs[id] { scroll-margin-top: 24px; }

/* Section header */
.pgs__header { max-width: 760px; margin-bottom: 48px; }
.pgs .pgs__eyebrow {
	margin: 0 0 14px;
	font-size: 14px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase;
	color: var(--pgs-accent);
}
.pgs .pgs__heading {
	margin: 0;
	font-family: var(--font-header, "Andada Pro", Georgia, serif); font-weight: 400;
	font-size: 40px; line-height: 1.2; color: var(--pgs-head); text-wrap: balance;
}
.pgs__rule { width: 96px; height: 3px; margin-top: 22px; background: var(--color2, #00c2f3); }
.pgs__intro { margin-top: 22px; font-size: 18px; line-height: 1.65; }
.pgs__text > :first-child, .pgs__intro > :first-child { margin-top: 0; }
.pgs__text > :last-child, .pgs__intro > :last-child { margin-bottom: 0; }
.pgs__text p, .pgs__intro p { margin: 0 0 1em; color: inherit; }
.pgs__text ul, .pgs__text ol { margin: 0 0 1em; padding-left: 1.2em; }
.pgs__text li { margin: 0 0 .5em; }
.pgs--blue a:not(.pgs__button), .pgs--night a:not(.pgs__button),
.pgs--blue a:not(.pgs__button):visited, .pgs--night a:not(.pgs__button):visited,
.pgs--blue a:not(.pgs__button):hover, .pgs--night a:not(.pgs__button):hover { color: #fff; text-decoration: underline; }
.pgs h3 { font-family: var(--font-header, "Andada Pro", Georgia, serif); font-weight: 400; color: var(--pgs-head); }

/* Button (white sections: solid dark blue; dark sections: white with a dark-blue label) */
.pgs .pgs__button, .pgs .pgs__button:visited {
	display: inline-block;
	padding: 16px 28px; border-radius: 0;
	font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; text-decoration: none;
	background: var(--color1, #19468d); color: #fff;
}
.pgs .pgs__button:hover { background: #12356d; color: #fff; }
.pgs--blue .pgs__button, .pgs--night .pgs__button, .pgs--blue .pgs__button:visited, .pgs--night .pgs__button:visited { background: #fff; color: var(--color1, #19468d); }
.pgs--blue .pgs__button:hover, .pgs--night .pgs__button:hover { background: #e8eef7; color: var(--color1, #19468d); }
.pgs a:focus-visible, .pgs [tabindex]:focus-visible { outline: 2px solid var(--color2, #00c2f3); outline-offset: 3px; }

/* Link under a section (2026-11-13) */
.pgs__more { margin: 40px 0 0; }
.pgs .pgs__more-link, .pgs .pgs__more-link:visited { font-size: 16px; font-weight: 600; color: var(--pgs-head); text-decoration: none; }
.fact-strip .pgs__more { margin-top: 24px; }

/* Photo beside text (Intro Split, Featured Story; 2026-11-13). Natural light, no scrim. */
.pgs-photo { position: relative; overflow: hidden; background: var(--grey, #ededed); }
.pgs-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.pgs-photo--focus-top img { object-position: 50% 20%; }
.pgs-photo--focus-bottom img { object-position: 50% 80%; }

/* Fact Strip */
.fact-strip { padding: 40px 0; }
.fact-strip.pgs--compact { padding: 28px 0; }
.fact-strip__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 24px 48px; }
.fact-strip__item { margin: 0; display: flex; flex-direction: column; gap: 6px; padding-left: 20px; border-left: 3px solid var(--color2, #00c2f3); }
.fact-strip__value { font-family: var(--font-header, "Andada Pro", Georgia, serif); font-size: 28px; line-height: 1.2; color: var(--pgs-head); }
.fact-strip__label { font-size: 15px; line-height: 1.5; }
.pgs--blue .fact-strip__label, .pgs--night .fact-strip__label { color: rgba(255, 255, 255, .86); }

/* Intro Split */
.intro-split__grid { display: grid; grid-template-columns: 5fr 7fr; gap: 64px; align-items: start; }
.intro-split .pgs__header { margin-bottom: 0; }
.intro-split__body { font-size: 18px; line-height: 1.7; }
.intro-split__body h3 { font-size: 24px; margin: 1.6em 0 .5em; }
.intro-split--photo .intro-split__grid { grid-template-columns: 7fr 5fr; align-items: stretch; }
.intro-split--photo .pgs__header { margin-bottom: 32px; }
.intro-split__photo { min-height: 420px; aspect-ratio: 4 / 5; }

/* Card Grid */
.card-grid__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--cg-cols, 4), minmax(0, 1fr)); gap: 24px; }
.card-grid__list[data-count="1"] { --cg-cols: 1; }
.card-grid__list[data-count="2"], .card-grid__list[data-count="4"] { --cg-cols: 2; }
.card-grid__list[data-count="3"], .card-grid__list[data-count="5"], .card-grid__list[data-count="6"] { --cg-cols: 3; }
@media (min-width: 1100px) { .card-grid__list[data-count="4"] { --cg-cols: 4; } }
.card-grid__card { margin: 0; padding: 32px 28px; background: #fff; border-top: 3px solid var(--color2, #00c2f3); color: var(--base, #263040); }
.card-grid__list--gray .card-grid__card { background: var(--grey, #ededed); }
.pgs--gray .card-grid__list--gray .card-grid__card { background: #fff; }
.card-grid__number { margin: 0 0 12px; font-family: var(--font-header, "Andada Pro", Georgia, serif); font-size: 40px; line-height: 1; color: var(--color1, #19468d); }
.pgs .card-grid__title { margin: 0 0 14px; font-size: 24px; line-height: 1.25; color: var(--color1, #19468d); }
.card-grid__text { font-size: 16px; line-height: 1.6; }
.card-grid__icon { display: block; width: 56px; height: 56px; margin: 0 0 20px; }
.card-grid__card--linked { display: flex; flex-direction: column; }
.card-grid__card--linked .card-grid__text { flex: 1 0 auto; }
.pgs .card-grid__link, .pgs .card-grid__link:visited { align-self: flex-start; margin-top: 20px; font-size: 15px; font-weight: 600; color: var(--color1, #19468d); text-decoration: none; }

/* Link List (2026-11-13): links with small one-color Pyxis icons (the icon set's secondary style). */
.link-list__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.link-list__item { margin: 0; }
.pgs .link-list__link, .pgs .link-list__link:visited { display: flex; align-items: center; gap: 14px; height: 100%; padding: 18px 20px; border: 1px solid var(--pgs-line); color: var(--pgs-head); font-size: 16px; font-weight: 600; line-height: 1.35; text-decoration: none; }
.pgs .link-list__link:hover { border-color: var(--color1, #19468d); text-decoration: none; }
.pgs--blue .link-list__link:hover, .pgs--night .link-list__link:hover { border-color: #fff; }
.link-list__text { flex: 1 1 auto; }
.link-list__arrow { flex: none; color: var(--pgs-accent); }
.link-list__icon { flex: none; width: 24px; height: 24px; color: var(--color1, #19468d); }
.pgs--blue .link-list__icon, .pgs--night .link-list__icon { color: var(--pgs-seafoam); }
/* One-color icons: every painted shape takes the text color, back shapes are lighter; knockouts (inline styles) keep the background. */
.pyxis-icon--mono [fill]:not([fill="none"]) { fill: currentColor; }
.pyxis-icon--mono [stroke]:not([stroke="none"]) { stroke: currentColor; }
.pyxis-icon--mono [fill="#a9e8da"], .pyxis-icon--mono [stroke="#a9e8da"] { opacity: .45; }

/* Featured Story (2026-11-13) */
.featured-story__card { display: grid; grid-template-columns: minmax(0, 1fr); background: var(--grey, #ededed); color: var(--base, #263040); border-top: 3px solid var(--color2, #00c2f3); }
.pgs--gray .featured-story__card { background: #fff; }
.featured-story__card--photo { grid-template-columns: 5fr 7fr; }
.featured-story__photo { min-height: 360px; }
.featured-story__copy { padding: 48px; align-self: center; }
.featured-story__label { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--color1, #19468d); }
.pgs .featured-story__title { margin: 0 0 16px; font-size: 32px; line-height: 1.2; color: var(--color1, #19468d); }
.featured-story__text { font-size: 18px; line-height: 1.65; }
.pgs .featured-story__link, .pgs .featured-story__link:visited { display: inline-block; margin-top: 24px; font-size: 16px; font-weight: 600; color: var(--color1, #19468d); text-decoration: none; }

/* Simple Table */
.simple-table__scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.simple-table__table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 16px; line-height: 1.55; text-align: left; }
.simple-table__table thead th { padding: 14px 18px; background: var(--color1, #19468d); color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; vertical-align: bottom; }
.simple-table__table tbody th, .simple-table__table td { padding: 18px; border-bottom: 1px solid var(--pgs-line); vertical-align: top; }
.simple-table__table tbody th { font-weight: 700; color: var(--pgs-head); width: 18%; }
.pgs--blue .simple-table__table thead th, .pgs--night .simple-table__table thead th { background: rgba(255, 255, 255, .1); }
.simple-table__note { margin: 20px 0 0; font-size: 15px; color: var(--muted, #5b6577); }
.pgs--blue .simple-table__note, .pgs--night .simple-table__note { color: rgba(255, 255, 255, .8); }

/* Numbered Steps */
.numbered-steps__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 40px 32px; }
.numbered-steps__step { margin: 0; padding-top: 20px; border-top: 1px solid var(--pgs-line); }
.numbered-steps__number { display: block; margin-bottom: 14px; font-family: var(--font-header, "Andada Pro", Georgia, serif); font-size: 48px; line-height: 1; color: var(--pgs-accent); }
.pgs .numbered-steps__title { margin: 0 0 10px; font-size: 22px; line-height: 1.3; }
.numbered-steps__text { font-size: 16px; line-height: 1.6; }
.pgs--blue .numbered-steps__text, .pgs--night .numbered-steps__text { color: rgba(255, 255, 255, .9); }

/* Option Cards */
.option-cards__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.option-cards__card { margin: 0; padding: 36px 32px; background: #fff; border-top: 3px solid var(--color2, #00c2f3); color: var(--base, #263040); }
.pgs--white .option-cards__card { background: var(--grey, #ededed); }
.option-cards__label { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--color1, #19468d); }
.pgs .option-cards__title { margin: 0 0 14px; font-size: 28px; line-height: 1.2; color: var(--color1, #19468d); }
.option-cards__text { font-size: 16px; line-height: 1.6; }
.option-cards__note { margin-top: 24px; padding: 24px 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; background: #fff; color: var(--base, #263040); border-left: 3px solid var(--color1, #19468d); }
.pgs--white .option-cards__note { background: var(--grey, #ededed); }
.option-cards__note p { margin: 0; max-width: 62ch; font-size: 17px; line-height: 1.55; }
.pgs--blue .option-cards__note .pgs__button, .pgs--night .option-cards__note .pgs__button { background: var(--color1, #19468d); color: #fff; }

/* Form Split */
.form-split__grid { display: grid; grid-template-columns: 5fr 6fr; gap: 64px; align-items: start; }
.form-split__copy .pgs__text { margin-top: 22px; font-size: 17px; line-height: 1.65; }
.form-split__points { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 12px; }
.form-split__points li { position: relative; margin: 0; padding-left: 26px; font-size: 16px; line-height: 1.5; }
.form-split__points li::before { content: ""; position: absolute; left: 0; top: .5em; width: 9px; height: 9px; background: var(--pgs-accent); }
.form-split__note { margin: 16px 0 0; font-size: 14px; line-height: 1.5; color: var(--muted, #5b6577); }
.pgs--blue .form-split__note, .pgs--night .form-split__note { color: rgba(255, 255, 255, .8); }

/* Page Header (2026-11-13): the top of an interior page, under the night bar. Plain is a white band; Photo puts a
   brand photo under the dark-blue strong scrim (Brand Standards v1.5 Section 5: the only layer allowed over a
   photo) with white text. The scrim is flat, never a gradient. */
.page-header { padding: 72px 0 64px; }
.page-header.pgs--white { border-bottom: 1px solid var(--pgs-line); }
.page-header .pgs__inner { display: grid; }
.page-header__crumb ol { list-style: none; margin: 0 0 18px; padding: 0; font-size: 14px; line-height: 1.5; color: var(--muted, #5b6577); }
.page-header__crumb li { display: inline; }
.page-header__crumb li + li::before { content: "/"; margin: 0 .45em; }
.pgs.page-header .page-header__crumb a, .pgs.page-header .page-header__crumb a:visited { color: inherit; text-decoration: none; }
.pgs.page-header .page-header__crumb a:hover { text-decoration: underline; }
.page-header .pgs__eyebrow { margin-bottom: 14px; }
.pgs .page-header__title {
	margin: 0; max-width: 16ch;
	font-family: var(--font-header, "Andada Pro", Georgia, serif); font-weight: 400;
	font-size: 52px; line-height: 1.12; color: var(--pgs-head); text-wrap: balance;
}
.page-header .pgs__rule { margin-top: 24px; }
.page-header__lead { margin-top: 24px; max-width: 62ch; font-size: 20px; line-height: 1.6; }
.page-header__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 32px; }
.pgs .page-header__link, .pgs .page-header__link:visited { font-size: 16px; font-weight: 600; color: var(--pgs-head); text-decoration: none; }
.page-header__proof { margin: 28px 0 0; font-size: 14px; line-height: 1.5; color: var(--muted, #5b6577); }
.pgs--blue .page-header__crumb ol, .pgs--night .page-header__crumb ol,
.pgs--blue .page-header__proof, .pgs--night .page-header__proof { color: rgba(255, 255, 255, .82); }
.page-header--photo { isolation: isolate; overflow: hidden; padding: 96px 0 88px; background: var(--pgs-night); }
.page-header__photo { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.page-header--focus-top .page-header__photo { object-position: 50% 20%; }
.page-header--focus-bottom .page-header__photo { object-position: 50% 80%; }
.page-header--photo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(25, 70, 141, .62); }

/* Closing CTA (2026-11-13): the band above the footer. Photo puts a brand photo (Campfire by default) under the
   same flat dark-blue strong scrim as the Page Header; Plain uses the Section background. A form, when chosen,
   sits on the right in the Card style (D022). */
.closing-cta--photo { isolation: isolate; overflow: hidden; padding: 112px 0; background: var(--pgs-night); }
.closing-cta__photo { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.closing-cta--focus-top .closing-cta__photo { object-position: 50% 20%; }
.closing-cta--focus-bottom .closing-cta__photo { object-position: 50% 80%; }
.closing-cta--photo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(25, 70, 141, .62); }
.closing-cta__grid { display: grid; grid-template-columns: minmax(0, 720px); }
.closing-cta--form .closing-cta__grid { grid-template-columns: 5fr 6fr; gap: 64px; align-items: center; }
.closing-cta--center .closing-cta__grid { justify-content: center; text-align: center; }
.closing-cta--center .pgs__rule { margin-left: auto; margin-right: auto; }
.closing-cta__text { margin-top: 22px; font-size: 18px; line-height: 1.65; }
.closing-cta__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 32px; }
.closing-cta--center .closing-cta__actions { justify-content: center; }
.pgs.closing-cta .closing-cta__link, .pgs.closing-cta .closing-cta__link:visited { font-size: 16px; font-weight: 600; color: var(--pgs-head); text-decoration: none; }
.closing-cta__proof { margin: 28px 0 0; font-size: 14px; line-height: 1.5; color: var(--muted, #5b6577); }
.pgs--blue .closing-cta__proof, .pgs--night .closing-cta__proof { color: rgba(255, 255, 255, .82); }
.closing-cta__note { margin: 16px 0 0; font-size: 14px; line-height: 1.5; color: var(--muted, #5b6577); }
.pgs--blue .closing-cta__note, .pgs--night .closing-cta__note { color: rgba(255, 255, 255, .8); }

@media (max-width: 900px) {
	.pgs { padding: 64px 0; }
	.pgs--compact { padding: 40px 0; }
	.fact-strip { padding: 32px 0; }
	.pgs .pgs__heading { font-size: 32px; }
	.pgs__header { margin-bottom: 36px; }
	.intro-split__grid, .form-split__grid, .intro-split--photo .intro-split__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.intro-split__photo { min-height: 0; aspect-ratio: 3 / 2; }
	.link-list__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.featured-story__card--photo { grid-template-columns: minmax(0, 1fr); }
	.featured-story__photo { min-height: 0; aspect-ratio: 3 / 2; }
	.featured-story__copy { padding: 32px; }
	.card-grid__list { --cg-cols: 2 !important; }
	.page-header { padding: 56px 0 48px; }
	.page-header--photo { padding: 64px 0 56px; }
	.closing-cta--photo { padding: 72px 0; }
	.closing-cta--form .closing-cta__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.pgs .page-header__title { font-size: 40px; }
}
@media (max-width: 600px) {
	.pgs__inner { padding: 0 max(16px, env(safe-area-inset-right, 0px)) 0 max(16px, env(safe-area-inset-left, 0px)); }
	.pgs .pgs__heading { font-size: 28px; }
	.card-grid__list { --cg-cols: 1 !important; }
	.option-cards__list { grid-template-columns: minmax(0, 1fr); }
	.card-grid__card, .option-cards__card { padding: 28px 20px; }
	.link-list__list { grid-template-columns: minmax(0, 1fr); }
	.featured-story__copy { padding: 28px 20px; }
	.pgs .featured-story__title { font-size: 26px; }
	.option-cards__note { padding: 20px; }
	.pgs .page-header__title { font-size: 36px; }
	.page-header__lead { font-size: 18px; }
	.closing-cta__text { font-size: 17px; }
}
