:root{color-scheme:dark;--felt:#073a29;--ivory:#f4e6cc;--muted:#d1c7ae;--ink:#202c23;--red:#861f19;--gold:#d5ad68;font-family:Georgia,'Times New Roman',serif;color:var(--ivory);background:var(--felt)}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.25em}button{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--ivory);outline-offset:6px}button:disabled{cursor:default}.skip-link{position:fixed;left:1rem;top:1rem;z-index:20;padding:.9rem 1.2rem;background:var(--ivory);color:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}
.table{position:relative;isolation:isolate;min-height:100svh;padding:clamp(4rem,11vh,7.5rem) 0 1.3rem;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 42%,#114e3610 10%,#00170ec0 100%),url('assets/felt.webp') repeat;background-size:auto,500px 190px}.masthead{position:relative;z-index:1;padding:0 13%;text-align:center}.masthead h1{font-weight:400;line-height:1.18;font-size:clamp(2rem,3.3vw,3.7rem);letter-spacing:.025em;margin:0;text-wrap:balance}.hand{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.65rem,1vw,1.2rem);width:87%;max-width:1460px;margin:clamp(4.5rem,11vh,7rem) auto 0;perspective:1400px}.card{display:block;min-width:0;position:relative;text-decoration:none;aspect-ratio:278/431;transform-origin:center;outline-offset:8px!important;border-radius:7%;filter:drop-shadow(0 9px 5px #0005);transition:filter 180ms}.card-body{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 500ms cubic-bezier(.2,.7,.2,1)}.card-front{display:block;width:100%;height:100%;object-fit:fill;border-radius:7%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.card-back{position:absolute;inset:0;background:#092c21;border:2px solid #c29a56;border-radius:7%;transform:rotateY(180deg);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:inset 0 0 0 4px #092c21,inset 0 0 0 5px #b58d4f;display:grid;place-items:center}.card-back:before{content:'';position:absolute;inset:8px;border-radius:5%;background:url('assets/felt.webp');opacity:.2}.card-back img{width:42%;position:relative}.face-down .card-body{transform:rotateY(180deg)}.card:not(.animating):hover .card-body,.card:not(.animating):focus-visible .card-body{transform:translateY(-10px) rotate(-1deg)}.card:not(.animating):hover{filter:drop-shadow(0 17px 9px #0006)}
.table-caption{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:1.2rem;min-height:3rem;margin:1.5rem auto 0;padding:0 1rem;text-align:center;font-size:.9rem;color:var(--muted)}.table-caption p{margin:0}.deal-controls{display:flex;gap:.75rem}.deal-controls[hidden],button[hidden]{display:none}.deal-controls button{border:0;background:transparent;color:var(--ivory);padding:.75rem .25rem;text-decoration:underline;text-underline-offset:.3em;min-height:44px}.table-footer{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:2.5rem;width:75%;margin:auto auto 0;padding-top:4.5rem;font-family:Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.table-footer nav{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.table-footer a{padding:.65rem 0;min-height:44px;display:flex;align-items:center;text-decoration:none;color:var(--ivory)}.table-footer a:hover{text-decoration:underline}.github-link{border-bottom:1px solid #d1c7ae75}.table-props{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.prop{position:absolute;object-fit:contain;height:auto}.chips-left{top:0;left:0;width:11.2%;max-width:187px}.chips-right{top:0;right:0;width:13.2%;max-width:221px}.euros{right:0;bottom:0;width:22.3%;max-width:373px}.spare-backs{left:0;bottom:0;width:21%;max-width:350px}
.content-sections{max-width:850px;margin:0 auto;padding:4rem 1.5rem}.enhanced .content-sections{display:none}.section-content{padding:2.5rem 0;line-height:1.75;font-family:Arial,Helvetica,sans-serif;font-size:1rem}.section-content h2{font:400 clamp(2rem,3vw,3rem)/1.12 Georgia,serif;margin:.9rem 0 1.5rem;text-wrap:balance;letter-spacing:-.025em}.section-content h3{font:400 1.7rem/1.2 Georgia,serif;margin:.5rem 0 1rem}.section-content p{margin:0 0 1.2rem}.section-content .lead{font:400 1.2rem/1.6 Georgia,serif}.section-kicker{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.section-kicker span{color:var(--red)}.project{padding:1.6rem 0;border-top:1px solid #576b5b55}.project:first-of-type{margin-top:2rem}.project-type{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.editorial-note{font-style:italic}blockquote{font:400 1.65rem/1.35 Georgia,serif;margin:2rem 0;padding:1.5rem 0;border-block:1px solid #576b5b55}
#reader{border:0;padding:0;margin:0;width:100%;max-width:none;height:100%;max-height:none;background:transparent;color:var(--ink);overflow:hidden}
#reader[open]{display:grid;place-items:center}
#reader::backdrop{background:#00180fe8}
.reader-layout{display:grid;grid-template-columns:33% 1fr;width:min(1000px,calc(100% - 104px));max-height:calc(100dvh - 3rem);overflow:auto;background:var(--ivory);box-shadow:0 24px 90px #0008;overscroll-behavior:contain;scrollbar-color:#6e7964 var(--ivory);touch-action:pan-y pinch-zoom}
.reader-art{background:#123f2c url('assets/felt.webp');padding:3rem 1.6rem;display:flex;align-items:flex-start;justify-content:center}
.reader-art img{width:100%;height:auto;position:sticky;top:3rem;box-shadow:0 8px 10px #0005;border-radius:7%}
.reader-paper{position:relative;padding:3.2rem 3.1rem 1.5rem;min-width:0}
.close-reader{position:absolute;z-index:2;top:.7rem;right:.7rem;background:transparent;border:0;color:var(--ink);padding:0;width:44px;height:44px;display:grid;place-items:center}
.close-reader span{font:1.7rem Georgia,serif}
.reader-paper .section-content{padding:0}
.reader-paper .section-content h2{margin-top:0}
.reader-paper a:focus-visible,.reader-paper button:focus-visible{outline-color:#174d33}
.reader-paper a{font-weight:500}
.reader-nav{position:absolute;inset:0;pointer-events:none}
.reader-nav button{position:fixed;top:50dvh;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--ivory);pointer-events:auto}
#previous{left:.25rem}
#next{right:.25rem}
.reader-nav button:focus-visible{outline-color:var(--ivory)}
.reader-nav button:hover{background:#f4e6cc18}
#reader-position{text-align:center;margin:2rem 0 0;font:.75rem Arial,sans-serif}
@media(min-width:1800px){.table{padding-top:8rem}.hand{margin-top:7rem}.table-footer{padding-top:7rem}}
@media(max-width:900px){.masthead{padding:0 17%}.masthead h1{font-size:clamp(2rem,4.5vw,3rem)}.hand{width:92%;gap:.55rem;margin-top:4rem}.table{padding-top:5rem}.table-footer{width:85%;gap:1.5rem;padding-top:6rem}.table-footer nav{gap:.4rem 1rem}.reader-paper{padding:3.2rem 2rem 1.5rem}.reader-art{padding:3rem 1rem}}
@media(max-width:620px){.table{padding-top:3rem;min-height:100svh}.masthead{padding:0 16%}.masthead h1{font-size:clamp(1.8rem,6.4vw,2.5rem);line-height:1.15;letter-spacing:0}.hand{width:78%;max-width:360px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2.5rem}.card:last-child{grid-column:1/-1;width:calc((100% - 1rem)/2);justify-self:center}.table-caption{font-size:.8rem;margin-top:1rem;flex-direction:column;gap:0}.table-footer{flex-direction:column;gap:.4rem;padding-top:2rem;width:85%;font-size:.75rem}.table-footer nav{gap:0 1.1rem}.table-props .chips-left{width:18%;}.table-props .chips-right{width:19%}.table-props .euros{width:31%;bottom:8rem;opacity:.9}.table-props .spare-backs{width:28%;bottom:8rem;opacity:.9}.reader-layout{display:block;max-height:calc(100dvh - 1.1rem)}.reader-art{display:none}.reader-paper{padding:3.2rem 1.2rem 1rem}.section-content h2{font-size:2.25rem}.card:not(.animating):hover .card-body{transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.card:not(.animating):hover .card-body,.card:not(.animating):focus-visible .card-body{transform:none}}
@media(forced-colors:active){.card{border:1px solid ButtonText}.card-front{forced-color-adjust:none}.table-footer a{color:LinkText}a:focus-visible,button:focus-visible{outline-color:Highlight}.reader-paper a:focus-visible,.reader-paper button:focus-visible{outline-color:Highlight}}
@media(max-width:620px){.table-footer{padding-top:5rem}.table-props .euros,.table-props .spare-backs{bottom:11rem}}
.masthead h1,.section-content h2,.section-content h3{overflow-wrap:anywhere}
