/* Hallmark · genre: editorial · macrostructure: Field Notebook · theme: inherited CattleFenceWire · enrichment: page-specific agricultural photography · nav: inherited · footer: inherited
 * pre-emit critique: P4 H5 E4 S5 R5 V5 · contrast: pass · tokens: pass · clickable nowrap: pass · mobile 320–1920: pass
 */
@import url('/assets/css/resource-workbench-tokens.css?v=20260921-1');
html,body{overflow-x:clip}
.fn-hero{position:relative;min-height:clamp(35rem,77vh,49rem);display:grid;align-items:end;background:var(--color-deeper);color:var(--color-paper)}
.fn-hero__media,.fn-hero__shade{position:absolute;inset:0}
.fn-hero__media img{width:100%;height:100%;object-fit:cover}
.fn-hero__shade{background:linear-gradient(90deg,var(--color-veil-start) 0%,var(--color-veil-mid) 52%,var(--color-veil-end) 100%)}
.fn-hero__inner{position:relative;z-index:1;padding-block:clamp(4rem,11vw,8rem) var(--space-3xl);min-width:0}
.fn-kicker{display:inline-block;border-bottom:3px solid var(--color-accent);padding-bottom:.35rem;margin:0 0 var(--space-lg);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fn-hero h1{max-width:13ch;margin:0;font-family:var(--font-display);font-size:clamp(3.2rem,8vw,7rem);line-height:.86;text-transform:uppercase;font-style:normal;overflow-wrap:anywhere;min-width:0}
.fn-hero__lead{max-width:47rem;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.58;margin:var(--space-xl) 0}
.fn-boundary{max-width:56rem;background:var(--color-limit);border-left:4px solid var(--color-accent);padding:var(--space-md) var(--space-lg);line-height:1.55}
.fn-main{background:var(--color-paper);color:var(--color-ink);padding-block:var(--space-3xl)}
.fn-layout{display:grid;grid-template-columns:minmax(13rem,17rem) minmax(0,1fr);gap:clamp(1.5rem,5vw,5rem);align-items:start}
.fn-index{position:sticky;top:5.2rem;background:var(--color-deep);color:var(--color-paper);border-top:4px solid var(--color-accent);padding:var(--space-lg)}
.fn-index strong{display:block;font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase}
.fn-index ol{list-style:none;padding:0;margin:var(--space-md) 0 0;counter-reset:stops}
.fn-index li{counter-increment:stops;padding:.85rem 0;border-top:var(--rule-thin) solid var(--color-rail-rule);line-height:1.35}
.fn-index li::before{content:counter(stops,decimal-leading-zero);color:var(--color-accent);font-weight:900;margin-right:.6rem}
.fn-notebook{border-left:3px solid var(--color-rule);padding-left:clamp(1rem,3vw,2.5rem);min-width:0}
.fn-lede{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,.7fr);gap:var(--space-xl);align-items:end;margin-bottom:var(--space-2xl)}
.fn-lede h2,.fn-stop h2,.fn-questions h2,.fn-evidence h2{font-family:var(--font-display);font-size:clamp(2rem,4.2vw,3.7rem);line-height:.95;text-transform:uppercase;font-style:normal;margin:0;overflow-wrap:anywhere}
.fn-lede p{margin:0;line-height:1.65;color:var(--color-muted)}
.fn-stop{position:relative;background:var(--color-panel);border-top:4px solid var(--color-accent);box-shadow:0 1rem 2rem var(--color-shadow);padding:clamp(1rem,3vw,2rem);margin-bottom:var(--space-xl);min-width:0}
.fn-stop::before{content:'';position:absolute;left:calc(clamp(1rem,3vw,2.5rem) * -1 - 7px);top:1.6rem;width:12px;height:12px;background:var(--color-accent);border-radius:50%}
.fn-stop h2{font-size:clamp(1.7rem,3vw,2.7rem);margin-bottom:var(--space-md)}
.fn-stop p,.fn-stop li{line-height:1.6}
.fn-route{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin-top:var(--space-lg);background:var(--color-rule);border:var(--rule-thin) solid var(--color-rule)}
.fn-route div{background:var(--color-paper-2);padding:var(--space-md);min-width:0}
.fn-route b{display:block;color:var(--color-deep);font-family:var(--font-display);font-size:var(--text-lg);text-transform:uppercase}
.fn-route span{display:block;color:var(--color-muted);line-height:1.4;margin-top:.4rem}
.fn-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);padding:.85rem var(--space-md);border-top:var(--rule-thin) solid var(--color-rule)}
.fn-records{border:var(--rule-thin) solid var(--color-rule);margin-top:var(--space-lg)}
.fn-record strong{font-family:var(--font-display);font-size:var(--text-lg);font-variant-numeric:tabular-nums;white-space:nowrap}
.fn-photo{margin:var(--space-lg) 0 0;background:var(--color-deeper);color:var(--color-paper)}
.fn-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.fn-photo figcaption{padding:.8rem var(--space-md);font-size:var(--text-sm);line-height:1.45}
.fn-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}
.fn-form label{font-weight:700;min-width:0}
.fn-form select{display:block;width:100%;min-height:3rem;margin-top:.4rem;border:var(--rule-thin) solid var(--color-rule);background:var(--color-paper);color:var(--color-ink);padding:.65rem;font:inherit;border-radius:var(--radius-sm)}
.fn-form select:focus-visible,.fn-action:focus-visible,.fn-sources a:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
.fn-action{grid-column:1/-1;min-height:3.2rem;border:0;background:var(--color-deep);color:var(--color-paper);font-weight:800;cursor:pointer;white-space:nowrap;transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.fn-action:hover{background:var(--color-deeper)}
.fn-action:active{transform:translateY(1px)}
.fn-action:disabled{cursor:not-allowed;opacity:.58}
.fn-action[data-state="loading"]{cursor:progress}
.fn-action[data-state="success"]{background:var(--color-success)}
.fn-action[data-state="error"]{background:var(--color-error)}
.fn-result{margin-top:var(--space-md);min-height:5.4rem;padding:var(--space-md);border-top:4px solid var(--color-rule);background:var(--color-paper-2);line-height:1.55}
.fn-result strong{display:block;font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase}
.fn-result[data-level="success"]{border-color:var(--color-success)}
.fn-result[data-level="error"]{border-color:var(--color-error)}
.fn-questions{padding-block:var(--space-3xl);background:var(--color-paper-2);color:var(--color-ink)}
.fn-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:var(--rule-thin) solid var(--color-rule);border-left:var(--rule-thin) solid var(--color-rule);margin-top:var(--space-xl)}
.fn-question{padding:var(--space-lg);background:var(--color-panel);border-right:var(--rule-thin) solid var(--color-rule);border-bottom:var(--rule-thin) solid var(--color-rule)}
.fn-question h3{font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase;font-style:normal;margin:0 0 .55rem}
.fn-question p{margin:0;line-height:1.55}
.fn-evidence{padding-block:var(--space-3xl);background:var(--color-paper);color:var(--color-ink)}
.fn-evidence>div>p{max-width:57rem;line-height:1.65}
.fn-sources{display:grid;gap:.65rem;margin-block:var(--space-xl)}
.fn-sources a{display:grid;gap:.25rem;color:var(--color-ink);background:var(--color-source);border:var(--rule-thin) solid var(--color-source-rule);padding:var(--space-md);text-decoration:none}
.fn-sources a:hover{border-left:5px solid var(--color-accent)}
.fn-sources small{color:var(--color-muted)}
.fn-next{display:flex;flex-wrap:wrap;gap:1rem}
.fn-next a{color:var(--color-deep);font-weight:800;white-space:nowrap}
.fn-sticky{position:sticky;bottom:0;z-index:6;background:var(--color-deeper);color:var(--color-paper);border-top:3px solid var(--color-accent);padding:.7rem 0}
.fn-sticky .container{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md)}
.fn-sticky p{margin:0;font-weight:700}
.fn-sticky a{background:var(--color-accent);color:var(--color-accent-ink);padding:.65rem .9rem;text-decoration:none;font-weight:800;white-space:nowrap}
@media(max-width:900px){.fn-layout{grid-template-columns:1fr}.fn-index{position:relative;top:auto}.fn-notebook{border-left:0;padding-left:0}.fn-stop::before{display:none}.fn-lede{grid-template-columns:1fr}.fn-route{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.fn-hero__shade{background:linear-gradient(180deg,var(--color-veil-mobile),var(--color-veil-mobile-end) 62%)}.fn-hero h1{font-size:clamp(3rem,16vw,5rem)}.fn-form,.fn-question-grid{grid-template-columns:1fr}.fn-action{grid-column:auto}.fn-sticky p{font-size:var(--text-sm)}}
@media(max-width:480px){.fn-route{grid-template-columns:1fr}.fn-record{grid-template-columns:1fr}.fn-sticky .container{align-items:stretch;flex-direction:column}.fn-sticky a{text-align:center}.fn-next{display:grid}.fn-next a{display:block}}
@media(prefers-reduced-motion:reduce){.fn-action{transition:none}}
