:root{
  --road:#0e0e0f; --chalk:#f3f1e8; --dim:#b9b6ab; --yellow:#b4c93c; --pink:#d6e58f; --blue:#8fa82f;
  color-scheme:dark; box-sizing:border-box;
}
html{scroll-padding-top:3.6rem;scroll-behavior:smooth;}
*,*::before,*::after{box-sizing:border-box;}
body{overflow-x:clip;margin:0;color:var(--chalk);font-family:"Work Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:1.0625rem;line-height:1.6;background-color:var(--road);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .08 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}
a{color:var(--chalk);text-decoration-color:var(--yellow);text-underline-offset:3px;}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;}
.wrap{max-width:46rem;margin:0 auto;padding:0 1.25rem;}
.disp{font-family:"Caveat Brush","Marker Felt","Comic Sans MS",cursive;font-weight:400;letter-spacing:.01em;}
.ch{filter:url(#chalk);}
h1,h2,h3{margin:0;font-weight:400;}
h1{font-size:clamp(4.2rem,24vw,10rem);line-height:.9;transform:rotate(-2deg);transform-origin:left bottom;padding-top:2.2rem;}
h2{font-size:clamp(2.1rem,8vw,3rem);line-height:1.05;margin-bottom:1rem;}
h3{font-size:1.5rem;line-height:1.1;color:var(--yellow);margin-bottom:.4rem;}
.tag{font-size:clamp(1.5rem,6vw,2.2rem);line-height:1.15;margin:1.5rem 0 .5rem;color:var(--yellow);}
p{margin:0 0 1rem;max-width:36rem;}
.lead,.hint{color:var(--dim);}
.hint{font-size:.95rem;}
.btn{display:inline-block;margin:1.25rem .75rem 0 0;padding:.85rem 1.4rem;background:var(--yellow);color:#17171a;font-weight:600;text-decoration:none;border-radius:.2rem;border:2px solid var(--yellow);cursor:pointer;font:inherit;font-weight:600;}
.btn:hover{background:#c9dd5c;}
.btn.alt{background:transparent;color:var(--chalk);border:2px solid var(--chalk);}
.btn.alt:hover{background:rgba(243,241,232,.12);}

/* top nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(14,14,15,.94);backdrop-filter:blur(6px);border-bottom:2px dashed rgba(243,241,232,.3);}
.nav .wrap{display:flex;gap:1.1rem;overflow-x:auto;padding-top:.65rem;padding-bottom:.65rem;white-space:nowrap;scrollbar-width:none;}
.nav a{font-family:"Caveat Brush","Marker Felt",cursive;font-size:1.3rem;line-height:1;text-decoration:none;color:var(--chalk);}
.nav a:hover{color:var(--yellow);}
.nav a.cta{color:var(--yellow);margin-left:auto;}

/* photos */
.slot{margin:1.25rem 0;aspect-ratio:4/3;display:grid;place-items:center;text-align:center;padding:1rem;border:2px dashed rgba(243,241,232,.45);border-radius:.3rem;color:var(--dim);font-size:.95rem;}
.slot[hidden]{display:none;}
.slot.tall{aspect-ratio:4/5;max-width:24rem;}
.slot.filled{padding:0;border:3px solid var(--chalk);display:block;}
.slot img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block;}
.strip{display:flex;gap:.6rem;overflow-x:auto;scroll-snap-type:x mandatory;margin:1rem 0 .3rem;padding-bottom:.4rem;scrollbar-width:thin;scrollbar-color:var(--yellow) transparent;}
.strip figure{flex:0 0 auto;margin:0;scroll-snap-align:start;}
.strip img{display:block;height:min(24rem,62vh);width:auto;max-width:88vw;object-fit:cover;border:3px solid var(--chalk);border-radius:.2rem;cursor:zoom-in;background:#1a1a1c;}
.strip figcaption{font-size:.85rem;color:var(--dim);margin-top:.3rem;max-width:18rem;line-height:1.3;}
.sbtns{display:flex;gap:.5rem;align-items:center;margin-bottom:.4rem;}
.sbtns button{background:transparent;color:var(--chalk);border:2px solid var(--chalk);border-radius:.2rem;font:inherit;font-size:1.1rem;line-height:1;padding:.3rem .7rem;cursor:pointer;}
.sbtns button:hover{border-color:var(--yellow);color:var(--yellow);}
.sbtns span{font-size:.85rem;color:var(--dim);}
.gal{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1rem 0 0;}
.gal img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border:3px solid var(--chalk);border-radius:.2rem;cursor:zoom-in;}
@media (min-width:40rem){.gal{grid-template-columns:repeat(4,1fr);}}
dialog.lb{border:0;padding:0;background:transparent;max-width:96vw;max-height:96vh;}
dialog.lb::backdrop{background:rgba(0,0,0,.88);}
dialog.lb img{display:block;max-width:96vw;max-height:88vh;border:3px solid var(--chalk);}
dialog.lb p{margin:.5rem 0 0;color:var(--chalk);text-align:center;max-width:none;font-size:.95rem;}
dialog.lb button{position:absolute;top:.4rem;right:.4rem;background:var(--road);color:var(--chalk);border:2px solid var(--chalk);font:inherit;padding:.2rem .7rem;cursor:pointer;}

section{padding:3rem 0;}
.dy{height:12px;border-top:3px solid var(--yellow);border-bottom:3px solid var(--yellow);filter:url(#chalk);margin:0 1.25rem;}
.box{position:relative;padding:1.4rem;}
.box::before{content:"";position:absolute;inset:0;border:3px solid var(--chalk);border-radius:.4rem 1.2rem .5rem 1rem;filter:url(#chalk);pointer-events:none;}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1rem;}
.stats.three{grid-template-columns:repeat(3,1fr);}
.stats b{display:block;font-size:clamp(2.2rem,9vw,3.6rem);line-height:1;color:var(--yellow);}
.stats span{color:var(--dim);font-size:.95rem;line-height:1.3;display:block;}
.cats{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem;max-width:36rem;}
.cats li{display:grid;grid-template-columns:9.5rem 1fr 3.5rem;gap:.6rem;align-items:center;font-size:.95rem;}
.cats i{display:block;height:.8rem;background:rgba(243,241,232,.12);border-radius:.4rem;overflow:hidden;}
.cats i u{display:block;height:100%;background:var(--yellow);text-decoration:none;}
.cats em{font-style:normal;text-align:right;color:var(--dim);}
.grid{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.5rem;}
.grid li{border:2px dashed rgba(243,241,232,.45);padding:.5rem .7rem;font-size:.95rem;line-height:1.25;border-radius:.2rem;}
.grid li small{display:block;font-size:.8rem;color:var(--dim);}
.grid li.claimed{border:2px solid var(--blue);color:var(--blue);}
.grid li.claimed small{color:var(--blue);}
.grid li.done{background:var(--yellow);border:2px solid var(--yellow);color:#17171a;font-weight:600;}
.grid li.done small{color:#17171a;}
.key{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:.75rem 0 0;font-size:.9rem;color:var(--dim);}
.key i{display:inline-block;width:.9rem;height:.9rem;margin-right:.4rem;vertical-align:-.1rem;border:2px dashed rgba(243,241,232,.6);}
.key i.c{border:2px solid var(--blue);} .key i.d{border:2px solid var(--yellow);background:var(--yellow);}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:1rem;}
.steps li{padding-left:1rem;border-left:4px solid var(--yellow);max-width:38rem;}
.steps b{display:block;color:var(--yellow);font-family:"Caveat Brush","Marker Felt",cursive;font-weight:400;font-size:1.5rem;line-height:1.1;}
.reports{display:grid;gap:1.25rem;margin-top:1rem;}
.rep{position:relative;padding:1.1rem;border:2px dashed rgba(243,241,232,.45);border-radius:.3rem;}
.rep img{width:100%;max-height:22rem;object-fit:cover;border-radius:.2rem;margin-bottom:.8rem;}
.rep h3{margin:0;}
.rep .meta{color:var(--pink);font-size:.95rem;}
.road{position:relative;margin:1.5rem 0 0;padding-left:2.4rem;}
.road::before{content:"";position:absolute;left:.7rem;top:.4rem;bottom:.4rem;border-left:4px dashed rgba(243,241,232,.7);}
.stop{position:relative;margin-bottom:2.2rem;}
.stop::before{content:"";position:absolute;left:-2.15rem;top:.55rem;width:.9rem;height:.9rem;border-radius:50%;background:var(--road);border:3px solid var(--yellow);}
.stop time{display:block;color:var(--pink);font-size:1.35rem;line-height:1.1;font-family:"Caveat Brush","Marker Felt",cursive;}
.stop p{margin:.25rem 0 0;}
.dates{list-style:none;margin:0;padding:0;max-width:38rem;}
.dates li{display:grid;grid-template-columns:8rem 1fr;gap:.75rem;padding:.7rem 0;border-top:1px dashed rgba(243,241,232,.35);}
.dates li:last-child{border-bottom:1px dashed rgba(243,241,232,.35);}
.dates strong{color:var(--pink);font-weight:600;}
ul.plain{max-width:38rem;padding-left:1.25rem;margin:.25rem 0 0;}
ul.plain li{margin-bottom:.5rem;}
details{max-width:38rem;border-top:1px dashed rgba(243,241,232,.35);padding:.8rem 0;}
details:last-of-type{border-bottom:1px dashed rgba(243,241,232,.35);}
summary{cursor:pointer;font-weight:600;}
details p{margin:.6rem 0 0;color:var(--dim);}
blockquote{margin:1.2rem 0;padding:.2rem 0 .2rem 1rem;border-left:4px solid var(--yellow);max-width:36rem;}
blockquote p{font-size:1.2rem;margin:0 0 .3rem;}
blockquote cite{color:var(--dim);font-size:.9rem;font-style:normal;}

/* press wall */
.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0;}
.filters button{background:transparent;color:var(--chalk);border:2px solid rgba(243,241,232,.5);border-radius:2rem;font:inherit;font-size:.9rem;padding:.3rem .9rem;cursor:pointer;}
.filters button[aria-pressed="true"]{background:var(--yellow);border-color:var(--yellow);color:#17171a;font-weight:600;}
.wall{list-style:none;margin:0;padding:0;max-width:40rem;}
.wall li{padding:.75rem 0;border-top:1px dashed rgba(243,241,232,.35);display:grid;grid-template-columns:5.2rem 1fr;gap:.8rem;}
.wall li:last-child{border-bottom:1px dashed rgba(243,241,232,.35);}
.wall time{color:var(--pink);font-size:.9rem;line-height:1.4;}
.wall b{display:block;font-weight:600;font-size:.95rem;color:var(--dim);}
.wall a{line-height:1.35;}
.kit{display:grid;gap:.6rem;max-width:40rem;margin-top:1rem;}
.kit a.row{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 1rem;border:2px solid rgba(243,241,232,.45);border-radius:.3rem;text-decoration:none;}
.kit a.row:hover{border-color:var(--yellow);}
.kit a.row small{color:var(--dim);}
.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.7rem;margin-top:1rem;}
.photos figure{margin:0;}
.photos img{width:100%;aspect-ratio:4/5;object-fit:cover;border:3px solid var(--chalk);display:block;}
.photos figcaption{font-size:.8rem;color:var(--dim);margin:.25rem 0 .1rem;}
.photos a{font-size:.85rem;}
.bio{max-width:38rem;border-left:4px solid var(--yellow);padding-left:1rem;margin:.6rem 0 1rem;}
.bio p{max-width:none;}
table.facts{border-collapse:collapse;max-width:38rem;width:100%;}
table.facts th,table.facts td{text-align:left;vertical-align:top;padding:.6rem .5rem;border-top:1px dashed rgba(243,241,232,.35);}
table.facts th{color:var(--pink);font-weight:600;width:10rem;}
table.facts tr:last-child th,table.facts tr:last-child td{border-bottom:1px dashed rgba(243,241,232,.35);}
.copy{font-size:.85rem;margin-left:.6rem;padding:.15rem .6rem;background:transparent;border:2px solid rgba(243,241,232,.5);color:var(--chalk);cursor:pointer;border-radius:.2rem;font-family:inherit;}

footer{padding:2rem 0 3.5rem;color:var(--dim);font-size:.95rem;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
@media (max-width:30rem){.dates li{grid-template-columns:1fr;gap:.1rem;}.cats li{grid-template-columns:7rem 1fr 3rem;}.wall li{grid-template-columns:1fr;gap:.1rem;}.stats.three{grid-template-columns:1fr 1fr;}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
header{overflow-x:clip;}

.pull{padding:2.5rem 0 1rem;}
.pull blockquote{border-left:0;padding:0;margin:0;max-width:none;}
.pull blockquote p{font-family:'Caveat Brush','Marker Felt',cursive;font-size:clamp(1.7rem,6.4vw,2.7rem);line-height:1.15;color:var(--chalk);filter:url(#chalk);max-width:34rem;}
.pull blockquote p b{color:var(--yellow);font-weight:400;}
.pull cite{display:block;margin-top:.8rem;color:var(--dim);}
