:root{
  --bg:#070b11;
  --panel:#0d151f;
  --panel2:#111b27;
  --text:#edf1f5;
  --muted:#a6b0bb;
  --faint:#788491;
  --gold:#e2b15e;
  --gold2:#f0c978;
  --line:rgba(255,255,255,.10);
  --line2:rgba(226,177,94,.28);
  --shadow:0 24px 65px rgba(0,0,0,.36);
  --radius:20px;
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;min-height:100vh;color:var(--text);
  background:
    radial-gradient(circle at 15% -5%,rgba(226,177,94,.11),transparent 28rem),
    radial-gradient(circle at 94% 18%,rgba(79,127,171,.09),transparent 30rem),
    linear-gradient(180deg,#070b11 0%,#080d14 55%,#060a0f 100%);
  font-family:Arial,Helvetica,sans-serif;line-height:1.65
}
a{color:inherit}.wrap{width:min(calc(100% - 32px),var(--max));margin:0 auto}
.archive-bar{border-bottom:1px solid var(--line);background:rgba(7,11,17,.82);backdrop-filter:blur(12px)}
.archive-bar .wrap{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:13px 0}
.archive-brand{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.archive-back{font-size:.82rem;color:var(--muted);text-decoration:none}
.archive-back:hover,.archive-back:focus-visible{color:var(--text)}
.site-hero{
  height:88px;border-bottom:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(7,11,17,.22),rgba(7,11,17,.05) 42%,rgba(7,11,17,.20)),
    url("hero.png") center 50% / cover no-repeat;
  box-shadow:inset 0 -22px 42px rgba(0,0,0,.16)
}
.record-hero{padding:48px 0 28px}
.record-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.68fr);gap:46px;align-items:center}
.record-hero-grid.no-photo{grid-template-columns:minmax(0,850px);justify-content:start}
.kicker{margin:0 0 12px;color:var(--gold);font-size:.76rem;font-weight:800;letter-spacing:.20em;text-transform:uppercase}
h1{margin:0;font-size:clamp(2.45rem,6vw,5.2rem);line-height:.98;letter-spacing:-.05em}
.location-title{display:block;margin-top:12px;color:var(--muted);font-size:clamp(1.05rem,2.4vw,1.45rem);font-weight:400;letter-spacing:0}
.lede{max-width:760px;margin:26px 0 0;color:#cbd3db;font-size:clamp(1.03rem,2vw,1.22rem);white-space:pre-line}
.record-hero-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.pill{padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025);color:var(--muted);font-size:.78rem}
.pill strong{color:var(--text)}
.record-hero-image{
  display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;padding:10px;
  border:1px solid var(--line2);border-radius:26px;background:#05080c;box-shadow:var(--shadow);cursor:zoom-in
}
.record-hero-image img{display:block;width:100%;height:auto;max-height:610px;object-fit:contain;border-radius:17px}
.record-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:18px 0 34px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--line)}
.record-strip.has-type{grid-template-columns:repeat(4,1fr)}
.record-item{padding:15px 17px;background:rgba(12,19,28,.97)}
.record-item span{display:block;margin-bottom:3px;color:var(--faint);font-size:.69rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.record-item strong{display:block;font-size:.93rem;font-weight:700;color:#e4e9ee}
.article,.gallery{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.025),transparent 42%),var(--panel);box-shadow:var(--shadow)}
.article{max-width:900px;margin:0 auto;padding:clamp(24px,4vw,44px);border-radius:var(--radius)}
.article h2,.gallery h2{margin:0 0 22px;font-size:clamp(1.45rem,3vw,2.05rem);line-height:1.15}
.article h3{margin:34px 0 10px;color:var(--gold2);font-size:1.05rem}
.article p{margin:0 0 18px;color:#c9d1d9}
.article ul{margin:0 0 20px;padding-left:22px;color:#c9d1d9}
.reference{margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}
.reference h3{margin:0 0 9px}
.reference-list{display:flex;flex-direction:column;gap:8px}
.reference a{color:var(--gold);text-decoration:none;font-weight:700}
.reference a:hover,.reference a:focus-visible{color:var(--text);text-decoration:underline}
.gallery{margin:26px 0 0;padding:clamp(22px,4vw,34px);border-radius:var(--radius)}
.gallery-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}
.gallery-head h2{margin:0}.gallery-head p{margin:0;color:var(--muted);font-size:.84rem}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.photo{display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line);border-radius:14px;padding:8px;background:#05080c;cursor:zoom-in;min-height:310px}
.photo.landscape{grid-column:span 2}
.photo img{display:block;width:100%;height:100%;max-height:470px;object-fit:contain;transition:transform .24s ease,filter .24s ease}
.photo:hover img,.photo:focus-visible img{transform:scale(1.012);filter:brightness(1.06)}
.photo:focus-visible,.record-hero-image:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.postscript{max-width:900px;margin:34px auto 0;padding:18px 8px 0;border-top:1px solid var(--line);color:var(--faint);font-size:.74rem;text-align:center}
.postscript strong{color:var(--muted);font-weight:700}
.postscript a{color:var(--muted);text-decoration:none}
.postscript a:hover,.postscript a:focus-visible{color:var(--gold);text-decoration:underline}
footer{margin-top:48px;padding:27px 0 38px;border-top:1px solid var(--line);color:#7e8995;text-align:center;font-size:.82rem}
footer a{color:var(--gold);text-decoration:none}
.lightbox{position:fixed;inset:0;z-index:9999;display:none;place-items:center;padding:28px;background:rgba(2,5,8,.94);backdrop-filter:blur(8px)}
.lightbox.open{display:grid}
.lightbox img{max-width:min(94vw,1500px);max-height:88vh;object-fit:contain;border-radius:10px;box-shadow:0 25px 80px rgba(0,0,0,.6)}
.lb-close,.lb-prev,.lb-next{position:fixed;border:1px solid rgba(255,255,255,.2);background:rgba(10,15,22,.78);color:#fff;border-radius:999px;cursor:pointer;font-size:1.25rem}
.lb-close{top:20px;right:20px;width:44px;height:44px}.lb-prev,.lb-next{top:50%;transform:translateY(-50%);width:48px;height:48px}
.lb-prev{left:20px}.lb-next{right:20px}
.lb-caption{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);max-width:calc(100% - 80px);color:#bcc5ce;font-size:.8rem;text-align:center}
@media(max-width:900px){
  .record-hero-grid{grid-template-columns:1fr}.record-hero-image{max-width:560px;margin:0 auto}.record-hero-image img{max-height:none}
  .record-strip,.record-strip.has-type{grid-template-columns:repeat(2,1fr)}
  .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo.landscape{grid-column:1/-1}
}
@media(max-width:650px){
  .site-hero{height:62px;background-position:center center}
  .archive-bar .wrap{align-items:flex-start;flex-direction:column;gap:3px}.record-hero{padding-top:38px}
  .record-strip,.record-strip.has-type{grid-template-columns:1fr}
  .gallery-head{display:block}.gallery-head p{margin-top:7px}
  .photo-grid{grid-template-columns:1fr}.photo,.photo.landscape{grid-column:auto;min-height:0}
  .photo img{height:auto;max-height:none}
  .lb-prev{left:8px}.lb-next{right:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}


/* ================================================================
   FIELD NOTES LANDING PAGE
   ================================================================ */

.landing-hero{padding:56px 0 34px}
.landing-hero-inner{max-width:920px}
.landing-hero h1{font-size:clamp(3.1rem,8vw,6.7rem)}
.landing-intro{
  max-width:820px;margin:25px 0 0;color:#c5ced7;
  font-size:clamp(1.05rem,2.2vw,1.24rem)
}
.landing-status{
  display:inline-flex;align-items:center;gap:9px;margin-top:23px;
  padding:7px 12px;border:1px solid var(--line);border-radius:999px;
  color:var(--muted);background:rgba(255,255,255,.025);font-size:.78rem
}
.landing-status:before{
  width:7px;height:7px;border-radius:50%;background:var(--gold);
  box-shadow:0 0 12px rgba(226,177,94,.75);content:""
}
.landing-stats{
  display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:8px 0 30px
}
.landing-stat{
  padding:17px 14px;border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.025);text-align:center
}
.landing-stat strong{display:block;color:var(--gold);font-size:1.42rem;line-height:1.15}
.landing-stat span{display:block;margin-top:4px;color:var(--faint);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}
.landing-note{
  margin:0 0 26px;padding:18px 20px;border-left:3px solid var(--gold);
  color:var(--muted);background:rgba(255,255,255,.025);font-size:.92rem
}
.browse-panel{
  margin:0 0 26px;padding:clamp(20px,3vw,28px);
  border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(255,255,255,.03),transparent 48%),var(--panel);
  box-shadow:var(--shadow)
}
.browse-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:19px}
.browse-head h2{margin:0;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.1}
.browse-head p{margin:7px 0 0;color:var(--muted)}
.browse-count{flex:0 0 auto;color:var(--gold);font-family:"Courier New",monospace;font-size:.8rem;text-align:right}
.browse-controls{
  display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,210px) minmax(150px,210px) auto;
  gap:10px;margin-bottom:18px
}
.browse-controls input,.browse-controls select{
  width:100%;min-height:43px;padding:9px 12px;border:1px solid var(--line);
  border-radius:10px;background:#091019;color:var(--text);font:inherit
}
.browse-controls input::placeholder{color:#6f7b87}
.browse-controls input:focus,.browse-controls select:focus{
  outline:2px solid rgba(226,177,94,.45);outline-offset:1px;border-color:var(--line2)
}
.browse-button{
  min-height:43px;padding:8px 15px;border:1px solid rgba(226,177,94,.42);
  border-radius:10px;background:rgba(226,177,94,.09);color:var(--gold);
  font-weight:800;cursor:pointer
}
.browse-button:hover,.browse-button:focus-visible{background:rgba(226,177,94,.17);color:var(--text)}
.note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.note-card{
  display:flex;flex-direction:column;min-width:0;overflow:hidden;
  border:1px solid var(--line);border-radius:15px;background:var(--panel2)
}
.note-thumb{
  position:relative;display:flex;align-items:center;justify-content:center;
  height:185px;overflow:hidden;background:
    linear-gradient(135deg,rgba(226,177,94,.07),transparent 45%),
    radial-gradient(circle at 72% 26%,rgba(74,123,167,.11),transparent 55%),
    #080d14
}
.note-thumb:before{
  position:absolute;inset:0;opacity:.25;content:"";
  background:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:28px 28px
}
.note-thumb.no-image:after{
  position:relative;content:"FIELD NOTE";color:#6d7884;
  font-size:.68rem;font-weight:800;letter-spacing:.17em
}
.note-thumb img{
  position:relative;z-index:1;display:block;width:100%;height:100%;
  object-fit:contain;background:#05080c
}
.note-card-body{display:flex;flex:1;flex-direction:column;padding:15px 16px 14px}
.note-type{
  min-height:1.1em;margin:0 0 6px;color:var(--gold);
  font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase
}
.note-card h3{margin:0;font-size:1.02rem;line-height:1.28}
.note-card h3 a{color:var(--text);text-decoration:none}
.note-card h3 a:hover,.note-card h3 a:focus-visible{color:var(--gold)}
.note-subtitle{margin:5px 0 0;color:#b7c0c9;font-size:.82rem}
.note-meta{margin:10px 0 0;color:var(--muted);font-size:.76rem}
.note-code{
  margin-top:auto;padding-top:13px;color:#687481;font-family:"Courier New",monospace;
  font-size:.67rem;letter-spacing:.06em
}
.browse-footer{display:flex;justify-content:center;margin-top:20px}
.load-more[hidden]{display:none}
.no-results{
  display:none;padding:35px 15px;color:var(--muted);text-align:center
}
.no-results.show{display:block}
.about-field-notes{
  max-width:900px;margin:30px auto 0;padding:25px 27px;border:1px solid var(--line);
  border-radius:var(--radius);background:rgba(255,255,255,.02)
}
.about-field-notes h2{margin:0 0 10px;font-size:1.25rem}
.about-field-notes p{margin:0;color:var(--muted);font-size:.9rem}

@media(max-width:950px){
  .note-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .browse-controls{grid-template-columns:1fr 1fr}
  .browse-controls .search-field{grid-column:1/-1}
}
@media(max-width:680px){
  .landing-hero{padding-top:42px}
  .landing-stats{grid-template-columns:repeat(2,1fr)}
  .browse-head{display:block}.browse-count{text-align:left;margin-top:8px}
  .browse-controls{grid-template-columns:1fr}
  .browse-controls .search-field{grid-column:auto}
  .note-grid{grid-template-columns:1fr}
  .note-thumb{height:210px}
}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}


.pagination{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:7px;margin-top:24px
}
.pagination[hidden]{display:none}
.page-button{
  min-width:38px;height:38px;padding:0 10px;border:1px solid var(--line);
  border-radius:9px;background:#0a1119;color:var(--muted);
  font:700 .82rem/1 inherit;cursor:pointer
}
.page-button:hover,.page-button:focus-visible{
  border-color:var(--line2);color:var(--gold);background:rgba(226,177,94,.08)
}
.page-button.active{
  border-color:rgba(226,177,94,.55);background:rgba(226,177,94,.14);
  color:var(--gold)
}
.page-button:disabled{opacity:.32;cursor:default}
.page-button:disabled:hover{
  border-color:var(--line);background:#0a1119;color:var(--muted)
}
.pager-arrow{font-size:1.15rem}
.page-ellipsis{padding:0 2px;color:var(--faint)}


.landing-stat-link{
  text-decoration:none;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease
}
.landing-stat-link:hover,.landing-stat-link:focus-visible{
  border-color:var(--line2);background:rgba(226,177,94,.07);transform:translateY(-1px)
}
.landing-stat-link strong{font-size:1.1rem}
.landing-stat-link span{line-height:1.35}

.random-panel{
  margin:28px 0 26px;padding:clamp(20px,3vw,28px);
  border:1px solid var(--line);border-radius:var(--radius);
  background:
    linear-gradient(145deg,rgba(226,177,94,.035),transparent 48%),
    var(--panel);
  box-shadow:var(--shadow)
}
.random-panel-head{
  display:flex;align-items:center;justify-content:space-between;gap:28px
}
.random-panel-head .kicker{margin:0 0 5px}
.random-panel-head h2{margin:0;font-size:clamp(1.55rem,3vw,2.15rem)}
.random-panel-head p:not(.kicker){max-width:720px;margin:8px 0 0;color:var(--muted)}
.random-button{flex:0 0 auto;min-width:170px}
.random-result{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.random-result[hidden]{display:none}
.random-result-meta{
  margin:0 0 14px;color:var(--faint);font-size:.76rem;
  font-family:"Courier New",monospace
}

@media(max-width:1050px){
  .landing-stats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:680px){
  .landing-stats{grid-template-columns:repeat(2,1fr)}
  .random-panel-head{display:block}
  .random-button{margin-top:16px;width:100%}
}
