@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/plus-jakarta-sans-latin-400-normal.woff2")
    format("woff2");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/plus-jakarta-sans-latin-500-normal.woff2")
    format("woff2");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/fonts/plus-jakarta-sans-latin-600-normal.woff2")
    format("woff2");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/plus-jakarta-sans-latin-700-normal.woff2")
    format("woff2");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/fonts/plus-jakarta-sans-latin-800-normal.woff2")
    format("woff2");
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/space-grotesk-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/space-grotesk-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/space-grotesk-latin-700-normal.woff2") format("woff2");
}
/* First Quest: shared public pages and authenticated working surfaces. */
:root {
  --fq-navy: #0a2453;
  --fq-blue: #174ba4;
  --fq-ink: #142e55;
  --fq-muted: #596a82;
  --fq-paper: #f5f8fe;
  --fq-yellow: #ffe36a;
  --fq-border: #dce4f1;
  --fq-radius: 22px;
}
[hidden] {
  display: none !important;
}
body.fq-page {
  background: var(--fq-paper);
  color: var(--fq-ink);
  font-size: 16px;
  line-height: 1.65;
}
body.fq-page::before {
  display: none;
}
.fq-page h1,
.fq-home .fq-section h2 {
  font-family: "Plus Jakarta Sans", sans-serif;
  letter-spacing: -0.055em;
}
.fq-page h1 {
  font-size: clamp(2.35rem, 4.6vw, 4.65rem);
  line-height: 1.13;
  margin: 0 0 24px;
  font-weight: 800;
}
.fq-page h2 {
  font-size: clamp(1.5rem, 2.8vw, 2.65rem);
  line-height: 1.24;
  letter-spacing: -0.045em;
}
.fq-page h3 {
  font-size: 1.2rem;
  line-height: 1.45;
}
.fq-page p {
  color: var(--fq-muted);
}
.fq-page em {
  font-style: normal;
  color: var(--fq-blue);
}
.fq-page a:not(.button):hover {
  text-decoration: underline;
  text-underline-offset: 5px;
}
.fq-page .topbar,
.fq-home .topbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 76px;
  min-height: 76px;
  max-width: none;
  border-radius: 0;
  padding: 0 max(28px, calc((100vw - 1320px) / 2));
  background: #103d8f;
  color: #fff;
  z-index: 100;
  gap: 24px;
  border: 0;
  box-shadow: 0 2px 18px #071a3d15;
}
.fq-page,
.fq-home {
  --nav-height: 76px;
}
.fq-page .topbar-links,
.fq-home .topbar-links {
  gap: 24px;
}
.fq-page .topbar-links a,
.fq-home .topbar-links a,
.fq-page .topbar-actions > a,
.fq-home .topbar-actions > a {
  font-size: 14px;
  white-space: nowrap;
}
.fq-page .brand-logo,
.fq-home .brand-logo {
  width: 147px;
  height: 48px;
  object-fit: contain;
  min-width: 0;
}
.fq-page .topbar .button,
.fq-home .topbar .button {
  min-height: 42px;
  padding: 10px 18px;
  border-radius: 12px;
}
.fq-page .button,
.fq-home .fq-section .button {
  font-size: 15px;
  min-height: 48px;
  border-radius: 12px;
  line-height: 1.5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  font-weight: 700;
  gap: 10px;
  cursor: pointer;
  transition:
    transform 0.15s,
    background 0.15s;
}
.fq-page .button-primary,
.fq-home .fq-section .button-primary {
  background: var(--fq-yellow);
  color: #112c55;
  border: 1px solid #edce48;
  box-shadow: none;
}
.fq-page .button-secondary {
  background: #fff;
  color: var(--fq-ink);
  border: 1px solid #c6d3e6;
  box-shadow: none;
}
.fq-page .topbar .button-secondary {
  background: transparent;
  color: #fff;
  border-color: #ffffff55;
}
.button:disabled,
button:disabled {
  cursor: wait;
  opacity: 0.55;
}
.fq-page button,
.fq-page input,
.fq-page select,
.fq-page textarea,
.fq-menu-toggle {
  font: inherit;
}
.fq-menu-toggle {
  display: none;
}
.fq-container {
  width: min(1240px, calc(100% - 64px));
  margin-inline: auto;
}
.fq-intro {
  padding: 76px 0 70px;
  background: linear-gradient(130deg, #eef4ff 0%, #f8fbff 72%);
  border-bottom: 1px solid var(--fq-border);
}
.fq-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}
.fq-intro-grid:has(aside) {
  grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.85fr);
}
.fq-eyebrow {
  font-size: 12px !important;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--fq-blue) !important;
  margin: 0 0 18px;
}
.fq-lead {
  font-size: 18px;
  line-height: 1.8;
  max-width: 690px;
}
.fq-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-top: 28px;
}
.fq-brief-card {
  background: #fff;
  border: 1px solid var(--fq-border);
  border-radius: 28px;
  padding: 32px;
  box-shadow: 0 20px 55px #17345b10;
  transform: rotate(1.5deg);
}
.fq-brief-card h2 {
  font-size: 2rem;
}
.fq-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}
.fq-tag {
  display: inline-flex;
  border: 1px solid #d6e2f5;
  color: #28529c;
  background: #edf4ff;
  border-radius: 7px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  max-width: 100%;
}
.fq-facts {
  margin: 20px 0;
}
.fq-facts > div {
  padding: 15px 0;
  border-bottom: 1px solid var(--fq-border);
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 16px;
}
.fq-facts dt {
  font-size: 14px;
  color: var(--fq-muted);
}
.fq-facts dd {
  margin: 0;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.fq-text-link {
  font-weight: 700;
  font-size: 14px;
  color: var(--fq-blue);
}
.fq-section {
  padding: 76px 0;
}
.fq-section + .fq-section {
  border-top: 1px solid var(--fq-border);
}
.fq-section-heading {
  max-width: 800px;
  margin-bottom: 32px;
}
.fq-section-heading h2 {
  margin: 0;
}
.fq-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.fq-card {
  background: #fff;
  border: 1px solid var(--fq-border);
  padding: 28px;
  border-radius: var(--fq-radius);
  min-width: 0;
  overflow-wrap: anywhere;
}
.fq-card h3 {
  margin: 14px 0 8px;
}
.fq-card p:last-child {
  margin-bottom: 0;
}
.fq-card-number {
  color: var(--fq-blue);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eff4ff;
  border-radius: 12px;
  width: 42px;
  height: 42px;
}
.fq-card-yellow {
  background: var(--fq-yellow);
  border-color: #f4d65a;
}
.fq-card-yellow p {
  color: #35476a;
}
.fq-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
}
.fq-checklist {
  padding: 0;
  list-style: none;
}
.fq-checklist li {
  padding: 12px 0 12px 29px;
  position: relative;
}
.fq-checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--fq-blue);
  font-weight: 800;
}
.fq-editorial {
  max-width: 800px;
  font-size: 20px;
  line-height: 1.9;
}
.fq-faq {
  max-width: 900px;
}
.fq-faq details {
  border-bottom: 1px solid var(--fq-border);
  padding: 21px 0;
}
.fq-faq summary {
  font-weight: 700;
  font-size: 17px;
  cursor: pointer;
  padding-right: 25px;
}
.fq-faq details p {
  max-width: 800px;
  line-height: 1.85;
  margin-bottom: 4px;
}
.fq-freelance-feature {
  position: relative;
  padding-top: 38px;
}
.fq-freelance-feature > img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: 50%;
  margin-bottom: 22px;
  display: block;
}
.fq-freelance-feature .fq-tag {
  position: absolute;
  top: 65px;
  right: 28px;
}
.fq-footer {
  background: #092653;
  color: #eaf1ff;
  padding: 60px 0 24px;
  line-height: 1.65;
}
.fq-footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: 40px;
}
.fq-footer p {
  color: #ccd9f0;
  font-size: 16px;
}
.fq-footer h2 {
  font-size: 14px;
  letter-spacing: 0;
  margin: 10px 0 20px;
}
.fq-footer a {
  display: block;
  font-size: 14px;
  margin-bottom: 10px;
  color: #cedcf4;
}
.fq-footer-bottom {
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px solid #ffffff25;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: 12px;
  color: #b6c8e6;
}
.fq-small {
  font-size: 13px;
  color: var(--fq-muted);
  line-height: 1.6;
}
.fq-footer .fq-small {
  color: #a9bfdc;
}
.fq-notice {
  padding: 18px 22px;
  border: 1px solid #dbbf59;
  border-radius: 14px;
  background: #fff8da;
  color: #5d4c15 !important;
  font-size: 14px;
  line-height: 1.7;
}
.fq-filter-bar {
  display: grid;
  grid-template-columns: 1.5fr 1.2fr 1fr 0.8fr;
  gap: 16px;
  align-items: end;
  background: #fff;
  border: 1px solid var(--fq-border);
  border-radius: 20px;
  padding: 24px;
}
.fq-filter-bar label,
.fq-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 600;
  font-size: 14px;
}
.fq-page input:not([type="checkbox"]):not([type="radio"]),
.fq-page select,
.fq-page textarea {
  background: #fff;
  border: 1px solid #bccae0;
  border-radius: 10px;
  color: var(--fq-ink);
  padding: 12px 14px;
  min-height: 46px;
  width: 100%;
  font-size: 16px;
  line-height: 1.5;
}
.fq-page input::placeholder,
.fq-page textarea::placeholder {
  color: #72809b;
}
.fq-page textarea {
  resize: vertical;
  min-height: 110px;
}
.fq-page input[type="checkbox"],
.fq-page input[type="radio"] {
  width: 18px;
  height: 18px;
  accent-color: var(--fq-blue);
  flex-shrink: 0;
}
.fq-check {
  flex-direction: row !important;
  align-items: flex-start;
  gap: 10px !important;
  font-weight: 500 !important;
}
.fq-check a {
  text-decoration: underline;
}
.fq-text-button {
  background: none;
  border: 0;
  padding: 8px 0;
  color: var(--fq-blue);
  font-weight: 700;
  cursor: pointer;
  text-align: left;
}
.fq-results-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin: 20px 0;
}
.fq-results-bar label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  white-space: nowrap;
}
.fq-results-bar select {
  min-height: 42px;
}
.fq-result-card {
  display: flex;
  flex-direction: column;
  position: relative;
  transition:
    box-shadow 0.15s,
    border-color 0.15s;
}
.fq-result-card:hover {
  border-color: #a5bce3;
  box-shadow: 0 12px 32px #1233680d;
}
.fq-result-card h2 {
  font-size: 1.35rem;
  letter-spacing: -0.02em;
  line-height: 1.45;
  margin: 18px 0 4px;
}
.fq-result-card .fq-avatar {
  width: 68px;
  height: 68px;
  border-radius: 18px;
  object-fit: cover;
  background: #e7effe;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #1e4f9d;
  font-weight: 800;
}
.fq-result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0;
  font-size: 13px;
  color: var(--fq-muted);
}
.fq-result-card footer {
  margin-top: auto;
  padding-top: 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.fq-result-card .fq-price {
  font-size: 16px;
  font-weight: 800;
}
.fq-empty {
  grid-column: 1/-1;
  text-align: center;
  padding: 52px 24px;
  border: 1px dashed #bbcbe3;
  border-radius: 20px;
  background: #fff;
}
.fq-empty h2 {
  font-size: 24px;
}
.fq-empty .fq-actions {
  justify-content: center;
}
.fq-empty p {
  max-width: 640px;
  margin: 12px auto;
}
.fq-form {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.fq-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.fq-form fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
.fq-form legend {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
}
.fq-status,
.form-status {
  font-size: 14px;
  line-height: 1.7;
  margin: 8px 0 0;
  overflow-wrap: anywhere;
}
.fq-status[data-type="error"],
.form-status[data-type="error"] {
  padding: 14px;
  background: #fff0ef;
  color: #a4271f;
  border-radius: 10px;
}
.fq-status[data-type="success"],
.form-status[data-type="success"] {
  padding: 14px;
  background: #e8f7ee;
  color: #146442;
  border-radius: 10px;
}
.fq-auth-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  padding-block: 70px;
  align-items: start;
}
.fq-auth-story {
  padding-top: 45px;
  position: sticky;
  top: 115px;
}
.fq-auth-story h1 {
  font-size: clamp(2.5rem, 4vw, 4rem);
}
.fq-auth-story > p {
  font-size: 18px;
  max-width: 420px;
}
.fq-auth-benefit {
  display: flex;
  gap: 20px;
  margin-top: 30px;
}
.fq-auth-benefit > span {
  background: #e6edff;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 700;
  color: var(--fq-blue);
}
.fq-auth-benefit h2 {
  font-size: 18px;
  margin: 0 0 5px;
  letter-spacing: 0;
}
.fq-auth-benefit p {
  font-size: 14px;
  margin: 0;
}
.fq-auth-story > a {
  display: inline-block;
  margin-top: 32px;
}
.fq-auth-card {
  background: #fff;
  border: 1px solid var(--fq-border);
  border-radius: 26px;
  padding: 32px;
  box-shadow: 0 20px 65px #12336809;
}
.fq-auth-card h2 {
  font-size: 27px;
  margin-bottom: 8px;
}
.fq-auth-card section > p {
  font-size: 14px;
  margin-bottom: 25px;
}
.fq-auth-tabs {
  display: flex;
  border-bottom: 1px solid var(--fq-border);
  margin-bottom: 28px;
}
.fq-auth-tabs button {
  flex: 1;
  border: 0;
  border-bottom: 3px solid transparent;
  background: none;
  padding: 13px 10px;
  font-size: 15px;
  cursor: pointer;
  color: var(--fq-muted);
  font-weight: 700;
}
.fq-auth-tabs button[aria-selected="true"] {
  color: var(--fq-blue);
  border-bottom-color: var(--fq-blue);
}
.fq-role-choice {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.fq-role-choice label {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 13px;
  border: 1px solid var(--fq-border);
  border-radius: 12px;
  cursor: pointer;
}
.fq-role-choice label:has(:checked) {
  border-color: var(--fq-blue);
  background: #f0f5ff;
}
.fq-role-choice strong,
.fq-role-choice small {
  display: block;
}
.fq-role-choice small {
  font-size: 12px;
  font-weight: 400;
  color: var(--fq-muted);
  margin-top: 3px;
}
.fq-password {
  display: flex;
  position: relative;
}
.fq-password input {
  padding-right: 86px !important;
}
.fq-password button {
  position: absolute;
  right: 8px;
  top: 9px;
  padding: 6px;
  background: none;
  border: 0;
  font-size: 12px;
  font-weight: 700;
  color: var(--fq-blue);
  cursor: pointer;
}
.fq-workspace {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 36px;
  padding-block: 40px;
  min-height: 75vh;
}
.fq-sidebar {
  align-self: start;
  position: sticky;
  top: 110px;
  background: #fff;
  border: 1px solid var(--fq-border);
  border-radius: 20px;
  padding: 24px 16px;
}
.fq-sidebar > .fq-eyebrow {
  padding-left: 12px;
}
.fq-sidebar nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.fq-sidebar nav a {
  padding: 10px 12px;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 600;
}
.fq-sidebar nav a[aria-current="page"] {
  background: #eaf1ff;
  color: var(--fq-blue);
}
.fq-sidebar-account {
  border-top: 1px solid var(--fq-border);
  margin: 20px 10px 0;
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.fq-heading-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-bottom: 28px;
}
.fq-heading-row h1 {
  font-size: clamp(2rem, 3vw, 2.9rem);
  margin: 0;
}
.fq-heading-row p {
  margin: 8px 0;
}
.fq-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 24px 0;
}
.fq-stat {
  background: #fff;
  border: 1px solid var(--fq-border);
  padding: 24px;
  border-radius: 18px;
}
.fq-stat span {
  font-size: 13px;
  color: var(--fq-muted);
}
.fq-stat strong {
  display: block;
  font-size: 34px;
  line-height: 1.5;
  letter-spacing: -0.06em;
}
.fq-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.fq-list-item {
  padding: 22px;
  background: #fff;
  border: 1px solid var(--fq-border);
  border-radius: 16px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}
.fq-list-item h2,
.fq-list-item h3 {
  font-size: 18px;
  margin: 0 0 5px;
  letter-spacing: -0.02em;
}
.fq-list-item p {
  font-size: 14px;
  margin: 0;
}
.fq-list-item small {
  display: block;
  font-size: 13px;
  color: var(--fq-muted);
}
.fq-detail {
  padding-block: 48px;
  min-height: 65vh;
}
.fq-detail > h1 {
  margin-top: 24px;
}
.fq-narrow {
  max-width: 840px;
}
.fq-narrow .fq-form {
  margin-top: 30px;
}
.fq-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(290px, 1fr);
  gap: 28px;
  align-items: start;
}
.fq-detail-layout aside {
  position: sticky;
  top: 104px;
}
.fq-detail h2 {
  font-size: 26px;
}
.fq-detail .fq-card + .fq-card {
  margin-top: 24px;
}
.fq-detail p,
.fq-preline {
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.fq-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 15px 0;
}
.fq-profile-heading {
  display: flex;
  align-items: center;
  gap: 25px;
}
.fq-profile-heading .fq-avatar {
  width: 112px;
  height: 112px;
  border-radius: 26px;
  object-fit: cover;
  background: #e3ecfc;
  display: grid;
  place-items: center;
  font-size: 32px;
  font-weight: 800;
  flex-shrink: 0;
}
.fq-profile-heading h1 {
  font-size: 36px;
  margin: 0;
}
.fq-message-thread {
  max-height: 520px;
  overflow-y: auto;
  border: 1px solid var(--fq-border);
  border-radius: 15px;
  padding: 22px;
  margin-block: 22px;
  background: #fff;
}
.fq-message {
  max-width: 88%;
  background: #eff4fb;
  padding: 14px 18px;
  border-radius: 16px;
  margin-bottom: 15px;
}
.fq-message.own {
  margin-left: auto;
  background: #e5eeff;
}
.fq-message p {
  color: var(--fq-ink);
  margin: 6px 0;
  white-space: pre-wrap;
}
.fq-message small {
  font-size: 12px;
  color: var(--fq-muted);
}
.fq-legal-section {
  padding: 18px 0;
}
.fq-legal-section h2 {
  font-size: 23px;
}
.fq-legal-section p {
  line-height: 1.9;
}
.fq-page hr {
  border: 0;
  border-top: 1px solid var(--fq-border);
  margin: 28px 0;
}
.fq-progress {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 24px 0;
}
.fq-progress span {
  padding: 7px 11px;
  font-size: 12px;
  background: #e8eef8;
  border-radius: 8px;
  color: #496487;
}
.fq-progress span.active {
  background: #153f89;
  color: #fff;
}
.fq-skip {
  position: fixed;
  top: -100px;
  left: 12px;
  z-index: 200;
  padding: 12px;
  background: #ffe36a;
  color: #0a2453;
  border-radius: 8px;
}
.fq-skip:focus {
  top: 8px;
}
:focus-visible {
  outline: 3px solid #cb9d06 !important;
  outline-offset: 4px !important;
}
.fq-page .fq-error {
  border-color: #e5a29b;
  background: #fff7f6;
}
.fq-home .fq-section {
  color: #eef4ff;
}
.fq-home .fq-section h2 {
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 1.2;
}
.fq-home .fq-section p {
  color: #c5d4ed;
  line-height: 1.8;
}
.fq-home .fq-section .fq-eyebrow {
  color: #ffe36a !important;
}
.fq-home .fq-section + .fq-section {
  border-top: 0;
}
.fq-home .fq-card {
  background: #153977;
  border-color: #ffffff22;
}
.fq-home .fq-card h3 {
  color: #fff;
}
.fq-home .fq-card-number {
  background: #ffe36a;
  color: #10366c;
}
.fq-home .fq-faq details {
  border-color: #ffffff25;
}
.fq-home .fq-category-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.fq-category-link {
  display: block;
  padding: 26px;
  border: 1px solid #ffffff25;
  border-radius: 18px;
  background: #ffffff08;
  transition: background 0.15s;
}
.fq-category-link:hover {
  background: #ffffff13;
}
.fq-category-link span {
  display: block;
  font-size: 13px;
  color: #bbceee;
  margin-top: 10px;
}
.fq-category-link strong {
  font-size: 17px;
}
.fq-home .fq-footer {
  margin-top: 30px;
}
.fq-home .fq-footer h2 {
  color: #fff;
  font-size: 14px;
}
.fq-home .fq-footer .fq-container {
  max-width: 1240px;
}
.fq-home .hero {
  margin-top: 0;
}
.fq-home .audience-carousel-copy p {
  max-width: 640px;
}
.fq-home .home-process-item {
  cursor: default;
}
.fq-home .fq-section .fq-actions {
  margin-top: 32px;
}
.fq-home .fq-section .button-secondary {
  color: white;
  background: transparent;
  border: 1px solid #ffffff60;
}
.fq-app-alert {
  position: relative;
  z-index: 1;
  margin: 20px auto;
  width: min(100% - 40px, 1200px);
}
@media (min-width: 1201px) {
  .fq-page .topbar-links,
  .fq-home .topbar-links {
    display: flex !important;
  }
  .fq-page .topbar-actions,
  .fq-home .topbar-actions {
    display: flex !important;
  }
}
@media (max-width: 1200px) {
  .fq-page .topbar,
  .fq-home .topbar {
    padding-inline: 24px;
    gap: 16px;
  }
  .fq-menu-toggle {
    display: flex;
    gap: 10px;
    align-items: center;
    background: transparent;
    border: 1px solid #ffffff55;
    border-radius: 9px;
    padding: 9px 12px;
    color: #fff;
    font-size: 14px;
    margin-left: auto;
  }
  .fq-page .topbar-links,
  .fq-home .topbar-links {
    display: none;
    position: absolute;
    left: 16px;
    right: 16px;
    top: 78px;
    padding: 22px;
    background: #103777;
    border: 1px solid #ffffff33;
    border-radius: 16px;
    flex-direction: column;
    align-items: stretch;
    box-shadow: 0 15px 40px #091d4a55;
  }
  .fq-page .topbar-links.open,
  .fq-home .topbar-links.open {
    display: flex;
  }
  .fq-page .topbar-actions,
  .fq-home .topbar-actions {
    display: flex;
    gap: 12px;
  }
  .fq-page .topbar-actions > a:first-child,
  .fq-home .topbar-actions > a:first-child {
    display: none;
  }
  .fq-auth-layout {
    gap: 40px;
  }
  .fq-home .fq-category-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .fq-intro-grid:has(aside) {
    grid-template-columns: 1.15fr 0.85fr;
    gap: 30px;
  }
  .fq-footer-grid {
    gap: 24px;
  }
  .fq-filter-bar {
    grid-template-columns: 1fr 1fr;
  }
  .fq-workspace {
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 24px;
  }
}
@media (max-width: 760px) {
  .fq-container {
    width: calc(100% - 36px);
  }
  .fq-page .topbar,
  .fq-home .topbar {
    height: 68px;
    min-height: 68px;
    padding-inline: 18px;
    gap: 10px;
  }
  .fq-page,
  .fq-home {
    --nav-height: 68px;
  }
  .fq-page .brand-logo,
  .fq-home .brand-logo {
    width: 116px;
    height: 40px;
  }
  .fq-page .topbar .button,
  .fq-home .topbar .button {
    font-size: 12px;
    padding: 9px 12px;
    min-height: 38px;
  }
  .fq-menu-toggle {
    padding: 8px 10px;
    font-size: 12px;
  }
  .fq-page .topbar-links,
  .fq-home .topbar-links {
    top: 70px;
  }
  .fq-intro {
    padding: 45px 0;
  }
  .fq-intro-grid:has(aside) {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .fq-intro .fq-lead {
    font-size: 16px;
  }
  .fq-brief-card {
    transform: none;
    max-width: 550px;
  }
  .fq-section {
    padding: 46px 0;
  }
  .fq-grid-3,
  .fq-split {
    grid-template-columns: 1fr;
  }
  .fq-card {
    padding: 23px;
  }
  .fq-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
  .fq-footer-grid > div:first-child {
    grid-column: 1/-1;
  }
  .fq-footer-bottom {
    flex-direction: column;
    font-size: 12px;
  }
  .fq-auth-layout {
    grid-template-columns: 1fr;
    padding-block: 28px;
    gap: 28px;
  }
  .fq-auth-story {
    position: static;
    padding-top: 0;
  }
  .fq-auth-story h1 {
    font-size: 2.5rem;
  }
  .fq-auth-story .fq-auth-benefit,
  .fq-auth-story > a {
    display: none;
  }
  .fq-auth-card {
    padding: 24px;
  }
  .fq-workspace {
    display: block;
    padding-top: 20px;
  }
  .fq-sidebar {
    position: static;
    padding: 14px;
    margin-bottom: 28px;
  }
  .fq-sidebar > .fq-eyebrow {
    margin: 2px 8px 10px;
  }
  .fq-sidebar nav {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2px;
  }
  .fq-sidebar nav a {
    font-size: 12px;
    padding: 8px 10px;
  }
  .fq-sidebar-account {
    display: none;
  }
  .fq-stats {
    gap: 10px;
  }
  .fq-stat {
    padding: 16px 12px;
  }
  .fq-stat strong {
    font-size: 27px;
  }
  .fq-stat span {
    font-size: 12px;
  }
  .fq-heading-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .fq-heading-row > .button {
    align-self: flex-start;
  }
  .fq-detail-layout {
    grid-template-columns: 1fr;
  }
  .fq-detail-layout aside {
    position: static;
  }
  .fq-detail {
    padding-top: 30px;
  }
  .fq-list-item {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .fq-filter-bar {
    padding: 18px;
    gap: 12px;
  }
  .fq-filter-bar label:first-child {
    grid-column: 1/-1;
  }
  .fq-results-bar {
    align-items: flex-start;
    flex-direction: column;
  }
  .fq-form-row {
    grid-template-columns: 1fr;
  }
  .fq-facts > div {
    grid-template-columns: 100px minmax(0, 1fr);
  }
  .fq-profile-heading {
    gap: 16px;
  }
  .fq-profile-heading .fq-avatar {
    width: 75px;
    height: 75px;
    border-radius: 18px;
  }
  .fq-profile-heading h1 {
    font-size: 28px;
  }
  .fq-message {
    max-width: 94%;
  }
  .fq-home .fq-category-grid {
    gap: 10px;
  }
  .fq-category-link {
    padding: 20px 16px;
  }
  .fq-home main > .fq-section > * {
    max-width: 1240px;
  }
  .fq-home .fq-footer {
    padding-top: 40px;
  }
  .fq-home .fq-section h2 {
    font-size: 2rem;
  }
  .fq-footer {
    padding-top: 40px;
  }
}
@media (max-width: 390px) {
  .fq-page .brand-logo,
  .fq-home .brand-logo {
    width: 100px;
  }
  .fq-page .topbar,
  .fq-home .topbar {
    padding-inline: 12px;
  }
  .fq-role-choice {
    grid-template-columns: 1fr;
  }
  .fq-home .fq-category-grid {
    grid-template-columns: 1fr;
  }
  .fq-filter-bar {
    grid-template-columns: 1fr;
  }
  .fq-stats {
    grid-template-columns: 1fr;
  }
  .fq-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .fq-auth-card {
    padding: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
  .audience-carousel-track {
    transform: none !important;
  }
}
@media print {
  .topbar,
  .fq-footer,
  .fq-sidebar,
  .fq-actions,
  form,
  .fq-skip {
    display: none !important;
  }
  body.fq-page {
    padding: 0;
    background: white;
    color: black;
  }
  .fq-container {
    width: 100%;
  }
  .fq-card {
    break-inside: avoid;
    box-shadow: none;
  }
  .fq-detail-layout {
    display: block;
  }
}
/* The homepage's blue-and-yellow art direction continues on every route. */
.fq-page {
  --fq-paper: #0f2e67;
  --fq-ink: #eef4ff;
  --fq-muted: #bfd0ef;
  --fq-blue: #ffe36a;
  --fq-border: rgba(198, 219, 255, 0.19);
  background:
    radial-gradient(ellipse at 15% 0, #285cb05c, transparent 50%),
    linear-gradient(180deg, #103d8f, #0f2e67 50%, #071a3d) !important;
  color: #eef4ff !important;
}
.fq-page .fq-intro {
  background: linear-gradient(125deg, #164694, #123b80);
  border-color: #bed3fc22;
}
.fq-page .fq-card,
.fq-page .fq-brief-card,
.fq-page .fq-auth-card,
.fq-page .fq-sidebar,
.fq-page .fq-stat,
.fq-page .fq-list-item,
.fq-page .fq-empty,
.fq-page .fq-filter-bar,
.fq-page .fq-message-thread {
  background: #12366f;
  border-color: #aec9f12d;
  color: #eef4ff;
}
.fq-page .fq-card-yellow {
  background: #ffe36a;
  color: #112c55;
  border-color: #ffe36a;
}
.fq-page .fq-card-yellow p {
  color: #30466d;
}
.fq-page .fq-tag {
  background: #ffffff0a;
  border-color: #c9dcff38;
  color: #d8e7ff;
}
.fq-page .fq-card-number {
  background: #ffe36a;
  color: #14335f;
}
.fq-page .button-primary,
.fq-page .topbar .button-primary {
  color: #112c55;
}
.fq-page .button-secondary {
  background: #ffffff08;
  color: #edf4ff;
  border-color: #bdd2f35e;
}
.fq-page .fq-card-yellow .button-secondary {
  color: #112c55;
  border-color: #102a5760;
}
.fq-page .fq-auth-tabs button[aria-selected="true"] {
  color: #ffe36a;
  border-bottom-color: #ffe36a;
}
.fq-page .fq-role-choice label:has(:checked) {
  background: #ffffff0b;
  border-color: #ffe36a;
}
.fq-page .fq-auth-benefit > span {
  background: #ffe36a;
  color: #133866;
}
.fq-page .fq-sidebar nav a[aria-current="page"] {
  background: #ffe36a;
  color: #14335f;
}
.fq-page .fq-result-card .fq-avatar,
.fq-page .fq-profile-heading .fq-avatar {
  background: #245097;
  color: #ffe36a;
}
.fq-page .fq-message {
  background: #204579;
}
.fq-page .fq-message.own {
  background: #285493;
}
.fq-page .fq-message p {
  color: #eef4ff;
}
.fq-page .fq-progress span {
  background: #ffffff0b;
  color: #bfd0ef;
}
.fq-page .fq-progress span.active {
  background: #ffe36a;
  color: #122f58;
}
.fq-page input:not([type="checkbox"]):not([type="radio"]),
.fq-page select,
.fq-page textarea {
  background: #0c2b60;
  border-color: #b2c9ef60;
  color: #eef4ff;
}
.fq-page input::placeholder,
.fq-page textarea::placeholder {
  color: #a4b9dc;
}
.fq-page input[readonly] {
  opacity: 0.75;
}
.fq-page .fq-notice {
  background: #fff7da;
  color: #5d4c15 !important;
}
.fq-page .fq-password button {
  color: #ffe36a;
}
.fq-page .fq-auth-tabs button {
  color: #b6c9e8;
}
.fq-page .fq-role-choice small {
  color: #bfd0ef;
}
.fq-page .fq-footer {
  background: #071e45;
}
.fq-page .fq-empty {
  border-style: dashed;
}
.fq-page .fq-results-bar select {
  background: #0c2b60;
}
.fq-page .fq-card-yellow .fq-text-link {
  color: #103d8f;
}
.fq-page input[type="checkbox"],
.fq-page input[type="radio"] {
  accent-color: #d7ab0a;
}
.fq-page .fq-error {
  background: #592e40;
  border-color: #e5a29b;
}
.fq-page .fq-list-item:hover {
  border-color: #a9c4eb75;
}
@media print {
  body.fq-page {
    background: white !important;
    color: black !important;
  }
  .fq-page .fq-card {
    background: white !important;
    color: black !important;
    border-color: #ccc;
  }
  .fq-page p,
  .fq-page dt {
    color: #333 !important;
  }
  .fq-page h1,
  .fq-page h2,
  .fq-page h3 {
    color: black !important;
  }
}

.fq-page .topbar,
.fq-home .topbar {
  display: flex;
  transform: none;
}
.fq-page .topbar-links,
.fq-home .topbar-links {
  flex: 1;
  transform: none;
}
.fq-page .topbar-links a,
.fq-home .topbar-links a {
  color: #e1ebff;
}
.fq-page .topbar-links a::after,
.fq-home .topbar-links a::after,
.fq-page .topbar-actions a::after,
.fq-home .topbar-actions a::after {
  content: none;
}
.fq-page .topbar-actions,
.fq-home .topbar-actions {
  transform: none;
  margin-left: auto;
}
.fq-page .topbar-links .fq-mobile-link,
.fq-home .topbar-links .fq-mobile-link {
  display: none;
}
.fq-page .brand-logo,
.fq-home .brand-logo {
  max-width: none;
}
:target {
  scroll-margin-top: 100px;
}
@media (max-width: 1200px) {
  .fq-page .topbar-links .fq-mobile-link,
  .fq-home .topbar-links .fq-mobile-link {
    display: block;
    border-top: 1px solid #ffffff25;
    padding-top: 16px;
  }
  .fq-page .topbar-actions,
  .fq-home .topbar-actions {
    margin-left: 0;
  }
}

/* Shared brand accents: the homepage and every workspace use the same roles. */
:is(.fq-home, .fq-page) {
  --fq-yellow: #ffe36a;
  --fq-action-ink: #112c55;
  --fq-surface: #12366f;
}
:is(.fq-home, .fq-page) .button-primary {
  background: var(--fq-yellow);
  color: var(--fq-action-ink);
  border: 1px solid var(--fq-yellow);
  border-radius: 12px;
  box-shadow: none;
}
:is(.fq-home, .fq-page) .button-primary:hover {
  background: #ffed9a;
  border-color: #ffed9a;
  color: var(--fq-action-ink);
}
:is(.fq-home, .fq-page) .topbar .button-primary {
  background: var(--fq-yellow);
  color: var(--fq-action-ink);
}
.fq-home .hero-copy .hero-title-line:last-child,
.fq-home .eyebrow,
.fq-home .hero-trust-pills .trust-pill svg {
  color: var(--fq-yellow);
}
.fq-home .home-process-index {
  background: var(--fq-yellow);
  color: var(--fq-action-ink);
  border-color: var(--fq-yellow);
}
:is(.fq-home, .fq-page) .fq-card {
  background: var(--fq-surface);
  border-color: #aec9f12d;
  border-radius: var(--fq-radius);
}
:is(.fq-home, .fq-page) .fq-card-yellow {
  background: var(--fq-yellow);
  color: var(--fq-action-ink);
}
:is(.fq-home, .fq-page) .fq-eyebrow {
  color: var(--fq-yellow);
}
:is(.fq-home, .fq-page) .fq-footer {
  background: #071e45;
}
:is(.fq-home, .fq-page) .topbar-links a:hover,
:is(.fq-home, .fq-page) .fq-footer a:hover {
  color: var(--fq-yellow);
}
.fq-home .fq-category-card:hover {
  border-color: var(--fq-yellow);
}

.fq-home .audience-carousel { scrollbar-width: none; scroll-behavior: auto; }
.fq-home .audience-carousel::-webkit-scrollbar { display: none; }
.fq-carousel-toggle { display: block; margin: 16px 0 0 auto; padding: 8px 14px; border: 1px solid #ffe36a66; border-radius: 12px; background: transparent; color: #ffe36a; font: inherit; font-size: 13px; cursor: pointer; }
.fq-carousel-toggle:hover { background: #ffe36a15; }

/* Homepage: clear editorial rhythm, shared brand, purposeful actions. */
.fq-home .fq-hero-kicker { color: var(--fq-yellow); font-size: 11px; font-weight: 700; letter-spacing: .14em; margin: 0 0 20px; }
.fq-home .hero-text { max-width: 580px; line-height: 1.75; }
.fq-home .section-heading h2, .fq-home .fq-section h2 { max-width: 820px; letter-spacing: -.05em; }
.fq-home .section-heading { margin-bottom: 36px; }
.fq-home .audience-card { padding: clamp(26px,4vw,48px); border-radius: 24px; background: linear-gradient(135deg,#214c8e88,#12366f); border: 1px solid #aec9f133; box-shadow: none; display: flex; flex-direction: column; }
.fq-home .audience-card h3.audience-card-title { font-size: clamp(1.5rem,2.6vw,2.25rem); line-height: 1.25; letter-spacing: -.04em; }
.fq-home .audience-list { margin-bottom: 30px; }
.fq-home .audience-list li { font-size: 16px; line-height: 1.6; }
.fq-audience-link { color: #ffe36a; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #aec9f133; padding-top: 22px; margin-top: auto; font-size: 15px; font-weight: 700; }
.fq-audience-link span { font-size: 24px; transition: transform .2s; }
.fq-audience-link:hover span { transform: translate(3px,-3px); }
.fq-home .audience-carousel-shell { margin-top: 72px; }
.fq-home .audience-carousel-copy { max-width: 760px; }
.fq-home .audience-carousel-copy h3 { font-size: clamp(1.5rem,2.7vw,2.4rem); letter-spacing: -.04em; line-height: 1.3; }
.fq-home .audience-carousel { border-radius: 24px; }
.fq-home .fq-category-link { transition: border-color .2s,background .2s,transform .2s; }
.fq-home .fq-category-link:hover { background: #234c87; border-color: #ffe36a88; transform: translateY(-3px); text-decoration: none; }
.fq-home .fq-category-link strong { font-size: 19px; }
.fq-home .fq-category-link span { line-height: 1.55; font-size: 14px; }
.fq-home .home-process-item { border-bottom: 1px solid #aec9f126; padding-bottom: 24px; }
.fq-home .home-process-item:last-child { border-bottom: 0; }
.fq-home .home-process-figure { border-radius: 24px; overflow: hidden; }
.fq-home .fq-section h2 em { color: #ffe36a; font-style: normal; }
.fq-home-pricing { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #aec9f133; border-radius: 24px; overflow: hidden; background: #12366f; }
.fq-home-pricing > div { padding: clamp(28px,4vw,48px); }
.fq-home-pricing > div + div { border-left: 1px solid #aec9f133; }
.fq-home-price { color: #ffe36a; font-family: 'Plus Jakarta Sans',sans-serif; font-size: clamp(3.5rem,7vw,6rem); font-weight: 800; letter-spacing: -.07em; line-height: 1.2; }
.fq-home-pricing h3 { font-size: 20px; margin: 18px 0 12px; }
.fq-home-pricing p { max-width: 420px; }
.fq-home-pricing-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 24px; }
.fq-home-pricing-bottom p { max-width: 540px; font-size: 13px; }
.fq-home .fq-section:last-child { background: transparent; text-align: center; border-top: 1px solid #ffe36a44; }
.fq-home .fq-section:last-child h2 { margin-left: auto; margin-right: auto; }
.fq-home .fq-section:last-child .fq-actions { justify-content: center; }
.fq-home .fq-section .button-secondary { border: 1px solid #aec9f166; background: transparent; color: #eef4ff; box-shadow: none; border-radius: 12px; }
@media(max-width:640px) {
 .fq-home .fq-hero-kicker { font-size: 9px; letter-spacing: .1em; max-width: 270px; line-height: 1.6; }
 .fq-home .audience-carousel-shell { margin-top: 48px; }
 .fq-home-pricing { grid-template-columns: 1fr; }
 .fq-home-pricing > div + div { border-left: 0; border-top: 1px solid #aec9f133; }
 .fq-home-pricing-bottom { align-items: stretch; flex-direction: column; }
 .fq-home .audience-list li { font-size: 14px; }
}
.fq-home .audience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fq-home .audience-card { min-width: 0; }
.fq-home .audience-card h3.audience-card-title { white-space: normal; overflow-wrap: break-word; }
@media(max-width:800px) { .fq-home .audience-grid { grid-template-columns: minmax(0,1fr); } }
/* Expandable benefits and generously spaced answers. */
.fq-home .audience-list li { display: block; padding: 0; }
.fq-home .audience-list li::before { content: none; }
.fq-home .audience-list details { width: 100%; }
.fq-home .audience-list summary { display: flex; align-items: center; gap: 14px; padding: 20px; cursor: pointer; list-style: none; }
.fq-home .audience-list summary::-webkit-details-marker { display: none; }
.fq-home .audience-list summary::before { content: ''; flex: 0 0 30px; width: 30px; height: 30px; display: block; border-radius: 50%; background: linear-gradient(#ffe36a,#ffe36a) center / 12px 2px no-repeat, linear-gradient(#ffe36a,#ffe36a) center / 2px 12px no-repeat, #ffffff18; }
.fq-home .audience-list details[open] summary::before { background: linear-gradient(#ffe36a,#ffe36a) center / 12px 2px no-repeat, #ffffff18; }
.fq-home .audience-list details p { margin: 0; padding: 0 22px 24px 64px; font-size: 15px; line-height: 1.75; color: #c5d4ed; }
:is(.fq-home,.fq-page) .fq-faq summary { padding: 12px 0; line-height: 1.5; }
:is(.fq-home,.fq-page) .fq-faq details p { margin: 16px 0 12px; padding: 0 0 12px; line-height: 1.85; max-width: 820px; }
@media(max-width:640px) { .fq-home .audience-list details p { padding-left: 20px; padding-right: 20px; } }
/* Layout audit: predictable spacing and balanced headings on narrow screens. */
.fq-home .audience-card h3.audience-card-title { margin: 0 0 24px; }
.fq-home .section-heading h2,
.fq-home .fq-section-heading h2,
.fq-home .audience-card h3.audience-card-title { text-wrap: balance; }
.fq-home .audience-list summary { line-height: 1.6; }
.fq-home .home-process-index,
.fq-home .fq-card-number { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; line-height: 1; padding: 0; }
/* Visual review: readable profile cards, clearer steps, balanced pricing. */
.fq-home .audience-profile-card { width: 184px; min-width: 184px; height: auto; grid-template-rows: auto auto; gap: 16px; padding: 12px; box-shadow: 0 8px 20px #06112a20; }
.fq-home .audience-profile-visual { width: 158px; height: 158px; }
.fq-home .audience-profile-meta { grid-template-rows: auto minmax(40px,auto) auto; gap: 7px; }
.fq-home .audience-profile-meta h4 { font-size: 15px; line-height: 1.4; }
.fq-home .audience-profile-meta p { font-size: 13px; line-height: 1.5; -webkit-line-clamp: 2; }
.fq-home .audience-profile-meta small { font-size: 11px; line-height: 1.5; color: #c5d4ed; white-space: normal; }
.fq-home .audience-profile-chip { font-size: 10px; line-height: 1.3; background: #17376b; }
.fq-home .audience-carousel::before,
.fq-home .audience-carousel::after { display: none; }
.fq-home .home-process-item h3 { line-height: 1.35; margin-bottom: 10px; }
.fq-home .home-process-item p { font-size: 15px; line-height: 1.75; color: #c5d4ed; }
.fq-home-pricing h3 { min-height: 2.8em; line-height: 1.4; }
.fq-home-pricing-bottom .button { flex-shrink: 0; white-space: nowrap; }
@media(max-width:760px) {
 .fq-home-pricing-bottom { flex-direction: column; align-items: stretch; }
 .fq-home-pricing-bottom .button { width: 100%; }
}
@media(max-width:480px) {
 .fq-home .audience-profile-card { width: 172px; min-width: 172px; }
 .fq-home .audience-profile-visual { width: 146px; height: 146px; }
 .fq-home .home-process-item { gap: 14px; padding: 20px 16px; }
 .fq-home .home-process-item h3 { font-size: 18px; }
}
/* Commitments: illustrated benefits, not steps. */
/* Compact commitments: icon and title share a row, with one clear explanation. */
.fq-home .fq-card.fq-commitment {
  display: grid; grid-template-columns: 44px minmax(0,1fr);
  align-content: start; align-items: center; gap: 14px 16px;
  padding: 26px; border-radius: 22px;
  background: linear-gradient(140deg,#254b8070,#12336680);
  border-color: #aec9f12e; overflow: hidden;
  box-shadow: inset 0 1px 0 #ffffff08;
}
.fq-commitment-art {
  width: 44px; height: 44px; display: grid; place-items: center;
  border-radius: 13px; color: #ffe36a; background: #ffe36a0e;
  border: 1px solid #ffe36a30;
}
.fq-commitment-art svg { width: 25px; height: 25px; }
.fq-home .fq-commitment h3 {
  font-size: 21px; line-height: 1.3; letter-spacing: -.025em; margin: 0;
}
.fq-home .fq-commitment p {
  grid-column: 1 / -1; font-size: 15px; line-height: 1.65; margin: 0;
}
@media(max-width:900px) {
  .fq-home .fq-card.fq-commitment { padding: 22px; gap: 10px 16px; }
  .fq-home .fq-commitment p { grid-column: 2; }
}
@media(max-width:440px) {
  .fq-home .fq-card.fq-commitment { padding: 20px; gap: 12px; }
  .fq-home .fq-commitment h3 { font-size: 19px; }
  .fq-home .fq-commitment p { grid-column: 1 / -1; }
}

/* Search focus belongs to the rounded field, not the text's inner rectangle. */
.fq-home .search-input-shell input:focus-visible { outline: none !important; box-shadow: none; }
.fq-home .search-input-shell:focus-within { border-color: #ffe36a99; box-shadow: 0 0 0 2px #ffe36a26, inset 0 1px 0 #ffffff10; }
.fq-home .search-input-shell:focus-within .search-field-icon { color: #ffe36a; }

/* Complementary paths: a featured company panel and a quieter freelance panel. */
.fq-home .audience-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:28px; padding:16px 0 24px; }
.fq-home .audience-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:36px; border-radius:30px; border:1px solid #abcaff30; }
.fq-home .audience-card-company { background:radial-gradient(ellipse at 0 0,#6395ee25,transparent 65%),linear-gradient(145deg,#244d8c,#173a70); border-color:#accbff65; box-shadow:inset 0 1px 0 #ffffff20,0 28px 52px -22px #020d25b3,0 6px 14px -8px #020d2590; }
.fq-home .audience-card-company::after { content:''; position:absolute; pointer-events:none; height:2px; left:36px; right:36px; top:0; background:linear-gradient(90deg,transparent,#ffe36ab3,transparent); }
.fq-home .audience-card-freelance { background:linear-gradient(145deg,#16386acc,#102e5cb3); box-shadow:inset 0 1px 0 #ffffff08; }
.fq-home .audience-card > .eyebrow { display:flex; align-items:center; min-height:42px; padding-right:56px; margin:0 0 24px; font-size:12px; letter-spacing:.08em; }
.fq-home .audience-card h3.audience-card-title { font-size:clamp(25px,2.55vw,39px); font-weight:700; line-height:1.23; letter-spacing:-.04em; margin:0 0 24px; min-height:2.46em; text-wrap:balance; }
.fq-home .fq-audience-symbol { position:absolute; top:36px; right:36px; display:grid; place-items:center; width:42px; height:42px; border-radius:13px; color:#ffe36a; border:1px solid #ffe36a35; background:#ffe36a0a; }
.fq-home .fq-audience-symbol svg { width:26px; height:26px; }
.fq-home .audience-card-freelance .fq-audience-symbol { color:#bfd4fa; border-color:#bfd4fa30; background:#bfd4fa08; }
.fq-home .fq-audience-fee { display:inline-flex; align-self:flex-start; padding:8px 13px; border:1px solid #ffe36a40; border-radius:999px; color:#ffe36a; background:#ffe36a09; font-size:12px; font-weight:700; line-height:1.4; margin-bottom:24px; }
.fq-home .audience-list { gap:0; margin:0 0 30px; }
.fq-home .audience-list li { display:block; padding:0; background:none; border:0; border-bottom:1px solid #ffffff16; border-radius:0; box-shadow:none; }
.fq-home .audience-list summary { padding:19px 0; font-size:15px; line-height:1.55; min-height:68px; gap:13px; transition:color .18s; }
.fq-home .audience-list summary:hover { color:#ffe99b; }
.fq-home .audience-list summary::before { flex-basis:25px; width:25px; height:25px; }
.fq-home .audience-list details[open] summary { color:#ffe36a; }
.fq-home .audience-list details p { padding:0 0 21px 38px; font-size:14px; line-height:1.8; color:#cbd9f0; }
.fq-home .audience-list summary:focus-visible { outline:2px solid #ffe36a; outline-offset:4px; border-radius:8px; }
.fq-home .fq-audience-link { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:auto; padding:16px 20px; min-height:58px; background:#ffe36a; border:1px solid #ffe36a; border-radius:14px; color:#10366b; font-size:15px; font-weight:800; text-decoration:none; box-shadow:none; transition:background .18s,border-color .18s; }
.fq-home .fq-audience-link span { color:inherit; display:grid; place-items:center; width:28px; height:28px; font-size:24px; line-height:1; }
.fq-home .fq-audience-link:hover { background:#ffeb91; color:#10366b; transform:none; }
.fq-home .audience-card-freelance .fq-audience-link { background:#ffffff06; border-color:#b5ceef60; color:#f2f6ff; }
.fq-home .audience-card-freelance .fq-audience-link:hover { background:#ffffff10; border-color:#ffe36a; color:#ffe36a; }
@media(min-width:1000px) {
 .fq-home .audience-grid { grid-template-columns:minmax(0,1.09fr) minmax(0,1fr); gap:32px; }
 .fq-home .audience-card-company { padding:48px 44px; }
 .fq-home .audience-card-company .fq-audience-symbol { top:48px; right:44px; }
 .fq-home .audience-card-company h3.audience-card-title { font-size:clamp(30px,2.7vw,42px); }
 .fq-home .audience-card-freelance { padding:32px 36px; }
 .fq-home .audience-card-freelance .fq-audience-symbol { top:32px; }
}
@media(max-width:800px) {
 .fq-home .audience-grid { grid-template-columns:minmax(0,1fr); align-items:stretch; gap:24px; }
 .fq-home .audience-card h3.audience-card-title { min-height:0; }
}
@media(max-width:480px) {
 .fq-home .audience-card { padding:24px; border-radius:24px; }
 .fq-home .audience-card > .eyebrow { font-size:11px; margin-bottom:20px; }
 .fq-home .fq-audience-symbol { top:24px; right:24px; }
 .fq-home .audience-list summary { font-size:14px; }
 .fq-home .audience-list details p { padding-left:0; }
}
@media(prefers-reduced-motion:reduce) { .fq-home .audience-card *, .fq-home .audience-card *::before { transition:none; } }

/* Stronger foreground treatment for the featured company panel. */
.fq-home .audience-card-company {
 border-color:#bdd6ff80;
 box-shadow:inset 0 1px 0 #ffffff38,inset 0 -2px 0 #071d4540,0 8px 0 -2px #102b57,0 9px 0 -2px #8ab3f338,0 34px 50px -15px #020b23cc,0 10px 22px -8px #020b2380;
}
@media(min-width:1000px) {
 .fq-home .audience-grid { gap:40px; padding-top:30px; padding-bottom:36px; }
 .fq-home .audience-card-company { transform:translateY(-14px); padding-top:56px; padding-bottom:56px; z-index:1; }
}
@media(max-width:800px) { .fq-home .audience-grid { gap:36px; } }

/* Let the audience heading use the full available desktop width. */
.fq-home .home-audience-section > .section-heading.compact { max-width:none; width:100%; }
@media(min-width:1100px) { .fq-home .home-audience-section > .section-heading h2 { font-size:clamp(30px,3.1vw,48px); max-width:none; white-space:nowrap; text-wrap:nowrap; } }

/* Feature the company path on the right; keep it first on stacked layouts. */
@media(min-width:801px) {
 .fq-home .audience-card-freelance { grid-column:1; grid-row:1; }
 .fq-home .audience-card-company { grid-column:2; grid-row:1; }
}
@media(min-width:1000px) {
 .fq-home .audience-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.09fr); }
}

/* Compact audience cards while preserving the featured hierarchy. */
.fq-home .audience-card { padding:28px; }
.fq-home .audience-card > .eyebrow { margin-bottom:16px; min-height:34px; }
.fq-home .fq-audience-symbol { top:28px; right:28px; width:34px; height:34px; border-radius:11px; }
.fq-home .fq-audience-symbol svg { width:23px; height:23px; }
.fq-home .audience-card h3.audience-card-title { font-size:clamp(24px,2.2vw,32px); margin-bottom:18px; }
.fq-home .fq-audience-fee { margin-bottom:12px; padding:7px 11px; }
.fq-home .audience-list { margin-bottom:22px; }
.fq-home .audience-list summary { min-height:56px; padding:14px 0; }
.fq-home .fq-audience-link { min-height:52px; padding:12px 18px; }
@media(min-width:1000px) {
 .fq-home .audience-grid { padding-top:22px; padding-bottom:28px; gap:36px; }
 .fq-home .audience-card-company { padding:36px; transform:translateY(-10px); }
 .fq-home .audience-card-company h3.audience-card-title { font-size:clamp(26px,2.35vw,35px); }
 .fq-home .audience-card-company .fq-audience-symbol { top:36px; right:36px; }
 .fq-home .audience-card-freelance { padding:26px 30px; }
 .fq-home .audience-card-freelance .fq-audience-symbol { top:26px; right:30px; }
}
@media(max-width:480px) { .fq-home .audience-card { padding:22px; } .fq-home .fq-audience-symbol { top:22px; right:22px; } }

/* Search trial: one quiet outer frame, with a unified focus state. */
.fq-home .hero .marketplace-search { align-items:stretch; padding:8px; gap:12px; border-radius:20px; background:#102c5880; border:1px solid #bdd4f54a; box-shadow:0 8px 24px #06152f20; }
.fq-home .hero .search-input-shell,
.fq-home .hero .search-input-shell:focus-within { padding:8px 14px; gap:5px; border:0; border-radius:12px; background:transparent; box-shadow:none; }
.fq-home .hero .marketplace-search:focus-within { border-color:#ffe36a99; box-shadow:0 0 0 2px #ffe36a18; }
.fq-home .hero .search-label { font-size:11px; font-weight:700; letter-spacing:.06em; color:#bbcee9; }
.fq-home .hero .search-input-shell input { font-size:16px; font-weight:500; line-height:1.5; }
.fq-home .hero .search-input-shell input::placeholder { color:#b7c9e3; font-weight:400; opacity:1; }
.fq-home .hero .marketplace-search > .button { align-self:stretch; min-height:60px; border-radius:13px; padding:12px 24px; }
@media(max-width:760px) { .fq-home .hero .marketplace-search > .button { min-height:48px; } }

/* A compact, recognizable search surface that belongs to the blue hero. */
.fq-home .hero .hero-search-wide.marketplace-search { max-width:1040px; justify-self:center; margin-inline:auto; background:#102e60e6; border-color:#a9c7f080; border-radius:20px; box-shadow:inset 0 1px 0 #ffffff12,0 12px 30px -12px #04132a80; padding:7px; }
.fq-home .hero .search-input-shell,
.fq-home .hero .search-input-shell:focus-within { background:transparent; border:0; box-shadow:none; padding:8px 14px; }
.fq-home .hero .search-label { color:#baceec; font-size:10px; }
.fq-home .hero .search-input-shell input { color:#f3f7ff; font-size:16px; caret-color:#ffe36a; }
.fq-home .hero .search-input-shell input::placeholder { color:#d4e0f3; }
.fq-home .hero .search-field-icon { color:#ffe36a; width:23px; height:23px; }
.fq-home .hero .marketplace-search > .button { min-height:58px; padding:12px 24px; }
.fq-home .hero .marketplace-search:focus-within { border-color:#ffe36a99; box-shadow:0 0 0 3px #ffe36a0d,0 12px 30px -12px #04132a80; }
@media(max-width:760px) { .fq-home .hero .marketplace-search > .button { min-height:46px; } }

/* Restore the original translucent blue finish on the compact search bar. */
.fq-home .hero .hero-search-wide.marketplace-search {
 background:linear-gradient(180deg,rgba(255,255,255,.10),transparent),rgba(7,24,63,.42);
 border-color:rgba(198,219,255,.28);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 40px rgba(0,14,46,.16);
}
.fq-home .hero .search-input-shell,
.fq-home .hero .search-input-shell:focus-within {
 background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 58%),rgba(255,255,255,.05);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -18px 40px rgba(5,16,44,.18);
}

/* Navigation: a stronger brand and a shared control baseline. */
:is(.fq-home, .fq-page) .topbar { align-items: center; }
:is(.fq-home, .fq-page) .topbar .brand { align-self: center; line-height: 1; }
:is(.fq-home, .fq-page) .brand-logo { width: 176px; height: 60px; }
:is(.fq-home, .fq-page) .topbar-actions { align-items: center; }
:is(.fq-home, .fq-page) .topbar .button,
:is(.fq-home, .fq-page) .fq-menu-toggle {
  box-sizing: border-box;
  height: 44px;
  min-height: 44px;
  padding: 0 16px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 12px;
}
@media (max-width: 760px) {
  :is(.fq-home, .fq-page) .brand-logo { width: 144px; height: 50px; }
  :is(.fq-home, .fq-page) .topbar { gap: 10px; }
  :is(.fq-home, .fq-page) .topbar .button,
  :is(.fq-home, .fq-page) .fq-menu-toggle { padding-inline: 12px; font-size: 13px; }
}
@media (max-width: 390px) {
  :is(.fq-home, .fq-page) .brand-logo { width: 124px; height: 44px; }
  :is(.fq-home, .fq-page) .topbar { gap: 8px; }
  :is(.fq-home, .fq-page) .topbar .button,
  :is(.fq-home, .fq-page) .fq-menu-toggle { padding-inline: 10px; font-size: 12px; }
}

/* Homepage project gallery: original vector illustrations, no fictitious people. */
.fq-home .fq-project-slide { display:flex; flex-direction:column; flex:0 0 264px; width:264px; padding:20px; border:1px solid #a8c6f333; border-radius:22px; background:linear-gradient(150deg,#284b80,#142e5b); color:#edf3ff; text-decoration:none; box-sizing:border-box; }
.fq-project-art { position:relative; display:grid; place-items:center; height:112px; margin-bottom:20px; overflow:hidden; border-radius:14px; background:radial-gradient(ellipse at center,#5479b255,transparent 70%); }
.fq-project-art svg { width:55px; height:55px; color:#ffe36a; z-index:1; }
.fq-project-orbit { position:absolute; width:104px; height:104px; border:1px solid #a8c6f330; border-radius:50%; transform:rotate(-25deg) scaleX(1.5); }
.fq-home .fq-project-category { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:#ffe36a; margin-bottom:10px; }
.fq-home .fq-project-slide h4 { font-size:20px; line-height:1.3; margin:0 0 12px; min-height:52px; }
.fq-home .fq-project-slide p { font-size:14px; line-height:1.65; color:#c7d7ef; margin:0 0 22px; }
.fq-project-action { display:flex; justify-content:space-between; align-items:center; font-size:12px; font-weight:700; margin-top:auto; padding-top:16px; border-top:1px solid #a8c6f325; }
.fq-project-action span { color:#ffe36a; font-size:23px; }
.fq-project-slide:hover { border-color:#ffe36a88; }
@media(max-width:600px) { .fq-home .fq-project-slide { flex-basis:240px; width:240px; padding:18px; } }
/* Homepage rhythm: search before decoration, compact categories, open process. */
.fq-home .hero-copy .hero-search-wide.marketplace-search { margin:26px 0 20px; width:100%; max-width:none; grid-template-columns:minmax(0,1fr) auto; gap:8px; padding:8px; }
.fq-home .hero-copy .hero-search-wide .search-input-shell { min-width:0; padding:10px 12px; }
.fq-home .hero-copy .hero-search-wide input { font-size:14px; }
.fq-home .hero-copy .hero-search-wide .button { padding-inline:18px; min-width:0; }
.fq-home .hero-copy .hero-trust-pills { margin-top:18px; }
.fq-home .fq-category-grid { gap:0 26px; }
.fq-home .fq-category-link { padding:20px 0; border:0; border-bottom:1px solid #b8cdef30; border-radius:0; background:transparent; box-shadow:none; }
.fq-home .fq-category-link strong { font-size:19px; }
.fq-home .fq-category-link span { font-size:13px; }
.fq-home .fq-process-light { padding-top:64px; padding-bottom:64px; }
.fq-process-line { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:40px; }
.fq-process-line article { position:relative; padding-top:25px; border-top:1px solid #b8cdef45; }
.fq-process-dot { position:absolute; width:10px; height:10px; top:-6px; left:0; border-radius:50%; background:#ffe36a; box-shadow:0 0 0 5px #ffe36a0b; }
.fq-process-line h3 { margin:0 0 14px; font-size:23px; line-height:1.3; }
.fq-process-line p { margin:0; font-size:15px; line-height:1.7; color:#c7d7ef; }
@media(max-width:760px) {
 .fq-home .hero-copy .hero-search-wide.marketplace-search { margin-top:22px; grid-template-columns:minmax(0,1fr); }
 .fq-home .hero-copy .hero-search-wide .button { min-height:44px; }
 .fq-process-line { grid-template-columns:1fr; gap:0; margin-top:28px; }
 .fq-process-line article { border-top:0; border-left:1px solid #b8cdef45; padding:0 0 28px 24px; }
 .fq-process-line article:last-child { padding-bottom:0; }
 .fq-process-dot { top:7px; left:-6px; }
 .fq-process-line h3 { font-size:21px; }
 .fq-home .fq-process-light { padding-block:40px; }
}
/* Collaboration: a light timeline and a concrete, explicitly illustrative example. */
.fq-process-example-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; margin-top:40px; }
.fq-process-example-layout .fq-process-line { grid-template-columns:1fr; gap:0; margin:0; }
.fq-process-example-layout .fq-process-line article { border-top:0; border-left:1px solid #b8cdef45; padding:0 0 32px 28px; }
.fq-process-example-layout .fq-process-line article:last-child { padding-bottom:0; }
.fq-process-example-layout .fq-process-dot { top:8px; left:-6px; }
.fq-collaboration-example { border:1px solid #a8c6f340; border-radius:24px; overflow:hidden; background:linear-gradient(145deg,#254879,#132e5d); box-shadow:0 18px 40px #04132a22,inset 0 1px 0 #ffffff0d; }
.fq-example-preview { padding:22px 24px 0; background:radial-gradient(ellipse at 65% 0,#537bb34d,transparent 75%); }
.fq-example-chrome { display:flex; gap:5px; padding:12px; border:1px solid #b8cdef30; border-bottom:0; border-radius:12px 12px 0 0; background:#102853; }
.fq-example-chrome i { width:5px; height:5px; background:#8da5cc; border-radius:50%; }
.fq-example-page { display:grid; grid-template-columns:1.5fr 1fr; align-items:center; gap:12px; padding:20px; background:#edf2fa; color:#143263; border-radius:0 0 4px 4px; }
.fq-example-mini-label { display:block; font-size:8px; font-weight:700; letter-spacing:.1em; margin-bottom:9px; }
.fq-example-page strong { font-size:clamp(14px,1.3vw,19px); line-height:1.3; }
.fq-example-mini-line { display:block; width:85%; height:3px; margin-top:10px; background:#14326324; border-radius:2px; }
.fq-example-mini-line.short { width:60%; margin-top:5px; }
.fq-example-mini-cta { display:inline-block; margin-top:14px; padding:7px 9px; border-radius:5px; background:#ffe36a; font-size:8px; font-weight:700; }
.fq-example-shape { display:grid; place-items:center; aspect-ratio:1; border-radius:24% 50% 24% 50%; background:#204580; color:#ffe36a; }
.fq-example-shape svg { width:85%; }
.fq-example-body { padding:26px; }
.fq-example-label { color:#ffe36a; font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.fq-example-body h3 { font-size:23px; line-height:1.3; margin:12px 0 20px; }
.fq-example-body dl { margin:0; display:grid; gap:14px; }
.fq-example-body dt { font-size:12px; font-weight:700; margin-bottom:4px; color:#eef4ff; }
.fq-example-body dd { margin:0; font-size:14px; line-height:1.55; color:#c7d7ef; }
@media(max-width:900px) { .fq-process-example-layout { grid-template-columns:1fr; gap:32px; } .fq-collaboration-example { width:100%; max-width:580px; justify-self:center; } }
@media(max-width:440px) { .fq-example-preview { padding:18px 18px 0; } .fq-example-page { padding:14px; } .fq-example-body { padding:20px; } .fq-example-body h3 { font-size:21px; } }
.fq-process-light .section-heading.compact { max-width:none; }
.fq-process-light .section-heading h2 { max-width:none; }
.fq-example-page { min-height:150px; }
.fq-example-shape { width:120px; max-width:100%; justify-self:center; }
@media(min-width:901px) { .fq-process-example-layout { align-items:start; } .fq-process-example-layout .fq-process-line { padding-top:12px; } }
/* Two visible discovery routes within one homepage section. */
.fq-home .fq-discovery .audience-carousel-shell { margin-top:32px; }
.fq-home .fq-discovery .fq-section-heading { margin-bottom:0; }
.fq-home .fq-discovery .fq-section-heading > p { margin-top:18px; font-size:16px; color:#c7d7ef; }
.fq-home .fq-discovery .audience-carousel-copy { margin-bottom:22px; }
.fq-home .fq-discovery .audience-carousel-copy h3,
.fq-home .fq-discovery-expertise h3 { font-size:clamp(22px,2.2vw,30px); line-height:1.3; margin:12px 0 16px; }
.fq-home .fq-discovery .audience-carousel-copy > p:last-child { font-size:15px; }
.fq-home .fq-discovery-expertise { margin-top:40px; padding-top:32px; border-top:1px solid #b8cdef25; }
.fq-home .fq-discovery .eyebrow { font-size:11px; letter-spacing:.12em; color:#ffe36a; }
@media(max-width:600px) { .fq-home .fq-discovery-expertise { margin-top:30px; padding-top:26px; } }
/* One shared alignment grid throughout the homepage. */
.fq-home { --fq-home-gutter:32px; --fq-home-edge:max(var(--fq-home-gutter), calc((100% - 1240px) / 2)); }
.fq-home .hero,
.fq-home main > .section { padding-inline:var(--fq-home-edge); }
.fq-home .hero-grid { width:100%; max-width:1240px; margin-inline:auto; }
.fq-home .fq-container { width:calc(100% - var(--fq-home-gutter) * 2); max-width:1240px; margin-inline:auto; }
.fq-home .topbar { padding-inline:var(--fq-home-edge); }
.fq-home .home-audience-section > .section-heading,
.fq-home .home-process-section > .section-heading { width:100%; max-width:none; }
.fq-home .home-audience-section > .section-heading h2 { white-space:normal; text-wrap:balance; }
@media(max-width:760px) { .fq-home { --fq-home-gutter:20px; } }
@media(max-width:390px) { .fq-home { --fq-home-gutter:16px; } }
/* Restore visual substance while retaining the shared homepage grid. */
.fq-home .fq-discovery .fq-category-grid { gap:16px; margin-top:26px; }
.fq-home .fq-category-link { position:relative; display:flex; flex-direction:column; gap:14px; padding:24px; border:1px solid #9bbcf039; border-radius:20px; background:radial-gradient(ellipse at 0 0,#3c67a355,transparent 75%),#153768; box-shadow:inset 0 1px 0 #ffffff0a,0 10px 24px #07152e18; transition:border-color .2s,background .2s; }
.fq-home .fq-category-link:hover { border-color:#ffe36a80; background-color:#204377; text-decoration:none; }
.fq-home .fq-category-link .fq-category-symbol { display:grid; place-items:center; width:44px; height:44px; border:1px solid #abc8f332; border-radius:13px; color:#ffe36a; background:#7197d117; }
.fq-category-symbol svg { width:26px; height:26px; }
.fq-home .fq-category-link strong { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; font-size:18px; }
.fq-home .fq-category-link strong b { font-size:24px; font-weight:400; color:#c7d7ef; }
.fq-home .fq-category-link > span:last-child { color:#c7d7ef; font-size:13px; line-height:1.65; }
.fq-home .fq-discovery-expertise { border-top:0; }
.fq-home .fq-project-art { height:150px; border:1px solid #b5cff04d; background:linear-gradient(145deg,#e8effb,#b9cdec); overflow:hidden; align-items:start; justify-items:start; padding:20px; color:#173b73; }
.fq-home .fq-project-art > svg { width:45px; height:45px; padding:10px; box-sizing:content-box; background:#193d76; border-radius:16px; color:#ffe36a; box-shadow:0 8px 18px #14326324; }
.fq-home .fq-project-orbit { width:124px; height:124px; right:-42px; top:35px; border:22px solid #416bb42e; transform:rotate(-25deg); border-radius:30px; }
.fq-project-preview-lines { position:absolute; left:20px; bottom:22px; display:grid; gap:7px; width:50%; }
.fq-project-preview-lines i { display:block; height:5px; background:#173b732e; border-radius:4px; }
.fq-project-preview-lines i:nth-child(2) { width:75%; }
.fq-project-preview-lines i:nth-child(3) { width:45%; background:#173b7366; }
.fq-project-preview-badge { position:absolute; top:15px; right:12px; font-size:8px; font-weight:800; letter-spacing:.07em; padding:6px 8px; border-radius:20px; background:#ffffff9c; color:#173b73; }
.fq-home [data-project="finance"] .fq-project-preview-lines,
.fq-home [data-project="marketing"] .fq-project-preview-lines { display:flex; align-items:end; height:40px; gap:6px; }
.fq-home [data-project="finance"] .fq-project-preview-lines i,
.fq-home [data-project="marketing"] .fq-project-preview-lines i { width:20px; height:45%; border-radius:3px 3px 0 0; }
.fq-home [data-project="finance"] .fq-project-preview-lines i:nth-child(2),
.fq-home [data-project="marketing"] .fq-project-preview-lines i:nth-child(2) { height:70%; }
.fq-home [data-project="finance"] .fq-project-preview-lines i:nth-child(3),
.fq-home [data-project="marketing"] .fq-project-preview-lines i:nth-child(3) { height:100%; }
.fq-home [data-project="design"] .fq-project-orbit { border-radius:50%; border-color:#5265a947; }
.fq-home [data-project="ops"] .fq-project-art,
.fq-home [data-project="ai"] .fq-project-art { background:linear-gradient(140deg,#cedbf4,#bac5ed); }
.fq-home .fq-home-pricing { background:radial-gradient(ellipse at 0 0,#476cb16b,transparent 70%),#12366f; box-shadow:0 20px 50px #06132b25,inset 0 1px 0 #b8cdef30; }
.fq-home .fq-home-pricing > div + div { background:linear-gradient(140deg,#ffe36a0c,transparent); }
@media(max-width:600px) { .fq-home .fq-category-link { padding:18px; gap:12px; } .fq-home .fq-category-link strong { font-size:16px; } .fq-home .fq-discovery .fq-category-grid { gap:12px; } }
/* Final homepage spacing and focus details. */
.fq-home .fq-discovery .audience-carousel-copy { gap:8px; }
.fq-home .fq-discovery .audience-carousel-copy .eyebrow { margin:0; }
.fq-home .fq-discovery .audience-carousel-copy h3 { margin:4px 0 6px; }
.fq-home .fq-discovery .audience-carousel-copy > p:last-child { margin:0; }
.fq-home .fq-category-link { justify-content:flex-start; }
.fq-home .fq-category-link > span:last-child { margin:0; }
.fq-home .fq-menu-toggle > span { display:block; width:16px; height:12px; font-size:0; background:linear-gradient(currentColor,currentColor) 0 0/100% 2px no-repeat,linear-gradient(currentColor,currentColor) 0 50%/100% 2px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat; }
.fq-home .fq-project-slide:focus-visible,
.fq-home .fq-category-link:focus-visible { outline:2px solid #ffe36a; outline-offset:3px; }
.fq-home .hero-copy .hero-trust-pills { row-gap:12px; }
@media(max-width:760px) { .fq-home .hero-copy { gap:0; } .fq-home .hero-copy .hero-trust-pills { margin-top:22px; } }
/* Restore the human rhythm and mutual-benefit story of the original homepage. */
.fq-human-heading { display:flex; align-items:end; gap:32px; justify-content:space-between; }
.fq-human-heading h2 { max-width:800px; margin:12px 0 0; }
.fq-human-browse { color:#ffe36a; white-space:nowrap; font-weight:700; font-size:14px; }
.fq-human-note { font-size:12px; color:#bdcfea; margin:20px 0 24px; }
.fq-human-carousel { overflow-x:auto; scrollbar-width:none; border:1px solid #a8c6f333; border-radius:26px; background:linear-gradient(145deg,#355e9440,#0c255033); padding:24px; }
.fq-human-carousel::-webkit-scrollbar { display:none; }
.fq-human-track { display:flex; gap:24px; width:max-content; }
.fq-human-card { display:block; width:270px; flex:0 0 270px; padding:12px; box-sizing:border-box; border:1px solid #bbd2f33d; border-radius:22px; background:linear-gradient(145deg,#315588,#183565); color:#edf3ff; text-decoration:none; }
.fq-human-photo { position:relative; height:245px; overflow:hidden; border-radius:14px; }
.fq-human-photo img { width:100%; height:100%; object-fit:cover; object-position:center 28%; }
.fq-human-photo > span { position:absolute; bottom:12px; left:12px; padding:7px 10px; background:#173666ed; border:1px solid #ffffff22; border-radius:30px; font-size:10px; font-weight:700; text-transform:uppercase; }
.fq-human-meta { padding:18px 8px 8px; }
.fq-human-meta h3 { font-size:22px; margin:0 0 8px; }
.fq-human-meta p { font-size:14px; margin:0 0 18px; color:#c7d7ef; }
.fq-human-meta > span { display:flex; justify-content:space-between; align-items:center; border-top:1px solid #a8c6f32b; padding-top:14px; font-size:11px; color:#e1ebff; }
.fq-human-meta b { font-size:22px; color:#ffe36a; font-weight:400; }
.fq-human-card:hover { border-color:#ffe36a88; }
.fq-human-card:focus-visible { outline:2px solid #ffe36a; outline-offset:3px; }
.fq-home .fq-discovery .audience-carousel { background:none; border:0; border-radius:0; padding:0; min-height:0; overflow:visible; }
.fq-home .fq-discovery .audience-carousel-track { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; width:100%; animation:none; transform:none; }
.fq-home .fq-discovery .fq-project-slide { width:auto; min-width:0; transform:none; padding:18px; }
.fq-home .fq-discovery .fq-project-art { height:112px; padding:12px; }
.fq-home .fq-discovery .fq-project-slide h4 { font-size:18px; }
.fq-home .fq-discovery .fq-project-slide p { font-size:13px; }
.fq-shared-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; }
.fq-shared-story h2 { margin:16px 0 24px; }
.fq-shared-story > p:not(.eyebrow) { font-size:17px; line-height:1.75; color:#c7d7ef; }
.fq-shared-story .button { margin-top:20px; }
.fq-shared-visual { position:relative; padding:14px 0; }
.fq-shared-visual article { position:relative; padding:28px; border:1px solid #a8c6f34d; border-radius:24px; background:linear-gradient(145deg,#305688,#173564); box-shadow:0 15px 35px #07152f25; }
.fq-shared-visual article:last-child { margin:20px 0 0 32px; background:linear-gradient(145deg,#244675,#112b54); }
.fq-shared-label { color:#ffe36a; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.fq-shared-visual h3 { margin:14px 0 12px; font-size:24px; }
.fq-shared-visual p { font-size:15px; line-height:1.65; color:#c7d7ef; }
.fq-shared-pills { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.fq-shared-pills span { padding:6px 10px; border-radius:20px; background:#ffffff0a; border:1px solid #a8c6f32b; font-size:11px; }
.fq-shared-link { position:absolute; z-index:2; top:-11px; left:-18px; width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:#ffe36a; color:#173564; font-size:25px; }
@media(max-width:1000px) { .fq-home .fq-discovery .audience-carousel-track { grid-template-columns:repeat(2,minmax(0,1fr)); } .fq-shared-layout { gap:32px; } }
@media(max-width:760px) { .fq-human-heading { display:block; } .fq-human-browse { display:inline-block; margin-top:18px; } .fq-human-card { width:238px; flex-basis:238px; } .fq-human-photo { height:218px; } .fq-human-carousel { padding:16px; } .fq-shared-layout { grid-template-columns:1fr; } .fq-shared-visual article { padding:22px; } .fq-shared-visual article:last-child { margin-left:16px; } }
@media(max-width:440px) { .fq-home .fq-discovery .audience-carousel-track { grid-template-columns:1fr; } .fq-home .fq-discovery .fq-project-slide { display:grid; grid-template-columns:80px minmax(0,1fr); gap:8px 16px; } .fq-home .fq-discovery .fq-project-art { grid-row:1/4; height:90px; margin:0; } .fq-home .fq-discovery .fq-project-art > svg { width:30px; height:30px; padding:7px; } .fq-home .fq-discovery .fq-project-preview-badge,.fq-home .fq-discovery .fq-project-preview-lines { display:none; } .fq-home .fq-discovery .fq-project-category { margin:0; } .fq-home .fq-discovery .fq-project-slide h4 { min-height:0; margin:0; } .fq-home .fq-discovery .fq-project-slide p { margin:0; } .fq-home .fq-discovery .fq-project-action { grid-column:1/-1; margin-top:8px; } }
@media(max-width:760px) { .fq-shared-link { display:none; } }


/* Distinct discovery patterns: a project rail, then compact expertise links. */
.fq-home .fq-discovery .audience-carousel { overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:12px; }
.fq-home .fq-discovery .audience-carousel-track { display:flex; gap:20px; width:max-content; }
.fq-home .fq-discovery .fq-project-slide { display:flex; flex-direction:column; flex:0 0 320px; width:320px; scroll-snap-align:start; }
.fq-home .fq-discovery .fq-project-art { height:130px; margin-bottom:18px; }
.fq-home .fq-discovery .fq-project-slide h4 { min-height:48px; }
.fq-project-controls { display:flex; align-items:center; gap:10px; margin:0 0 18px; }
.fq-project-controls > span { margin-right:auto; color:#c7d7ef; font-size:13px; }
.fq-project-controls button { width:42px; height:42px; border:1px solid #adc6ef66; border-radius:50%; background:#244779; color:#ffe36a; font-size:22px; cursor:pointer; }
.fq-project-controls button:disabled { opacity:.3; cursor:default; }
.fq-home .fq-discovery .fq-discovery-expertise { margin-top:36px; padding-top:28px; border-top:1px solid #acc5ef33; }
.fq-home .fq-discovery .fq-category-grid { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.fq-home .fq-discovery .fq-category-link { display:flex; flex-direction:row; align-items:center; gap:10px; padding:12px 16px; border-radius:30px; background:#173969; box-shadow:none; }
.fq-home .fq-discovery .fq-category-symbol { width:24px; height:24px; border:0; background:none; border-radius:0; }
.fq-home .fq-discovery .fq-category-symbol svg { width:22px; height:22px; }
.fq-home .fq-discovery .fq-category-link strong { font-size:14px; gap:14px; }
.fq-home .fq-discovery .fq-category-link strong b { font-size:18px; }
.fq-home .fq-discovery .fq-category-link > span:last-child { display:none; }
@media(max-width:600px) {
 .fq-home .fq-discovery .fq-project-slide { flex-basis:280px; width:280px; gap:0; }
 .fq-home .fq-discovery .fq-project-art { height:120px; }
 .fq-home .fq-discovery .fq-project-action { margin-top:auto; }
 .fq-home .fq-discovery .fq-category-link { padding:11px 14px; }
}

/* Project-specific miniature illustrations. */
.fq-home .fq-discovery .fq-project-art { padding:0; border:0; background:none; height:auto; aspect-ratio:5/3; display:block; border-radius:14px; overflow:hidden; }
.fq-home .fq-discovery .fq-project-art img { display:block; width:100%; height:100%; object-fit:contain; }

/* Collaboration tools replace the unrelated sample website. */
.fq-home .fq-process-intro { max-width:750px; color:#c7d7ef; font-size:17px; line-height:1.7; margin-top:20px; }
.fq-mission-preview { align-self:start; border:1px solid #abc6ef44; border-radius:26px; padding:30px; background:linear-gradient(140deg,#2e5182,#142e55); box-shadow:0 20px 45px #06152e30; }
.fq-mission-preview > h3 { font-size:26px; line-height:1.3; margin:12px 0 26px; }
.fq-mission-tools { display:grid; gap:0; }
.fq-mission-tools > div { display:flex; align-items:flex-start; gap:16px; padding:21px 0; border-top:1px solid #b7cdee2b; }
.fq-mission-tools > div > span { display:grid; place-items:center; flex:0 0 42px; height:42px; border-radius:12px; color:#ffe36a; background:#7e9fd126; font-size:25px; line-height:1; }
.fq-mission-tools h4 { margin:0 0 7px; font-size:17px; }
.fq-mission-tools p,.fq-mission-preview-foot { font-size:14px; line-height:1.65; color:#c7d7ef; margin:0; }
.fq-mission-preview-foot { padding-top:20px; border-top:1px solid #b7cdee2b; }
@media(max-width:600px) { .fq-mission-preview { padding:23px; } .fq-mission-preview > h3 { font-size:23px; } }

@media(min-width:1000px) { .fq-home .hero-copy .hero-trust-pills { display:flex; flex-wrap:nowrap; column-gap:14px; } .fq-home .hero-copy .hero-trust-pills .trust-pill { gap:7px; font-size:10px; letter-spacing:.035em; white-space:nowrap; } .fq-home .hero-copy .hero-trust-pills .trust-pill svg { width:17px; height:17px; flex:0 0 17px; } }

.fq-home .hero-mini-portrait { display:block; width:84px; height:84px; overflow:hidden; border-radius:18px; }
.fq-home .hero-mini-portrait img { transform:scale(1); transform-origin:50% 25%; border-radius:0; }

/* A compact closing invitation anchored to the footer. */
.fq-home .fq-home-closing { padding:32px 0 56px; background:none; border:0; }
.fq-home .fq-home-closing .fq-closing-panel { position:relative; overflow:hidden; display:flex; align-items:center; justify-content:space-between; gap:36px; padding:40px 44px; border:1px solid #aec9ef44; border-radius:28px; background:radial-gradient(ellipse at 0 0,#4169a177,transparent 70%),#143361; box-shadow:0 16px 36px #06132b22; text-align:left; }
.fq-closing-panel:before { content:""; position:absolute; top:0; left:44px; width:72px; height:3px; background:#ffe36a; border-radius:0 0 4px 4px; }
.fq-home .fq-closing-copy .eyebrow { color:#ffe36a; font-size:11px; letter-spacing:.12em; margin:0 0 16px; }
.fq-home .fq-closing-copy h2 { font-size:clamp(27px,3vw,39px); line-height:1.18; letter-spacing:-.035em; margin:0 0 16px; }
.fq-closing-copy > p:last-child { font-size:14px; line-height:1.6; color:#c7d7ef; margin:0; }
.fq-closing-actions { flex:0 0 255px; display:grid; gap:20px; }
.fq-closing-actions .button { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:56px; }
.fq-closing-secondary { color:#e5edfc; font-size:14px; text-decoration:none; display:flex; justify-content:space-between; gap:16px; padding:0 5px; }
.fq-closing-secondary:hover { color:#ffe36a; }
@media(max-width:760px) { .fq-home .fq-home-closing .fq-closing-panel { flex-direction:column; align-items:stretch; gap:28px; padding:30px 25px; } .fq-closing-actions { flex-basis:auto; } .fq-home .fq-home-closing { padding:20px 0 36px; } .fq-closing-panel:before { left:25px; } }

/* Account access is secondary to the homepage search. */
.fq-home [data-auth-nav] a.button:not([href*="login.html"]) { background:transparent; color:#edf3ff; border:1px solid #adc7f080; box-shadow:none; }
.fq-home [data-auth-nav] a.button:not([href*="login.html"]):hover { background:#ffffff12; border-color:#d5e4ff; }

/* Align the desktop portrait composition with the hero heading. */
@media (min-width: 1121px) {
  .fq-home .hero-showcase {
    position: relative;
    top: -30px;
  }
}

/* Reserve the full footprint of the floating cards, including their overhang. */
@media (min-width: 981px) {
  .fq-home.home-page .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 48%);
    gap: 32px;
  }
  .fq-home.home-page .hero .hero-showcase {
    width: 100%;
    margin: 0;
    align-self: start;
    position: relative;
    top: var(--hero-title-offset, 60px);
    min-width: 0;
    container-type: inline-size;
  }
  .fq-home.home-page .hero .hero-showcase-stage {
    flex: none;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 720 / 470;
  }
  .fq-home.home-page .hero .hero-showcase-composition {
    left: 0;
    top: 0;
    transform-origin: 0 0;
    transform: scale(calc(100cqw / 720px)) translate(40px, 24px);
  }
  .fq-home .hero-copy { min-width: 0; }
}

/* One quiet search surface, with a clear primary action. */
.fq-home .hero-copy .hero-search-wide.marketplace-search {
  background: #17396b;
  border: 1px solid #a9c7f066;
  border-radius: 18px;
  box-shadow: none;
  padding: 8px;
  gap: 8px;
  align-items: center;
}
.fq-home .hero-copy .hero-search-wide .search-input-shell,
.fq-home .hero-copy .hero-search-wide .search-input-shell:focus-within {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 0 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.fq-home .hero-copy .hero-search-wide .search-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.fq-home .hero-copy .hero-search-wide .search-field-row { width: 100%; }
.fq-home .hero-copy .hero-search-wide input { min-width: 0; font-size: 16px; }
.fq-home .hero-copy .hero-search-wide > .button {
  min-height: 48px;
  padding: 10px 20px;
  border-radius: 11px;
  line-height: 1.4;
  box-shadow: none;
}
.fq-home .hero-copy .hero-search-wide:focus-within {
  border-color: #ffe36a;
  box-shadow: 0 0 0 3px #ffe36a20;
}

/* A light search field provides contrast with the blue hero. */
.fq-home .hero-copy .hero-search-wide.marketplace-search {
  background: #f3f6fc;
  border-color: #e0e8f4;
  border-radius: 12px;
  padding: 6px;
  gap: 6px;
}
.fq-home .hero-copy .hero-search-wide .search-input-shell {
  min-height: 46px;
  padding-inline: 12px;
}
.fq-home .hero-copy .hero-search-wide input {
  color: #17396b;
  caret-color: #17396b;
}
.fq-home .hero-copy .hero-search-wide input::placeholder {
  color: #526580;
  opacity: 1;
}
.fq-home .hero-copy .hero-search-wide .search-field-icon {
  width: 20px;
  height: 20px;
  color: #526580;
}
.fq-home .hero-copy .hero-search-wide > .button {
  min-height: 46px;
  border-radius: 7px;
  padding: 10px 18px;
}

/* Separate the input and action without an enclosing panel. */
.fq-home .hero-copy .hero-search-wide.marketplace-search,
.fq-home .hero-copy .hero-search-wide.marketplace-search:focus-within {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  gap: 12px;
  box-shadow: none;
  align-items: stretch;
}
.fq-home .hero-copy .hero-search-wide .search-input-shell,
.fq-home .hero-copy .hero-search-wide .search-input-shell:focus-within {
  min-height: 52px;
  padding: 0 16px;
  background: #17396b;
  border: 1px solid #a9c7f066;
  border-radius: 12px;
  box-shadow: none;
}
.fq-home .hero-copy .hero-search-wide .search-input-shell:focus-within {
  border-color: #ffe36a;
  box-shadow: 0 0 0 3px #ffe36a20;
}
.fq-home .hero-copy .hero-search-wide input {
  color: #f3f6fc;
  caret-color: #ffe36a;
}
.fq-home .hero-copy .hero-search-wide input::placeholder { color: #d4e0f3; }
.fq-home .hero-copy .hero-search-wide .search-field-icon { color: #bdcde5; }
.fq-home .hero-copy .hero-search-wide > .button {
  min-height: 52px;
  border-radius: 12px;
  padding: 12px 20px;
}
.fq-home .hero-copy .hero-search-wide > .button,
.fq-home .hero-copy .hero-search-wide > .button:hover { transform: none; }

/* Keep the two audience choices visible together on desktop. */
@media (min-width: 801px) {
  .fq-home .home-audience-section { padding-block: 28px; scroll-margin-top: 84px; }
  .fq-home .home-audience-section > .section-heading { margin-bottom: 20px; }
  .fq-home .home-audience-section > .section-heading h2 {
    font-size: clamp(28px, 2.7vw, 38px);
    line-height: 1.2;
    margin: 0;
  }
  .fq-home .audience-grid { gap: 28px; padding-top: 10px; padding-bottom: 10px; }
  .fq-home .audience-card { padding: 24px; min-height: 0; border-radius: 26px; }
  .fq-home .audience-card-company { transform: translateY(-6px); }
  .fq-home .audience-card > .eyebrow { min-height: 28px; margin-bottom: 12px; }
  .fq-home .audience-card .fq-audience-symbol { top: 24px; right: 24px; width: 28px; height: 28px; }
  .fq-home .audience-card h3.audience-card-title { font-size: clamp(24px, 2.1vw, 29px); margin-bottom: 12px; }
  .fq-home .fq-audience-fee { padding: 5px 10px; margin-bottom: 8px; }
  .fq-home .audience-list { margin-bottom: 16px; }
  .fq-home .audience-list summary { min-height: 48px; padding: 10px 0; }
  .fq-home .fq-audience-link { min-height: 46px; padding: 8px 16px; border-radius: 11px; }
}
@media (min-width: 801px) {
  .fq-home .audience-list li { min-height: 0; }
  .fq-home .audience-card { gap: 4px; }
}

/* Homepage rhythm: adjacent halves form one gap, rather than two full gaps. */
.fq-home { --home-section-half: clamp(48px, 4vw, 64px); --home-heading-gap: 28px; }
.fq-home main > .fq-section,
.fq-home main > .section {
  margin-block: 0;
  padding-block: var(--home-section-half);
}
.fq-home main > .home-audience-section { padding-top: 24px; }
.fq-home main > section:has(.fq-home-pricing) { padding-top: var(--home-section-half); }
.fq-home .fq-human-heading,
.fq-home .fq-section-heading,
.fq-home .home-audience-section > .section-heading,
.fq-home .home-process-section > .section-heading {
  margin-bottom: var(--home-heading-gap);
}
.fq-home .fq-discovery .fq-section-heading { margin-bottom: var(--home-heading-gap); }
.fq-home .fq-discovery .audience-carousel-shell { margin-top: 0; }
.fq-home .fq-footer { margin-top: 0; }
@media (min-width: 981px) {
  .fq-home.home-page .hero { padding-bottom: 24px; }
  .fq-home.home-page .hero-grid { min-height: 460px; }
  .fq-home .hero-copy .hero-trust-pills { padding-block: 24px 0; }
}
@media (max-width: 760px) {
  .fq-home { --home-section-half: 32px; --home-heading-gap: 24px; }
  .fq-home main > .home-audience-section { padding-top: 16px; }
  .fq-home main > section:has(.fq-home-pricing) { padding-top: var(--home-section-half); }
  .fq-home.home-page .hero { padding-bottom: 24px; }
  .fq-home .hero-copy .hero-trust-pills { padding-block: 24px 0; }
}

/* Give the desktop introduction a little more room within the hero. */
@media (min-width: 981px) {
  .fq-home .hero-copy .fq-hero-kicker { margin-bottom: 28px; }
  .fq-home .hero-copy h1 { margin-bottom: 32px; }
  .fq-home .hero-copy .hero-search-wide { margin-top: 32px; }
}

/* One introduction for the project rail, with controls beside the heading. */
.fq-home .fq-discovery .fq-project-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:24px; row-gap:12px; max-width:none; }
.fq-home .fq-discovery .fq-project-heading h2 { grid-column:1; grid-row:1; }
.fq-home .fq-discovery .fq-project-heading > p { grid-column:1; grid-row:2; margin:0; }
.fq-home .fq-project-heading .fq-project-controls { grid-column:2; grid-row:1; align-self:center; margin:0; }
@media(max-width:600px) {
 .fq-home .fq-discovery .fq-project-heading { column-gap:12px; }
 .fq-home .fq-discovery .fq-project-heading > p { grid-column:1/-1; }
 .fq-home .fq-project-heading .fq-project-controls { gap:6px; }
 .fq-home .fq-project-heading .fq-project-controls button { width:38px; height:38px; }
}

/* Keep all homepage section transitions free of divider rules. */
.fq-home main > section,
.fq-home main > .fq-section:last-child,
.fq-home .fq-discovery .fq-discovery-expertise {
  border-block: 0;
}

/* Monthly editorial portrait: one photograph, one short story. */
.fq-monthly-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(28px,4vw,56px); align-items:center; }
.fq-monthly-photo { position:relative; isolation:isolate; margin:0; min-width:0; padding:8px; }
.fq-monthly-photo::before { content:""; position:absolute; inset:8px; z-index:-1; border:1px solid rgba(255,226,99,.48); border-radius:22px; background:linear-gradient(145deg,#35598b,#153463); transform:translate(10px,8px) rotate(2deg); }
.fq-monthly-photo img { display:block; width:100%; height:490px; object-fit:cover; object-position:center 38%; border-radius:20px; transform:rotate(-1.5deg); box-shadow:0 22px 42px -16px rgba(0,8,28,.65); border:1px solid rgba(218,231,255,.3); }
.fq-monthly-photo figcaption { margin-top:10px; font-size:11px; line-height:1.5; color:#bccde7; }
.fq-monthly-copy { min-width:0; }
.fq-monthly-copy > .eyebrow { display:flex; align-items:center; gap:14px; margin:0 0 16px; }
.fq-monthly-copy > .eyebrow span { text-transform:none; letter-spacing:0; color:#c7d7ef; font-weight:400; font-size:12px; }
.fq-home .fq-monthly-copy h2 { margin:0 0 10px; font-size:clamp(30px,3.2vw,44px); }
.fq-home .fq-monthly-role { margin:0 0 24px; font-size:14px; }
.fq-home .fq-monthly-lead { color:#f3f6fc; font-size:22px; font-weight:600; line-height:1.4; margin:0 0 12px; }
.fq-home .fq-monthly-copy > p:not(.eyebrow):not(.fq-monthly-role):not(.fq-monthly-lead),
.fq-home .fq-monthly-projects p { font-size:15px; line-height:1.7; margin:0; }
.fq-monthly-projects { margin-top:22px; }
.fq-monthly-projects h3 { font-size:15px; margin:0 0 6px; color:#f3f6fc; }
.fq-monthly-bottom { margin-top:26px; display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.fq-monthly-skills { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.fq-monthly-skills li { font-size:12px; padding:6px 11px; border-radius:7px; background:#b5cff012; color:#dce8fa; }
.fq-monthly-link { color:#ffe36a; font-size:15px; font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:18px; }
.fq-monthly-link:hover { text-decoration:underline; }
.fq-monthly-link:focus-visible { outline:2px solid #ffe36a; outline-offset:6px; }
.fq-monthly-link span { font-size:24px; font-weight:400; }
@media(max-width:800px) {
 .fq-monthly-layout { grid-template-columns:1fr; gap:24px; }
 .fq-monthly-photo { margin:0 6px 12px; }
 .fq-monthly-photo::before { transform:translate(6px,6px) rotate(1.2deg); }
 .fq-monthly-photo img { height:380px; object-position:center 30%; transform:rotate(-1deg); }
 .fq-monthly-copy > .eyebrow { margin-bottom:12px; }
 .fq-monthly-bottom { gap:18px; }
}
@media(max-width:440px) { .fq-monthly-photo img { height:350px; } }

/* Lift the entire benefit card, including its attached badge. */
.fq-shared-visual > article { transition:transform 320ms cubic-bezier(.2,.75,.25,1), box-shadow 320ms ease, border-color 320ms ease; transform-origin:center; }
@media (hover:hover) and (pointer:fine) {
 .fq-shared-visual > article:hover { transform:translateY(-3px) scale(1.025); z-index:3; border-color:#bdd5ff80; box-shadow:0 24px 44px -12px #020d2b80; }
}
@media (prefers-reduced-motion:reduce) {
 .fq-shared-visual > article { transition:none; }
 .fq-shared-visual > article:hover { transform:none; }
}

/* Pricing: concise summary with the detail link beside the heading. */
.fq-home .fq-section-heading:has(.fq-pricing-details) { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px 24px; }
.fq-home .fq-section-heading:has(.fq-pricing-details) .fq-eyebrow { grid-column:1 / -1; margin:0; }
.fq-home .fq-section-heading:has(.fq-pricing-details) h2 { margin:0; }
.fq-pricing-details { color:#ffe36a; font-size:14px; font-weight:700; padding:8px 0; }
.fq-pricing-details:hover { text-decoration:underline; }
.fq-home .fq-home-pricing > div { padding:26px 32px; }
.fq-home .fq-home-price { font-size:clamp(48px,5.25vw,72px); }
.fq-home .fq-home-pricing h3 { min-height:0; font-size:19px; margin:12px 0 14px; }
.fq-home .fq-home-pricing p { font-size:15px; line-height:1.65; margin:0; }
@media(max-width:600px) {
 .fq-home .fq-section-heading:has(.fq-pricing-details) { grid-template-columns:1fr; gap:10px; }
 .fq-pricing-details { justify-self:start; }
 .fq-home .fq-home-pricing > div { padding:24px; }
}

/* Optical spacing: compact FAQ rows and raise the shared introduction. */
.fq-home .fq-faq details { padding:8px 0; }
.fq-home .fq-faq details:first-child { padding-top:0; }
.fq-home .fq-faq summary { padding:12px 0; }
.fq-home .fq-faq details p { margin:8px 0 12px; padding-bottom:8px; line-height:1.7; }
@media(min-width:761px) {
 .fq-home .fq-shared-story { transform:translateY(-28px); }
}

/* Fade the hero decoration into the shared page background. */
.fq-home.home-page .hero::before,
.fq-home.home-page .hero::after {
 -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 65%,transparent 100%);
 mask-image:linear-gradient(to bottom,#000 0%,#000 65%,transparent 100%);
}
