:root{
--color-ak-bg:var(--fm-paper);
--color-ak-text:var(--fm-ink);
--text-ak-base:1rem;
--font-ak-serif:var(--fm-serif);
--spacing-ak-4:1.25rem;
--color-ak-surface:#fff;
--spacing-ak-fl-page-margin:clamp(1rem, 0.26rem + 3.7vw, 5rem);
--spacing-ak-24:6rem;
--color-ak-primary-800:#103bce;
--color-ak-primary-700:#1c2ac4;
--color-ak-on-primary:#fff;
--font-ak-heading:var(--fm-heading);
--text-ak-display-9xl:clamp(5.5rem,    3.06rem + 7.64vw, 10rem);
--spacing-ak-8:2rem;
--spacing-ak-12:3rem;
--text-ak-lg:1.125rem;
--spacing-ak-16:4rem;
--spacing-ak-6:1.875rem;
--spacing-ak-2:0.625rem;
--radius-ak-xl:calc(var(--ak-radius) * 2);
--spacing-ak-3:1rem;
--text-ak-xl:1.25rem;
--spacing-ak-10:2.5rem;
--spacing-ak-fl-lg:clamp(2rem,     1.72rem + 1.11vw, 3rem);
--color-ak-text-secondary:var(--fm-muted);
--text-ak-display-5xl_5:clamp(3.4rem, 2.3rem + 4.2vw, 6.35rem);
--color-ak-primary:var(--fm-blue);
--text-ak-display-4xl:clamp(2.25rem,   1.58rem + 2.5vw,  3.75rem);
--text-ak-display-xl:clamp(1.25rem,   1.07rem + 0.83vw, 1.875rem);
--text-ak-display-5xl:clamp(3rem,      2.07rem + 3.47vw, 5.25rem);
--color-ak-border:var(--fm-rule);
--text-ak-display-2xl:clamp(1.5rem,    1.2rem  + 1.11vw, 2.25rem);
--color-ak-inverse-surface:var(--fm-ink);
--color-ak-inverse-on-surface:var(--fm-paper);
--text-ak-display-3xl:clamp(1.875rem,  1.42rem + 1.67vw, 3rem);
--spacing-ak-5:1.5rem;
--text-ak-display-7xl:clamp(4.5rem,    3.06rem + 5.56vw, 8rem);
--text-ak-display-6xl:clamp(3.75rem,   2.5rem  + 4.63vw, 7rem);
--radius-ak-2xl:calc(var(--ak-radius) * 3);
--radius-ak-lg:calc(var(--ak-radius) * 1.5);
--radius-ak-md:var(--ak-radius);
--color-ak-primary-50:#eeedff;
--color-ak-primary-100:#dddfff;
--color-ak-primary-200:#b6bfff;
--spacing-ak-20:5rem;
--radius-ak-full:9999px;
--text-ak-2xl:1.5rem;
--ak-radius:.4375rem;
}
/* Adapted directly from the agency About and EditorialProductLayout CSS modules. */
.fm-bio-page { background: var(--color-ak-bg); color: var(--color-ak-text); font-size: var(--text-ak-base); line-height: 1.65; }
.fm-bio-page img { display: block; width: 100%; }
.fm-bio-page figure, .fm-bio-page blockquote { margin: 0; }
.fm-bio-page em { font-family: var(--font-ak-serif); font-weight: 400; }
.fm-bio-page a:focus-visible, .fm-bio-page summary:focus-visible { outline: 3px solid currentColor; outline-offset: 6px; }
.fm-bio-skip { position: absolute; top: var(--spacing-ak-4); left: var(--spacing-ak-4); z-index: 100; padding: var(--spacing-ak-4); background: var(--color-ak-surface); transform: translateY(-200%); }
.fm-bio-skip:focus { transform: none; }
.fm-bio-shell { width: calc(100% - var(--spacing-ak-fl-page-margin) * 2); max-width: 80rem; margin-inline: auto; }
.fm-bio-hero { padding-top: calc(var(--spacing-ak-24) * 2); background: linear-gradient(135deg, var(--color-ak-primary-800), var(--color-ak-primary-700)); color: var(--color-ak-on-primary); overflow: hidden; }
.fm-bio-eyebrow { font-size: var(--text-ak-base); margin: 0; letter-spacing: .12em; }
.fm-bio-hero > .fm-bio-shell > .fm-bio-eyebrow { text-align: center; }
.fm-bio-heroTitle { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-9xl); font-weight: 800; line-height: .96; letter-spacing: -.055em; text-align: center; margin: var(--spacing-ak-8) 0 var(--spacing-ak-12); }
.fm-bio-heroTitle em { color: var(--color-ak-on-primary); }
.fm-bio-heroIntro { display: grid; grid-template-columns: 1fr 1.2fr auto; align-items: center; gap: var(--spacing-ak-12); margin-bottom: var(--spacing-ak-12); }
.fm-bio-heroIntro p { max-width: 40rem; margin: 0; font-size: var(--text-ak-lg); }
.fm-bio-studioLabel { display: block; line-height: 1.4; }
.fm-bio-studioLabel svg { float: left; margin-right: var(--spacing-ak-4); }
.fm-bio-down { display: grid; place-items: center; width: var(--spacing-ak-16); height: var(--spacing-ak-16); border: 1px solid currentColor; border-radius: 50%; color: inherit; transition: transform .2s; }
.fm-bio-down:hover { transform: translateY(4px); }
.fm-bio-collage { display: grid; grid-template-columns: 1fr .83fr 1.25fr; gap: var(--spacing-ak-6); align-items: center; position: relative; padding: var(--spacing-ak-4) var(--spacing-ak-2) 0; }
.fm-bio-collage figure { position: relative; border-radius: var(--radius-ak-xl); overflow: hidden; }
.fm-bio-collage img { height: 100%; object-fit: cover; }
.fm-bio-collageSmall { transform: rotate(-6deg); aspect-ratio: 1; }
.fm-bio-collageTall { transform: rotate(3deg); aspect-ratio: 4 / 5; z-index: 1; }
.fm-bio-collageWide { transform: rotate(-3deg); aspect-ratio: 1.3; }
.fm-bio-collageWide img { object-position: 46%; }
.fm-bio-collage figcaption { position: absolute; bottom: var(--spacing-ak-3); left: var(--spacing-ak-3); right: var(--spacing-ak-3); background: var(--color-ak-bg); color: var(--color-ak-text); padding: var(--spacing-ak-2) var(--spacing-ak-3); line-height: 1.4; }
.fm-bio-sticker { position: absolute; right: 2%; top: -3%; transform: rotate(9deg); background: var(--color-ak-bg); color: var(--color-ak-text); padding: var(--spacing-ak-4); line-height: 1.15; font-family: var(--font-ak-heading); font-size: var(--text-ak-xl); font-weight: 700; z-index: 2; }
.fm-bio-sticker svg { float: left; margin-right: var(--spacing-ak-3); }
.fm-bio-artNote { padding: var(--spacing-ak-10) 0 var(--spacing-ak-6); margin: 0; font-size: var(--text-ak-base); }
.fm-bio-section { padding-block: calc(var(--spacing-ak-fl-lg) * 2.5); }
.fm-bio-sectionTop { display: flex; justify-content: space-between; gap: var(--spacing-ak-6); align-items: center; margin-bottom: var(--spacing-ak-12); }
.fm-bio-sectionTop > span { color: var(--color-ak-text-secondary); }
.fm-bio-display { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-5xl_5); line-height: 1.03; font-weight: 700; letter-spacing: -.045em; margin: 0; }
.fm-bio-display em, .fm-bio-smallDisplay em { color: var(--color-ak-primary); }
.fm-bio-smallDisplay { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-4xl); line-height: 1.08; margin: var(--spacing-ak-6) 0; }
.fm-bio-storyGrid { display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--spacing-ak-16); }
.fm-bio-prose p { margin: 0 0 var(--spacing-ak-6); }
.fm-bio-prose { color: var(--color-ak-text-secondary); }
.fm-bio-lead { font-size: var(--text-ak-display-xl); line-height: 1.45; color: var(--color-ak-text); }
.fm-bio-link { display: inline-flex; gap: var(--spacing-ak-4); align-items: center; width: fit-content; color: var(--color-ak-text); font-weight: 600; text-decoration: none; padding-block: var(--spacing-ak-3); border-bottom: 1px solid currentColor; }
.fm-bio-link svg { flex-shrink: 0; transition: transform .2s; }
.fm-bio-link:hover svg { transform: translate(3px, -3px); }
.fm-bio-founder { display: grid; grid-template-columns: .9fr 1.1fr; gap: var(--spacing-ak-16); align-items: center; padding-bottom: calc(var(--spacing-ak-fl-lg) * 2.5); }
.fm-bio-portrait img { aspect-ratio: 4/5; object-fit: cover; border-radius: var(--radius-ak-xl); }
.fm-bio-portrait figcaption { display: flex; flex-direction: column; margin-top: var(--spacing-ak-4); line-height: 1.6; }
.fm-bio-portrait figcaption span:first-child { font-weight: 600; }
.fm-bio-portrait figcaption span:last-child { color: var(--color-ak-text-secondary); }
.fm-bio-founderCopy .fm-bio-display { margin-block: var(--spacing-ak-6) var(--spacing-ak-8); font-size: var(--text-ak-display-5xl); }
.fm-bio-signature { font-family: var(--font-ak-serif); font-size: var(--text-ak-display-4xl); font-style: italic; margin-top: var(--spacing-ak-6); }
.fm-bio-philosophy { background: var(--color-ak-primary-700); color: var(--color-ak-on-primary); padding-block: calc(var(--spacing-ak-fl-lg) * 2.5); }
.fm-bio-philosophyTitle { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-9xl); line-height: .95; letter-spacing: -.05em; margin: 0 0 var(--spacing-ak-16); }
.fm-bio-philosophyBottom { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-ak-16); padding-top: var(--spacing-ak-8); border-top: 1px solid color-mix(in srgb, currentColor 40%, transparent); }
.fm-bio-philosophy .fm-bio-prose, .fm-bio-philosophy .fm-bio-lead, .fm-bio-lightLink { color: inherit; }
.fm-bio-values { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: var(--spacing-ak-12); border-top: 1px solid var(--color-ak-border); }
.fm-bio-values article { padding: var(--spacing-ak-8); border-right: 1px solid var(--color-ak-border); }
.fm-bio-values article:first-child { padding-left: 0; }
.fm-bio-values article:last-child { border: 0; }
.fm-bio-valueTop { display: flex; align-items: center; justify-content: space-between; color: var(--color-ak-primary-700); margin-bottom: var(--spacing-ak-8); }
.fm-bio-values h3 { font-size: var(--text-ak-display-2xl); margin: 0 0 var(--spacing-ak-4); }
.fm-bio-values p { color: var(--color-ak-text-secondary); margin: 0; }
.fm-bio-productPanel { display: grid; grid-template-columns: 1fr 1.2fr; align-items: center; gap: var(--spacing-ak-12); margin-top: var(--spacing-ak-16); padding-top: var(--spacing-ak-12); border-top: 1px solid var(--color-ak-border); }
.fm-bio-productPanel > div > p:not(.fm-bio-eyebrow) { color: var(--color-ak-text-secondary); max-width: 32rem; }
.fm-bio-productPanel img { border-radius: var(--radius-ak-xl); }
.fm-bio-productPanel figcaption { display: flex; flex-direction: column; margin-top: var(--spacing-ak-4); }
.fm-bio-productPanel figcaption span { color: var(--color-ak-text-secondary); }
.fm-bio-praise { background: var(--color-ak-inverse-surface); color: var(--color-ak-inverse-on-surface); padding-block: calc(var(--spacing-ak-fl-lg) * 2.5); }
.fm-bio-praise .fm-bio-display em { color: inherit; }
.fm-bio-mainQuote { padding-block: var(--spacing-ak-12); display: grid; grid-template-columns: .18fr 1fr; gap: var(--spacing-ak-6); }
.fm-bio-quoteMark { font-family: var(--font-ak-serif); font-size: var(--text-ak-display-9xl); line-height: 1; }
.fm-bio-mainQuote blockquote { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-3xl); line-height: 1.35; }
.fm-bio-mainQuote figcaption { grid-column: 2; }
.fm-bio-praise figcaption { display: flex; flex-direction: column; padding-top: var(--spacing-ak-6); }
.fm-bio-quoteGrid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-ak-16); border-top: 1px solid color-mix(in srgb, currentColor 30%, transparent); padding-top: var(--spacing-ak-10); }
.fm-bio-quoteGrid figure { display: flex; flex-direction: column; justify-content: space-between; }
.fm-bio-quoteGrid blockquote { font-size: var(--text-ak-lg); }
.fm-bio-editorialGrid { display: grid; grid-template-columns: .8fr 1.4fr; gap: var(--spacing-ak-16); }
.fm-bio-recognition a { display: block; position: relative; padding: var(--spacing-ak-6) var(--spacing-ak-12) var(--spacing-ak-6) 0; border-bottom: 1px solid var(--color-ak-border); color: inherit; text-decoration: none; }
.fm-bio-recognition a:first-child { padding-top: 0; }
.fm-bio-recognition h3 { font-size: var(--text-ak-display-xl); line-height: 1.25; margin: var(--spacing-ak-3) 0; }
.fm-bio-recognition p { margin: 0; color: var(--color-ak-text-secondary); }
.fm-bio-recognition svg { position: absolute; right: 0; top: var(--spacing-ak-6); }
.fm-bio-recognition a:hover h3 { color: var(--color-ak-primary); }
.fm-bio-journal { padding-top: 0; }
.fm-bio-posts { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--spacing-ak-6); margin-top: var(--spacing-ak-12); }
.fm-bio-posts a { color: inherit; text-decoration: none; display: flex; height: 100%; flex-direction: column; }
.fm-bio-posts img { aspect-ratio: 16/9; object-fit: cover; border-radius: var(--radius-ak-xl); }
.fm-bio-postCategory { margin: var(--spacing-ak-5) 0 var(--spacing-ak-3); color: var(--color-ak-text-secondary); }
.fm-bio-posts h3 { font-size: var(--text-ak-display-xl); line-height: 1.3; margin: 0 0 var(--spacing-ak-6); }
.fm-bio-postCta { display: flex; align-items: center; gap: var(--spacing-ak-3); padding-block: var(--spacing-ak-4); border-top: 1px solid var(--color-ak-border); margin-top: auto; }
.fm-bio-posts a:hover h3 { color: var(--color-ak-primary); }
.fm-bio-faq { border-top: 1px solid var(--color-ak-border); }
.fm-bio-faq details { border-bottom: 1px solid var(--color-ak-border); }
.fm-bio-faq summary { display: flex; align-items: center; justify-content: space-between; gap: var(--spacing-ak-6); cursor: pointer; padding-block: var(--spacing-ak-6); font-size: var(--text-ak-lg); font-weight: 600; list-style: none; line-height: 1.4; }
.fm-bio-faq summary::-webkit-details-marker { display: none; }
.fm-bio-faq summary svg { flex-shrink: 0; transition: transform .2s; }
.fm-bio-faq details[open] summary svg { transform: rotate(45deg); }
.fm-bio-faq details p { padding-bottom: var(--spacing-ak-6); margin: 0; color: var(--color-ak-text-secondary); }
@media (min-width: 1600px) { .fm-bio-shell { max-width: 90rem; } }
@media (max-width: 900px) {
  .fm-bio-hero { padding-top: calc(var(--spacing-ak-24) * 1.65); }
  .fm-bio-heroTitle { font-size: var(--text-ak-display-7xl); }
  .fm-bio-heroIntro { grid-template-columns: 1fr auto; gap: var(--spacing-ak-6); }
  .fm-bio-studioLabel { display: none; }
  .fm-bio-storyGrid, .fm-bio-founder, .fm-bio-editorialGrid { gap: var(--spacing-ak-8); }
  .fm-bio-display { font-size: var(--text-ak-display-5xl); }
  .fm-bio-founderCopy .fm-bio-display { font-size: var(--text-ak-display-4xl); }
  .fm-bio-collage { gap: var(--spacing-ak-4); }
  .fm-bio-collage figcaption { font-size: var(--text-ak-base); left: var(--spacing-ak-2); right: var(--spacing-ak-2); padding: var(--spacing-ak-2); }
  .fm-bio-sticker { display: none; }
  .fm-bio-values article { padding-inline: var(--spacing-ak-4); }
  .fm-bio-productPanel { gap: var(--spacing-ak-8); }
}
@media (max-width: 640px) {
  .fm-bio-heroTitle { font-size: var(--text-ak-display-5xl); margin-block: var(--spacing-ak-6) var(--spacing-ak-8); }
  .fm-bio-heroIntro { margin-bottom: var(--spacing-ak-8); }
  .fm-bio-heroIntro p { font-size: var(--text-ak-base); }
  .fm-bio-down { width: var(--spacing-ak-12); height: var(--spacing-ak-12); }
  .fm-bio-collage { grid-template-columns: 1fr 1fr; padding: 0; }
  .fm-bio-collageSmall { aspect-ratio: 4/5; }
  .fm-bio-collageWide { grid-column: 1/-1; aspect-ratio: 16/9; margin-top: var(--spacing-ak-4) !important; transform: rotate(-2deg); }
  .fm-bio-collageWide img { aspect-ratio: 16/9; }
  .fm-bio-section { padding-block: var(--spacing-ak-16); }
  .fm-bio-sectionTop { align-items: flex-start; margin-bottom: var(--spacing-ak-8); flex-wrap: wrap; }
  .fm-bio-sectionTop > span { display: none; }
  .fm-bio-storyGrid, .fm-bio-founder, .fm-bio-philosophyBottom, .fm-bio-productPanel, .fm-bio-editorialGrid, .fm-bio-quoteGrid { grid-template-columns: 1fr; gap: var(--spacing-ak-8); }
  .fm-bio-founder { padding-bottom: var(--spacing-ak-16); }
  .fm-bio-founderCopy .fm-bio-display { font-size: var(--text-ak-display-5xl); }
  .fm-bio-philosophy { padding-block: var(--spacing-ak-16); }
  .fm-bio-philosophyTitle { font-size: var(--text-ak-display-6xl); margin-bottom: var(--spacing-ak-10); }
  .fm-bio-philosophyBottom .fm-bio-lead { margin: 0; }
  .fm-bio-values { grid-template-columns: 1fr; }
  .fm-bio-values article { padding: var(--spacing-ak-6) 0; border-right: 0; border-bottom: 1px solid var(--color-ak-border); }
  .fm-bio-valueTop { margin-bottom: var(--spacing-ak-4); }
  .fm-bio-praise { padding-block: var(--spacing-ak-16); }
  .fm-bio-mainQuote { grid-template-columns: 1fr; padding-block: var(--spacing-ak-8); }
  .fm-bio-quoteMark { display: none; }
  .fm-bio-mainQuote figcaption { grid-column: 1; }
  .fm-bio-mainQuote blockquote { font-size: var(--text-ak-display-2xl); }
  .fm-bio-posts { grid-template-columns: 1fr; gap: var(--spacing-ak-10); }
  .fm-bio-journal { padding-top: 0; }
  .fm-bio-recognition a:first-child { padding-top: var(--spacing-ak-6); }
}
@media (prefers-reduced-motion: reduce) { .fm-bio-page *, .fm-bio-page *::before, .fm-bio-page *::after { transition: none !important; scroll-behavior: auto !important; } }

