/* Shared visual system: forest green, fresh lime and clear editorial rhythm. */
:root{--pine:#173f35;--pine2:#245448;--leaf:#d7ec75;--paper:#f5f7f1;--white:#fff;--ink:#192821;--muted:#64736b;--line:#dce4d9;--radius:18px;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "Avenir Next","Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8cae37;outline-offset:3px}img{max-width:100%;height:auto;display:block}.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px;top:8px;padding:10px 14px;background:white;z-index:20}.skip:focus{left:12px}
.site-head{background:var(--white);border-bottom:1px solid var(--line)}.brand-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;color:var(--pine);font-weight:800;font-size:22px;letter-spacing:-.04em;line-height:1.12}.brand-mark{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--leaf);color:var(--pine);font-size:19px;flex:none}.slogan{font-size:13px;color:var(--muted);font-weight:600}.desktop-nav{border-top:1px solid #edf0e9}.nav-inner{display:flex;align-items:center;gap:5px;min-height:54px}.nav-inner>a,.nav-group>summary{font-size:13px;font-weight:700;color:var(--pine);padding:11px 12px;border-radius:999px;white-space:nowrap;cursor:pointer;list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.nav-inner>a:hover,.nav-group>summary:hover,.nav-group[open]>summary{background:#eef3e7;text-decoration:none}.nav-group{position:relative}.dropdown{position:absolute;top:calc(100% + 2px);left:0;z-index:10;min-width:240px;max-width:340px;padding:10px;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 38px rgba(23,63,53,.13)}.dropdown a{display:block;padding:8px 10px;border-radius:8px;font-size:13px;line-height:1.4}.dropdown a:hover{background:#f1f5eb;text-decoration:none}.mobile-nav{display:none;padding:0 0 12px}.mobile-nav summary{list-style:none;cursor:pointer;background:var(--pine);color:white;padding:10px 15px;border-radius:999px;text-align:center;font-size:14px;font-weight:700}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-links{padding:12px 4px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px}.mobile-links a{padding:8px 6px;border-bottom:1px solid var(--line);font-size:14px}
main{padding:0 0 82px}.hero{display:grid;grid-template-columns:.86fr 1.14fr;min-height:400px;margin:24px auto 58px;background:var(--pine);border-radius:var(--radius);overflow:hidden;color:white}.hero-copy{padding:clamp(32px,5vw,70px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--leaf);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:0 0 16px}.eyebrow:before{content:"";width:25px;height:2px;background:var(--leaf)}h1{font-size:clamp(38px,5vw,68px);letter-spacing:-.06em;line-height:1.01;margin:0 0 18px;font-weight:800;overflow-wrap:anywhere}.hero-copy h1{font-size:clamp(32px,4.2vw,56px);overflow-wrap:normal;word-break:normal;hyphens:none}.hero-copy p{max-width:52ch;color:#e5eee7;margin:0;font-size:16px;line-height:1.72}.hero-photo{position:relative;min-height:300px;background:#78916c}.hero-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,63,53,.18),transparent 38%)}.hero.artwork-hero{display:block;min-height:0;background:transparent;color:inherit}.hero.artwork-hero .hero-photo{min-height:0;background:transparent}.hero.artwork-hero .hero-photo img{display:block;position:static;width:100%;height:auto;object-fit:contain}.hero.artwork-hero .hero-photo:after{content:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero.no-photo{grid-template-columns:1fr;min-height:230px}.hero.no-photo .hero-copy{max-width:900px}.hero.no-photo .hero-copy p{max-width:70ch}.quote-line{font-size:15px;font-weight:600;color:#e5eee7;margin:4px 0 0}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:68px;align-items:start}.article{min-width:0}.content-body{color:#34433b;font-size:17px;line-height:1.8;overflow-wrap:anywhere}.content-body>*:first-child{margin-top:0}.content-body h1,.content-body h2,.content-body h3,.content-body h4{color:var(--pine);line-height:1.2;letter-spacing:-.035em;margin:2.1em 0 .7em}.content-body h1{font-size:clamp(28px,3.5vw,40px)}.content-body h2{font-size:clamp(27px,3vw,36px)}.content-body h3{font-size:clamp(23px,2.5vw,30px)}.content-body h4{font-size:21px}.content-body p{margin:0 0 1.35em}.content-body ul,.content-body ol{padding-left:1.35em;margin:0 0 1.4em}.content-body li{padding-left:.2em;margin:.32em 0}.content-body a{color:var(--pine2);text-decoration:underline;text-decoration-color:#a4b89f;text-underline-offset:3px}.content-body blockquote{margin:1.6em 0;padding:8px 0 8px 22px;border-left:3px solid var(--leaf);color:var(--pine);font-size:1.1em}.content-body figure{margin:1.5em 0}.content-body figure img{width:100%;height:auto;border-radius:12px}.content-body figcaption{font-size:13px;color:var(--muted);margin-top:7px}.content-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:15px;margin:1.5em 0}.content-body th,.content-body td{border:1px solid var(--line);padding:9px 12px;text-align:left}.content-body th{background:#eaf0e4;color:var(--pine)}.content-body hr{border:0;border-top:1px solid var(--line);margin:2.2em 0}.content-body video,.content-body iframe{max-width:100%;width:100%;border:0;border-radius:12px}.content-body iframe{min-height:360px}.content-body .document-embed iframe{min-height:540px}.content-body .map-placeholder,.content-body .media-placeholder{min-height:190px;display:grid;place-items:center;background:#e7eee1;color:var(--pine);border:1px solid var(--line);border-radius:14px;font-weight:700;text-align:center;padding:18px;margin:1.4em 0}.content-body .media-placeholder{min-height:130px;background:#edf1e8;color:var(--muted)}.content-body .strava-embed-placeholder{min-height:80px;margin:18px 0}.article-meta{display:flex;gap:8px 16px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:600;margin:0 0 28px}.article-meta a{color:var(--pine2)}.featured-inline{width:100%;max-height:490px;object-fit:cover;border-radius:14px;margin:0 0 30px}.related-pages{padding-top:24px;margin-top:34px;border-top:1px solid var(--line)}.related-pages h2,.section-heading{font-size:27px;color:var(--pine);letter-spacing:-.04em;margin:0 0 16px}.link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px}.link-grid a{padding:12px 14px;background:white;border-radius:10px;color:var(--pine);font-weight:700;border:1px solid var(--line)}.link-grid a:hover{background:#eef3e7;text-decoration:none}
.sidebar{border-left:1px solid var(--line);padding-left:28px}.widget{padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid var(--line)}.widget h2,.widget h3{font-size:17px;letter-spacing:-.02em;color:var(--pine);margin:0 0 14px;line-height:1.25}.search-form label{display:block;font-size:13px;font-weight:700;color:var(--pine);margin-bottom:7px}.search-line{display:flex;gap:7px}.search-line input{min-width:0;flex:1;border:1px solid #cbd7cb;border-radius:9px;padding:10px 11px;background:white;color:var(--ink);font:inherit;font-size:14px}.search-line button{border:0;border-radius:9px;background:var(--pine);color:white;padding:10px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.link-list,.activity-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.link-list li{font-size:14px;line-height:1.45;color:#3a4a41}.muted{color:var(--muted);font-size:14px;margin:0}.activity-list li{padding-bottom:12px;border-bottom:1px solid #e3e9e0}.activity-list li:last-child{border:0;padding:0}.activity-list a{display:block;font-size:14px;line-height:1.4;font-weight:700;color:var(--pine)}.activity-list p{font-size:12px;color:var(--muted);line-height:1.55;margin:5px 0 0}.map-block{min-height:145px;border-radius:14px;background:#e7eee1;display:grid;place-items:center;padding:16px;text-align:center;color:var(--pine);font-size:13px;font-weight:700}.strava-brand{display:inline-block;margin:0 0 12px;line-height:0}.strava-logo{display:block;width:min(180px,100%);height:auto}.strava-map-link{display:block;overflow:hidden;border-radius:12px}.strava-map{width:100%;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--line);border-radius:12px}.map-caption{font-size:12px;color:var(--muted);margin:7px 0 0;line-height:1.45}.map-caption a{font-weight:700;color:var(--pine)}.product-images{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-images img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:11px;background:#e5e9e2}.archive-columns{display:grid;grid-template-columns:1fr 1fr;gap:5px 15px}.archive-columns a{font-size:13px;color:#43554b}
.post-list{display:grid;gap:0}.post-feature{display:grid;grid-template-columns:1.05fr .95fr;background:white;border-radius:var(--radius);overflow:hidden;margin:0 0 28px;border:1px solid var(--line)}.post-feature img{width:100%;height:100%;min-height:300px;object-fit:cover}.post-feature-copy{padding:28px 30px;align-self:center}.post-feature h2{font-size:clamp(25px,3vw,34px);letter-spacing:-.045em;line-height:1.13;color:var(--pine);margin:0 0 12px}.post-feature p,.post-row p{color:#526158;margin:0 0 14px;font-size:15px;line-height:1.65}.post-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:23px;padding:23px 0;border-bottom:1px solid var(--line);align-items:center}.post-row img{width:160px;height:118px;object-fit:cover;border-radius:11px;background:#e5e9e2}.post-row h2{font-size:23px;line-height:1.2;letter-spacing:-.035em;color:var(--pine);margin:0 0 8px}.post-meta{font-size:12px;color:var(--muted);font-weight:700;margin-bottom:8px}.read-more{display:inline-flex;align-items:center;gap:7px;color:var(--pine);font-weight:800;font-size:14px}.read-more:after{content:"→";transition:transform .18s ease}.read-more:hover:after{transform:translateX(3px)}.pagination{display:flex;justify-content:space-between;gap:18px;margin-top:28px;color:var(--pine);font-weight:700}.search-results{display:grid;gap:14px}.search-result{padding:16px 0;border-bottom:1px solid var(--line)}.search-result h2{font-size:21px;color:var(--pine);margin:0 0 5px}.search-result p{margin:0;color:var(--muted);font-size:14px}
.site-footer{background:#173f35;color:#e8f0e9;padding:42px 0}.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}.footer-brand{font-size:18px;font-weight:800;letter-spacing:-.03em}.footer-quote{font-size:13px;color:#c8d5ca;margin:5px 0 0}.footer-links{display:flex;gap:18px;align-items:center;font-size:13px;flex-wrap:wrap}.footer-links span{font-weight:800}.copyright{font-size:12px;color:#c8d5ca;margin-top:23px}.empty-note{padding:24px;border:1px solid var(--line);background:white;border-radius:12px;color:var(--muted)}
@media(max-width:1100px){.nav-inner{gap:0}.nav-inner>a,.nav-group>summary{padding:10px 8px;font-size:12px}.page-grid{gap:38px;grid-template-columns:minmax(0,1fr) 280px}.hero{grid-template-columns:.95fr 1.05fr}}
@media(max-width:850px){.desktop-nav{display:none}.mobile-nav{display:block}.brand-row{min-height:76px}.slogan{display:none}.hero{grid-template-columns:1fr;margin-top:16px;margin-bottom:46px;min-height:0}.hero-photo{grid-row:1;min-height:300px}.hero-copy{grid-row:2;padding:34px}.hero.no-photo .hero-copy{grid-row:1}.page-grid{grid-template-columns:1fr;gap:42px}.sidebar{border-left:0;border-top:1px solid var(--line);padding:30px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px}.widget{margin:0;padding-bottom:22px}.footer-inner{display:block}.footer-links{margin-top:18px}.post-feature{grid-template-columns:1fr}.post-feature img{height:280px;min-height:0}.post-feature-copy{padding:24px}.hero.no-photo{min-height:220px}}
@media(max-width:540px){.wrap{width:min(var(--max),calc(100% - 30px))}.brand{font-size:18px}.brand-mark{width:34px;height:34px}.hero{border-radius:14px}.hero-photo{min-height:240px}.hero-copy{padding:28px 23px 32px}h1{font-size:clamp(36px,12vw,52px)}.hero-copy h1{font-size:clamp(30px,8vw,42px)}.content-body{font-size:16px}.page-grid{gap:34px}.sidebar{grid-template-columns:1fr;gap:20px}.mobile-links{grid-template-columns:1fr}.post-row{grid-template-columns:1fr;gap:12px}.post-row img{width:100%;height:210px}.post-row h2{font-size:21px}.link-grid{grid-template-columns:1fr}.article-meta{margin-bottom:20px}.hero.no-photo{min-height:190px}.hero.no-photo .hero-copy{padding:29px 23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.read-more:after{transition:none}}
