:root{--paper:#f5f3ee;--ink:#242a28;--muted:#59635d;--line:#ccd0c7;--accent:#345747}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;line-height:1.7}a{color:inherit;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #a05b24;outline-offset:5px}button{font:inherit;cursor:pointer}.header{max-width:1280px;margin:auto;padding:26px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{font-size:20px;font-weight:750;text-decoration:none}.header nav{display:flex;gap:25px;font-size:14px}.header nav a{text-decoration:none}.header nav a:hover{text-decoration:underline}main:not(.reader main){max-width:1280px;margin:auto}.hero{padding:100px 7% 40px;min-height:580px;background:radial-gradient(ellipse at 90% 20%,#dde5d8 0,transparent 52%)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--muted)}h1{font-size:clamp(58px,10vw,112px);letter-spacing:-.065em;line-height:1.15;font-weight:650;margin:25px 0}.tagline{font-size:clamp(20px,3vw,30px);margin:22px 0 38px;white-space:pre-line}.button{display:inline-flex;gap:35px;align-items:center;padding:14px 24px;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;text-decoration:none}.button:hover{background:#244335}.hero-note{margin-top:80px;font-size:10px;letter-spacing:2px;color:var(--muted)}.hero-note span{margin-left:24px}.section{padding:70px 7%;border-top:1px solid var(--line)}h2{font-size:clamp(27px,4vw,40px);line-height:1.35;letter-spacing:-1.2px;margin:18px 0 24px}h3{font-size:16px;margin-top:35px}.work,.about{display:grid;grid-template-columns:1fr 1fr;gap:55px}.work-caption{font-size:19px}.episode-list{border-top:1px solid var(--line)}.episode-list a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:17px 0;text-decoration:none}.episode-list a:hover{color:var(--accent)}.muted{color:var(--muted)}.empty{padding:24px 0;color:var(--muted);border-bottom:1px solid var(--line)}.intro{font-size:20px;white-space:pre-line}.history{padding-left:20px}.history li{padding:8px 0}.works{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}.portfolio-card h3{margin:15px 0 5px}.portfolio-card p{white-space:pre-line}.contact{padding-bottom:90px}.contact a{display:inline-block;margin:8px 24px 8px 0}footer{border-top:1px solid var(--line);padding:24px 7%;font-size:12px;color:var(--muted)}.skip{position:fixed;top:-100px;left:15px;z-index:9;background:white;padding:12px}.skip:focus{top:10px}.reader{background:#e9eae6}.reader-header{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:15px 4%;background:var(--paper);border-bottom:1px solid var(--line);font-size:13px}.reader-header a{white-space:nowrap}.reader-header span{text-align:center}.reader-heading{font-size:18px;letter-spacing:0;text-align:center;margin:25px 12px}.pages{max-width:800px;margin:auto;background:#fff}.image-frame{position:relative;margin:0;width:100%;background:#fff;overflow:hidden}.image-frame img{display:block;width:100%;height:100%;object-fit:contain}.image-error{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;text-align:center;background:#f0eee9;gap:12px}.image-error[hidden]{display:none}.image-error button{padding:10px 20px;background:var(--accent);color:white;border:0;border-radius:3px}.episode-nav{max-width:800px;margin:35px auto 0;display:flex;justify-content:space-between;gap:12px;padding:0 16px}.episode-nav a,.episode-nav span{padding:12px 18px;border:1px solid var(--line);text-decoration:none;border-radius:3px;background:var(--paper)}.episode-nav span{color:#656b65;background:transparent}.reader-end{text-align:center;padding:20px 16px 45px;font-size:14px}@media(max-width:650px){.header{align-items:flex-start;flex-direction:column;gap:14px;padding:20px 6%}.header nav{gap:10px 17px;flex-wrap:wrap;font-size:12px}.hero{padding:65px 6% 30px;min-height:460px}.hero-note{margin-top:55px}.section{padding:45px 6%}.work,.about{grid-template-columns:1fr;gap:12px}.reader-header{font-size:11px;padding:12px 3%;gap:8px}.episode-nav{gap:7px}.episode-nav a,.episode-nav span{padding:10px 12px;font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}