.fm-ed-page { background: var(--color-ak-bg); color: var(--color-ak-text); font-size: var(--text-ak-base); line-height: 1.65; }
.fm-ed-page figure { margin: 0; }
.fm-ed-page img { display: block; max-width: 100%; }
.fm-ed-page em { font-family: var(--font-ak-serif); font-weight: 400; }
.fm-ed-page a:focus-visible, .fm-ed-page button:focus-visible, .fm-ed-page input:focus-visible, .fm-ed-page summary:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.fm-ed-shell { max-width: 75rem; width: calc(100% - var(--spacing-ak-fl-page-margin) * 2); margin-inline: auto; }
.fm-ed-skip { position: absolute; top: var(--spacing-ak-4); left: var(--spacing-ak-4); z-index: 100; padding: var(--spacing-ak-4); background: var(--color-ak-bg); transform: translateY(-200%); }
.fm-ed-skip:focus { transform: none; }
.fm-ed-hero { background-color: var(--color-ak-primary-800); color: var(--color-ak-on-primary); padding-bottom: var(--spacing-ak-16); text-shadow: none; }
.fm-ed-heroBrand .fm-ed-releaseDate { font-size: var(--text-ak-base); line-height: 1.5; }
.fm-ed-releaseDate time { font-weight: 700; }
.fm-ed-breadcrumb { display: flex; align-items: center; gap: var(--spacing-ak-3); margin-bottom: var(--spacing-ak-12); font-size: var(--text-ak-base); }
.fm-ed-breadcrumb a { text-underline-offset: .3em; }
.fm-ed-heroGrid { display: grid; grid-template-columns: 2.2fr 1fr; gap: var(--spacing-ak-12); align-items: center; }
.fm-ed-hero h1 { color: inherit; font-family: var(--font-ak-heading); font-size: clamp(var(--text-ak-display-4xl), 6.2vw, var(--text-ak-display-9xl)); line-height: .98; font-weight: 800; letter-spacing: -.055em; margin: 0; }
.fm-ed-heroBrand { border-left: 1px solid color-mix(in srgb, currentColor 40%, transparent); padding-left: var(--spacing-ak-12); }
.fm-ed-heroBrand img { width: 100%; max-width: 15rem; height: auto; }
.fm-ed-heroBrand p { font-size: var(--text-ak-lg); line-height: 1.5; margin: var(--spacing-ak-6) 0 var(--spacing-ak-3); }
.fm-ed-heroBrand a, .fm-ed-principles a { display: inline-flex; align-items: center; gap: var(--spacing-ak-3); padding-block: var(--spacing-ak-3); color: inherit; text-decoration: underline; text-underline-offset: .3em; }
.fm-ed-campaign > img { width: 100%; max-height: 40rem; aspect-ratio: 2.7; object-fit: cover; object-position: center 48%; }
.fm-ed-campaign[data-natural-aspect=true] > img { aspect-ratio: auto; height: auto; max-height: none; }
.fm-ed-campaign figcaption, .fm-ed-previewFigure figcaption { padding-block: var(--spacing-ak-4); font-size: var(--text-ak-base); color: var(--color-ak-text-secondary); }
.fm-ed-jumpNav { display: flex; justify-content: center; gap: var(--spacing-ak-8); border-bottom: 1px solid var(--color-ak-border); padding-block: var(--spacing-ak-6); }
.fm-ed-jumpNav a { display: inline-flex; align-items: center; gap: var(--spacing-ak-3); padding: var(--spacing-ak-3) var(--spacing-ak-2); color: inherit; text-decoration: none; }
.fm-ed-jumpNav a:hover { color: var(--color-ak-primary); text-decoration: underline; text-underline-offset: .3em; }
.fm-ed-section { padding-block: var(--spacing-ak-16); scroll-margin-top: var(--spacing-ak-24); }
.fm-ed-sectionIntro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--spacing-ak-16); align-items: start; }
.fm-ed-section .fm-ed-sectionHeading h2 { margin-top: var(--spacing-ak-6); }
.fm-ed-number { display: block; font-size: var(--text-ak-base); font-weight: 600; letter-spacing: .05em; line-height: 1.5; }
.fm-ed-section h2, .fm-ed-access h2, .fm-ed-principles h2 { font-family: var(--font-ak-heading); font-size: var(--text-ak-display-4xl); font-weight: 700; letter-spacing: -.04em; line-height: 1.08; margin: 0; }
.fm-ed-prose p { margin: 0 0 var(--spacing-ak-4); font-size: var(--text-ak-lg); color: var(--color-ak-text-secondary); }
.fm-ed-previewFigure { padding-top: var(--spacing-ak-10); }
.fm-ed-preview { border: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-2xl); overflow: hidden; background: var(--color-ak-surface); }
.fm-ed-previewBar { display: flex; justify-content: space-between; gap: var(--spacing-ak-4); padding: var(--spacing-ak-5) var(--spacing-ak-6); border-bottom: 1px solid var(--color-ak-border); font-size: var(--text-ak-base); }
.fm-ed-previewBar span:first-child { font-weight: 600; }
.fm-ed-locator { display: grid; grid-template-columns: .9fr 1.3fr; min-height: 32rem; }
.fm-ed-locationList { padding: var(--spacing-ak-8); }
.fm-ed-locationList h3 { font-size: var(--text-ak-display-xl); font-weight: 700; letter-spacing: -.025em; margin: 0 0 var(--spacing-ak-6); }
.fm-ed-search { display: flex; gap: var(--spacing-ak-3); align-items: center; border: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-lg); padding: var(--spacing-ak-3); }
.fm-ed-search input { min-width: 0; width: 100%; background: transparent; color: var(--color-ak-text); border: 0; font: inherit; }
.fm-ed-search input::placeholder { color: var(--color-ak-text-secondary); }
.fm-ed-resultCount { margin: var(--spacing-ak-5) 0 var(--spacing-ak-2); color: var(--color-ak-text-secondary); }
.fm-ed-place { display: flex; width: 100%; align-items: center; gap: var(--spacing-ak-3); text-align: left; padding: var(--spacing-ak-4) var(--spacing-ak-3); border-bottom: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-md); background: transparent; color: inherit; cursor: pointer; }
.fm-ed-place[aria-pressed=true] { background: var(--color-ak-primary-50); }
.fm-ed-place:hover { background: var(--color-ak-primary-100); }
.fm-ed-place > span:nth-child(2) { flex: 1; }
.fm-ed-place strong, .fm-ed-place span span, .fm-ed-place small { display: block; }
.fm-ed-place strong { font-weight: 600; }
.fm-ed-place small { font-size: var(--text-ak-base); color: var(--color-ak-text-secondary); }
.fm-ed-placeIcon { color: var(--color-ak-primary-700); }
.fm-ed-map { position: relative; overflow: hidden; background-color: var(--color-ak-primary-50); background-image: repeating-linear-gradient(24deg, transparent 0, transparent 64px, var(--color-ak-surface) 65px, var(--color-ak-surface) 76px, transparent 77px), repeating-linear-gradient(114deg, transparent 0, transparent 88px, var(--color-ak-surface) 89px, var(--color-ak-surface) 100px, transparent 101px); }
.fm-ed-park { position: absolute; top: 9%; left: 9%; width: 38%; height: 21%; background: var(--color-ak-primary-100); border: 6px solid var(--color-ak-surface); border-radius: var(--radius-ak-2xl); transform: rotate(24deg); display: grid; place-items: center; color: var(--color-ak-text-secondary); font-size: var(--text-ak-base); }
.fm-ed-river { position: absolute; width: 21%; height: 130%; background: var(--color-ak-primary-200); right: -3%; top: -15%; transform: rotate(24deg); border-inline: 10px solid var(--color-ak-primary-100); }
.fm-ed-roadLabel { position: absolute; bottom: 15%; left: 7%; color: var(--color-ak-text-secondary); font-size: var(--text-ak-base); letter-spacing: .08em; transform: rotate(24deg); }
.fm-ed-pin { position: absolute; display: grid; place-items: center; width: var(--spacing-ak-12); height: var(--spacing-ak-12); padding: 0; color: var(--color-ak-primary-700); background: var(--color-ak-surface); border-radius: 50%; border: 2px solid var(--color-ak-primary-700); transform: translate(-50%, -50%); cursor: pointer; z-index: 2; }
.fm-ed-pin[aria-pressed=true] { background: var(--color-ak-primary-700); color: var(--color-ak-on-primary); }
.fm-ed-mapDetail { position: absolute; right: var(--spacing-ak-6); bottom: var(--spacing-ak-6); max-width: 17rem; padding: var(--spacing-ak-5); border: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-xl); background: var(--color-ak-surface); z-index: 3; pointer-events: none; }
.fm-ed-detailEyebrow { color: var(--color-ak-text-secondary); font-size: var(--text-ak-base); }
.fm-ed-mapDetail h4 { font-weight: 700; font-size: var(--text-ak-xl); margin-block: var(--spacing-ak-2) var(--spacing-ak-4); }
.fm-ed-mapDetail p, .fm-ed-directionLabel { display: flex; align-items: center; gap: var(--spacing-ak-2); margin-top: var(--spacing-ak-3); font-size: var(--text-ak-base); }
.fm-ed-directionLabel { border-top: 1px solid var(--color-ak-border); padding-top: var(--spacing-ak-3); }
.fm-ed-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--spacing-ak-8); margin-top: var(--spacing-ak-8); }
.fm-ed-benefits article, .fm-ed-audienceList article { display: flex; gap: var(--spacing-ak-5); align-items: flex-start; }
.fm-ed-benefits svg, .fm-ed-audienceList svg { flex-shrink: 0; color: var(--color-ak-primary-700); }
.fm-ed-benefits h3, .fm-ed-audienceList h3 { font-size: var(--text-ak-xl); font-weight: 700; margin: 0 0 var(--spacing-ak-3); }
.fm-ed-benefits p, .fm-ed-audienceList p { margin: 0; color: var(--color-ak-text-secondary); }
.fm-ed-audience { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-ak-16); border-top: 1px solid var(--color-ak-border); }
.fm-ed-audience h2, .fm-ed-faq h2 { margin-top: var(--spacing-ak-6); }
.fm-ed-audienceIntro { max-width: 30rem; color: var(--color-ak-text-secondary); font-size: var(--text-ak-lg); margin-top: var(--spacing-ak-6); }
.fm-ed-audienceList { border-left: 1px solid var(--color-ak-border); padding-left: var(--spacing-ak-12); }
.fm-ed-audienceList article { padding-block: var(--spacing-ak-6); }
.fm-ed-audienceList article + article { border-top: 1px solid var(--color-ak-border); }
.fm-ed-principles { display: grid; grid-template-columns: 1fr 1fr; background: var(--color-ak-inverse-surface); color: var(--color-ak-inverse-on-surface); }
.fm-ed-principlesImage { display: flex; align-items: center; background: var(--color-ak-primary-700); }
.fm-ed-principlesImage img { width: 100%; height: auto; }
.fm-ed-principlesCopy { padding: var(--spacing-ak-16); }
.fm-ed-principlesCopy h2 { margin-top: var(--spacing-ak-6); }
.fm-ed-principlesCopy p { font-size: var(--text-ak-lg); max-width: 30rem; margin-block: var(--spacing-ak-6); }
.fm-ed-faq { display: grid; grid-template-columns: .9fr 1.3fr; gap: var(--spacing-ak-16); }
.fm-ed-faq details { border-bottom: 1px solid var(--color-ak-border); }
.fm-ed-faq summary { display: flex; justify-content: space-between; gap: var(--spacing-ak-6); align-items: center; font-size: var(--text-ak-lg); font-weight: 600; cursor: pointer; padding-block: var(--spacing-ak-6); list-style: none; }
.fm-ed-faq summary::-webkit-details-marker { display: none; }
.fm-ed-faq summary svg { flex-shrink: 0; }
.fm-ed-faq details[open] svg { transform: rotate(45deg); }
.fm-ed-faq details p { color: var(--color-ak-text-secondary); padding-bottom: var(--spacing-ak-6); margin: 0; }
.fm-ed-access { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--spacing-ak-16); padding-block: var(--spacing-ak-12) var(--spacing-ak-20); border-top: 1px solid var(--color-ak-border); scroll-margin-top: var(--spacing-ak-24); }
.fm-ed-access p { font-size: var(--text-ak-lg); margin: 0 0 var(--spacing-ak-6); color: var(--color-ak-text-secondary); }
.fm-ed-cta { display: inline-flex; align-items: center; gap: var(--spacing-ak-8); background: var(--color-ak-primary); color: var(--color-ak-on-primary); padding: var(--spacing-ak-4) var(--spacing-ak-6); border-radius: var(--radius-ak-full); font-weight: 600; text-decoration: none; }
.fm-ed-cta:hover { background: var(--color-ak-primary-700); }
.fm-ed-a11yBrand { display: flex; align-items: center; gap: var(--spacing-ak-3); font-size: var(--text-ak-2xl); font-weight: 700; letter-spacing: -.04em; }
.fm-ed-heroBrand .fm-ed-a11yBrand img { width: var(--spacing-ak-12); height: auto; flex-shrink: 0; }
.fm-ed-auditGrid { display: grid; grid-template-columns: .85fr 1.5fr; }
.fm-ed-auditList, .fm-ed-auditDetail { padding: var(--spacing-ak-8); min-width: 0; }
.fm-ed-auditList { border-right: 1px solid var(--color-ak-border); }
.fm-ed-auditList h3, .fm-ed-auditDetail h3 { font-size: var(--text-ak-2xl); line-height: 1.25; font-weight: 700; margin: 0 0 var(--spacing-ak-4); }
.fm-ed-auditList > p, .fm-ed-auditDetail > p { color: var(--color-ak-text-secondary); margin: 0 0 var(--spacing-ak-6); }
.fm-ed-auditIssue { display: flex; width: 100%; align-items: center; gap: var(--spacing-ak-3); padding: var(--spacing-ak-5) var(--spacing-ak-3); text-align: left; color: inherit; background: transparent; border-bottom: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-md); cursor: pointer; }
.fm-ed-auditIssue svg { flex-shrink: 0; color: var(--color-ak-primary-700); }
.fm-ed-auditIssue > span { flex: 1; }
.fm-ed-auditIssue strong, .fm-ed-auditIssue span span { display: block; }
.fm-ed-auditIssue strong { line-height: 1.4; }
.fm-ed-auditIssue span span { color: var(--color-ak-text-secondary); margin-top: var(--spacing-ak-2); }
.fm-ed-auditIssue[aria-pressed=true] { background: var(--color-ak-primary-50); }
.fm-ed-auditIssue:hover { background: var(--color-ak-primary-100); }
.fm-ed-auditNote, .fm-ed-recheck { display: flex; gap: var(--spacing-ak-3); align-items: flex-start; margin-top: var(--spacing-ak-6); }
.fm-ed-auditNote svg, .fm-ed-recheck svg { flex-shrink: 0; color: var(--color-ak-primary-700); }
.fm-ed-auditNote p, .fm-ed-recheck p { margin: 0; color: var(--color-ak-text-secondary); }
.fm-ed-auditDetail .fm-ed-criterion { color: var(--color-ak-primary-700); font-weight: 600; margin-bottom: var(--spacing-ak-4); }
.fm-ed-auditDetail h4 { font-weight: 700; font-size: var(--text-ak-base); margin: 0 0 var(--spacing-ak-2); }
.fm-ed-codeGrid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-ak-4); }
.fm-ed-codeGrid > div { min-width: 0; background: var(--color-ak-bg); border: 1px solid var(--color-ak-border); border-radius: var(--radius-ak-lg); overflow: hidden; }
.fm-ed-codeGrid span { display: block; padding: var(--spacing-ak-3) var(--spacing-ak-4); border-bottom: 1px solid var(--color-ak-border); font-weight: 600; }
.fm-ed-codeGrid pre { padding: var(--spacing-ak-4); margin: 0; font-size: var(--text-ak-base); line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.fm-ed-recheck { padding: var(--spacing-ak-5); background: var(--color-ak-primary-50); border-radius: var(--radius-ak-lg); }
@media (max-width: 1100px) { .fm-ed-codeGrid { grid-template-columns: 1fr; } }
@media (max-width: 1000px) { .fm-ed-auditGrid { grid-template-columns: 1fr; } .fm-ed-auditList { border-right: 0; border-bottom: 1px solid var(--color-ak-border); } .fm-ed-codeGrid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 700px) { .fm-ed-auditList, .fm-ed-auditDetail { padding: var(--spacing-ak-5); } .fm-ed-codeGrid { grid-template-columns: 1fr; } }
@media (max-width: 1000px) { .fm-ed-heroGrid { grid-template-columns: 1.7fr 1fr; gap: var(--spacing-ak-6); } .fm-ed-heroBrand { padding-left: var(--spacing-ak-6); } .fm-ed-sectionIntro { gap: var(--spacing-ak-8); } .fm-ed-locator { grid-template-columns: 1fr 1fr; } .fm-ed-locationList { padding: var(--spacing-ak-5); } .fm-ed-mapDetail { top: auto; bottom: var(--spacing-ak-4); right: var(--spacing-ak-4); } .fm-ed-roadLabel { display: none; } .fm-ed-principlesCopy { padding: var(--spacing-ak-8); } .fm-ed-principles h2 { font-size: var(--text-ak-display-3xl); } .fm-ed-audience, .fm-ed-faq, .fm-ed-access { gap: var(--spacing-ak-8); } }
@media (max-width: 700px) { .fm-ed-heroGrid, .fm-ed-sectionIntro, .fm-ed-audience, .fm-ed-faq, .fm-ed-access, .fm-ed-principles, .fm-ed-benefits { grid-template-columns: 1fr; } .fm-ed-hero h1 { font-size: var(--text-ak-display-5xl); } .fm-ed-hero { padding-bottom: var(--spacing-ak-10); } .fm-ed-breadcrumb { margin-bottom: var(--spacing-ak-8); } .fm-ed-heroBrand { border-left: 0; border-top: 1px solid color-mix(in srgb, currentColor 40%, transparent); padding: var(--spacing-ak-6) 0 0; margin-top: var(--spacing-ak-4); } .fm-ed-heroBrand img { max-width: 10rem; } .fm-ed-heroBrand p { max-width: 24rem; } .fm-ed-campaign > img { aspect-ratio: 1.6; } .fm-ed-jumpNav { justify-content: space-between; gap: 0; flex-wrap: wrap; } .fm-ed-jumpNav a { padding-inline: 0; } .fm-ed-section { padding-block: var(--spacing-ak-10); } .fm-ed-section h2, .fm-ed-access h2 { font-size: var(--text-ak-display-3xl); } .fm-ed-locator { grid-template-columns: 1fr; } .fm-ed-map { min-height: 29rem; } .fm-ed-previewBar { flex-wrap: wrap; padding: var(--spacing-ak-4); } .fm-ed-previewBar span { font-size: var(--text-ak-base); } .fm-ed-benefits { gap: var(--spacing-ak-6); } .fm-ed-audienceList { border-left: 0; padding-left: 0; } .fm-ed-principlesCopy { padding: var(--spacing-ak-10) var(--spacing-ak-fl-page-margin); } .fm-ed-faq { gap: var(--spacing-ak-6); } .fm-ed-access { padding-block: var(--spacing-ak-10) var(--spacing-ak-16); } }

