@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800;900&family=Special+Elite&family=Staatliches&display=swap');
/* Header, footer and button values follow the current JP226Prints.au source. */
:root{--jp-ink:#171714;--jp-paper:#c9b98f;--jp-panel:#f4ead1;--jp-soft:#fff8e8;--jp-red:#db2c11;--jp-gold:#f0d2c7;--jp-green:#31533b;--jp-line:#b5a273;--jp-strong:#79663f;--jp-muted:#5d5948;--jp-radius:16px;--jp-shadow:0 18px 48px rgba(55,43,20,.22)}
body::before{content:"";position:fixed;z-index:40;inset:0 0 auto;height:9px;background:var(--jp-red);border-bottom:2px solid var(--jp-ink);pointer-events:none}
.jp226-header,.jp226-footer,.jp226-donation-bar{box-sizing:border-box;width:min(calc(100% - 32px),1280px);color:var(--jp-ink);font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-size:16px;line-height:1.45;letter-spacing:normal;border:1px solid var(--jp-strong);border-radius:var(--jp-radius);box-shadow:var(--jp-shadow)}
.jp226-header{display:block;min-height:0;margin:25px auto 18px;padding:18px 24px 0;background:rgba(244,234,209,.97);border-bottom:5px solid var(--jp-red);overflow:hidden}
.jp226-header-main{display:grid;grid-template-columns:minmax(285px,1fr) auto auto;gap:clamp(16px,2.2vw,32px);align-items:center}
.jp226-brand{display:inline-flex;align-items:center;min-width:0;gap:18px;letter-spacing:normal;text-decoration:none;color:var(--jp-ink)}
.jp226-brand img{display:block;flex:0 0 auto;width:126px;height:auto;max-height:96px;object-fit:contain}
.jp226-brand-copy{display:grid;gap:3px;min-width:0}
.jp226-brand-copy strong{color:var(--jp-green);font-family:'Staatliches',Impact,'Arial Narrow',sans-serif;font-size:clamp(28px,2.5vw,42px);font-weight:400;line-height:.92;letter-spacing:.025em;white-space:nowrap}
.jp226-brand-copy>span{color:var(--jp-muted);font-size:clamp(15px,1.3vw,20px);font-weight:600;line-height:1.2;letter-spacing:.01em;white-space:nowrap}
.jp226-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:760px;margin:0}
.jp226-header nav a,.jp226-nav-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:10px 14px;color:var(--jp-ink);background:rgba(255,248,232,.72);border:1px solid var(--jp-line);border-radius:11px;font:900 13px/1.2 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:.035em;text-transform:uppercase;text-decoration:none;opacity:1;white-space:nowrap;transition:color .18s,background .18s,border-color .18s,transform .18s;cursor:pointer}
.jp226-header nav a:hover,.jp226-header nav a:focus-visible,.jp226-nav-button:hover,.jp226-nav-button:focus-visible{color:var(--jp-ink);background:#fffdf6;border-color:var(--jp-red);transform:translateY(-2px)}
.jp226-header nav a[aria-current="page"]{color:#fffaf0;background:var(--jp-green);border-color:#24452f}
.jp226-header #progress-count{background:var(--jp-green);color:#fffaf0;border-radius:999px;min-width:18px;padding:2px 4px;font:10px/1.1 'Courier New',monospace;text-align:center}
.jp226-donate{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:52px;padding:13px 18px;color:#fffaf0!important;background:var(--jp-red);border:1px solid #8e190f;border-radius:10px;font:900 14px/1.25 'Barlow Condensed','Arial Narrow',sans-serif;letter-spacing:.055em;text-transform:uppercase;text-decoration:none;white-space:nowrap;box-shadow:0 8px 20px rgba(55,43,20,.16);transition:background .18s,transform .18s,box-shadow .18s}
.jp226-donate:hover,.jp226-donate:focus-visible{background:#b72112;transform:translateY(-2px);box-shadow:0 11px 24px rgba(55,43,20,.22)}
.jp226-header-meta{display:flex;align-items:center;gap:16px;margin-top:16px;padding:13px 0 15px;border-top:1px solid rgba(121,102,63,.28);color:var(--jp-muted);font:11.5px/1.4 'Special Elite','Courier New',monospace;letter-spacing:.03em;text-transform:uppercase}
.jp226-free-pill{display:inline-flex;align-items:center;padding:8px 12px 6px;color:#fffaf0;background:var(--jp-green);border-radius:999px;font-weight:800;white-space:nowrap}
.jp226-donation-bar{margin:0 auto 18px;padding:20px 22px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;color:#fffaf0;background:linear-gradient(120deg,#263f2e 0%,var(--jp-green) 58%,#263f2e 100%);border:1px solid #203727;border-bottom:5px solid var(--jp-red)}
.jp226-donation-icon{display:grid;place-items:center;width:58px;height:58px;color:#fffaf0;background:var(--jp-red);border:1px solid #8e190f;border-radius:16px;font-size:23px;box-shadow:0 8px 18px rgba(15,28,18,.22)}
.jp226-donation-bar strong{display:block;margin-bottom:4px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:clamp(19px,2vw,25px);font-weight:600;letter-spacing:.012em;line-height:1.1}
.jp226-donation-bar p{margin:0;color:rgba(255,250,240,.86);font-size:16px;line-height:1.35}
.jp226-donation-bar em{font-style:italic;color:inherit}
.jp226-donation-bar>a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:54px;padding:14px 18px;color:#fffaf0;background:var(--jp-red);border:1px solid #8e190f;border-radius:12px;font-weight:900;line-height:1.1;text-decoration:none;white-space:nowrap;transition:background .18s,transform .18s}
.jp226-donation-bar>a:hover{background:#b72112;transform:translateY(-2px)}
.jp226-footer{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin:18px auto 26px;padding:22px 26px;background:rgba(244,234,209,.97);border-top:5px solid var(--jp-red)}
.jp226-footer-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.jp226-footer-brand{display:inline-flex;text-decoration:none}
.jp226-footer-brand img{width:92px;height:auto;max-height:70px;object-fit:contain}
.jp226-footer-head p,.jp226-contact{margin:0;color:var(--jp-muted);font:700 10px/1.6 'Courier New',monospace;letter-spacing:.1em;text-transform:uppercase}
.jp226-contact{font-size:11px}
.jp226-footer .jp226-footer-sites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 0;padding:0;border:0;width:100%}
.jp226-footer-sites a{min-width:0;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-decoration:none;font:800 11px/1.4 'Courier New',monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--jp-ink);background:#fffaf0;border:1px solid var(--jp-line);border-radius:8px;transition:color .2s,background .2s,border-color .2s;overflow-wrap:anywhere}
.jp226-footer-sites a:hover,.jp226-footer-sites a:focus-visible{color:#fffaf0;background:var(--jp-green);border-color:var(--jp-green)}
.jp226-footer .jp226-socials{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:2px 0 0;padding:0;border:0;width:100%}
.jp226-socials a{padding:8px 13px;display:inline-flex;align-items:center;gap:8px;color:#fffaf0;text-decoration:none;font:800 10px/1.4 'Courier New',monospace;letter-spacing:.04em;text-transform:uppercase;background:var(--jp-green);border:1px solid var(--jp-green);border-radius:999px;transition:color .2s,background .2s,border-color .2s}
.jp226-socials b{color:var(--jp-gold);font-weight:700}
.jp226-socials .social-icon{width:18px;height:18px;flex:0 0 18px;display:inline-grid;place-items:center;color:var(--jp-gold)}
.jp226-socials .social-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.jp226-socials .social-icon .icon-fill{fill:currentColor;stroke:none}
.jp226-socials a:hover,.jp226-socials a:focus-visible{background:var(--jp-red);border-color:var(--jp-red)}
.jp226-socials a:hover b,.jp226-socials a:hover .social-icon{color:#fffaf0}
.jp226-footer-note{border-top:1px solid var(--jp-line);padding-top:18px;color:var(--jp-muted)}
.jp226-footer-note strong{display:block;font-size:16px;line-height:1.3;color:var(--jp-green);margin-bottom:8px}
.jp226-footer-note p{font:12px/1.6 'Barlow Condensed','Arial Narrow',Arial,sans-serif;letter-spacing:normal;text-transform:none;margin:0 0 6px;max-width:none;opacity:1;color:var(--jp-muted)}
.jp226-footer-meta{display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--jp-line);padding-top:15px;color:var(--jp-muted);font:9px/1.6 'Courier New',monospace}
.jp226-footer-meta button,.jp226-footer-meta a{font:10px/1.6 'Courier New',monospace;color:var(--jp-muted);margin-left:auto}
.jp226-header :focus-visible,.jp226-footer :focus-visible,.jp226-donation-bar :focus-visible{outline:3px solid #b44b05;outline-offset:4px}
/* Matching rounded controls throughout lessons and resource tools. */
.button,.btn,.nbtn,.filter,.spot-options button,.jp226-course-page button:not(.close):not(.text-button),.jp226-resource-page button:not(.close):not(.text-button){border-radius:10px}
.button,.btn{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:900;letter-spacing:.035em}
.button.primary,.button.donate,.btn:not(.ghost){background:var(--jp-red);border-color:#8e190f;color:#fffaf0}
.button.primary:hover,.button.donate:hover,.btn:not(.ghost):hover{background:#b72112}
.button.dark{background:var(--jp-green);border-color:#24452f;color:#fffaf0}
.button.outline{border-color:var(--jp-strong);background:var(--jp-soft);color:var(--jp-ink)}
.filter.active{background:var(--jp-green);border-color:#24452f}
.finder input,.finder select,.lab-form input,.lab-form select,.lab-form textarea,.jp226-resource-page input,.jp226-resource-page textarea{border-radius:10px}
.jp226-course-page,.jp226-resource-page{--radius:10px}
.jp226-course-page .bar,.jp226-resource-page>.bar{position:static;border:1px solid var(--jp-line);border-bottom:3px solid var(--jp-green);border-radius:12px;width:min(calc(100% - 32px),1100px);margin:18px auto;background:var(--jp-panel);box-shadow:none}
.jp226-course-page .foot{display:none}
.jp226-resource-page>.bar .brand{display:none}
@media(max-width:1120px){.jp226-header-main{grid-template-columns:minmax(210px,1fr) auto auto;gap:12px}.jp226-brand img{width:108px}.jp226-brand-copy strong{font-size:30px}.jp226-brand-copy>span{font-size:16px}.jp226-header nav{max-width:520px;gap:6px}.jp226-header nav a,.jp226-nav-button{min-height:40px;padding:8px 10px;font-size:12px}}
@media(max-width:960px){.jp226-header{padding:15px 18px 0}.jp226-header-main{grid-template-columns:1fr auto;grid-template-areas:'brand donate' 'nav nav'}.jp226-brand{grid-area:brand}.jp226-header nav{grid-area:nav;max-width:none;justify-content:flex-start}.jp226-header-main>.jp226-donate{grid-area:donate}.jp226-header nav a,.jp226-nav-button{flex:1 1 auto}.jp226-donation-bar{grid-template-columns:auto minmax(0,1fr)}.jp226-donation-bar>a{grid-column:2;justify-self:start}}
@media(max-width:680px){.jp226-header,.jp226-donation-bar,.jp226-footer{width:min(calc(100% - 18px),1280px)}.jp226-header{margin:16px auto 10px;padding:13px 12px 0}.jp226-header-main{gap:12px 8px}.jp226-brand{gap:10px}.jp226-brand img{width:82px;max-height:66px}.jp226-brand-copy strong{font-size:27px}.jp226-brand-copy>span{font-size:14px}.jp226-donate{min-height:44px;padding:10px 12px;font-size:12px}.jp226-header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.jp226-header nav a,.jp226-nav-button{min-width:0;min-height:42px;padding:8px 5px;font-size:12px;white-space:normal;text-align:center}.jp226-header-meta{align-items:flex-start;flex-direction:column;gap:8px;margin-top:12px;padding:11px 0 12px;font-size:10px}.jp226-free-pill{padding:7px 10px 5px}.jp226-donation-bar{margin:0 auto 10px;padding:16px;gap:12px}.jp226-donation-icon{width:48px;height:48px;border-radius:13px;font-size:18px}.jp226-donation-bar strong{font-size:19px}.jp226-donation-bar p{margin-top:6px;font-size:14px}.jp226-donation-bar>a{grid-column:1/-1;width:100%;min-height:48px}.jp226-footer{padding:20px 16px;margin-block:10px}.jp226-footer-head{gap:15px}.jp226-footer-head p{font-size:9px}.jp226-footer-head>.jp226-donate{margin-left:auto}.jp226-footer .jp226-footer-sites{grid-template-columns:1fr 1fr}.jp226-footer-sites a{font-size:9px;padding:10px}.jp226-socials a{padding:8px 10px;font-size:9px}.jp226-footer-meta{gap:10px 18px}.jp226-footer-meta button,.jp226-footer-meta a{margin-left:0}.jp226-footer .jp226-socials{justify-content:flex-start}}
@media(max-width:420px){.jp226-brand img{width:74px}.jp226-brand-copy strong{font-size:24px}.jp226-brand-copy>span{font-size:12px;white-space:normal}.jp226-donate{padding-inline:10px}.jp226-footer .jp226-footer-sites{grid-template-columns:1fr}.jp226-footer-head p{max-width:100px}.jp226-contact{font-size:10px}}
@media(max-width:420px){.jp226-brand-copy{max-width:125px}.jp226-brand-copy strong{white-space:normal;line-height:1}.jp226-brand-copy>span{white-space:normal}}
@media(max-width:360px){.jp226-brand img{width:62px}.jp226-brand-copy{max-width:108px}.jp226-brand-copy strong{font-size:22px}.jp226-brand{gap:8px}}
@media(prefers-reduced-motion:reduce){.jp226-header *,.jp226-footer *,.jp226-donation-bar *{transition:none}}
@media print{body::before,.jp226-header,.jp226-donation-bar,.jp226-footer{display:none!important}}
