@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,500;0,600;0,700;0,800;1,700&family=DM+Sans:wght@400;500;600;700&display=swap');

:root { --ink:#171915; --paper:#eeeadd; --cream:#f7f3e8; --orange:#ee5f24; --sage:#9aa08d; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"DM Sans",sans-serif; }
a { color:inherit; text-decoration:none; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-header { height:92px; padding:0 4vw; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; position:absolute; z-index:5; width:100%; color:#fff; border-bottom:1px solid #ffffff44; }
.brand { display:flex; align-items:center; gap:16px; width:max-content; }
.brand-mark,.footer-brand { font:800 40px/1 "Barlow Condensed",sans-serif; letter-spacing:-2px; }
.brand-mark span,.footer-brand span { color:var(--orange); }
.brand-kicker { border-left:1px solid #ffffff66; padding-left:14px; font:600 9px/1.35 "DM Sans"; letter-spacing:1.4px; text-transform:uppercase; }
nav { display:flex; gap:34px; font:600 11px/1 "DM Sans"; letter-spacing:1.2px; text-transform:uppercase; }
nav a,.footer-links a { transition:color .2s; } nav a:hover,.footer-links a:hover { color:var(--orange); }
.circle-link { justify-self:end; display:grid; place-items:center; width:52px; height:52px; border:1px solid #fff; border-radius:50%; font-size:10px; font-weight:700; letter-spacing:1px; transition:.25s; }
.circle-link:hover { background:var(--orange); border-color:var(--orange); transform:rotate(-8deg); }
.hero { min-height:92vh; height:850px; position:relative; display:flex; align-items:center; padding:100px 8vw 40px; color:#fff; background:url('../images/hero-zoat.png') center/cover no-repeat; }
.hero-scrim { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,10,8,.72) 0%,rgba(8,10,8,.28) 48%,rgba(8,10,8,.04)),linear-gradient(0deg,rgba(8,10,8,.46),transparent 40%); }
.hero-content { position:relative; z-index:1; max-width:800px; }
.eyebrow,.section-label { font:700 10px/1 "DM Sans"; letter-spacing:2px; text-transform:uppercase; }
.eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:30px; color:#eeeadd; }
.eyebrow span { color:var(--orange); }
.hero h1,.big-copy,.section-head h2,.route-intro h2,.field-copy h2,.newsletter h2 { margin:0; font-family:"Barlow Condensed",sans-serif; text-transform:uppercase; letter-spacing:-3px; }
.hero h1 { font-size:clamp(78px,10.5vw,154px); line-height:.77; max-width:850px; }
h1 em,h2 em,.big-copy em { color:var(--orange); font-style:italic; }
.hero-content>p { max-width:470px; margin:38px 0 27px; font-size:15px; line-height:1.7; color:#f4f1e8; }
.text-link { display:inline-flex; gap:28px; align-items:center; padding-bottom:7px; border-bottom:1px solid currentColor; font-size:10px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; }
.text-link span { font-size:16px; transition:transform .2s; }.text-link:hover span { transform:translate(4px,-4px); }.light { color:#fff; }
.hero-index { position:absolute; z-index:1; right:4vw; bottom:43px; display:flex; flex-direction:column; align-items:flex-end; font:600 10px/1.6 monospace; letter-spacing:1px; }
.scroll-note { position:absolute; z-index:1; bottom:41px; left:4vw; display:flex; gap:12px; align-items:center; font-size:8px; letter-spacing:1.8px; }.scroll-note i { width:70px; height:1px; background:#fff; display:block; }
.manifesto { padding:120px 8vw; display:grid; grid-template-columns:160px 1fr 330px; gap:5vw; align-items:start; border-bottom:1px solid #2223; }
.section-label { color:#595d52; padding-top:10px; }
.big-copy { font-size:clamp(52px,6.5vw,96px); line-height:.88; }
.manifesto-side { padding-top:40px; }.manifesto-side p,.field-copy>p { color:#54574e; font-size:14px; line-height:1.8; margin:0 0 28px; }
.stories { padding:110px 4vw 130px; background:var(--cream); }
.section-head { display:flex; justify-content:space-between; align-items:end; margin:0 4vw 55px; }.section-head h2 { font-size:clamp(54px,6vw,88px); line-height:.9; margin-top:14px; }
.story-grid { display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:24px; align-items:start; }
.story-card:nth-child(2) { margin-top:80px; }.story-card:nth-child(3) { margin-top:30px; }
.story-image { height:430px; display:block; position:relative; background-size:cover; background-position:center; overflow:hidden; filter:saturate(.8); transition:.4s; }
.story-1 .story-image { height:570px; }.story-image:hover { filter:saturate(1); transform:translateY(-4px); }
.story-image span { position:absolute; top:15px; right:15px; background:var(--orange); color:#fff; width:35px; height:35px; display:grid; place-items:center; border-radius:50%; font:700 10px monospace; }
.story-meta { display:flex; gap:12px; margin-top:20px; font-size:9px; letter-spacing:1.3px; }.story-meta b { color:var(--orange); }.story-meta span { color:#777a70; }
.story-card h3 { font:700 clamp(30px,3vw,45px)/.95 "Barlow Condensed",sans-serif; text-transform:uppercase; margin:13px 0 12px; letter-spacing:-1px; }.story-card p { color:#65685e; font-size:12px; line-height:1.7; max-width:380px; margin:0; }
.routes { display:grid; grid-template-columns:.9fr 1.1fr; background:var(--ink); color:var(--paper); padding:120px 8vw; gap:8vw; }
.inverse { color:#bbbbae; }.route-intro h2 { font-size:clamp(66px,7vw,106px); line-height:.82; margin:26px 0 30px; }.route-intro>p { max-width:390px; color:#aaa99f; font-size:13px; line-height:1.8; }.button { display:inline-flex; align-items:center; gap:40px; margin-top:28px; padding:17px 22px; border:1px solid #eeeadd66; font-size:10px; font-weight:700; letter-spacing:1.3px; text-transform:uppercase; transition:.2s; }.button:hover { background:var(--orange); border-color:var(--orange); }
.route-list { border-top:1px solid #eeeadd44; }.route-row { min-height:135px; display:grid; grid-template-columns:42px 1fr auto 20px; gap:25px; align-items:center; border-bottom:1px solid #eeeadd44; transition:.25s; }.route-row:hover { padding-left:10px; color:var(--orange); }.route-number { font:600 10px monospace; color:var(--orange); }.route-name { font:600 32px/1 "Barlow Condensed"; text-transform:uppercase; }.route-name small,.route-stats small { display:block; color:#939589; font:600 8px/1.5 "DM Sans"; letter-spacing:1.5px; margin-bottom:8px; }.route-stats { text-align:right; font:600 15px "Barlow Condensed"; }.route-row>span:last-child { font-size:18px; }
.field-guide { display:grid; grid-template-columns:1fr 1fr; min-height:760px; background:#d8d3c3; }
.portrait-panel { background:linear-gradient(145deg,transparent 45%,#ee5f24 45% 48%,transparent 48%),url('../images/hero-zoat.png') 18% center/cover; min-height:680px; position:relative; filter:grayscale(.25); }.portrait-panel span { position:absolute; left:30px; bottom:22px; color:#fff; font:800 100px/.8 "Barlow Condensed"; letter-spacing:-6px; opacity:.8; }
.field-copy { padding:120px 9vw; align-self:center; }.field-copy h2 { font-size:clamp(58px,6vw,90px); line-height:.86; margin:26px 0 32px; }.field-copy .lede { color:var(--ink); font:500 22px/1.45 "Barlow Condensed"; text-transform:uppercase; }.field-links { display:flex; gap:35px; flex-wrap:wrap; margin-top:50px; }
.newsletter { text-align:center; padding:115px 20px 125px; color:#fff; background:var(--orange); }.newsletter .section-label { color:#492012; }.newsletter h2 { font-size:clamp(70px,8vw,118px); line-height:.82; margin:25px 0; }.newsletter h2 em { color:var(--ink); }.newsletter>p { max-width:530px; margin:0 auto 40px; font-size:13px; line-height:1.7; }.newsletter form { max-width:620px; display:flex; margin:auto; border-bottom:2px solid #fff; }.newsletter input { flex:1; background:transparent; border:0; outline:0; padding:17px 5px; color:#fff; font:700 11px "DM Sans"; letter-spacing:1.4px; }.newsletter input::placeholder { color:#fff; }.newsletter button { background:transparent; border:0; color:#fff; font:700 10px "DM Sans"; letter-spacing:1.3px; cursor:pointer; }
footer { padding:75px 5vw 35px; background:#0e100d; color:#eeeadd; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:35px; }.footer-brand { font-size:72px; display:flex; align-items:end; }.footer-brand small { font:600 9px "DM Sans"; letter-spacing:2px; margin:0 0 7px 12px; }.footer-links { display:flex; gap:27px; font-size:9px; letter-spacing:1.4px; text-transform:uppercase; }.socials { justify-self:end; display:flex; gap:8px; }.socials a { display:grid; place-items:center; border:1px solid #eeeadd55; width:38px; height:38px; border-radius:50%; font-size:8px; font-weight:700; }.socials a:hover { background:var(--orange); border-color:var(--orange); } footer>p { grid-column:1/-1; border-top:1px solid #eeeadd22; padding-top:22px; margin:10px 0 0; color:#7e8077; font-size:8px; letter-spacing:1px; text-transform:uppercase; }
@media (max-width:900px) { .site-header { grid-template-columns:1fr auto; } nav { display:none; }.manifesto { grid-template-columns:1fr; }.manifesto-side { padding-top:0; max-width:560px; }.story-grid { grid-template-columns:1fr 1fr; }.story-card:nth-child(n) { margin-top:0; }.story-card:nth-child(3) { grid-column:1/-1; width:55%; }.routes { grid-template-columns:1fr; }.field-copy { padding:80px 7vw; } footer { grid-template-columns:1fr; } .socials { justify-self:start; } }
@media (max-width:640px) { .site-header { height:76px; padding:0 20px; }.brand-mark { font-size:34px; }.brand-kicker { display:none; }.hero { height:730px; min-height:100vh; padding:100px 24px 50px; background-position:38% center; }.hero h1 { font-size:76px; }.hero-index { display:none; }.scroll-note { left:24px; }.manifesto,.routes { padding:85px 24px; }.big-copy { font-size:57px; }.stories { padding:85px 20px; }.section-head { margin:0 0 38px; align-items:start; flex-direction:column; gap:24px; }.story-grid { grid-template-columns:1fr; }.story-card:nth-child(3) { grid-column:auto; width:auto; }.story-image,.story-1 .story-image { height:410px; }.field-guide { grid-template-columns:1fr; }.portrait-panel { min-height:520px; }.field-copy { padding:80px 24px; }.route-row { grid-template-columns:28px 1fr 65px 12px; gap:10px; min-height:120px; }.route-name { font-size:24px; }.newsletter { padding:90px 20px; }.newsletter form { flex-direction:column; align-items:stretch; }.newsletter button { padding:16px 0; text-align:left; } footer { padding:60px 24px 30px; }.footer-links { flex-wrap:wrap; }.footer-brand { font-size:60px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

/* Editorial hubs and post templates */
.interior-header { position:absolute; top:0; }
.hub-page { background:var(--cream); }
.hub-hero { min-height:690px; padding:180px 8vw 90px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background-size:cover; background-position:center; position:relative; }
.hub-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,12,9,.76),rgba(10,12,9,.22)),linear-gradient(0deg,rgba(10,12,9,.55),transparent 55%); }
.hub-hero>* { position:relative; z-index:1; }
.stories-hub { background-image:url('../images/hero-zoat.png'); }
.routes-hub { background-image:url('https://images.unsplash.com/photo-1500534623283-312aade485b7?auto=format&fit=crop&w=2000&q=88'); }
.field-hub { background-image:url('https://images.unsplash.com/photo-1478131143081-80f7f84ca84d?auto=format&fit=crop&w=2000&q=88'); }
.hub-hero h1,.article-hero h1,.about-hero h1 { margin:26px 0 28px; font:800 clamp(76px,10vw,148px)/.78 "Barlow Condensed",sans-serif; letter-spacing:-4px; text-transform:uppercase; max-width:1000px; }
.hub-hero h1 em,.about-hero h1 em { color:var(--orange); font-style:italic; }
.hub-hero>p { max-width:570px; margin:0; color:#ece8dc; font-size:15px; line-height:1.7; }
.hub-intro { padding:70px 8vw; display:grid; grid-template-columns:1fr 1.6fr; gap:8vw; border-bottom:1px solid #2223; align-items:start; }
.hub-intro span { font:700 9px "DM Sans"; letter-spacing:1.5px; color:var(--orange); }
.hub-intro p { margin:0; font:500 clamp(24px,2.4vw,36px)/1.3 "Barlow Condensed"; text-transform:uppercase; }
.hub-grid { display:grid; grid-template-columns:1fr 1fr; gap:7vw 3vw; padding:100px 8vw 130px; }
.hub-card:nth-child(even) { margin-top:100px; }
.hub-card-image { display:block; height:510px; background-size:cover; background-position:center; position:relative; transition:.35s; }
.hub-card-image:hover { transform:translateY(-6px); filter:saturate(1.08); }
.hub-card-image>span { position:absolute; right:18px; top:18px; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--orange); color:#fff; font:700 10px monospace; }
.hub-card h2 { margin:14px 0 12px; font:700 clamp(42px,4vw,64px)/.9 "Barlow Condensed"; letter-spacing:-1.5px; text-transform:uppercase; max-width:620px; }
.hub-card>p { max-width:540px; color:#62655c; font-size:13px; line-height:1.75; margin:0 0 25px; }
.route-planner { background:var(--ink); color:var(--paper); display:grid; grid-template-columns:repeat(3,1fr); padding:40px 8vw; gap:2vw; }
.route-planner div { padding:10px 30px 10px 0; border-right:1px solid #eeeadd33; }.route-planner div:last-child { border:0; }
.route-planner small { display:block; color:var(--orange); font-size:8px; letter-spacing:1.5px; margin-bottom:9px; }.route-planner b { font:600 24px "Barlow Condensed"; text-transform:uppercase; }
.guide-sections { display:grid; grid-template-columns:repeat(4,1fr); background:var(--ink); color:var(--paper); }
.guide-sections>a { min-height:340px; padding:55px 32px; border-right:1px solid #eeeadd33; display:flex; flex-direction:column; transition:.25s; }.guide-sections>a:hover { background:var(--orange); color:#fff; }.guide-sections>a>span { color:var(--orange); font:700 10px monospace; }.guide-sections>a:hover>span { color:var(--ink); }.guide-sections h2 { font:700 37px/1 "Barlow Condensed"; text-transform:uppercase; margin:48px 0 20px; }.guide-sections p { color:#aaa99f; font-size:12px; line-height:1.7; margin:0; }.guide-sections>a:hover p { color:#fff; }.guide-sections small { margin-top:auto; font-size:8px; letter-spacing:1.3px; }
.latest-guides { padding-top:100px; }.latest-guides .hub-grid { padding-top:20px; }
.article-page { background:var(--cream); }
.article-hero { min-height:720px; padding:190px 8vw 80px; color:#fff; background-size:cover; background-position:center; display:flex; align-items:flex-end; }
.article-hero>div { max-width:1000px; }.article-hero .eyebrow { color:var(--orange); }.article-hero h1 { font-size:clamp(68px,8.5vw,126px); max-width:1000px; }.article-hero p { max-width:650px; font-size:16px; line-height:1.7; color:#f1ede4; }
.article-meta { min-height:85px; padding:0 8vw; display:flex; gap:45px; align-items:center; border-bottom:1px solid #2223; font-size:9px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; }
.article-meta span:not(:first-child)::before { content:"•"; color:var(--orange); margin-right:45px; }
.route-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); padding:0 8vw; background:var(--orange); color:#fff; }.route-stat-grid div { padding:34px 28px 32px 0; border-right:1px solid #ffffff55; }.route-stat-grid div:not(:first-child) { padding-left:28px; }.route-stat-grid small { display:block; font-size:8px; letter-spacing:1.4px; text-transform:uppercase; }.route-stat-grid b { display:block; font:700 35px "Barlow Condensed"; text-transform:uppercase; margin-top:5px; }
.article-body { max-width:860px; margin:auto; padding:100px 40px 130px; }.back-link { color:var(--orange); font-size:9px; font-weight:700; letter-spacing:1.3px; text-transform:uppercase; }.article-intro { font:500 clamp(28px,3vw,42px)/1.35 "Barlow Condensed"; text-transform:uppercase; color:var(--ink); margin:55px 0 80px; }.article-body section { display:grid; grid-template-columns:240px 1fr; gap:55px; border-top:1px solid #2223; padding:45px 0; }.article-body section h2 { font:700 35px/1 "Barlow Condensed"; text-transform:uppercase; margin:0; }.article-body section p,.about-story>div>p:not(.article-intro) { font-size:15px; line-height:1.9; color:#555950; margin:0; }.article-end { margin-top:60px; padding-top:30px; border-top:3px solid var(--ink); display:flex; justify-content:space-between; align-items:center; }.article-end>span { font-size:8px; letter-spacing:1.5px; }
.about-hero { min-height:720px; padding:170px 8vw 70px; color:#fff; display:flex; align-items:flex-end; background:linear-gradient(90deg,rgba(8,10,8,.72),rgba(8,10,8,.12)),url('../images/hero-zoat.png') center/cover; }
.about-story { display:grid; grid-template-columns:240px minmax(0,760px); justify-content:center; gap:80px; padding:120px 8vw; }.about-story aside { color:var(--orange); font-size:9px; line-height:1.6; letter-spacing:1.4px; font-weight:700; }.about-story .article-intro { margin:0 0 55px; }.about-story>div>p { margin-bottom:28px!important; }.about-story h2 { margin:70px 0 0; color:var(--orange); font:italic 700 66px "Barlow Condensed"; text-transform:uppercase; }
.values { display:grid; grid-template-columns:repeat(3,1fr); background:var(--ink); color:var(--paper); padding:90px 8vw; gap:4vw; }.values span { color:var(--orange); font:700 10px monospace; }.values h3 { margin:30px 0 18px; font:700 32px "Barlow Condensed"; text-transform:uppercase; }.values p { color:#aaa99f; font-size:12px; line-height:1.7; }
@media(max-width:900px){.hub-grid{gap:40px}.hub-card-image{height:420px}.guide-sections{grid-template-columns:1fr 1fr}.article-body section{grid-template-columns:1fr;gap:20px}.about-story{grid-template-columns:1fr;gap:35px}}
@media(max-width:640px){.hub-hero{min-height:620px;padding:150px 24px 60px}.hub-hero h1,.about-hero h1{font-size:70px}.hub-intro{padding:55px 24px;grid-template-columns:1fr;gap:25px}.hub-grid{grid-template-columns:1fr;padding:70px 20px 90px}.hub-card:nth-child(even){margin-top:20px}.hub-card-image{height:380px}.route-planner{grid-template-columns:1fr;padding:30px 24px}.route-planner div{border-right:0;border-bottom:1px solid #eeeadd33}.guide-sections{grid-template-columns:1fr}.guide-sections>a{min-height:250px}.article-hero{min-height:650px;padding:150px 24px 60px}.article-hero h1{font-size:65px}.article-meta{padding:20px 24px;gap:10px;flex-wrap:wrap}.article-meta span:not(:first-child)::before{margin-right:10px}.route-stat-grid{grid-template-columns:1fr 1fr;padding:0 24px}.article-body{padding:70px 24px 90px}.article-body section{padding:35px 0}.article-end{align-items:flex-start;gap:20px}.about-hero{min-height:650px;padding:150px 24px 60px}.about-story{padding:80px 24px}.values{grid-template-columns:1fr;padding:70px 24px}}

.article-body section>div>p { font-size:15px; line-height:1.9; color:#555950; margin:0; }
blockquote { margin:38px 0 0; padding:32px; background:#ded8c8; border-left:4px solid var(--orange); }
blockquote p { font:italic 600 29px/1.25 "Barlow Condensed"!important; color:var(--ink)!important; text-transform:uppercase; }
blockquote cite { display:block; margin-top:20px; color:var(--orange); font:700 9px "DM Sans"; letter-spacing:1.3px; text-transform:uppercase; }
blockquote cite small { display:block; color:#676a61; margin-top:5px; font-weight:500; }
.field-checklist ul { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:10px 25px; }
.field-checklist li { padding:13px 0; border-bottom:1px solid #2223; color:#4f534a; font-size:13px; }.field-checklist li span { color:var(--orange); margin-right:12px; font-weight:800; }
.gpx-panel { display:grid; grid-template-columns:1.15fr .85fr; background:#22261f; color:#eeeadd; min-height:580px; }
.gpx-panel>div:last-child { padding:90px 7vw; align-self:center; }.gpx-panel h2,.video-module h2,.gallery-title h2,.category-heading h2 { font:700 clamp(48px,5vw,76px)/.9 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-2px; margin:24px 0; }.gpx-panel p,.video-module p { color:#b5b6ac; font-size:13px; line-height:1.8; }.gpx-meta { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; }.gpx-meta span { border:1px solid #eeeadd44; padding:8px 10px; font-size:8px; letter-spacing:1px; text-transform:uppercase; }.gpx-button { color:#fff; }
.map-preview { min-height:580px; position:relative; overflow:hidden; background-color:#d7d0bc; background-image:linear-gradient(#8f927f33 1px,transparent 1px),linear-gradient(90deg,#8f927f33 1px,transparent 1px),radial-gradient(circle at 30% 30%,#9fa28a 0 2%,transparent 2.2%),radial-gradient(circle at 70% 60%,#9fa28a 0 3%,transparent 3.2%); background-size:44px 44px,44px 44px,100% 100%,100% 100%; }.map-preview>span { position:absolute; top:25px; left:25px; color:#3f433b; font:700 8px "DM Sans"; letter-spacing:1.5px; }.route-line { position:absolute; width:65%; height:45%; left:16%; top:27%; border:7px solid var(--orange); border-left-color:transparent; border-radius:50% 42% 60% 35%; transform:rotate(-15deg); filter:drop-shadow(0 3px 0 #fff); }.route-line::before,.route-line::after { content:""; position:absolute; width:15px; height:15px; border-radius:50%; background:var(--orange); border:4px solid #fff; }.route-line::before { left:1%; top:65%; }.route-line::after { right:1%; top:15%; }
.post-gallery { padding:110px 4vw 130px; background:#d8d3c3; }.gallery-title { margin:0 4vw 55px; }.gallery-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:24px; }.gallery-photo { margin:0; }.gallery-photo img { width:100%; height:560px; object-fit:cover; display:block; }.gallery-photo-2 img,.gallery-photo-3 img { height:390px; }.gallery-photo-3 { grid-column:1/-1; width:60%; justify-self:end; }.gallery-photo figcaption { padding-top:12px; color:#5f6259; font-size:10px; }.gallery-photo figcaption span { color:var(--orange); font:700 9px monospace; margin-right:12px; }
.video-module { display:grid; grid-template-columns:1.2fr .8fr; background:var(--ink); color:var(--paper); }.video-module>div:last-child { padding:100px 7vw; align-self:center; }.video-poster { min-height:620px; background-size:cover; background-position:center; display:grid; place-items:center; position:relative; }.video-poster small { position:absolute; bottom:25px; left:25px; letter-spacing:1.5px; font-size:8px; }.play-button { display:grid; place-items:center; width:92px; height:92px; border-radius:50%; background:var(--orange); color:#fff; font-size:24px; padding-left:5px; }.template-note { margin-top:38px; padding-top:25px; border-top:1px solid #eeeadd33; display:grid; gap:8px; }.template-note b { color:var(--orange); font-size:8px; letter-spacing:1.4px; }.template-note span { color:#9fa197; font-size:11px; line-height:1.6; }
.article-close { padding-top:85px; }.author-note { background:#ded8c8; padding:45px; }.author-note>span { color:var(--orange); font-size:8px; font-weight:700; letter-spacing:1.4px; }.author-note h2 { font:700 38px "Barlow Condensed"; text-transform:uppercase; margin:15px 0 7px; }.author-note p { color:#62655c; font-size:13px; margin:0; }
.guide-category { scroll-margin-top:20px; border-top:1px solid #2223; }.category-heading { display:grid; grid-template-columns:120px 1fr 1fr; gap:3vw; align-items:center; padding:80px 8vw 0; }.category-heading>span { color:var(--orange); font:700 10px monospace; text-transform:uppercase; }.category-heading h2 { margin:0; }.category-heading p { color:#65685e; font-size:13px; line-height:1.7; max-width:440px; }.guide-category .hub-grid { padding-top:55px; }
@media(max-width:800px){.gpx-panel,.video-module{grid-template-columns:1fr}.map-preview,.video-poster{min-height:480px}.gallery-grid{grid-template-columns:1fr}.gallery-photo-3{grid-column:auto;width:100%}.category-heading{grid-template-columns:1fr;padding-top:60px}.category-heading h2{margin:5px 0}.field-checklist ul{grid-template-columns:1fr}}
@media(max-width:640px){.gpx-panel>div:last-child,.video-module>div:last-child{padding:70px 24px}.post-gallery{padding:80px 20px}.gallery-title{margin:0 0 35px}.gallery-photo img,.gallery-photo-2 img,.gallery-photo-3 img{height:390px}.video-poster,.map-preview{min-height:400px}.category-heading{padding:55px 24px 0}}

.reader-tools { padding:48px 8vw; display:grid; grid-template-columns:1fr auto; gap:5vw; background:#ded8c8; border-bottom:1px solid #2223; }
.reader-tools>div { display:grid; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:0 28px; }.reader-tools>div>span,.reader-tools aside>span { grid-column:1/-1; color:var(--orange); font-size:8px; font-weight:700; letter-spacing:1.5px; margin-bottom:12px; }.reader-tools>div>a { padding:11px 0; border-bottom:1px solid #2223; font:600 13px "Barlow Condensed"; text-transform:uppercase; }.reader-tools>div>a b { color:var(--orange); font:700 8px monospace; margin-right:10px; }.reader-tools aside { display:flex; gap:9px; align-items:flex-start; flex-wrap:wrap; max-width:180px; }.reader-tools aside>a { border:1px solid #2225; padding:9px 11px; font-size:8px; font-weight:700; letter-spacing:1px; }
.article-chapter { scroll-margin-top:30px; }.inline-photo { margin:35px -8vw 80px; }.inline-photo img { display:block; width:100%; height:560px; object-fit:cover; }.inline-photo figcaption { display:flex; gap:20px; padding-top:13px; color:#676a61; font-size:10px; line-height:1.5; }.inline-photo figcaption span { color:var(--orange); font-size:8px; font-weight:700; letter-spacing:1.2px; flex:none; }
.resource-panel { padding:100px 8vw; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; background:#2c3129; color:var(--paper); scroll-margin-top:20px; }.resource-panel h2 { font:700 clamp(52px,5vw,78px)/.88 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-2px; margin:25px 0; }.resource-panel>div>p { color:#afb1a7; font-size:13px; line-height:1.8; }.resource-links { border-top:1px solid #eeeadd44; }.resource-links>a { display:grid; grid-template-columns:30px 1fr; gap:7px 15px; padding:24px 0; border-bottom:1px solid #eeeadd44; transition:.2s; }.resource-links>a:hover { color:var(--orange); padding-left:8px; }.resource-links>a>span { grid-row:1/3; color:var(--orange); font-size:18px; }.resource-links b { font:600 24px "Barlow Condensed"; text-transform:uppercase; }.resource-links small { color:#979a90; font-size:10px; line-height:1.5; }
@media(max-width:800px){.reader-tools,.resource-panel{grid-template-columns:1fr}.reader-tools aside{max-width:none}.inline-photo{margin:30px 0 60px}.inline-photo img{height:420px}}
@media(max-width:640px){.reader-tools{padding:35px 24px}.reader-tools>div{grid-template-columns:1fr}.resource-panel{padding:75px 24px}.inline-photo img{height:330px}.inline-photo figcaption{flex-direction:column;gap:5px}}

/* Playful field-journal treatment */
.article-chapter>section h2 { position:relative; }.article-chapter>section h2>span { display:block; color:var(--orange); font:800 11px "DM Sans"; letter-spacing:1px; margin-bottom:13px; }
.inline-photo { position:relative; }.photo-tape { position:absolute; z-index:2; top:-12px; left:45%; background:#f3d995; color:#4c4637; padding:8px 28px; font:700 8px "DM Sans"; letter-spacing:1.4px; transform:rotate(-2deg); box-shadow:0 3px 8px #0002; }
.chapter-2 .inline-photo { margin-left:1vw; margin-right:-12vw; transform:rotate(1.2deg); }.chapter-2 .inline-photo img { height:500px; }.chapter-2 .photo-tape { left:14%; transform:rotate(3deg); background:#c4d6bd; }
.chapter-3 .inline-photo { width:78%; margin-left:-11vw; transform:rotate(-1.3deg); }.chapter-3 .inline-photo img { height:640px; }.chapter-3 .photo-tape { left:auto; right:10%; background:#f2aa83; }
.chapter-4 .inline-photo { width:90%; margin-left:auto; margin-right:-7vw; transform:rotate(.7deg); }.chapter-4 .photo-tape { left:30%; background:#b7d2dd; }
.article-chapter:nth-child(even)>section h2 { color:#3e5947; }.article-chapter:nth-child(odd) blockquote { transform:rotate(-1deg); box-shadow:10px 12px 0 #ee5f2430; }
.photo-contact-sheet { display:grid; grid-template-columns:220px repeat(4,1fr); min-height:310px; background:#d8d3c3; padding:55px 4vw; gap:14px; align-items:stretch; overflow:hidden; }.photo-contact-sheet>div { display:flex; flex-direction:column; justify-content:flex-end; padding:15px; }.photo-contact-sheet>div span { color:var(--orange); font-size:8px; font-weight:700; letter-spacing:1.5px; }.photo-contact-sheet>div b { margin-top:10px; font:700 26px/1 "Barlow Condensed"; }.photo-contact-sheet figure { margin:0; position:relative; transform:rotate(-1.3deg); transition:.25s; }.photo-contact-sheet figure:nth-child(odd) { transform:rotate(1.5deg) translateY(-9px); }.photo-contact-sheet figure:hover { transform:rotate(0) scale(1.03); z-index:2; }.photo-contact-sheet img { width:100%; height:100%; min-height:200px; object-fit:cover; filter:saturate(.82); }.photo-contact-sheet figure>span { position:absolute; left:9px; bottom:8px; background:var(--orange); color:#fff; width:27px; height:27px; display:grid; place-items:center; border-radius:50%; font:700 8px monospace; }
.affiliate-shelf { padding:110px 8vw 120px; background:#f2cb58; color:var(--ink); scroll-margin-top:20px; }.affiliate-head { display:grid; grid-template-columns:1fr 1.2fr; gap:0 6vw; align-items:end; margin-bottom:60px; }.affiliate-head .section-label { grid-column:1/-1; color:#6c5722; }.affiliate-head h2 { margin:22px 0 0; font:800 clamp(68px,8vw,112px)/.8 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-3px; }.affiliate-head>p { font-size:14px; line-height:1.75; margin:22px 0 0; }.affiliate-head>small { grid-column:1/-1; margin-top:35px; padding:14px 18px; border:1px solid #1b1d1980; font-size:9px; line-height:1.6; letter-spacing:.4px; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.product-grid article { min-height:350px; background:var(--cream); padding:26px; display:flex; flex-direction:column; border:2px solid var(--ink); box-shadow:7px 7px 0 var(--ink); transition:.2s; }.product-grid article:nth-child(even) { transform:translateY(18px) rotate(1deg); }.product-grid article:nth-child(odd) { transform:rotate(-.7deg); }.product-grid article:hover { transform:translateY(-5px) rotate(0); box-shadow:11px 11px 0 var(--orange); }.product-no { color:var(--orange); font:800 10px monospace; }.product-grid article>small { margin-top:34px; color:#73766c; font-size:8px; letter-spacing:1.4px; text-transform:uppercase; }.product-grid h3 { margin:10px 0 15px; font:700 31px/.95 "Barlow Condensed"; text-transform:uppercase; }.product-grid p { color:#5c6056; font-size:11px; line-height:1.65; }.product-grid article>div { margin-top:auto; border-top:1px solid #2223; padding-top:20px; display:flex; justify-content:space-between; align-items:end; gap:10px; }.product-grid article>div b { font:700 18px "Barlow Condensed"; }.product-grid article>div a { max-width:115px; text-align:right; color:var(--orange); font-size:8px; font-weight:800; line-height:1.4; letter-spacing:.7px; }
@media(max-width:1000px){.product-grid{grid-template-columns:1fr 1fr}.photo-contact-sheet{grid-template-columns:160px 1fr 1fr}.photo-contact-sheet figure:nth-of-type(n+3){display:none}}
@media(max-width:800px){.chapter-2 .inline-photo,.chapter-3 .inline-photo,.chapter-4 .inline-photo{width:100%;margin:30px 0 60px;transform:none}.affiliate-head{grid-template-columns:1fr}.affiliate-head>small{grid-column:auto}.photo-contact-sheet{grid-template-columns:1fr 1fr;padding:45px 24px}.photo-contact-sheet>div{grid-column:1/-1}.photo-contact-sheet figure:nth-of-type(n+3){display:block}}
@media(max-width:640px){.affiliate-shelf{padding:80px 20px 95px}.product-grid{grid-template-columns:1fr}.product-grid article:nth-child(n){transform:none}.photo-contact-sheet{grid-template-columns:1fr 1fr;min-height:0}.photo-contact-sheet figure:nth-of-type(n+3){display:none}.photo-contact-sheet img{height:220px}.photo-tape{left:25%;padding:7px 20px}.chapter-2 .inline-photo img,.chapter-3 .inline-photo img{height:360px}}

/* Recipe article */
.recipe-page { --recipe-red:#b73b2f; --recipe-yellow:#f1c44b; }.recipe-page .article-hero { min-height:780px; background-position:center 55%; }.recipe-page .article-hero .eyebrow { color:var(--recipe-yellow); }.recipe-page .article-hero h1 { max-width:820px; font-style:italic; }.recipe-page .article-meta { background:var(--recipe-red); color:#fff; border:0; }.recipe-page .article-meta span:not(:first-child)::before { color:var(--recipe-yellow); }
.recipe-card { display:grid; grid-template-columns:280px 1fr; padding:90px 8vw 100px; gap:6vw; background:#f3dfad; color:var(--ink); border-bottom:10px solid var(--recipe-red); }.recipe-stamp { width:230px; height:230px; border:4px solid var(--ink); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; transform:rotate(-7deg); box-shadow:9px 9px 0 var(--recipe-red); background:var(--recipe-yellow); position:sticky; top:40px; }.recipe-stamp span { font:900 11px "DM Sans"; letter-spacing:4px; }.recipe-stamp b { margin:8px 0; font:italic 900 47px/.72 "Barlow Condensed"; text-align:center; }.recipe-stamp small { font:800 7px "DM Sans"; letter-spacing:1.4px; }
.recipe-summary>h2 { margin:12px 0 32px; font:italic 800 clamp(62px,7vw,105px)/.8 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-3px; }.recipe-facts { display:grid; grid-template-columns:repeat(4,1fr); border:3px solid var(--ink); background:var(--cream); box-shadow:8px 8px 0 var(--ink); }.recipe-facts>div { padding:20px; border-right:2px solid var(--ink); }.recipe-facts>div:last-child { border:0; }.recipe-facts small { display:block; color:var(--recipe-red); font:800 8px "DM Sans"; letter-spacing:1.2px; }.recipe-facts b { display:block; margin-top:7px; font:700 24px/1 "Barlow Condensed"; text-transform:uppercase; }
.recipe-columns { display:grid; grid-template-columns:1.15fr .85fr; gap:4vw; margin-top:65px; }.recipe-columns h3 { padding-bottom:14px; border-bottom:4px solid var(--ink); margin:0 0 10px; color:var(--recipe-red); font:italic 800 40px "Barlow Condensed"; text-transform:uppercase; }.recipe-columns ul { list-style:none; margin:0; padding:0; }.recipe-columns li { padding:12px 0 12px 25px; border-bottom:1px solid #2224; color:#44483f; font-size:12px; line-height:1.55; position:relative; }.recipe-columns li::before { content:"◆"; position:absolute; left:2px; top:15px; color:var(--recipe-red); font-size:8px; }.recipe-columns aside { margin-top:24px; padding:22px; background:var(--ink); color:#fff; transform:rotate(1deg); }.recipe-columns aside b { color:var(--recipe-yellow); font-size:8px; letter-spacing:1.4px; }.recipe-columns aside p { margin:9px 0 0; color:#d4d3ca; font-size:10px; line-height:1.65; }.recipe-columns .allergen-note { background:var(--recipe-red); transform:rotate(-1deg); }.recipe-page .photo-tape { background:var(--recipe-yellow); }.recipe-page .field-checklist { background:#f3dfad; padding:45px; border:3px solid var(--ink); box-shadow:9px 9px 0 var(--recipe-red); }.recipe-page .field-checklist h2 { color:var(--recipe-red); }
@media(max-width:900px){.recipe-card{grid-template-columns:1fr}.recipe-stamp{position:static;width:180px;height:180px}.recipe-stamp b{font-size:38px}.recipe-columns{grid-template-columns:1fr}.recipe-facts{grid-template-columns:1fr 1fr}.recipe-facts>div:nth-child(2){border-right:0}.recipe-facts>div:nth-child(-n+2){border-bottom:2px solid var(--ink)}}
@media(max-width:640px){.recipe-card{padding:65px 24px 80px}.recipe-summary>h2{font-size:64px}.recipe-facts{grid-template-columns:1fr}.recipe-facts>div:nth-child(n){border-right:0;border-bottom:2px solid var(--ink)}.recipe-facts>div:last-child{border-bottom:0}.recipe-columns{margin-top:45px}.recipe-page .field-checklist{padding:28px}}

/* Compact article media rhythm */
.article-hero,
.recipe-page .article-hero { min-height:560px; padding-top:140px; padding-bottom:55px; }
.article-hero h1 { font-size:clamp(58px,7vw,102px); }
.article-body { padding-top:75px; padding-bottom:90px; }
.article-intro { margin:45px 0 58px; }
.article-body section { padding:36px 0; }
.inline-photo,
.chapter-2 .inline-photo,
.chapter-3 .inline-photo,
.chapter-4 .inline-photo { width:78%; max-width:650px; margin:22px 0 48px; transform:none; }
.article-chapter:nth-child(even) .inline-photo { margin-left:auto; }
.inline-photo img,
.chapter-2 .inline-photo img,
.chapter-3 .inline-photo img,
.chapter-4 .inline-photo img { height:340px; border-radius:2px; }
.photo-tape,
.chapter-2 .photo-tape,
.chapter-3 .photo-tape,
.chapter-4 .photo-tape { left:8%; right:auto; padding:7px 20px; }
.article-chapter:nth-child(even) .photo-tape { left:auto; right:8%; }
.photo-contact-sheet { min-height:230px; padding:38px 4vw; grid-template-columns:190px repeat(4,1fr); }
.photo-contact-sheet img { min-height:150px; max-height:180px; }
.video-poster { min-height:430px; }
.video-module>div:last-child { padding-top:70px; padding-bottom:70px; }
.gpx-panel,
.map-preview { min-height:440px; }
.gpx-panel>div:last-child { padding-top:65px; padding-bottom:65px; }
.post-gallery { padding-top:75px; padding-bottom:90px; }
.gallery-photo img { height:400px; }
.gallery-photo-2 img,
.gallery-photo-3 img { height:290px; }
.recipe-card { padding-top:70px; padding-bottom:78px; }
.recipe-columns { margin-top:48px; }
@media(max-width:800px){
  .article-hero,
  .recipe-page .article-hero { min-height:500px; padding-top:130px; padding-bottom:45px; }
  .inline-photo,
  .chapter-2 .inline-photo,
  .chapter-3 .inline-photo,
  .chapter-4 .inline-photo { width:88%; max-width:580px; margin-top:18px; margin-bottom:42px; }
  .inline-photo img,
  .chapter-2 .inline-photo img,
  .chapter-3 .inline-photo img,
  .chapter-4 .inline-photo img { height:300px; }
  .video-poster,
  .map-preview { min-height:340px; }
}
@media(max-width:640px){
  .article-hero,
  .recipe-page .article-hero { min-height:440px; padding-top:120px; padding-bottom:38px; }
  .article-hero h1 { font-size:52px; }
  .article-body { padding-top:58px; padding-bottom:72px; }
  .article-intro { margin:38px 0 48px; }
  .inline-photo,
  .chapter-2 .inline-photo,
  .chapter-3 .inline-photo,
  .chapter-4 .inline-photo { width:100%; margin:16px 0 36px; }
  .inline-photo img,
  .chapter-2 .inline-photo img,
  .chapter-3 .inline-photo img,
  .chapter-4 .inline-photo img { height:245px; }
  .photo-contact-sheet { min-height:0; padding-top:32px; padding-bottom:32px; }
  .photo-contact-sheet img { height:150px; min-height:150px; }
  .video-poster,
  .map-preview { min-height:290px; }
  .gallery-photo img,
  .gallery-photo-2 img,
  .gallery-photo-3 img { height:260px; }
}

/* WordPress/Gutenberg adapters: preserve the completed design around native blocks. */
.site-header nav ul { display:flex; gap:34px; align-items:center; margin:0; padding:0; list-style:none; }
.article-body.entry-content { max-width:none; padding-left:0; padding-right:0; }
.article-body.entry-content > .wp-block-group,
.article-body.entry-content > p,
.article-body.entry-content > h2,
.article-body.entry-content > ul,
.article-body.entry-content > figure { max-width:860px; margin-left:auto; margin-right:auto; }
.article-body.entry-content > .route-stat-grid,
.article-body.entry-content > .gpx-panel,
.article-body.entry-content > .affiliate-shelf,
.article-body.entry-content > .resource-panel,
.article-body.entry-content > .video-module,
.article-body.entry-content > .recipe-card { max-width:none; }
.article-chapter { border-top:1px solid #2223; padding:36px 0; }
.article-chapter > h2 { font:700 35px/1 "Barlow Condensed"; text-transform:uppercase; margin:0 0 24px; }
.article-chapter > h2 span { display:block; color:var(--orange); font:800 11px "DM Sans"; letter-spacing:1px; margin-bottom:13px; }
.article-chapter > p { font-size:15px; line-height:1.9; color:#555950; }
.article-chapter .inline-photo { width:78%; max-width:650px; margin:28px 0 48px; }
.article-chapter:nth-child(even) .inline-photo { margin-left:auto; }
.route-stat-grid { grid-template-columns:repeat(4,1fr); }
.route-stat { display:flex; flex-direction:column; gap:7px; }
.route-stat strong { font:700 35px "Barlow Condensed"; text-transform:uppercase; }
.gpx-panel { display:block; padding:75px 8vw; background:#d7d0bd; }
.gpx-panel > h2,
.affiliate-shelf > h2,
.resource-panel > h2,
.video-module > h2 { font:800 clamp(56px,7vw,100px)/.82 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-2px; }
.field-checklist { max-width:860px!important; padding:45px!important; }
.affiliate-shelf { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.affiliate-shelf > h2,
.affiliate-shelf > p { grid-column:1/-1; }
.product-card { padding:32px; border:2px solid var(--ink); background:#f7e6a7; box-shadow:7px 7px 0 var(--ink); }
.product-card h3 { font:700 32px/1 "Barlow Condensed"; text-transform:uppercase; }
.resource-panel { display:block; }
.resource-panel ul { margin:35px 0 0; padding:0; list-style:none; border-top:1px solid #eeeadd44; }
.resource-panel li { padding:20px 0; border-bottom:1px solid #eeeadd44; color:#afb1a7; line-height:1.6; }
.resource-panel a { color:var(--paper); }
.video-module { display:block; padding:90px 8vw; background:var(--ink); color:var(--paper); }
.video-module p { max-width:680px; color:#aaa99f; line-height:1.8; }
.recipe-card { display:block; }
.recipe-card > h2 { font:italic 800 clamp(62px,7vw,105px)/.8 "Barlow Condensed"; text-transform:uppercase; }
.recipe-card > h3 { color:var(--recipe-red); font:italic 800 40px "Barlow Condensed"; text-transform:uppercase; border-bottom:4px solid var(--ink); padding-bottom:12px; }
.about-story .value-card { margin-top:35px; padding:25px; background:#ded8c8; }
.manifesto > .manifesto-side { padding-top:40px; color:#54574e; font-size:14px; line-height:1.8; }
.portrait-panel > p { position:absolute; left:30px; bottom:22px; margin:0; color:#fff; font:800 100px/.8 "Barlow Condensed"; letter-spacing:-6px; opacity:.8; }
.wp-block-cover.hero .wp-block-cover__inner-container { width:100%; }
.wp-block-cover.hero .wp-block-buttons { margin-top:28px; }
.wp-block-cover.hero .wp-block-button__link { border:1px solid #fff; color:#fff; background:transparent; }
.field-copy > .wp-block-buttons { margin-top:50px; }
.newsletter > .wp-block-buttons { justify-content:center; margin-top:35px; }
.newsletter .wp-block-button__link { border:1px solid #fff; color:#fff; background:transparent; }
.admin-bar .site-header { top:32px; }
@media(max-width:900px){
  .site-header nav ul { flex-direction:column; align-items:flex-start; }
  .primary-nav.is-open { display:block; position:absolute; top:76px; left:0; right:0; padding:25px; background:var(--ink); }
  .menu-toggle { display:block; justify-self:end; }
  .circle-link { display:none; }
  .affiliate-shelf { grid-template-columns:1fr; }
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:640px){
  .article-body.entry-content > .wp-block-group,
  .article-body.entry-content > p,
  .article-body.entry-content > h2,
  .article-body.entry-content > ul,
  .article-body.entry-content > figure { max-width:calc(100% - 40px); }
  .affiliate-shelf,.resource-panel,.video-module,.gpx-panel,.recipe-card { padding-left:24px!important; padding-right:24px!important; }
  .article-chapter .inline-photo { width:100%; }
}
