/* Ordinary pages (account, pricing, generator, legal): the site's tokens around plain content. */
.page-plain .nav { position: relative; }
.fm-page { padding: 32px var(--m) 96px; }
.fm-page-title { font-size: var(--t4); margin: 0 0 12px; }
.fm-page-body > * + * { margin-top: 24px; }
.fm-page-body > p:first-child { font-size: var(--t3); line-height: 1.35; max-width: 40ch; margin-bottom: 40px; }
.fm-page-body p, .fm-page-body li { max-width: 68ch; }
.fm-page-body h2 { margin-top: 56px; }
.fm-page-body a:not(.btn) { color: var(--accent); }
.fm-page-body .fm-pricing { margin-top: 0; }
@media (max-width: 760px) { .fm-page { padding: 16px var(--m) 72px; } .fm-page-body > p:first-child { margin-bottom: 28px; } }

/* Generator page (templates/page-vase-maker.html): slim bar, plain wash, one-line footer, as in mockup/vase-maker.html */
body:has(.fmk-bar) { background: var(--ground) url("../img/bg_plain.jpg") center top / cover fixed no-repeat; }
.fmk-wrap { padding: 0 var(--m); }
.fmk-bar { background: rgba(246, 244, 252, .72); backdrop-filter: blur(10px); border-bottom: 1px solid #dcd4ee; }
.fmk-bar .fmk-wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 62px; }
.fmk-mark { font-size: 1.3rem; font-weight: 500; letter-spacing: -0.02em; color: var(--ink); text-decoration: none; }
.fmk-nav { display: flex; gap: 28px; font-size: .95rem; }
.fmk-nav a { color: var(--ink); text-decoration: none; }
.fmk-nav a:hover, .fmk-nav a[aria-current] { color: var(--accent); }
.fmk-foot { border-top: 1px solid #dcd4ee; padding: 28px 0; }
.fmk-foot .fmk-wrap { display: flex; justify-content: space-between; gap: 8px 16px; flex-wrap: wrap; font-size: var(--t1); color: var(--muted); }
.fmk-foot a { color: var(--accent); }
.fm-page--maker { padding-bottom: 40px; }
@media (max-width: 640px) { .fmk-nav { gap: 14px; font-size: .85rem; } .fmk-hide-sm { display: none; } }
