.defiel-hacks{--shk-ink:#152024;--shk-paper:#f2f4f1;--shk-panel:#fff;--shk-green:#18745b;--shk-amber:#bd7400;--shk-red:#b33d34;--shk-line:#cbd3d0;width:100%;overflow:hidden;background:var(--shk-paper);color:var(--shk-ink)}.defiel-hacks *{box-sizing:border-box;min-width:0}.shk-shell{width:min(1400px,100%);margin-inline:auto;padding-inline:2rem}.shk-kicker{margin:0 0 .75rem;font-family:var(--defiel-font-mono,monospace);font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.shk-hero{position:relative;min-height:670px;overflow:hidden;background:#131b1e;color:#fff}.shk-hero__media{position:absolute;inset:0 0 0 48%}.shk-hero__media::after{position:absolute;inset:0;background:linear-gradient(90deg,#131b1e,rgba(19,27,30,.65) 35%,transparent),linear-gradient(0deg,rgba(19,27,30,.68),transparent 60%);content:""}.shk-hero__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.08)}.shk-hero__inner{position:relative;z-index:1;display:flex;justify-content:flex-end;flex-direction:column;min-height:670px;padding-top:5rem;padding-bottom:4.5rem}.shk-hero h1{max-width:9ch;margin:0;color:#fff;font-size:clamp(4rem,7vw,7.6rem);line-height:.82;letter-spacing:-.06em}.shk-hero h1 span{display:block;font-family:var(--defiel-font-mono,monospace);font-size:.38em;letter-spacing:.04em;color:#ffb12b}.shk-deck{max-width:650px;margin:1.7rem 0 0;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.55;color:#d3dddc}.shk-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;margin-top:2rem;font-family:var(--defiel-font-mono,monospace);font-size:.62rem;text-transform:uppercase;color:#93a5a4}.shk-meta span+span{padding-left:1.2rem;border-left:1px solid #51605f}.shk-legend{background:#dde3df}.shk-legend__grid{display:grid;grid-template-columns:180px repeat(3,1fr);gap:2rem;padding-top:2rem;padding-bottom:2rem}.shk-legend__grid>div{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center}.shk-legend span,.shk-card span{display:inline-flex;width:max-content;padding:.32rem .5rem;font-family:var(--defiel-font-mono,monospace);font-size:.57rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff}.is-useful{background:var(--shk-green)}.is-limited{background:var(--shk-amber)}.is-skip{background:var(--shk-red)}.shk-legend p{margin:0;font-size:.88rem;line-height:1.45}.shk-layout{display:grid;grid-template-columns:230px minmax(0,960px);gap:clamp(3rem,7vw,7rem);align-items:start;padding-top:clamp(4rem,7vw,7rem);padding-bottom:clamp(5rem,9vw,9rem)}.shk-toc{position:sticky;top:2rem;padding-top:1.2rem;border-top:4px solid var(--shk-ink)}.shk-toc nav{display:grid}.shk-toc a{padding:.75rem 0;border-bottom:1px solid var(--shk-line);font-family:var(--defiel-font-mono,monospace);font-size:.65rem;color:#526460;text-decoration:none}.shk-toc a:hover,.shk-toc a:focus-visible{color:var(--shk-green)}.shk-article>p{margin:0 0 1.2rem;font-size:1.08rem;line-height:1.8}.shk-article .shk-lead{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.55}.shk-alert{display:grid;grid-template-columns:190px 1fr;gap:2rem;margin:2rem 0;padding:1.5rem;background:var(--shk-ink);color:#fff}.shk-alert strong{font-family:var(--defiel-font-mono,monospace);font-size:.65rem;text-transform:uppercase;color:#ffc866}.shk-alert p{margin:0;line-height:1.65;color:#d3dddc}.shk-section{margin-top:clamp(5rem,9vw,8rem);scroll-margin-top:1rem}.shk-section>header{margin-bottom:2rem;padding-bottom:1.3rem;border-bottom:4px solid var(--shk-ink)}.shk-section h2,.shk-principles h2{max-width:15ch;margin:0;font-size:clamp(2.5rem,4.5vw,4.6rem);line-height:.95;letter-spacing:-.04em}.shk-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--shk-line);border:1px solid var(--shk-line)}.shk-card{background:var(--shk-panel)}.shk-card figure{margin:0;overflow:hidden;background:#e0e5e3}.shk-card figure img{display:block;width:100%;height:230px;object-fit:cover}.shk-card>div{position:relative;min-height:240px;padding:1.5rem}.shk-card b{position:absolute;top:1.55rem;right:1.5rem;font-family:var(--defiel-font-mono,monospace);font-size:.68rem;color:#71817e}.shk-card h3{margin:.9rem 0 .55rem;font-size:1.28rem}.shk-card p{margin:0;line-height:1.65;color:#52635f}.shk-principles{margin-top:clamp(6rem,10vw,9rem);padding:clamp(3rem,6vw,5rem);background:var(--shk-ink);color:#fff;scroll-margin-top:1rem}.shk-principles h2{max-width:14ch;color:#fff}.shk-principles>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2.5rem;background:#4a5856}.shk-principles section{padding:1.5rem;background:#1b282b}.shk-principles section span{font-family:var(--defiel-font-mono,monospace);font-size:.64rem;color:#ffc866}.shk-principles h3{margin:.7rem 0 .5rem}.shk-principles section p{margin:0;line-height:1.65;color:#c7d2d0}.shk-principles footer{display:flex;justify-content:space-between;gap:2rem;margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid #4a5856;font-family:var(--defiel-font-mono,monospace);font-size:.66rem;text-transform:uppercase}.shk-principles footer span{color:#9fb0ad}.shk-principles a{color:#fff;text-decoration:none}.defiel-hacks a:focus-visible{outline:2px solid #ffc866;outline-offset:3px}
@media(max-width:1030px){.shk-hero__media{inset:0}.shk-hero__media::after{background:rgba(19,27,30,.72)}.shk-layout{grid-template-columns:1fr}.shk-toc{position:static}.shk-toc nav{grid-template-columns:repeat(2,1fr);gap:0 1.5rem}.shk-article{max-width:900px}.shk-legend__grid{grid-template-columns:1fr repeat(3,1fr)}}
@media(max-width:720px){.shk-shell{padding-inline:1.2rem}.shk-hero,.shk-hero__inner{min-height:630px}.shk-hero h1{font-size:4rem}.shk-meta span+span{padding-left:0;border-left:0}.shk-legend__grid,.shk-toc nav,.shk-cards,.shk-principles>div{grid-template-columns:1fr}.shk-legend__grid>div{grid-template-columns:80px 1fr}.shk-section h2,.shk-principles h2{font-size:2.4rem}.shk-card>div{min-height:0}.shk-card figure img{height:220px}.shk-alert{grid-template-columns:1fr;gap:.6rem}.shk-principles{margin-inline:-1.2rem;padding:2.7rem 1.2rem}.shk-principles footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
