@font-face{font-family:'Arvo';src:url(/assets/f140eh400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Arvo';src:url(/assets/f140eh700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Work Sans';src:url(/assets/f140eb400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Work Sans';src:url(/assets/f140eb700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(/assets/f140em400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(/assets/f140em700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root{--font-head:'Arvo',Rockwell,Georgia,serif;--font-body:'Work Sans',Arial,sans-serif;--font-meta:'IBM Plex Mono',Consolas,monospace;--accent:#4338CA;--accent-soft:#E7E5F8;--bg:#FAFAF6}
*{box-sizing:border-box}body{margin:0;background:var(--bg)}
img{max-width:100%;height:auto}
a{color:var(--accent)}
h1 a,h2 a,h3 a,h4 a{color:inherit;text-decoration:none}

.wrap-140e{max-width:1100px;margin:0 auto;padding:0 20px}
article.post-140e table{border-collapse:collapse;width:100%}
article.post-140e th,article.post-140e td{border:1px solid #d5d5d0;padding:8px 10px;text-align:left}
#c140e{display:none;position:fixed;bottom:0;left:0;right:0;background:#1c1f1e;color:#fff;
padding:12px 16px;z-index:99;font-size:14px;text-align:center}
#c140e a{color:#cfe3da}#c140e button{margin-left:12px;padding:4px 16px;border:0;
border-radius:6px;cursor:pointer;background:var(--accent);color:#fff}

*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#211E38;font-family:var(--font-body);font-size:16.5px;line-height:1.68;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:#fff}.wrap-140e{max-width:1100px;margin:0 auto;padding:0 24px}header.site-140e{background:var(--bg);border-top:6px solid var(--accent);border-bottom:3px solid #17142E}header.site-140e .wrap-140e{padding-top:26px;padding-bottom:0}.masthead-140e{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;padding-bottom:16px}a.brand-140e{font-family:var(--font-head);font-weight:700;font-size:2rem;letter-spacing:-.01em;color:#17142E;text-decoration:none;display:inline-flex;align-items:center;gap:12px}a.brand-140e::before{content:"";width:.8em;height:.8em;background:var(--accent);box-shadow:5px 5px 0 var(--accent-soft);flex:none}a.brand-140e:hover{color:var(--accent)}.tagline-140e{font-family:var(--font-meta);font-size:.68rem;text-transform:uppercase;letter-spacing:.22em;color:#565178}nav.cats-140e{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0 20px;border-top:1px solid #D8D5E8}nav.cats-140e a{font-family:var(--font-meta);font-size:.71rem;text-transform:uppercase;letter-spacing:.08em;color:#2A2650;text-decoration:none;border:1.5px solid #B4AFDA;border-radius:999px;padding:7px 15px;background:#fff;transition:background .18s,color .18s,border-color .18s}nav.cats-140e a:hover{background:var(--accent);color:#fff;border-color:var(--accent)}main.wrap-140e{padding-top:42px;padding-bottom:70px}.hero-140e{display:grid;grid-template-columns:1.15fr .85fr;border:3px solid #17142E;background:#fff;box-shadow:12px 12px 0 var(--accent-soft);margin-bottom:56px}.hero-140e>div:first-child{padding:48px 44px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero-140e .chip-140e{margin-bottom:18px}.hero-140e h1{font-family:var(--font-head);font-weight:700;font-size:clamp(2rem,4.2vw,3.05rem);line-height:1.12;color:#17142E;margin:0 0 .45em}.hero-140e p{margin:0 0 1.2em;color:#43405F;font-size:1.06rem;max-width:34em}.hero-140e .byline-140e{margin:0}.hero-140e>div:last-child{border-left:3px solid #17142E;display:flex;min-height:340px;background:var(--accent-soft)}.hero-140e img{width:100%;height:100%;object-fit:cover}.byline-140e{font-family:var(--font-meta);font-size:.71rem;text-transform:uppercase;letter-spacing:.14em;color:#565178}.chip-140e{display:inline-block;font-family:var(--font-meta);font-size:.67rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#38309E;background:var(--accent-soft);padding:5px 13px;border-radius:999px;text-decoration:none}a.chip-140e:hover{background:var(--accent);color:#fff}.section-h-140e{font-family:var(--font-head);font-weight:700;font-size:1.45rem;color:#17142E;display:flex;align-items:center;gap:16px;margin:0 0 28px}.section-h-140e::before{content:"";width:13px;height:13px;background:var(--accent);flex:none}.section-h-140e::after{content:"";flex:1;height:4px;background:#17142E}h1.section-h-140e{font-size:1.8rem;margin-bottom:34px}.rows-140e{counter-reset:lesson;display:flex;flex-direction:column}.rows-140e .row-140e{counter-increment:lesson;display:flex;gap:28px;align-items:flex-start;padding:30px 0;border-top:3px solid #17142E}.rows-140e .row-140e:last-child{border-bottom:3px solid #17142E}.rows-140e .row-140e::before{content:counter(lesson,decimal-leading-zero);font-family:var(--font-meta);font-weight:700;font-size:.95rem;color:var(--accent);border:2px solid var(--accent);width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex:none;background:#fff;box-shadow:4px 4px 0 var(--accent-soft)}.rows-140e .row-140e>a{flex:none;width:240px;border:2px solid #17142E;overflow:hidden;background:var(--accent-soft)}.rows-140e .row-140e img{width:100%;height:160px;object-fit:cover;transition:transform .3s ease}.rows-140e .row-140e:hover img{transform:scale(1.05)}.rows-140e .pad-140e{flex:1;min-width:0}.rows-140e h3{margin:.4rem 0 .55rem;font-family:var(--font-head);font-size:1.35rem;line-height:1.28;font-weight:700}.rows-140e h3 a{color:#17142E;text-decoration:none;background-image:linear-gradient(var(--accent),var(--accent));background-size:0 3px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .25s,color .2s}.rows-140e h3 a:hover{background-size:100% 3px;color:var(--accent)}.rows-140e .pad-140e p{margin:0 0 .7rem;color:#43405F;font-size:.96rem}time{font-family:var(--font-meta);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#5C5680}.grid-140e{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card-140e{background:#fff;border:2px solid #17142E;border-top:6px solid var(--accent);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.card-140e:hover{transform:translate(-3px,-3px);box-shadow:7px 7px 0 var(--accent-soft)}.card-140e>a{display:block;overflow:hidden;border-bottom:2px solid #17142E}.card-140e img{width:100%;height:170px;object-fit:cover}.card-140e .pad-140e{padding:18px 20px 20px;display:flex;flex-direction:column;gap:10px;flex:1;align-items:flex-start}.card-140e h3{margin:0;font-family:var(--font-head);font-size:1.08rem;line-height:1.35;font-weight:700}.card-140e h3 a{color:#17142E;text-decoration:none}.card-140e h3 a:hover{color:var(--accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.card-140e time{margin-top:auto}.card-140e.noimg-140e{background:linear-gradient(160deg,#fff 60%,var(--accent-soft))}.card-140e.noimg-140e .pad-140e::before{content:"§";font-family:var(--font-head);font-size:1.6rem;color:var(--accent);line-height:1}p:empty{display:none}article.post-140e{max-width:760px;margin:0 auto}.post-140e>.chip-140e{margin-bottom:16px}.post-140e h1{font-family:var(--font-head);font-weight:700;font-size:clamp(1.9rem,4.5vw,2.7rem);line-height:1.15;color:#17142E;margin:14px 0 0;padding-bottom:20px;border-bottom:4px solid #17142E;position:relative}.post-140e h1::after{content:"";position:absolute;left:0;bottom:-4px;width:120px;height:4px;background:var(--accent)}.post-140e .byline-140e{display:block;margin:18px 0 30px}.post-140e .featured-140e{border:3px solid #17142E;box-shadow:10px 10px 0 var(--accent-soft);margin:0 0 38px;background:var(--accent-soft)}.post-140e .featured-140e img{width:100%;max-height:440px;object-fit:cover;border:none}.post-140e p{margin:0 0 1.3em}.post-140e>.featured-140e+p,.post-140e>.byline-140e+p{font-size:1.16rem;line-height:1.7;color:#312D52}.post-140e h2{font-family:var(--font-head);font-weight:700;font-size:1.55rem;line-height:1.25;color:#17142E;margin:2.2em 0 .7em;padding-top:.75em;border-top:3px solid #17142E;position:relative}.post-140e h2::before{content:"";position:absolute;top:-3px;left:0;width:68px;height:3px;background:var(--accent)}.post-140e h3{font-family:var(--font-head);font-weight:700;font-size:1.18rem;color:var(--accent);margin:1.8em 0 .55em}.post-140e ul,.post-140e ol{margin:0 0 1.4em;padding-left:1.45em}.post-140e li{margin:.45em 0}.post-140e li::marker{color:var(--accent);font-weight:700}.post-140e blockquote{margin:2em 0;padding:24px 28px;background:#fff;border-left:6px solid var(--accent);border-top:1px solid #D8D5E8;border-bottom:1px solid #D8D5E8;font-family:var(--font-head);font-size:1.12rem;line-height:1.55;color:#2A2650}.post-140e blockquote p{margin:0}.post-140e blockquote p+p{margin-top:.8em}.post-140e a{color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}.post-140e a:hover{background:var(--accent-soft)}.post-140e table{width:100%;border-collapse:collapse;margin:2em 0;font-size:.93rem;background:#fff;border:2px solid #17142E}.post-140e th{background:#17142E;color:#fff;font-family:var(--font-meta);font-weight:500;font-size:.71rem;text-transform:uppercase;letter-spacing:.08em;padding:11px 14px;text-align:left}.post-140e td{padding:10px 14px;border-top:1px solid #D8D5E8;vertical-align:top}.post-140e tr:nth-child(even) td{background:#F3F2FA}.post-140e figure{margin:2em 0}.post-140e img{border:2px solid #17142E}.post-140e figcaption{font-family:var(--font-meta);font-size:.71rem;color:#5C5680;text-transform:uppercase;letter-spacing:.1em;margin-top:10px}.tags-140e{margin:46px 0 14px;padding-top:24px;border-top:3px solid #17142E;display:flex;flex-wrap:wrap;gap:10px}.post-140e+.section-h-140e,article.post-140e~h2.section-h-140e{margin-top:56px}article.post-140e~.grid-140e{margin-top:8px}.prose-140e{max-width:760px;margin:0 auto}.prose-140e h1{font-family:var(--font-head);font-weight:700;font-size:clamp(1.8rem,4vw,2.4rem);line-height:1.18;color:#17142E;margin:0 0 .3em;padding-bottom:18px;border-bottom:4px solid #17142E;position:relative}.prose-140e h1::after{content:"";position:absolute;left:0;bottom:-4px;width:110px;height:4px;background:var(--accent)}.prose-140e h2{font-family:var(--font-head);font-weight:700;font-size:1.4rem;color:#17142E;margin:2em 0 .6em}.prose-140e h3{font-family:var(--font-head);font-size:1.1rem;color:var(--accent);margin:1.6em 0 .5em}.prose-140e p{margin:0 0 1.25em}.prose-140e ul,.prose-140e ol{margin:0 0 1.35em;padding-left:1.45em}.prose-140e li::marker{color:var(--accent);font-weight:700}.prose-140e a{color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}.prose-140e a:hover{background:var(--accent-soft)}@media (max-width:820px){.hero-140e{grid-template-columns:1fr;box-shadow:8px 8px 0 var(--accent-soft)}.hero-140e>div:first-child{padding:36px 30px}.hero-140e>div:last-child{border-left:none;border-top:3px solid #17142E;min-height:240px}.grid-140e{grid-template-columns:repeat(2,1fr)}.rows-140e .row-140e{gap:20px}.rows-140e .row-140e>a{width:190px}.rows-140e .row-140e img{height:140px}a.brand-140e{font-size:1.7rem}}@media (max-width:640px){body{font-size:16px}main.wrap-140e{padding-top:30px}.grid-140e{grid-template-columns:1fr}.hero-140e>div:first-child{padding:28px 22px}.hero-140e h1{font-size:1.75rem}.rows-140e .row-140e{flex-wrap:wrap;padding:24px 0}.rows-140e .row-140e>a{order:-1;width:100%}.rows-140e .row-140e img{height:200px}.rows-140e .row-140e::before{width:38px;height:38px;font-size:.85rem}.rows-140e h3{font-size:1.2rem}nav.cats-140e{gap:6px}nav.cats-140e a{padding:6px 11px;font-size:.66rem}.masthead-140e{gap:8px;flex-direction:column;align-items:flex-start}.post-140e .featured-140e{box-shadow:6px 6px 0 var(--accent-soft)}.post-140e h1{font-size:1.7rem}}
footer.site-140e{background:var(--accent);color:#EDEBFC;margin-top:76px;border-top:6px solid #2A2170}footer.site-140e .wrap-140e{padding-top:54px;padding-bottom:28px}.foot-140e{display:grid;grid-template-columns:2fr 1fr 1fr;gap:44px;padding-bottom:38px}.foot-two-140e{display:grid;grid-template-columns:2fr 1fr;gap:44px;padding-bottom:38px}.foot-center-140e{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding-bottom:38px}.foot-center-140e .foot-links-140e{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;list-style:none;margin:0;padding:0}footer.site-140e h4{font-family:var(--font-head);font-weight:700;color:#fff;font-size:1rem;letter-spacing:.04em;text-transform:uppercase;margin:0 0 16px;padding-bottom:9px;border-bottom:3px solid rgba(255,255,255,.85);display:inline-block}footer.site-140e p{margin:0 0 1em;color:#E2DFFA;font-size:.94rem;line-height:1.6}footer.site-140e ul{list-style:none;margin:0;padding:0}footer.site-140e li{margin:.6em 0}footer.site-140e .foot-140e a,footer.site-140e .foot-two-140e a,footer.site-140e .foot-center-140e a{color:#fff;text-decoration:none;font-family:var(--font-body);border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:1px;transition:border-color .18s,color .18s}footer.site-140e .foot-140e a:hover,footer.site-140e .foot-two-140e a:hover,footer.site-140e .foot-center-140e a:hover{color:#fff;border-bottom:2px solid #fff}footer.site-140e a:focus-visible{outline:2px solid #fff;outline-offset:3px}.legal-140e{border-top:1px solid rgba(255,255,255,.3);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--font-meta);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#E2DFFA}@media (max-width:820px){.foot-140e{grid-template-columns:1fr 1fr;gap:36px}.foot-two-140e{grid-template-columns:1fr;gap:36px}}@media (max-width:640px){.foot-140e{grid-template-columns:1fr;gap:30px}.foot-center-140e .foot-links-140e{gap:10px 18px}.legal-140e{flex-direction:column;gap:8px}}
@media(max-width:640px){
.hero-cover-140e .cover-text-140e{position:static;inset:auto;background:none;padding:14px 16px 18px}
.hero-cover-140e h1{font-size:1.35rem}
.hero-cover-140e h1 a{color:var(--ink,inherit)}
.hero-cover-140e p{color:var(--muted,inherit)}
.hero-cover-140e .byline-140e{color:var(--muted,inherit)}
.hero-cover-140e .cover-text-140e > div{display:block;max-width:100%;background:none;
padding:0;border-top:0}
}
