:root{--fg-ink: #1c1612;--fg-muted: #5c5148;--fg-paper: #f4efe6;--fg-card: #fffdf8;--fg-line: #e4d9c8;--fg-line-soft: #efe6d8;--fg-copper: #9a3412;--fg-copper-soft: #fff4ec;--fg-green: #14532d;--fg-green-soft: #f0f7f2;--fg-rule: #c4b49a;--fg-shadow: 0 18px 40px rgb(28 22 18 / 0.08);}
body.fg-desk,body.fg-desk .main-header{background: var(--fg-paper);}
.fg-page{background: var(--fg-paper);color: var(--fg-ink);padding: 1.4rem 0 4.5rem;}
.fg-page a{color: var(--fg-copper);}
.fg-page a:hover{color: #7c2d12;}
.fg-wrap{margin: 0 auto;padding: 0 1.15rem;}
.fg-page .breadcrumbs{margin: 0 0 1.35rem;background: transparent;padding: 0;}
.fg-page .breadcrumbs-list{font-size: 0.82rem;color: var(--fg-muted);}
.fg-kicker{display: inline-flex;align-items: center;gap: 0.55rem;margin: 0 0 0.8rem;font-size: 0.72rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--fg-copper);}
.fg-kicker i{width: 2.2rem;height: 1px;background: var(--fg-copper);display: inline-block;}
.fg-page h1{font-size: clamp(2rem, 4.6vw, 3.15rem);line-height: 1.08;letter-spacing: -0.035em;font-weight: 800;margin: 0 0 1rem;max-width: 24ch;}
.fg-lede{font-size: 1.12rem;line-height: 1.65;margin: 0 0 0.75rem;max-width: 40rem;font-weight: 600;}
.fg-intro{font-size: 1.02rem;line-height: 1.75;margin: 0 0 1.35rem;max-width: 44rem;}
.fg-byline{display: flex;flex-wrap: wrap;gap: 0.35rem 1.2rem;font-size: 0.82rem;color: var(--fg-muted);margin: 0 0 1.5rem;}
.fg-proof{display: grid;grid-template-columns: 1fr 1fr;border: 1px solid var(--fg-line);border-radius: 18px;overflow: hidden;background: var(--fg-card);box-shadow: var(--fg-shadow);margin-bottom: 1.4rem;}
.fg-proof figure{margin: 0;min-width: 0;}
.fg-proof figure + figure{border-left: 1px solid var(--fg-line);}
.fg-proof figcaption{display: flex;justify-content: space-between;align-items: center;padding: 0.7rem 0.95rem;font-size: 0.68rem;font-weight: 800;letter-spacing: 0.12em;text-transform: uppercase;border-bottom: 1px solid var(--fg-line);}
.fg-proof figure:first-child figcaption{background: var(--fg-copper-soft);color: var(--fg-copper);}
.fg-proof figure:last-child figcaption{background: var(--fg-green-soft);color: var(--fg-green);}
.fg-proof pre{margin: 0;padding: 1rem 1.05rem 1.15rem;font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size: 0.78rem;line-height: 1.65;overflow-x: auto;color: var(--fg-ink);}
.fg-sheet{background: var(--fg-card);border: 1px solid var(--fg-line);border-radius: 22px;padding: clamp(1.4rem, 3.5vw, 2.5rem);box-shadow: var(--fg-shadow);}
.fg-sheet > * + *{margin-top: 2.6rem;}
.fg-sec h2{font-size: clamp(1.4rem, 2.8vw, 1.85rem);line-height: 1.2;letter-spacing: -0.025em;margin: 0 0 0.85rem;}
.fg-sec p{font-size: 1.02rem;line-height: 1.75;margin: 0 0 0.85rem;max-width: 46rem;}
.fg-sec p:last-child{margin-bottom: 0;}
.fg-jobs{display: grid;grid-template-columns: repeat(3, 1fr);gap: 0.75rem;margin-top: 1rem;}
.fg-job{border-radius: 14px;padding: 1rem 1.05rem 1.1rem;border: 1px solid var(--fg-line);background: #fff;}
.fg-job strong{display: block;font-size: 0.72rem;letter-spacing: 0.12em;text-transform: uppercase;margin-bottom: 0.45rem;}
.fg-job h3{font-size: 1.05rem;margin: 0 0 0.4rem;}
.fg-job p{margin: 0;font-size: 0.92rem;line-height: 1.6;color: var(--fg-muted);}
.fg-job--set{background: var(--fg-green-soft);border-color: #c6e0cf;}
.fg-job--set strong{color: var(--fg-green);}
.fg-job--raw{background: var(--fg-copper-soft);border-color: #f3d2bc;}
.fg-job--raw strong{color: var(--fg-copper);}
.fg-job--ink{background: #1c1612;border-color: #1c1612;color: #f6f1e8;}
.fg-job--ink strong{color: #e7b08a;}
.fg-job--ink p{color: #d9cfc3;}
.fg-page .fg-job--ink a{color: #fdba74;}
.fg-pair{display: grid;grid-template-columns: minmax(0, 1.15fr) minmax(220px, 0.85fr);gap: 1rem;align-items: start;margin-top: 0.4rem;}
.fg-annot{margin: 0;padding: 0;list-style: none;border-top: 1px solid var(--fg-line);}
.fg-annot li{display: grid;grid-template-columns: 7.5rem 1fr;gap: 0.75rem;padding: 0.7rem 0;border-bottom: 1px solid var(--fg-line-soft);font-size: 0.92rem;line-height: 1.5;}
.fg-annot b{font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size: 0.78rem;color: var(--fg-copper);font-weight: 700;}
.fg-aside{background: var(--fg-copper-soft);border-left: 4px solid var(--fg-copper);border-radius: 0 14px 14px 0;padding: 1rem 1.05rem;}
.fg-aside h3{margin: 0 0 0.4rem;font-size: 1rem;color: var(--fg-copper);}
.fg-aside p{margin: 0;font-size: 0.92rem;line-height: 1.65;color: #7c2d12;}
.fg-shelves{display: grid;grid-template-columns: 1fr 1fr;gap: 0.85rem;margin-top: 1rem;}
.fg-shelf{border: 1px solid var(--fg-line);border-radius: 16px;padding: 1rem 1rem 0.85rem;background: #fffdf8;}
.fg-shelf h3{margin: 0 0 0.35rem;font-size: 1.05rem;}
.fg-shelf > p{margin: 0 0 0.75rem;font-size: 0.9rem;line-height: 1.6;color: var(--fg-muted);}
.fg-tools{margin: 0;padding: 0;list-style: none;}
.fg-tools li{display: flex;justify-content: space-between;gap: 0.75rem;align-items: baseline;padding: 0.38rem 0;border-top: 1px dashed var(--fg-line);font-size: 0.88rem;}
.fg-tools a{font-weight: 700;text-decoration: none;}
.fg-tools a:hover{text-decoration: underline;}
.fg-tools span{color: var(--fg-muted);text-align: right;font-size: 0.8rem;}
.fg-table-wrap{overflow-x: auto;border: 1px solid var(--fg-line);border-radius: 14px;margin: 1rem 0 0.4rem;}
.fg-table{width: 100%;border-collapse: collapse;min-width: 640px;font-size: 0.92rem;}
.fg-table th{text-align: left;font-size: 0.68rem;letter-spacing: 0.08em;text-transform: uppercase;color: var(--fg-muted);padding: 0.7rem 0.85rem;background: #faf6ef;border-bottom: 1px solid var(--fg-line);}
.fg-table td{padding: 0.72rem 0.85rem;border-bottom: 1px solid var(--fg-line-soft);vertical-align: top;line-height: 1.5;}
.fg-table tr:last-child td{border-bottom: 0;}
.fg-table td:first-child{font-weight: 700;}
.fg-mid{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.85rem;margin-top: 1.15rem;padding: 1rem 1.1rem;background: #1c1612;color: #f6f1e8;border-radius: 14px;}
.fg-mid p{margin: 0;max-width: 38rem;font-size: 0.95rem;line-height: 1.55;color: #f6f1e8;}
.fg-page .fg-mid a{display: inline-flex;background: #fdba74;color: #1c1612;font-weight: 800;text-decoration: none;padding: 0.55rem 0.95rem;border-radius: 999px;font-size: 0.86rem;}
.fg-page .fg-mid a:hover{background: #fed7aa;color: #1c1612;}
.fg-stops{margin: 0.4rem 0 0;padding: 0;list-style: none;counter-reset: fgstop;}
.fg-stops li{counter-increment: fgstop;display: grid;grid-template-columns: 2.4rem 1fr;gap: 0.7rem;padding: 0.85rem 0;border-bottom: 1px solid var(--fg-line-soft);line-height: 1.65;}
.fg-stops li:last-child{border-bottom: 0;padding-bottom: 0;}
.fg-stops li::before{content: counter(fgstop, decimal-leading-zero);font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size: 0.78rem;font-weight: 700;color: var(--fg-copper);padding-top: 0.2rem;}
.fg-stops strong{display: block;margin-bottom: 0.15rem;}
.fg-faq{margin: 0.3rem 0 0;display: flex;flex-direction: column;}
.fg-faq details{border-bottom: 1px solid var(--fg-line);padding: 0.15rem 0;}
.fg-faq details:last-child{border-bottom: 0;}
.fg-faq summary{cursor: pointer;font-weight: 700;font-size: 1.02rem;line-height: 1.4;padding: 0.85rem 0;list-style: none;}
.fg-faq summary::-webkit-details-marker{display: none;}
.fg-faq summary::before{content: "+";display: inline-block;width: 1.1rem;color: var(--fg-copper);font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;}
.fg-faq details[open] summary::before{content: "-";}
.fg-page .visually-hidden{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}
.fg-faq details p{margin: 0 0 0.95rem 1.1rem;color: var(--fg-muted);line-height: 1.7;max-width: 44rem;}
.fg-near{display: flex;flex-wrap: wrap;gap: 0.5rem;margin: 0.9rem 0 1rem;}
.fg-near a{display: inline-flex;padding: 0.42rem 0.8rem;border-radius: 999px;border: 1px solid var(--fg-line);background: #fff;text-decoration: none;color: var(--fg-ink);font-size: 0.86rem;font-weight: 700;}
.fg-near a:hover{border-color: var(--fg-copper);color: var(--fg-copper);}
.fg-close{font-size: 1.05rem;line-height: 1.7;max-width: 40rem;margin: 0;}
@media (max-width: 900px){.fg-proof,.fg-jobs,.fg-pair,.fg-shelves{grid-template-columns: 1fr;}.fg-proof figure + figure{border-left: 0;border-top: 1px solid var(--fg-line);}}
@media (max-width: 575.98px){.fg-page h1{max-width: none;}.fg-annot li,.fg-tools li{display: block;}.fg-tools span{display: block;text-align: left;margin-top: 0.1rem;}.fg-mid{align-items: flex-start;}}
