/* Licensed image-led CTA backgrounds. */
body .cta-block,body .cta-band,body .v2-blog-cta,body .r3-cta{background:#0a0a09!important;background-image:linear-gradient(90deg,rgba(10,10,9,.93) 0%,rgba(10,10,9,.83) 52%,rgba(10,10,9,.3) 100%),url('/assets/cta/stationery.jpg')!important;background-size:cover!important;background-position:center!important;color:#fff!important;border:0!important}
body #page-portfolio .cta-block,body #page-fanart .cta-block{background-image:linear-gradient(90deg,rgba(10,10,9,.94) 0%,rgba(10,10,9,.84) 56%,rgba(10,10,9,.32) 100%),url('/assets/cta/paper.jpg')!important}
body .v2-blog-cta{background-image:linear-gradient(90deg,rgba(10,10,9,.94) 0%,rgba(10,10,9,.8) 60%,rgba(10,10,9,.3) 100%),url('/assets/cta/folded-paper.jpg')!important}
body .cta-block h2,body .cta-band h2,body .v2-blog-cta h2,body .r3-cta h2{color:#f7f5f1!important}
body .cta-block p,body .cta-band p,body .v2-blog-cta p,body .r3-cta p{color:#f7f5f1!important}
body .cta-block .btn,body .cta-band .btn,body .v2-blog-cta .v2-blog-button,body .r3-cta .btn,body .cta-block .btn:hover,body .cta-band .btn:hover,body .v2-blog-cta .v2-blog-button:hover,body .r3-cta .btn:hover,body .cta-block .btn:active,body .cta-band .btn:active,body .v2-blog-cta .v2-blog-button:active,body .r3-cta .btn:active{background:#d93324!important;border-color:#d93324!important;color:#fff!important}
/* Scale only on logo hover. Keyboard focus retains a discrete visible ring. */
body #page-portfolio .r3-logo-node:hover{outline:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body #page-portfolio .r3-logo-node .client-logo-cover{transition:scale .22s ease;transform-origin:center}
body #page-portfolio .r3-logo-node:hover .client-logo-cover{scale:1.1}
body #page-portfolio .r3-logo-node:focus:not(:focus-visible){outline:0!important;background:transparent!important}
body #page-portfolio .r3-logo-node:focus-visible{outline:2px solid #ed5c4f!important;background:transparent!important}
/* Fan art uses its own bounded layout, independent of legacy theme/card rules. */
body #page-fanart .r4-fan-art{background:#f7f5f1;color:#0a0a09}
.r4-art-container{width:min(1200px,calc(100% - 64px));margin:auto}
.r4-art-hero{background:#0a0a09;color:#f7f5f1;padding:72px 0 64px}
.r4-art-hero h1{font:400 clamp(54px,6vw,88px)/1.02 'League Gothic',sans-serif;text-transform:uppercase;max-width:900px;margin:0 0 24px}
.r4-art-hero p{font:17px/1.75 Manrope,sans-serif;max-width:700px;margin:0 0 20px;color:#e0ded7}
.r4-art-hero .r4-art-notice{font-size:12px;line-height:1.7;color:#b9b7b0;margin-bottom:0}
body #page-fanart nav.r4-art-index{position:static;inset:auto;display:flex;justify-content:center;align-items:center;gap:36px;flex-wrap:wrap;transform:none;height:auto;min-height:0;padding:22px 24px;background:#f7f5f1;color:#0a0a09;border:0;border-bottom:1px solid #aaa99f;will-change:auto;z-index:auto}
.r4-art-index a{color:#0a0a09;font:800 12px/1.5 Manrope,sans-serif;text-transform:uppercase;text-decoration:underline;text-underline-offset:5px}
body #page-fanart .r4-art-project{padding:72px 0!important;background:#f7f5f1!important;position:relative;overflow:hidden;scroll-margin-top:100px}
.r4-project-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:end;margin-bottom:36px}
.r4-art-project h2{font:400 clamp(38px,4vw,58px)/1.05 'League Gothic',sans-serif;text-transform:uppercase;margin:0 0 20px;color:#0a0a09}
.r4-project-heading h2{margin:0}
.r4-art-project p{font:15px/1.8 Manrope,sans-serif;color:#44443d;margin:0 0 20px}
.r4-project-heading p{margin:0;max-width:520px}
.r4-art-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.r4-art-card{min-width:0}
.r4-art-frame{display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:#fff;border:1px solid #aaa99f;overflow:hidden}
.r4-art-frame img{display:block;width:100%;height:100%;object-fit:contain;transition:scale .25s ease}
.r4-art-card:hover img{scale:1.025}
.r4-art-card h3{font:400 30px/1.1 'League Gothic',sans-serif;text-transform:uppercase;margin:22px 0 12px}
.r4-art-card p{font-size:13px;margin:0}
.r4-art-split{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.6fr);gap:64px;align-items:center}
body #page-fanart .r4-art-project-dark{background:#0a0a09!important;color:#f7f5f1}
body #page-fanart .r4-art-project-dark::before,body #page-fanart .r4-art-project-dark::after{display:none!important}
body #page-fanart .r4-art-project-dark h2{color:#f7f5f1}
body #page-fanart .r4-art-project-dark p{color:#d0cec6}
.r4-reset-stickers{font:800 11px/1.5 Manrope,sans-serif;text-transform:uppercase;background:#f7f5f1;color:#0a0a09;border:1px solid #f7f5f1;padding:12px 16px;cursor:pointer}
body #page-fanart .r4-sticker-board{width:100%;max-width:none!important;margin:0!important;background:#181817!important;border:1px solid #77766e;box-shadow:none!important;min-width:0}
body #page-fanart .r4-sticker-board::before,body #page-fanart .r4-sticker-board::after{display:none!important}
body #page-fanart .r4-sticker-board .fanart-sticker-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:32px;position:relative;min-height:420px;overflow:hidden;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important}
body #page-fanart .r4-sticker-board .fanart-sticker-row img{position:relative;width:100%;height:150px;object-fit:contain;margin:0;filter:drop-shadow(0 5px 5px rgba(0,0,0,.25));cursor:grab}
body #page-fanart .r4-sticker-board .sticker-playground{display:block}
body #page-fanart .r4-sticker-board .sticker-playground img{position:absolute;height:150px}
body #page-fanart .r4-sticker-board .sticker-playground img.dragging{cursor:grabbing}
.r4-art-split-reverse .r4-project-copy{grid-column:2;grid-row:1}
.r4-art-split-reverse .r4-deck-board{grid-column:1;grid-row:1}
.r4-art-split-reverse{grid-template-columns:minmax(0,1.6fr) minmax(240px,.8fr)}
body #page-fanart .r4-deck-board .card-table{position:relative;width:100%;height:440px;min-height:0;border:1px solid #77766e;background:#111110!important;box-shadow:none!important;border-radius:0!important;overflow:hidden}
body #page-fanart .r4-deck-board .card-table::before,body #page-fanart .r4-deck-board .card-table::after{display:none!important}
body #page-fanart .r4-deck-board .card-hint{font:700 10px Manrope,sans-serif;color:#f7f5f1;text-shadow:none;bottom:22px}
@media(max-width:900px){.r4-project-heading{grid-template-columns:1fr;gap:18px}.r4-art-split,.r4-art-split-reverse{grid-template-columns:1fr;gap:32px}.r4-art-split-reverse .r4-project-copy,.r4-art-split-reverse .r4-deck-board{grid-column:auto;grid-row:auto}.r4-project-copy{max-width:650px}.r4-art-project h2{max-width:700px}}
@media(max-width:600px){.r4-art-container{width:calc(100% - 48px)}.r4-art-hero{padding:48px 0}.r4-art-hero h1{font-size:54px}.r4-art-hero p{font-size:15px}body #page-fanart .r4-art-project{padding:48px 0!important}.r4-art-grid{grid-template-columns:1fr;gap:36px}.r4-art-frame{max-height:420px}.r4-art-card h3{font-size:30px}body #page-fanart nav.r4-art-index{gap:18px;padding:18px 20px}.r4-art-index a{font-size:10px}body #page-fanart .r4-sticker-board .fanart-sticker-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px;gap:16px}body #page-fanart .r4-sticker-board .fanart-sticker-row img{height:120px}body #page-fanart .r4-deck-board .card-table{height:350px}}
@media(hover:none){.r4-drag-tip,.r4-reset-stickers{display:none}}
@media(prefers-reduced-motion:reduce){body #page-portfolio .r3-logo-node .client-logo-cover,.r4-art-frame img{transition:none}}
body #page-fanart .r4-sticker-board{padding:0!important}
body #page-fanart .r4-deck-board .card-fan{bottom:28%!important}
@media(max-width:600px){body #page-fanart .r4-deck-board .card-fan{bottom:32%!important}}
