:root{
  --tl-ground:#4F5637;
  --tl-text:#F3EAD2;
  --tl-muted:#B8B190;
  --tl-line:#7A7C58;
  --tl-accent:#C58A2A;
  --tl-deep:#313721;
  --tl-soft:#646b47;
  --tl-display:Optima,Candara,"Segoe UI",Frutiger,"Trebuchet MS",Arial,sans-serif;
  --tl-body:Aptos,"Segoe UI",Calibri,Arial,sans-serif;
  --tl-mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;
  --tl-page:min(1180px,calc(100vw - 34px));
}
*{box-sizing:border-box}
html{background:var(--tl-ground);color:var(--tl-text);font-family:var(--tl-body);font-size:16px;line-height:1.55}
body{margin:0;background:var(--tl-ground);color:var(--tl-text);overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--tl-text);text-decoration-color:var(--tl-accent);text-decoration-thickness:1px;text-underline-offset:.22em;overflow-wrap:anywhere}
a:hover{color:#fff2d0}
p{max-width:72ch;margin:0 0 1rem}
h1,h2,h3{font-family:var(--tl-display);font-weight:600;line-height:.98;text-wrap:balance;margin:0;color:var(--tl-text)}
h1{font-size:clamp(3.2rem,10vw,4.8rem);letter-spacing:-.055em;font-weight:400}
h2{font-size:clamp(1.9rem,4vw,2.4rem);letter-spacing:-.035em;margin-bottom:1.05rem}
h3{font-size:1.22rem;line-height:1.1;letter-spacing:-.015em;margin-bottom:.7rem}
strong{font-weight:600}
::selection{background:var(--tl-accent);color:var(--tl-deep)}
.tl-skip{position:absolute;left:1rem;top:-5rem;background:var(--tl-text);color:var(--tl-deep);padding:.7rem 1rem;z-index:9}
.tl-skip:focus{top:1rem}
.tl-header{border-bottom:1px solid var(--tl-line);position:sticky;top:0;background:rgba(79,86,55,.96);backdrop-filter:blur(8px);z-index:5}
.tl-header__inner{width:var(--tl-page);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1rem 0}
.tl-brand{display:inline-flex;gap:.8rem;align-items:center;text-decoration:none;min-width:0}
.tl-brand__mark{font-family:var(--tl-mono);border:1px solid var(--tl-line);color:var(--tl-accent);width:2.7rem;aspect-ratio:1;display:grid;place-items:center;font-size:.88rem;letter-spacing:.12em}
.tl-brand__text{font-family:var(--tl-display);font-weight:600;line-height:1.03;letter-spacing:-.02em}
.tl-nav{display:flex;align-items:center;gap:.15rem;flex-wrap:wrap;justify-content:flex-end}
.tl-nav a{font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;padding:.7rem .62rem;color:var(--tl-muted);border-bottom:1px solid transparent}
.tl-nav a:hover,.tl-nav a.tl-current{color:var(--tl-text);border-bottom-color:var(--tl-accent)}
.tl-navbutton{display:none;background:none;border:1px solid var(--tl-line);color:var(--tl-text);font:600 .72rem var(--tl-mono);text-transform:uppercase;letter-spacing:.13em;padding:.65rem .85rem}
.tl-hero,.tl-pagehead{width:var(--tl-page);margin:0 auto;padding:clamp(2rem,5vw,4.6rem) 0 3.2rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(1.3rem,4vw,4rem);align-items:center}
.tl-hero__art,.tl-pagehead__map{border:1px solid var(--tl-line);position:relative;overflow:hidden;background:var(--tl-deep)}
.tl-photo{display:block;width:100%;height:auto;object-fit:cover;background:var(--tl-deep)}
.tl-hero__art .tl-photo{aspect-ratio:1200/640}
.tl-pagehead__map--photo .tl-photo{aspect-ratio:1100/430}
.tl-hero__art .tl-svg,.tl-pagehead__map--photo .tl-svg{display:block;width:100%;height:auto;pointer-events:none}
.tl-svg{display:block;width:100%;height:auto}
.tl-hero__label{position:absolute;left:1rem;right:1rem;bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.tl-hero__label span{color:var(--tl-text)}
.tl-hero__label a,.tl-button{display:inline-flex;width:max-content;align-items:center;justify-content:center;border:1px solid var(--tl-accent);color:var(--tl-text);background:transparent;text-decoration:none;font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;padding:.82rem 1rem;line-height:1}
.tl-hero__label a:hover,.tl-button:hover,.tl-filter:hover{color:#fff;border-color:#dba24a}
.tl-hero__copy,.tl-pagehead__copy{justify-self:center;max-width:520px}
.tl-kicker,.tl-label,.tl-card__eyebrow{font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--tl-muted);margin:0 0 .8rem}
.tl-headline{margin-bottom:1.05rem}
.tl-mask{clip-path:none}
.tl-ledger{width:var(--tl-page);margin:0 auto;display:grid;grid-template-columns:160px minmax(0,1fr);gap:clamp(1.1rem,4vw,3.6rem);padding:clamp(2.6rem,7vw,5.5rem) 0;border-top:1px solid var(--tl-line)}
.tl-ledger__rail{font-family:var(--tl-mono);color:var(--tl-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;display:flex;flex-direction:column;gap:.65rem}
.tl-ledger__rail strong{font-size:1.65rem;color:var(--tl-accent);font-weight:400;letter-spacing:-.06em;line-height:1}
.tl-ledger__body{min-width:0}
.tl-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.48fr);gap:clamp(1.3rem,4vw,3rem);align-items:start}
.tl-reading p{font-size:1.22rem;line-height:1.5;max-width:74ch}
.tl-plan{margin:0}
.tl-plan figcaption{font-family:var(--tl-mono);font-size:.72rem;color:var(--tl-muted);margin-top:.7rem;line-height:1.45}
.tl-cardgrid{display:grid;gap:1rem;align-items:stretch}
.tl-cardgrid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.tl-cardgrid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.tl-cardgrid--catalogue{grid-template-columns:repeat(3,minmax(0,1fr))}
.tl-card,.tl-mini,.tl-note,.tl-contactcard{border:1px solid var(--tl-line);padding:1.1rem;background:transparent;min-width:0}
.tl-card{display:flex;flex-direction:column;align-items:flex-start}
.tl-card p:not(.tl-card__eyebrow){color:var(--tl-muted)}
.tl-card dl{width:100%;margin:auto 0 1.2rem;border-top:1px solid var(--tl-line)}
.tl-card dl div{display:grid;grid-template-columns:.8fr 1.2fr;gap:.8rem;padding:.65rem 0;border-bottom:1px solid var(--tl-line)}
.tl-card dt{font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--tl-muted)}
.tl-card dd{margin:0;font-family:var(--tl-mono);font-size:.88rem;color:var(--tl-text);overflow-wrap:anywhere}
.tl-card__caption{font-family:var(--tl-mono);font-size:.72rem;line-height:1.4;margin:-.2rem 0 .85rem;color:var(--tl-muted)}
.tl-card__drawing{display:none;width:100%;height:152px;border-bottom:1px solid var(--tl-line);margin:-1.1rem -1.1rem 1rem;background-color:var(--tl-deep);background-repeat:no-repeat;background-size:cover;background-position:center}
.tl-mini span{font-family:var(--tl-mono);color:var(--tl-accent);display:block;margin-bottom:1rem}
.tl-mini p{color:var(--tl-muted);font-size:.94rem}
.tl-note{border-color:var(--tl-accent)}
.tl-note p{font-family:var(--tl-display);font-size:1.22rem;line-height:1.25;margin:0;color:var(--tl-text)}
.tl-filterbar{display:flex;gap:.55rem;flex-wrap:wrap}
.tl-filter{border:1px solid var(--tl-line);background:transparent;color:var(--tl-muted);font:600 .72rem var(--tl-mono);text-transform:uppercase;letter-spacing:.13em;padding:.72rem .85rem;cursor:pointer}
.tl-filter--active{border-color:var(--tl-accent);color:var(--tl-text)}
.tl-catalogue.tl-hidden-filter{display:none}
.tl-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.tl-list--columns{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}
.tl-list li{border-top:1px solid var(--tl-line);padding:1rem 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;transition:color 180ms ease}
.tl-list li:last-child{border-bottom:1px solid var(--tl-line)}
.tl-list li:hover{color:#fff}
.tl-list li:hover strong{color:#dba24a}
.tl-list span{min-width:0;overflow-wrap:anywhere}
.tl-list strong{font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--tl-muted);white-space:normal;text-align:right}
.tl-tablewrap{overflow-x:auto;max-width:100%;border:1px solid var(--tl-line)}
.tl-table{width:100%;border-collapse:collapse;min-width:620px}
.tl-table th,.tl-table td{padding:.9rem 1rem;border-bottom:1px solid var(--tl-line);vertical-align:top;text-align:left}
.tl-table tr:last-child th,.tl-table tr:last-child td{border-bottom:0}
.tl-table th{font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--tl-muted);font-weight:600}
.tl-table td{color:var(--tl-text)}
.tl-footstrip{width:var(--tl-page);margin:0 auto 3rem;border-top:1px solid var(--tl-line);border-bottom:1px solid var(--tl-line);padding:1.1rem 0;color:var(--tl-muted);overflow:hidden}
.tl-footstrip p{max-width:none;margin:.8rem 0}
.tl-marquee{overflow:hidden;white-space:normal;border-bottom:1px solid var(--tl-line);padding-bottom:.8rem}
.tl-marquee__track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.tl-footnotes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;border-bottom:1px solid var(--tl-line);padding-bottom:.8rem;font-family:var(--tl-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.tl-contactcard__email{display:block;font-family:var(--tl-display);font-size:clamp(2rem,6vw,4.8rem);letter-spacing:-.06em;line-height:1;margin-bottom:1.5rem}
.tl-footer{width:var(--tl-page);margin:0 auto;padding:2rem 0 3rem;border-top:1px solid var(--tl-line);color:var(--tl-muted);display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap}
.tl-footer p{margin:0}
.tl-svg__ground{fill:#4F5637}.tl-svg__distant{fill:#646b47}.tl-svg__water{fill:#3e4d42}.tl-svg__field{fill:#56613d}.tl-svg__paper{fill:#444b31}.tl-svg__shore,.tl-svg__waterline{fill:none;stroke:#F3EAD2;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;opacity:.72}.tl-svg__waterline{stroke-width:5}.tl-svg__road{fill:none;stroke:#B8B190;stroke-width:3;stroke-dasharray:10 8;opacity:.72}.tl-svg__thin{fill:none;stroke:#B8B190;stroke-width:2;opacity:.5}.tl-svg__pitches rect,.tl-plan__pitches rect{fill:none;stroke:#B8B190;stroke-width:2;opacity:.85}.tl-svg__units path,.tl-svg__hut rect,.tl-svg__hut path{fill:none;stroke:#F3EAD2;stroke-width:2}.tl-svg__units circle{fill:#C58A2A}.tl-mapmarks circle{fill:#C58A2A}.tl-plan__grid path{fill:none;stroke:#7A7C58;stroke-width:1;opacity:.42}.tl-svg__text{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:18px;letter-spacing:2px;text-transform:uppercase;fill:#F3EAD2;opacity:.78}.tl-facicons *{fill:none;stroke:#F3EAD2;stroke-width:3}.tl-facicons path:nth-child(2n){stroke:#C58A2A}
.tl-first-reveal{animation:tl-first-caption 700ms ease both}
.tl-shoreline-reveal .tl-svg__shore,.tl-shoreline-reveal .tl-svg__waterline{animation:tl-shoreline 700ms ease both}
.tl-reveal{transition:none}
@keyframes tl-first-caption{from{transform:translateY(6px)}to{transform:translateY(0)}}
@keyframes tl-shoreline{from{opacity:0}to{opacity:.72}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}
  .tl-mask{clip-path:none}
  .tl-shoreline-reveal .tl-svg__shore,.tl-shoreline-reveal .tl-svg__waterline{animation:none!important}
}
@media (max-width:980px){
  .tl-hero,.tl-pagehead{grid-template-columns:1fr}
  .tl-hero__copy,.tl-pagehead__copy{justify-self:start;max-width:720px}
  .tl-ledger{grid-template-columns:1fr;gap:1rem}
  .tl-ledger__rail{flex-direction:row;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--tl-line);padding-bottom:.8rem}
  .tl-cardgrid--three,.tl-cardgrid--catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tl-cardgrid--four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tl-split{grid-template-columns:1fr}
  .tl-footnotes,.tl-marquee__track{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  :root{--tl-page:min(100% - 24px,1180px)}
  .tl-header__inner{align-items:flex-start}
  .tl-navbutton{display:inline-flex}
  .tl-nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 1px);background:var(--tl-ground);border:1px solid var(--tl-line);padding:.6rem;align-items:flex-start;justify-content:flex-start}
  .tl-nav.tl-nav--open{display:flex}
  .tl-nav a{display:block;width:100%;padding:.85rem}
  .tl-pagehead__copy,.tl-hero__copy{order:-1}
  .tl-cardgrid--three,.tl-cardgrid--catalogue,.tl-cardgrid--four,.tl-list--columns{grid-template-columns:1fr}
  .tl-hero,.tl-pagehead{padding-top:1.4rem}
  .tl-hero__label{position:static;border-top:1px solid var(--tl-line);padding:1rem;margin:0}
  .tl-hero__label a{padding:.72rem .82rem}
  .tl-card dl div{grid-template-columns:1fr}
  .tl-list li{grid-template-columns:1fr;gap:.35rem}
  .tl-list strong{text-align:left}
  .tl-contactcard__email{font-size:clamp(1.55rem,10vw,2.4rem)}
  .tl-footnotes,.tl-marquee__track{grid-template-columns:1fr}
}