
@font-face{font-family:SquareMark;src:url('square-mark-custom.ttf') format('truetype');font-display:swap}
:root{--paper:var(--sq-color-paper);--ink:var(--sq-color-ink-legacy-pages);--red:var(--sq-color-red);--muted:#77736f}*{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.wrap{width:min(1320px,calc(100% - 88px));margin:auto}
.topbar{height:92px;border-bottom:1px solid #d2d0c9;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:block;flex:0 0 auto}.brand img{display:block;width:230px;height:auto;max-height:65px;object-fit:contain;object-position:left center}
.toplinks{display:flex;align-items:center;gap:28px}.toplinks a,.toplinks button{font-family:SquareMark,Arial,sans-serif;font-size:12px;letter-spacing:.08em;white-space:nowrap;background:none;border:0;padding:0}
.toplinks a:hover,.toplinks button:hover{color:var(--red)}
.lang-select{appearance:none;background:transparent;border:1px solid #bbb9b3;padding:9px 22px 9px 12px;font-family:SquareMark,Arial,sans-serif;font-size:12px;color:var(--ink);max-width:135px}
.kicker{font-family:SquareMark,Arial,sans-serif;letter-spacing:.15em;font-size:12px;color:var(--red)}
.hero{padding:88px 0 62px;border-bottom:1px solid #c9c6bf}.hero h1{font-size:clamp(55px,9vw,148px);letter-spacing:-.085em;line-height:.91;font-weight:900;margin:24px 0 30px}.hero h1 span{color:var(--red)}
.hero p{font-size:16px;line-height:1.75;color:#5b5955;max-width:620px;margin:0}.smallmeta{display:flex;align-items:center;gap:20px;margin-top:30px;font-family:SquareMark,Arial,sans-serif;font-size:11px;letter-spacing:.1em;color:#666}.smallmeta i{height:1px;width:85px;background:var(--red)}
.section{padding:65px 0 95px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-head h2{font-size:clamp(28px,3vw,44px);letter-spacing:-.06em;margin:0}.section-head p{font-size:13px;color:#777;margin:0}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.episode{border:1px solid #c9c6bf;min-width:0;background:#e9e7e0}.episode-thumb{aspect-ratio:16/9;display:block;width:100%;background:#202020;position:relative;border:0;padding:0;overflow:hidden}.episode-thumb img{width:100%;height:100%;object-fit:cover}.play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border:1px solid #fff;color:#fff;display:grid;place-items:center;background:rgba(0,0,0,.45);font-size:20px}.episode h3{font-size:21px;letter-spacing:-.035em;margin:0 0 8px}.episode p{font-size:13px;color:#686660;line-height:1.5;margin:0}.episode-content{padding:22px}.episode-label{font-family:SquareMark,Arial,sans-serif;color:var(--red);font-size:10px;letter-spacing:.13em;margin-bottom:14px}
.empty{border:1px solid #c8c5be;min-height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px}.empty-mark{font-family:SquareMark,Arial,sans-serif;font-size:70px;color:#d2cec7;line-height:1}.empty h3{font-size:27px;letter-spacing:-.04em;margin:15px 0 10px}.empty p{max-width:450px;line-height:1.65;color:#777;margin:0;font-size:14px}
.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.library-card{border:1px solid #bfbcb5;min-height:320px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.library-card:after{content:"";position:absolute;width:210px;height:210px;border:1px solid #d0cdc7;transform:rotate(-8deg);right:-60px;top:-55px;pointer-events:none}.library-number{font-family:SquareMark,Arial,sans-serif;font-size:12px;color:var(--red)}.library-card h3{font-size:clamp(32px,3.8vw,56px);letter-spacing:-.06em;line-height:1.02;margin:0 0 15px}.library-card p{font-size:14px;line-height:1.65;color:#777;max-width:380px;margin:0}.badge{display:inline-block;margin-top:20px;font-family:SquareMark,Arial,sans-serif;font-size:10px;letter-spacing:.1em;color:#888}
.footer{border-top:1px solid #d0cec8;padding:28px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#777;font-size:12px}.footer a:hover{color:var(--red)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-inner{width:min(1050px,100%);position:relative}.modal iframe{width:100%;aspect-ratio:16/9;border:0;background:#111}.modal-close{position:absolute;right:0;bottom:calc(100% + 10px);background:none;border:0;color:white;font-size:14px;padding:7px 10px}
@media(max-width:800px){.wrap{width:min(100% - 36px,700px)}.topbar{height:78px}.brand img{width:155px}.toplinks{gap:12px}.toplinks a{font-size:9px}.lang-select{font-size:10px;max-width:100px;padding:8px 5px}.hero{padding:55px 0 48px}.hero h1{font-size:clamp(44px,12vw,82px)}.hero p{font-size:14px}.section{padding:48px 0 65px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.library-card{padding:24px;min-height:290px}}
@media(max-width:520px){.gallery,.library-grid{grid-template-columns:1fr}.toplinks a:nth-child(2){display:none}.topbar{gap:10px}.brand img{width:140px}.section-head{display:block}.section-head p{margin-top:10px}.hero h1{font-size:clamp(43px,12vw,68px)}.library-card{min-height:270px}.footer{display:block}.footer>*{display:block;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* v58: Merch / Workbooks / Screensavers — three equal category cards */
@media (min-width:1050px){
 .library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
 .library-card{min-height:355px;padding:28px}
 .library-card h3{font-size:clamp(28px,2.8vw,45px);overflow-wrap:break-word}
}
.library-card-merch{background:#e9e7e0}
.library-card-merch:after{border-color:rgba(239,6,6,.25)}
