/* generated by tools/folk/port_folk.py from the Muskoka Folk page v2 prototype; do not edit, see folk.css */
.mf-page{--folk-red:#A8352B; --folk-char:#24201C; --folk-oat:#EDE2CB; --folk-linen:#F3EBDA;
  --folk-spruce:#2F5A45; --folk-slate:#4C6B7A; --folk-sky:#A9C1C6; --folk-clay:#B86B4B;
  --folk-sage:#A3AD8C; --folk-bark:#5A3B28; --folk-wood:#C08A55; --folk-fog:#D9D2C3;
  --folk-moss:#6B7A3A; --folk-cranberry:#8E2C3A; --folk-rose:#C8553D;
  
  --pulse-navy:#14395E; --pulse-navy-deep:#0E2540; --pulse-amber:#F5A040; --pulse-amber-thread:#FFC56A; --pulse-teal:#33B7AA;
  --folk-thread-cream:#EFE5CE; --folk-thread-dark:#46382E;
  --felt-tile-size:384px;}
@font-face{font-display:swap;font-family:"Muskoka Folk Display";src:url(fonts/londrina-solid-black.woff2);font-weight:900}
@font-face{font-display:swap;font-family:"Muskoka Folk Serif";src:url(fonts/alegreya.woff2);font-weight:400 900}
@font-face{font-display:swap;font-family:"Muskoka Folk Serif";src:url(fonts/alegreya-italic.woff2);font-style:italic;font-weight:400 900}
@font-face{font-display:swap;font-family:"Muskoka Folk Hand";src:url(fonts/patrick-hand.woff2)}
.mf-page .mf-felt{background-repeat:repeat;background-size:var(--felt-tile-size)}
.mf-page .mf-felt-red{background:var(--folk-red) url(felt/felt-red.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-char{background:var(--folk-char) url(felt/felt-char.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-oat{background:var(--folk-oat) url(felt/felt-oat.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-linen{background:var(--folk-linen) url(felt/felt-linen.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-spruce{background:var(--folk-spruce) url(felt/felt-spruce.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-slate{background:var(--folk-slate) url(felt/felt-slate.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-sky{background:var(--folk-sky) url(felt/felt-sky.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-clay{background:var(--folk-clay) url(felt/felt-clay.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-sage{background:var(--folk-sage) url(felt/felt-sage.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-bark{background:var(--folk-bark) url(felt/felt-bark.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-wood{background:var(--folk-wood) url(felt/felt-wood.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-fog{background:var(--folk-fog) url(felt/felt-fog.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-moss{background:var(--folk-moss) url(felt/felt-moss.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-cranberry{background:var(--folk-cranberry) url(felt/felt-cranberry.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-rose{background:var(--folk-rose) url(felt/felt-rose.webp) 0 0/var(--felt-tile-size)}
.mf-page .mf-felt-piece{border-radius:14px;box-shadow:0 2px 0 rgba(20,12,6,.10),0 6px 14px rgba(20,12,6,.22)}
.mf-page .mf-stitch{border:20px solid transparent;border-image:url(felt/stitch-border-cream-3x.webp) 96 round;background-clip:border-box}
.mf-page .mf-stitch-dark{border:20px solid transparent;border-image:url(felt/stitch-border-dark-3x.webp) 96 round}
.mf-page .mf-stitch-red{border:20px solid transparent;border-image:url(felt/stitch-border-red-3x.webp) 96 round}
.mf-page .mf-stitch-amber{border:20px solid transparent;border-image:url(felt/stitch-border-amber-3x.webp) 96 round}
@supports not (border-image:url(x) 1){.mf-page .mf-stitch,.mf-page .mf-stitch-dark,.mf-page .mf-stitch-red,.mf-page .mf-stitch-amber{border:3px dashed var(--folk-thread-cream)}}
.mf-page .mf-divider{border:0;height:24px;background:url(felt/stitch-cream-tile-3x.webp) round no-repeat left center/40px 24px}
.mf-page .mf-divider-dark{border:0;height:24px;background:url(felt/stitch-dark-tile-3x.webp) round no-repeat left center/40px 24px}
.mf-page .mf-divider-red{border:0;height:24px;background:url(felt/stitch-red-tile-3x.webp) round no-repeat left center/40px 24px}
.mf-page .mf-divider-amber{border:0;height:24px;background:url(felt/stitch-amber-tile-3x.webp) round no-repeat left center/40px 24px}
.mf-page .mf-card{border-radius:16px;box-shadow:0 2px 0 rgba(20,12,6,.12),0 8px 18px rgba(20,12,6,.28);padding:6px;display:flex;gap:18px;align-items:center;color:var(--folk-char)}
.mf-page .mf-card img{width:112px;height:112px;flex:none;filter:drop-shadow(0 3px 4px rgba(20,12,6,.3))}
.mf-page .mf-card .mf-ep{font-family:"Muskoka Folk Hand";font-size:20px;color:var(--folk-red)}
.mf-page .mf-card .mf-title{font-family:"Muskoka Folk Serif";font-weight:700;font-size:22px;line-height:1.15}
.mf-page .mf-card .mf-meta{font-family:"Muskoka Folk Serif";font-style:italic;font-size:16px;color:var(--folk-bark)}
.mf-page .mf-button{display:inline-block;background:var(--pulse-amber) url(felt/felt-pulse-amber.webp) 0 0/var(--felt-tile-size);
  border:14px solid transparent;border-image:url(felt/stitch-border-dark-3x.webp) 96 round;border-radius:12px;
  padding:4px 14px;color:#24201C;font:600 17px/22px "Pulse Serif",Fraunces,serif;text-decoration:none;
  box-shadow:0 2px 0 rgba(20,12,6,.18),0 6px 12px rgba(0,0,0,.3)}
.mf-page .mf-button-quiet{background:var(--folk-oat) url(felt/felt-oat.webp) 0 0/var(--felt-tile-size)}
@font-face{font-display:swap;font-family:"Pulse Serif";src:url(fonts/fraunces-roman.woff2) format("woff2");font-weight:400 700}
@font-face{font-display:swap;font-family:"Pulse Serif";src:url(fonts/fraunces-italic.woff2) format("woff2");font-style:italic;font-weight:400 700}
.mf-page *{box-sizing:border-box;margin:0;padding:0}
.mf-page{overflow-x:hidden}
.mf-page{font-family:"Muskoka Folk Serif",Georgia,serif;color:var(--folk-char);-webkit-font-smoothing:antialiased}
.mf-page a{color:inherit}
.mf-page img{display:block;max-width:100%}
.mf-page .wrap{max-width:1328px;margin:0 auto;padding:0 56px}
.mf-page .disp{font-family:"Muskoka Folk Display";font-weight:900;text-transform:uppercase;letter-spacing:.04em;line-height:.95}
.mf-page .hand{font-family:"Muskoka Folk Hand"}
.mf-page .ps{font-family:"Pulse Serif",Georgia,serif}
.mf-page .eg{font-style:italic;opacity:.8}
.mf-page .btns{display:flex;gap:16px;flex-wrap:wrap;margin-top:26px}
.mf-page .sec{padding:56px 0 0}
.mf-page .sec-title{font:600 32px "Pulse Serif";color:#F6EEDD;margin-bottom:22px}
.mf-page .sec-title small{display:block;font:italic 400 18px "Muskoka Folk Serif";color:#cfd8e0;margin-top:6px}
.mf-page .panel{position:relative}
.mf-page .intro{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:center;padding:30px 44px}
.mf-page .intro p{font-size:23px;line-height:1.5;max-width:860px}
.mf-page .intro .lead{font-weight:700}
.mf-page .latest{display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:center;padding:28px 40px}
.mf-page .latest .ep{font-family:"Muskoka Folk Hand";font-size:26px;color:var(--folk-red)}
.mf-page .latest h3{font-size:44px;line-height:1.08;margin:4px 0 8px}
.mf-page .meta{font-style:italic;font-size:19px;color:var(--folk-bark)}
.mf-page .latest .blurb{font-size:20px;line-height:1.45;margin:14px 0 4px;max-width:720px}
.mf-page .player{display:flex;align-items:center;gap:20px;margin-top:22px;padding:14px 22px;border-radius:16px}
.mf-page .play{width:76px;height:76px;flex:none;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:var(--pulse-amber) url(felt/felt-pulse-amber.webp) 0 0/var(--felt-tile-size);
  box-shadow:inset 0 0 0 7px var(--pulse-amber),inset 0 0 0 10px rgba(36,32,28,.0),0 3px 0 rgba(20,12,6,.2),0 8px 14px rgba(20,12,6,.3);position:relative}
.mf-page .play::before{content:"";position:absolute;inset:7px;border-radius:50%;border:3px dashed rgba(70,56,46,.85)}
.mf-page .play::after{content:"";width:0;height:0;border-left:24px solid var(--folk-char);border-top:15px solid transparent;border-bottom:15px solid transparent;margin-left:7px}
.mf-page .playing .play::after{width:22px;height:28px;border:0;margin:0;background:linear-gradient(90deg,var(--folk-char) 0 8px,transparent 8px 14px,var(--folk-char) 14px)}
.mf-page .track{flex:1;min-width:0}
.mf-page .bar{position:relative;height:24px;background:url(felt/stitch-dark-tile-3x.webp) round no-repeat left center/40px 24px;opacity:.95}
.mf-page .bar .done{position:absolute;left:0;top:0;bottom:0;width:34%;background:url(felt/stitch-red-tile-3x.webp) round no-repeat left center/40px 24px}
.mf-page .bar .knob{position:absolute;left:34%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:var(--folk-red) url(felt/felt-red.webp) 0 0/200px;box-shadow:0 2px 4px rgba(0,0,0,.35)}
.mf-page .times{display:flex;justify-content:space-between;font:16px "Muskoka Folk Hand";color:var(--folk-bark);margin-top:4px}
.mf-page .chip{font:600 15px "Pulse Serif";padding:7px 12px;border-radius:10px;background:var(--folk-oat) url(felt/felt-oat.webp) 0 0/var(--felt-tile-size);box-shadow:0 2px 0 rgba(20,12,6,.15),0 3px 6px rgba(20,12,6,.18);white-space:nowrap}
.mf-page .under{display:flex;gap:22px;align-items:center;margin-top:16px;font-size:18px}
.mf-page .under a.txt{color:var(--folk-bark)}
.mf-page .quilt-sec{display:grid;grid-template-columns:600px 1fr;gap:52px;align-items:center;padding:34px 44px;color:var(--folk-oat)}
.mf-page .quilt{border-radius:18px;padding:22px;background:var(--folk-red) url(felt/felt-red.webp) 0 0/var(--felt-tile-size);box-shadow:0 3px 0 rgba(0,0,0,.2),0 12px 24px rgba(0,0,0,.35);position:relative}
.mf-page .quilt::before{content:"";position:absolute;inset:8px;border:14px solid transparent;border-image:url(felt/stitch-border-cream-3x.webp) 96 round;pointer-events:none}
.mf-page .quilt .grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;background:var(--folk-oat) url(felt/felt-oat.webp) 0 0/var(--felt-tile-size);padding:4px;border-radius:4px;position:relative}
.mf-page .qp{position:relative;aspect-ratio:1;display:block;border-radius:4px;transition:transform .15s}
.mf-page .qp img{width:100%;height:100%}
.mf-page a.qp:hover,.mf-page .qp.tip{transform:translateY(-4px) scale(1.04);z-index:3;filter:drop-shadow(0 8px 8px rgba(0,0,0,.35))}
.mf-page a.qp:hover::after,.mf-page .qp.tip::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);width:260px;
  padding:10px 14px;border-radius:12px;font:16px/1.3 "Muskoka Folk Serif";color:var(--folk-char);text-align:left;white-space:pre-line;
  background:var(--folk-linen) url(felt/felt-linen.webp) 0 0/var(--felt-tile-size);box-shadow:0 6px 14px rgba(0,0,0,.35)}
.mf-page .qp.empty{border:3px dashed rgba(36,32,28,.35);margin:8px;display:grid;place-items:center;font:15px/1.15 "Muskoka Folk Hand";color:rgba(36,32,28,.55);text-align:center}
.mf-page .qp.core{opacity:1}
.mf-page .quilt-copy h2{font-size:64px;color:var(--folk-oat)}
.mf-page .quilt-copy p{font-size:21px;line-height:1.45;margin-top:16px;max-width:560px}
.mf-page .legend{list-style:none;margin-top:22px;display:grid;gap:12px;font-size:19px}
.mf-page .legend li{display:flex;gap:14px;align-items:center}
.mf-page .legend i{width:34px;height:34px;flex:none;border-radius:5px;display:block}
.mf-page .legend .l1{background:url(img/episode-patch-03-radio.webp) center/cover}
.mf-page .legend .l2{background:url(img/patch-house.webp) center/cover}
.mf-page .legend .l3{border:3px dashed rgba(237,226,203,.6)}
.mf-page .nominate{display:grid;grid-template-columns:1fr 250px;gap:44px;align-items:center;padding:34px 48px;color:var(--folk-oat)}
.mf-page .nominate h2{font-size:56px}
.mf-page .nominate p{font-size:21px;line-height:1.45;margin-top:14px;max-width:760px}
.mf-page .nominate .small{font-style:italic;font-size:18px;margin-top:12px;opacity:.92}
.mf-page .slot{aspect-ratio:1;border-radius:10px;border:4px dashed rgba(239,229,206,.8);display:grid;place-items:center;text-align:center;font:24px/1.15 "Muskoka Folk Hand";color:var(--folk-oat);padding:20px;background:rgba(0,0,0,.08)}
.mf-page .how{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mf-page .step{padding:22px 26px 26px}
.mf-page .step .n{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;font:900 38px "Muskoka Folk Display";color:var(--folk-oat);position:relative;box-shadow:0 3px 0 rgba(20,12,6,.18),0 6px 10px rgba(20,12,6,.25)}
.mf-page .step .n::before{content:"";position:absolute;inset:6px;border-radius:50%;border:2.5px dashed rgba(239,229,206,.85)}
.mf-page .step h3{font:900 34px "Muskoka Folk Display";text-transform:uppercase;letter-spacing:.04em;margin:16px 0 8px}
.mf-page .step p{font-size:19px;line-height:1.45}
@media (max-width:700px){.mf-page .wrap{padding:0 16px}
.mf-page .btns{gap:12px}
.mf-page .mf-button{font-size:16px}
.mf-page .sec{padding-top:36px}
.mf-page .sec-title{font-size:25px}
.mf-page .intro{grid-template-columns:1fr;gap:16px;padding:22px 18px}
.mf-page .intro img{width:120px}
.mf-page .intro p{font-size:19px}
.mf-page .latest{grid-template-columns:1fr;gap:16px;padding:20px 18px}
.mf-page .latest .patch{width:170px}
.mf-page .latest h3{font-size:31px}
.mf-page .latest .blurb{font-size:18px}
.mf-page .player{gap:12px;padding:12px;flex-wrap:wrap}
.mf-page .play{width:62px;height:62px}
.mf-page .player .chip{display:none}
.mf-page .under{flex-wrap:wrap;gap:12px 18px;font-size:17px}
.mf-page .quilt-sec,.mf-page .latest,.mf-page .intro,.mf-page .nominate{grid-template-columns:minmax(0,1fr)}
.mf-page .quilt-sec{gap:26px;padding:22px 16px}
.mf-page .quilt{padding:14px}
.mf-page .quilt::before{inset:3px;border-width:10px}
.mf-page .qp.empty{margin:4px;font-size:11px;border-width:2px}
.mf-page .quilt-copy h2,.mf-page .nominate h2{font-size:42px}
.mf-page .quilt-copy p,.mf-page .nominate p{font-size:18px}
.mf-page .legend{font-size:17px}
.mf-page a.qp:hover::after,.mf-page .qp.tip::after{display:none}
.mf-page .nominate{grid-template-columns:1fr;gap:20px;padding:24px 18px}
.mf-page .slot{width:170px;font-size:19px}
.mf-page .how{grid-template-columns:1fr;gap:16px}
.mf-page .step h3{font-size:28px}
.mf-page .step p{font-size:18px}}
.mf-page .mf-button{font-size:20px;line-height:26px;padding:6px 18px}
.mf-page .sec-title{font-size:40px}
.mf-page .sec-title small{font-size:21px}
.mf-page .intro p{font-size:24px}
.mf-page .latest h3{font-size:50px}
.mf-page .latest .ep{font-size:28px}
.mf-page .meta{font-size:21px}
.mf-page .latest .blurb{font-size:22px}
.mf-page .times{font-size:19px}
.mf-page .chip{font-size:18px;padding:8px 14px}
.mf-page .under{font-size:20px}
.mf-page a.qp:hover::after,.mf-page .qp.tip::after{font-size:18px;width:290px}
.mf-page .qp.empty{font-size:19px}
.mf-page .quilt-copy h2{font-size:70px}
.mf-page .quilt-copy p{font-size:22px}
.mf-page .legend{font-size:21px}
.mf-page .nominate h2{font-size:62px}
.mf-page .nominate p{font-size:23px}
.mf-page .nominate .small{font-size:20px}
.mf-page .slot{font-size:28px}
.mf-page .step .n{width:78px;height:78px;font-size:42px}
.mf-page .step h3{font-size:38px}
.mf-page .step p{font-size:21px}
@media (prefers-reduced-motion:no-preference){.mf-page.mf-js .mf-divider-amber{background-size:40px 24px}
.mf-page.mf-js .mf-divider-amber{clip-path:inset(0 100% 0 0);transition:clip-path 1.6s cubic-bezier(.45,.05,.3,1)}
.mf-page.mf-js .mf-divider-amber.in{clip-path:inset(0 0 0 0);animation:mf-run 9s linear 1.6s infinite}
@keyframes mf-run{to{background-position:40px center}}
.mf-page.mf-js .rv{opacity:0;transform:translateY(18px) rotate(var(--tilt,-1.2deg)) scale(.97);
    transition:opacity .6s ease-out,transform .9s cubic-bezier(.2,1.35,.4,1)}
.mf-page.mf-js .rv.in{opacity:1;transform:none;transition-delay:var(--d,0s)}
.mf-page.mf-js .qp.rv.in::before{content:"";position:absolute;inset:5%;border:2px dashed rgba(255,197,106,.9);border-radius:4px;pointer-events:none;
    animation:mf-stitchin 1.2s ease-out var(--d,0s) both}
@keyframes mf-stitchin{0%{clip-path:inset(0 100% 100% 0);opacity:1}60%{clip-path:inset(0 0 0 0);opacity:1}100%{clip-path:inset(0 0 0 0);opacity:0}}
.mf-page a.qp,.mf-page .latest,.mf-page .step,.mf-page .mf-button{transition:transform .35s cubic-bezier(.2,1.2,.4,1),box-shadow .35s,filter .35s}
.mf-page a.qp:hover{transform:translateY(-6px) rotate(-1deg) scale(1.04)}
.mf-page .latest:hover,.mf-page .step:hover{transform:translateY(-4px) rotate(-.25deg);box-shadow:0 6px 0 rgba(20,12,6,.14),0 18px 28px rgba(0,0,0,.35)}
.mf-page .mf-button:hover{transform:translateY(-2px) rotate(-.6deg)}
.mf-page .player.playing .play::after{animation:mf-spin 8s linear infinite}
@keyframes mf-spin{to{transform:rotate(360deg)}}}
@media (max-width:700px){.mf-page .mf-button{font-size:18px;line-height:24px}
.mf-page .sec-title{font-size:30px}
.mf-page .sec-title small{font-size:18px}
.mf-page .intro p{font-size:20px}
.mf-page .latest h3{font-size:35px}
.mf-page .latest .ep{font-size:23px}
.mf-page .meta{font-size:18px}
.mf-page .latest .blurb{font-size:18px}
.mf-page .times{font-size:17px}
.mf-page .under{font-size:18px}
.mf-page .qp.empty{font-size:13px}
.mf-page .quilt-copy h2,.mf-page .nominate h2{font-size:46px}
.mf-page .quilt-copy p,.mf-page .nominate p{font-size:19px}
.mf-page .legend{font-size:18px}
.mf-page .nominate .small{font-size:18px}
.mf-page .slot{font-size:22px}
.mf-page .step .n{width:66px;height:66px;font-size:36px}
.mf-page .step h3{font-size:31px}
.mf-page .step p{font-size:18px}}
.mf-page .felt-intro{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  min-height:calc(100vh - 140px);min-height:calc(100svh - 140px);padding:32px 24px 100px;color:#F3EBDA}
.mf-page .felt-intro .symbol{position:relative;width:min(220px,22vh);aspect-ratio:1;filter:drop-shadow(0 8px 12px rgba(0,0,0,.35))}
.mf-page .felt-intro .symbol .frame{position:absolute;inset:0;width:100%;height:100%}
.mf-page .felt-intro .tile{position:absolute;width:28%;height:28%}
.mf-page .felt-intro .tile img{display:block;width:100%;height:100%}
.mf-page .felt-intro .felt-word{margin:22px 0 0;line-height:0}
.mf-page .felt-intro .felt-word img{height:min(232px,23vh);width:auto;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.mf-page .felt-intro .tagline{font-size:28px;line-height:1.36;margin-top:18px;max-width:32ch;text-wrap:balance}
.mf-page .felt-intro .credit{font-style:italic;font-size:19px;margin-top:8px;color:#E9D9B4;opacity:.92}
.mf-page .felt-intro .scroll-cue{position:absolute;left:50%;bottom:34px;width:62px;height:62px;margin-left:-31px;border-radius:50%;filter:drop-shadow(0 4px 6px rgba(0,0,0,.35))}
.mf-page .felt-intro .scroll-cue img{width:100%;height:100%;display:block}
.mf-page .felt-intro .scroll-cue:focus-visible{outline:3px dashed var(--pulse-amber-thread);outline-offset:4px}
.mf-page .intro-stitch{position:absolute;left:0;right:0;bottom:8px}
@media (max-width:700px){.mf-page .felt-intro{min-height:calc(100vh - 266px);min-height:calc(100svh - 266px);padding:30px 18px 100px}
.mf-page .felt-intro .symbol{width:150px}
.mf-page .felt-intro .felt-word{margin-top:20px}
.mf-page .felt-intro .felt-word img{height:auto;width:min(300px,82vw)}
.mf-page .felt-intro .tagline{font-size:22px;margin-top:16px}
.mf-page .felt-intro .credit{font-size:17px}
.mf-page .felt-intro .scroll-cue{width:54px;height:54px;margin-left:-27px;bottom:30px}}
@media (prefers-reduced-motion:no-preference){.mf-page .felt-intro .tile{animation:mf-settle 1s cubic-bezier(.2,1.25,.4,1) calc(.2s + var(--i)*.11s) both}
@keyframes mf-settle{from{opacity:0;transform:translateY(-14px) rotate(var(--tilt)) scale(1.06)}to{opacity:1;transform:none}}
.mf-page .felt-intro .tile::after{content:"";position:absolute;inset:6%;border:2px dashed rgba(255,197,106,.9);border-radius:3px;pointer-events:none;
    animation:mf-stitchin 1.2s ease-out calc(.55s + var(--i)*.11s) both}
.mf-page .felt-intro .felt-word,.mf-page .felt-intro .tagline,.mf-page .felt-intro .credit{animation:mf-rise .9s ease-out both}
.mf-page .felt-intro .felt-word{animation-delay:1.15s}
.mf-page .felt-intro .tagline{animation-delay:1.4s}
.mf-page .felt-intro .credit{animation-delay:1.55s}
@keyframes mf-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mf-page .felt-intro .scroll-cue{animation:mf-rise .8s ease-out 1.9s both,mf-bob 3.2s ease-in-out 2.7s infinite alternate}
@keyframes mf-bob{to{transform:translateY(6px)}}}
.mf-page .vh{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.mf-page .ft{display:inline}
.mf-page .ftw{display:inline}
.mf-page .ft img.fw{display:inline-block;max-width:none;height:auto!important;filter:none;box-shadow:none;border-radius:0;flex:none;position:static}

/* ---- Muskoka Pulse adapter for the Muskoka Folk page (hand-written; folk-proto.css above is generated) ---- */
.mf-page{background:var(--pulse-navy-deep) url(felt/felt-pulse-navydeep.webp) 0 0/var(--felt-tile-size);overflow-x:clip}
.mf-page .mf-soon{display:inline-block;margin:.35rem .6rem 0;white-space:nowrap;font:700 .875rem/1.2 "Source Sans 3",system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#FFC56A;vertical-align:middle}
.mf-page .is-soon{cursor:default}
.mf-page .qp[data-tip]:focus-visible{outline:3px solid #FFC56A;outline-offset:3px}
.mf-page .mf-example-note{max-width:44rem;margin:0 auto;padding:28px 24px 44px;text-align:center;font:italic 400 17px/1.5 "Muskoka Folk Serif",Georgia,serif;color:#EDE2CB}
/* v2.8: amber felt stitch under the Pulse header, this page only */
.folk-pg .site-head::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:20px;background:url(felt/stitch-amber-hd.svg) round no-repeat left center/34px 20px;pointer-events:none}
/* v2.7: amber felt Menu button on phones, this page only (one image per state; the "Menu" text stays for screen readers) */
@media (max-width:47.99rem){
  .js .folk-pg .menu-btn{width:152px;height:50px;min-height:0;padding:0;border:0;border-radius:12px;background:none;top:3px;-webkit-tap-highlight-color:transparent}
  .folk-pg .menu-btn::before{content:"";position:absolute;left:-8px;top:-8px;width:168px;height:66px;background:url(felt/menu-btn-amber-closed.webp) 0 0/100% 100% no-repeat}
  .folk-pg .menu-btn:active::before{background-image:url(felt/menu-btn-amber-pressed.webp)}
  .folk-pg .menu-btn[aria-expanded=true]::before{background-image:url(felt/menu-btn-amber-open.webp)}
  .folk-pg .menu-btn .menu-ico{visibility:hidden}
  .js .folk-pg .menu-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .folk-pg .menu-btn:focus-visible{outline:3px solid #FFC56A;outline-offset:4px}
  /* headrow 2026-11-03: the felt Menu button sits on the logo row, a touch smaller (still 44px tall) so the row fits 360px;
     the header gets 18px extra below the row so the amber stitch clears the button by about 16px (fixed height, no shift) */
  .js .folk-pg .menu-btn{width:134px;height:44px;top:0}
  .folk-pg .menu-btn::before{left:-7px;top:-7px;width:148px;height:58px}
  .folk-pg .head-wrap{padding-bottom:18px}
}
/* the kit's images carry intrinsic width/height (no layout shift); CSS sizes win, height follows the ratio */
.mf-page img{height:auto}
/* Pulse's global .chip (filter pills) must not leak into the example player */
.mf-page .chip{color:var(--folk-char);border:0;min-height:0;display:inline-block;flex:none}
.mf-page .chip:hover{background:var(--folk-oat) url(felt/felt-oat.webp) 0 0/var(--felt-tile-size)}
.mf-page .under .txt{color:var(--folk-bark);font-size:16px}
.mf-page .under .mf-soon{margin:0 0 0 -8px;white-space:nowrap}
.mf-page .is-soon:hover{transform:none;filter:none}
.mf-page .latest .mf-soon{color:var(--folk-red)}
.mf-page .nominate .mf-soon{color:var(--folk-oat)}
/* performance: sections below the felt intro are not rendered (so their felt textures are not fetched) until near the viewport */
.mf-page .sec{content-visibility:auto;contain-intrinsic-size:auto 640px}
/* tablet: the kit's 300px patch column + 44-50px felt title overflowed between 700px and 1000px */
.mf-page .latest{grid-template-columns:300px minmax(0,1fr)}
@media (min-width:701px) and (max-width:62.5rem){.mf-page .latest{grid-template-columns:minmax(0,1fr);gap:20px;padding:28px 32px}.mf-page .latest .patch{width:200px}}
@media (max-width:700px){.mf-page .latest{grid-template-columns:minmax(0,1fr)}}
@media (min-width:701px) and (max-width:62.5rem){.mf-page .quilt-sec{grid-template-columns:minmax(0,1fr);gap:32px}.mf-page .quilt{width:min(100%,600px);margin:0 auto}}
.mf-page .under .mf-button,.mf-page .btns .mf-button{flex:none}
html:not(.js) .mf-page img[data-src]{display:none}
.js .mf-page.mf-wait .sec{content-visibility:hidden;background-image:none!important}
.folk-pg .site-foot,.mf-page .mf-example-note{content-visibility:auto;contain-intrinsic-size:auto 520px}
.mf-page .ft .vh{font:400 16px/1 "Muskoka Folk Serif",Georgia,serif}
/* 2026-11-03 6:52 PM: the opened phone menu in felt too, this page only (matches the v2.7 felt Menu button and v2.8 stitch).
   Deep-navy felt panel with the amber running stitch along its top; a centred column framed by an amber stitched border;
   each link is a sewn felt patch (navy felt, cream stitch; the current page gets an amber stitch, the newsletter link is the
   amber felt pad like the Menu button). Escape, focus trap and scroll lock are the site's own menu JS, unchanged. */
@media (max-width:47.99rem){
  .js .folk-pg .main-nav{background:url(felt/stitch-amber-hd.svg) round no-repeat left -10px/34px 20px,var(--pulse-navy-deep,#0A1A2F) url(felt/felt-pulse-navydeep.webp) 0 0/384px;border-top:0;padding:30px var(--gut) 40px;text-align:center}
  .js .folk-pg .main-nav .nav{width:min(100%,20.5rem);margin:0 auto;padding:14px 12px;gap:12px;align-items:stretch;border:20px solid transparent;border-image:url(felt/stitch-border-amber-3x.webp) 96 round}
  .js .folk-pg .main-nav .nav li+li{border-top:0}
  .js .folk-pg .main-nav .nav li{display:block;margin:0}
  .js .folk-pg .main-nav .nav a{justify-content:center;text-align:center;min-height:56px;padding:6px 10px;border:12px solid transparent;border-image:url(felt/stitch-border-cream-3x.webp) 96 round;border-radius:0;
    background:#14395E url(felt/felt-pulse-navy.webp) 0 0/256px;background-clip:border-box;box-shadow:0 3px 0 rgba(0,0,0,.28),0 8px 14px -6px rgba(0,0,0,.55);
    color:#F6EEDD;font:500 1.5rem/1.15 var(--serif);letter-spacing:0;text-decoration:none}
  .js .folk-pg .main-nav .nav a::after{content:none}
  .js .folk-pg .main-nav .nav a[aria-current]{border-image-source:url(felt/stitch-border-amber-3x.webp);color:#FFC56A}
  .js .folk-pg .main-nav .nav-nl a{background:#FFC56A url(felt/felt-pulse-amber.webp) 0 0/256px;background-clip:border-box;border-image-source:url(felt/stitch-border-dark-3x.webp);color:#14395E;font:600 1.15rem/1.2 var(--sans)}
  .js .folk-pg .main-nav .nav a:hover{filter:brightness(1.08)}
  .js .folk-pg .main-nav .nav a:focus-visible{outline:3px solid #FFC56A;outline-offset:3px}
  .js .folk-pg .main-nav .nav-nl a:focus-visible{outline-color:#F6EEDD}
}
@media (max-width:47.99rem) and (prefers-reduced-motion:no-preference){
  .js .folk-pg .main-nav .nav a{transition:transform .12s ease-out,box-shadow .12s ease-out,filter .2s}
  .js .folk-pg .main-nav .nav a:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(0,0,0,.28),0 4px 8px -6px rgba(0,0,0,.55)}
}
