:root{--green:#153c34;--deep:#0a2c25;--cream:#faf3df;--orange:#ff9a40;--muted:#bfcfc5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--green);color:var(--cream);font:17px/1.65 system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:var(--orange)}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}img{max-width:100%;display:block}.wrap{width:min(1200px,90%);margin:auto}.site-header{padding:26px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff20;gap:25px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-size:15px;font-weight:800;letter-spacing:.14em}.brand img{border-radius:50%}nav{display:flex;gap:28px;font-size:14px}nav a{text-decoration:none}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:60px;padding:70px 0 80px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:750;color:var(--orange)}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(56px,7.6vw,104px)/1.03 Georgia,serif;letter-spacing:-.04em;margin-bottom:24px}h1 em{font-weight:400;color:#f5ba7b}h2{font:500 clamp(32px,4vw,48px)/1.13 Georgia,serif;letter-spacing:-.025em;margin-bottom:20px}.lead{font-size:clamp(19px,2vw,23px);color:#dbe5dc;line-height:1.5}.button{display:inline-flex;align-items:center;gap:30px;background:var(--orange);color:var(--deep);padding:13px 21px;border-radius:3px;font-size:14px;font-weight:750;text-decoration:none;margin-top:10px}.button:hover{background:#ffbc80;color:var(--deep)}.hero-art{position:relative;padding:15px 30px 10px;border-left:1px solid #ffffff20}.hero-art img{width:330px;margin:auto;border-radius:50%}.hero-art span{display:block;text-align:center;font-size:10px;letter-spacing:.25em;color:var(--muted);margin-top:24px}.library{background:#f7f3e9;color:var(--green);padding:64px 0 75px}.library .eyebrow{color:#8b471a}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px}.section-heading p:last-child{font-size:15px;color:#5c6a60}.section-heading h2{margin-bottom:0}.filter-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px 0 24px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid #b4c0b7;color:var(--green);background:transparent;padding:9px 16px;font:600 13px system-ui;border-radius:30px;cursor:pointer}.filters button.active{background:var(--green);border-color:var(--green);color:var(--cream)}#count{font-size:12px;color:#5c6a60}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{background:#fffdf8;border:1px solid #dfdfd2;border-radius:5px;overflow:hidden;display:flex;flex-direction:column}.thumbnail{position:relative;display:block;overflow:hidden;background:#0d342d}.thumbnail img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:45px;height:45px;background:#133c34dc;border:1px solid #ffffff88;border-radius:50%;color:var(--cream);font-size:16px;padding-left:3px;transition:background .2s}.thumbnail:hover .play{background:var(--orange);color:var(--deep)}.duration{position:absolute;bottom:9px;right:9px;background:#102820e8;color:white;font-size:11px;font-weight:650;padding:2px 6px;border-radius:3px}.card-body{padding:23px;display:flex;flex-direction:column;flex:1}.card .eyebrow{font-size:9px;letter-spacing:.12em}.card h3{font:600 25px/1.2 Georgia,serif;margin:12px 0}.card h3 a{text-decoration:none}.card p{font-size:14px;color:#546358;margin-bottom:24px}.card-links{display:flex;justify-content:space-between;gap:12px;margin-top:auto;font-size:12px;font-weight:700}.about{padding:70px 0 80px}.about-columns{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.about-columns p{color:#d4dfd5;font-size:16px}.text-link{font-size:14px;font-weight:650}.about .text-link{color:#f5ba7b}footer{border-top:1px solid #ffffff25;padding:25px 0 35px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.skip{position:absolute;left:10px;top:-100px;background:var(--cream);color:var(--green);padding:10px;z-index:10}.skip:focus{top:10px}[hidden]{display:none!important}.detail{padding:40px 0 70px}.back{display:inline-block;margin-bottom:40px;font-size:13px}.detail h1{font-size:clamp(40px,6vw,76px);max-width:900px}.detail-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:45px;align-items:start;margin-top:35px}.detail-thumb{border-radius:5px}.detail aside{border-top:1px solid #ffffff35;padding-top:20px}.detail aside p{font-size:14px;color:#d4dfd5}dl{font-size:14px}dt{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-top:16px}dd{margin:3px 0 0}.route-notes{max-width:760px;margin-top:50px}.route-notes h2{font-size:32px}.route-notes p{color:#d4dfd5}.map-note{border:1px solid #ffffff30;padding:25px;margin-top:35px}.map-note h2{font-size:26px}.map-note p{font-size:14px}.map-note a{color:#f5ba7b}@media(max-width:800px){.hero{gap:20px;padding:50px 0}.hero-art{padding:15px}.grid{grid-template-columns:1fr 1fr}.about-columns{gap:30px}.detail-layout{grid-template-columns:1fr}.detail aside{max-width:600px}}@media(max-width:560px){body{font-size:16px}.site-header{align-items:flex-start;gap:15px;flex-direction:column;padding:18px 0}nav{width:100%;justify-content:space-between;gap:15px;font-size:12px}.brand{font-size:13px}.brand img{width:38px;height:38px}.hero{grid-template-columns:1fr;padding:42px 0 50px}.hero-art{display:none}h1{font-size:64px}.hero .eyebrow{font-size:9px}.library{padding:40px 0}.section-heading{display:block}.section-heading p:last-child{margin:18px 0 0}.filter-row{align-items:flex-start;flex-direction:column;gap:12px}.filters button{padding:8px 13px;font-size:12px}.grid{grid-template-columns:1fr}.card-body{padding:22px}.card h3{font-size:28px}.card-links{font-size:13px}.about{padding:45px 0}.about-columns{grid-template-columns:1fr;gap:0}footer{flex-direction:column;gap:8px}.detail{padding-top:25px}.detail h1{font-size:46px}.detail .lead{font-size:19px}.back{margin-bottom:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
