/* Quiet editorial: existing content and submission handlers retained. */
:root{--c-canvas:#fafafa;--c-ink:#1c2b4a;--c-sub:#4b5566;--c-mute:#6b6f78;--c-line:#e3e5e8;--c-red:#c8322b;--page-max:1200px;--f-serif:"Noto Serif JP",serif}
body{background:var(--c-canvas)}main{padding:0 48px}.masthead{padding:28px 0 24px;align-items:center;border-bottom:1px solid var(--c-line)}.masthead .logo{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.18em}.brand-symbol{font-family:Georgia,serif;font-size:40px;line-height:1;letter-spacing:-.09em;font-style:italic}.brand-symbol span{color:var(--c-red)}.masthead nav{font-size:12px;letter-spacing:.06em;gap:28px}.masthead nav a{padding:12px 0}.masthead nav a:last-child{border-bottom:1px solid var(--c-ink)}a,button{transition:color .2s,background .2s,transform .25s}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--c-red);outline-offset:5px}.skip-link{position:fixed;left:16px;top:-90px;z-index:10;background:var(--c-canvas);padding:12px}.skip-link:focus{top:12px}
.home .hero{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);column-gap:64px;padding:86px 0 0;border:0}.hero .name{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.13em;margin-bottom:32px}.eyebrow-line{height:1px;width:24px;background:var(--c-red)}.hero h1{font-size:clamp(36px,4.7vw,62px);font-weight:600;letter-spacing:-.04em;line-height:1.65;margin-bottom:28px}.hero .method-yoko{font-size:14px;letter-spacing:.13em;margin-bottom:58px}.hero .method-yoko:before{display:none}.hero .intro{display:flex;flex-direction:column;align-items:flex-start;gap:23px;align-self:center;padding-left:32px;border-left:1px solid var(--c-line)}.hero .portrait{width:76px;height:76px;mix-blend-mode:multiply;border-radius:0}.hero .intro p{font-size:13px;line-height:2.05}.hero .intro p+p{margin-top:14px}.hero .intro .profile-name{font-size:17px;color:var(--c-ink);margin-bottom:18px}.profile-name span{display:block;font-size:10px;color:var(--c-mute);letter-spacing:.08em;margin-top:3px}.hero .hero-nl{grid-column:1/-1;max-width:none;display:flex;align-items:center;gap:22px;padding:23px 0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);font-size:12px;margin:0}.hero .hero-nl a{margin:0 0 0 auto;padding:10px 0;font-size:12px;gap:22px;border:0;flex-shrink:0}.letter-symbol{font-size:25px;color:var(--c-red)}
.featured{display:grid;grid-template-columns:1fr 2fr;padding:76px 0 82px;gap:40px}.featured-label{align-items:flex-start;font-size:11px;letter-spacing:.1em;gap:10px;padding-top:12px}.featured-label:before{width:15px;height:1px;margin-top:10px}.featured-link{max-width:none}.featured h2{font-size:clamp(25px,3vw,38px);line-height:1.7;letter-spacing:-.02em}.featured blockquote{font-size:14px;line-height:2.1;margin:28px 0}.featured-meta{font-size:11px}.featured-read{font-size:12px;padding:10px 0}.featured-read span{display:inline-block;margin-left:24px;transition:transform .2s}.featured-link:hover .featured-read span{transform:translate(3px,-3px)}
.row{grid-template-columns:1fr 2fr;gap:40px;padding:72px 0}.row .head{gap:18px}.row .num{font-family:Georgia,serif;font-size:14px;letter-spacing:.04em;color:var(--c-mute)}.row h2{font-size:13px;letter-spacing:.12em}.book{display:grid;grid-template-columns:1fr 1fr;gap:38px}.book-stage{display:flex;justify-content:center;align-items:center;min-height:330px;background:#e3e5e8;padding:35px;perspective:900px}.book .cover{width:146px;border:0;border-radius:0;box-shadow:9px 14px 19px #1c2b4a26;transform:rotate(-5deg);transition:transform .6s}.book-stage:hover .cover{transform:rotate(0) rotateY(-8deg)}.book .title{font-size:26px;line-height:1.8;letter-spacing:-.03em}.book-kicker{font-size:11px;letter-spacing:.1em;color:var(--c-mute);margin-bottom:20px}.book .date{font-size:11px;line-height:1.9;margin-top:24px}.post-link{display:flex;flex-direction:column-reverse;align-items:flex-start;padding:24px 0 30px;gap:12px;position:relative;padding-right:24px}.post-link:first-child{padding-top:0}.post-link:after{content:'↗';position:absolute;right:0;top:50%;font-size:20px}.post-link .title{font-size:20px;line-height:1.8}.post-link .date{font-size:11px}.more{font-size:12px;margin-top:30px}.hasshin{gap:32px}.hasshin a{padding:24px 0;border-color:var(--c-line)}.hasshin .label{font-family:Georgia,serif;font-size:30px;letter-spacing:-.04em}.hasshin .label:after{content:'↗';float:right;font-family:var(--f-sans);font-size:17px}.hasshin .desc{font-size:13px;margin-top:18px}.hasshin .url{font-size:10px;margin-top:16px}.otayori-intro{font-size:14px}.otayori-label,.rondo-label{font-size:11px}.otayori-input{border-color:#6b6f78}.otayori-btn{font-size:12px;min-height:44px;padding:10px 38px;border-color:#6b6f78}.newsletter-row{background:#1c2b4a;color:#fafafa;margin:24px -48px 0;padding:64px 48px 72px;--c-sub:#e3e5e8;--c-mute:#e3e5e8;--c-ink:#fafafa;--c-red:#fafafa;--c-line:#6b6f78}.newsletter-row .num{color:#e3e5e8}.newsletter h3{font-size:30px;letter-spacing:-.03em;line-height:1.7}.newsletter p{font-size:14px;line-height:2}.newsletter .letter-kicker{font-size:11px;letter-spacing:.17em;margin-bottom:24px}.newsletter .rondo-fine{font-size:11px}.rondo-form{margin-top:32px}.rondo-input{border-color:#e3e5e8}.newsletter .btn{background:#fafafa;color:#1c2b4a;border-color:#fafafa;font-size:13px;padding:16px 28px;min-height:48px}.newsletter .btn:hover{background:#e3e5e8}.newsletter .rondo-note{font-size:12px}footer{padding:30px 48px;border:0;font-size:10px}.footer-wrap{max-width:1104px}.home .hero-main{animation:quiet-arrival .7s ease-out both}@keyframes quiet-arrival{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:900px){main{padding:0 32px}.home .hero{column-gap:32px}.hero h1{font-size:43px}.hero .intro{padding-left:22px}.masthead nav{gap:16px}.book{gap:24px}.book-stage{padding:24px;min-height:280px}.book .title{font-size:22px}.newsletter-row{margin-left:-32px;margin-right:-32px;padding-left:32px;padding-right:32px}.hero .hero-nl{flex-wrap:wrap}.hero .hero-nl a{margin-left:auto}.row,.featured{grid-template-columns:160px minmax(0,1fr);gap:28px}}
@media(max-width:640px){main{padding:0 24px}.masthead{padding:20px 0 14px;gap:18px}.masthead .logo{font-size:10px}.brand-symbol{font-size:34px}.masthead nav{width:100%;justify-content:space-between;gap:4px;font-size:10px;letter-spacing:0}.masthead nav a{padding:12px 0;min-height:44px}.home .hero{display:block;padding:44px 0 0}.hero .name{font-size:10px;margin-bottom:22px}.hero h1{font-size:clamp(32px,8.8vw,48px);line-height:1.7;letter-spacing:-.045em}.hero .method-yoko{font-size:12px;margin:20px 0 36px}.hero .intro{flex-direction:row;gap:18px;border:0;border-top:1px solid var(--c-line);padding:26px 0}.hero .portrait{width:58px;height:58px}.hero .intro p{font-size:12px}.hero .intro .profile-name{font-size:15px;margin-bottom:12px}.hero .hero-nl{display:block;padding:22px 0;font-size:11px;line-height:2}.letter-symbol{display:none}.hero .hero-nl a{display:flex;justify-content:space-between;margin-top:12px;font-size:12px}.featured{display:block;padding:38px 0 44px}.featured-label{font-size:10px;margin-bottom:24px;padding:0}.featured h2{font-size:25px}.featured blockquote{font-size:12px;line-height:2.1;margin:22px 0}.featured-meta{font-size:10px}.featured-read{font-size:11px}.row{display:block;padding:40px 0}.row .head{flex-direction:row;align-items:baseline;gap:14px;margin-bottom:28px}.row .num{font-size:12px}.row h2{font-size:12px}.book{grid-template-columns:1fr 1fr;gap:20px}.book-stage{min-height:240px;padding:22px}.book .cover{width:116px}.book .title{font-size:18px}.book .date{font-size:10px}.book-kicker{font-size:10px;margin-bottom:12px}.post-link .title{font-size:17px}.post-link .date{font-size:10px}.hasshin{grid-template-columns:1fr 1fr;gap:24px}.hasshin .label{font-size:26px}.hasshin .desc{font-size:12px}.hasshin .url{font-size:9px;overflow-wrap:anywhere}.newsletter-row{margin:12px -24px 0;padding:38px 24px 44px}.newsletter h3{font-size:24px}.newsletter p{font-size:13px}.newsletter .btn{width:100%;font-size:12px;padding:16px 12px}.newsletter .rondo-fine{font-size:11px}.cf-turnstile{max-width:100%}footer{padding:26px 24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep reading text comfortable on compact screens. */
.hero .intro p{font-size:14px}.hero .hero-nl{font-size:13px}
@media(max-width:640px){.hero .intro p{font-size:14px;line-height:1.95}.hero .hero-nl{font-size:12px}.featured blockquote{font-size:14px}.newsletter p{font-size:14px}.hasshin .desc{font-size:13px}}
/* Second direction: paper, glass, and a quiet sense of the future. */
:root{--c-red:#c8322b}
.home .hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0 32px;padding-top:52px}
.hero-main{align-self:center;position:relative;z-index:1}
.hero h1{font-size:clamp(36px,4.5vw,62px);line-height:1.55;margin-bottom:30px}
.hero .name{margin-bottom:30px}.hero .method-yoko{margin-bottom:32px}
.future-art{position:relative;margin:0 0 32px;align-self:center;min-width:0}
.future-art img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;transition:transform 1s cubic-bezier(.22,1,.36,1);will-change:transform}
.future-art:hover img{transform:translateY(-7px) rotate(1deg)}
.future-art figcaption{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:var(--c-mute);padding:14px 0 0;border-top:1px solid var(--c-line)}
.future-art figcaption span:last-child{font-size:20px;color:#c8322b}
.hero .intro{grid-column:1/-1;display:grid;grid-template-columns:76px minmax(0,1fr);gap:24px;border:0;border-top:1px solid var(--c-line);padding:28px 0;max-width:none;align-items:center}
.hero .intro>div{display:grid;grid-template-columns:180px 1fr 1fr;gap:30px;align-items:start}
.hero .intro .profile-name{margin:0;font-size:18px}.hero .intro p{font-size:12px;line-height:2}.hero .intro p+p{margin:0}.profile-name span{margin-top:8px}
.hero .hero-nl{background:#fafafa;padding:18px 24px;border:0;margin-bottom:0}
.featured{position:relative}.featured:after{content:'';position:absolute;left:0;bottom:80px;width:80px;height:80px;border:1px solid #e3e5e8;border-radius:50%;box-shadow:inset 12px 0 0 #fafafa;pointer-events:none}
.book-stage{background:radial-gradient(ellipse at 50% 25%,#fafafa,#e3e5e8);border:1px solid #e3e5e8}
.hasshin a{position:relative;padding:24px 20px;background:linear-gradient(135deg,#fafafa,#fafafa);border:1px solid #e3e5e8}.hasshin a:hover{background:#e3e5e8;transform:translateY(-3px)}
.newsletter-row{background:radial-gradient(ellipse at 0 0,#1c2b4a 0,transparent 55%),#1c2b4a}
@media(min-width:901px){.future-art{animation:quiet-arrival 1.1s ease-out both}}
@media(max-width:900px){.hero .intro>div{grid-template-columns:140px 1fr;gap:10px 24px}.hero .intro>div>p:last-child{grid-column:2}.hero h1{font-size:40px}}
@media(max-width:640px){.home .hero{display:grid;grid-template-columns:1fr;padding-top:36px;gap:0}.hero h1{font-size:clamp(32px,8.8vw,48px)}.hero .name{margin-bottom:24px}.hero .method-yoko{margin:22px 0 0}.future-art{width:100%;max-width:380px;justify-self:center;margin:4px 0 24px}.future-art img{max-height:320px}.future-art figcaption{font-size:9px;padding-top:8px}.hero .intro{display:grid;grid-template-columns:58px minmax(0,1fr);padding:24px 0;gap:18px}.hero .intro>div{display:block}.hero .intro .profile-name{font-size:16px;margin-bottom:14px}.hero .intro p{font-size:14px}.hero .intro p+p{margin-top:12px}.hero .hero-nl{padding:18px 20px}.featured:after{display:none}.hasshin a{padding:20px 14px}.hasshin{gap:14px}.hasshin .label{font-size:25px}}
@media(prefers-reduced-motion:reduce){.future-art:hover img{transform:none}}
@media(max-width:640px){.hero .intro{align-items:start}.hero .portrait{margin-top:4px}}

/* Brand v2: white / navy / a restrained red accent. */
.book-stage{background:#fafafa;border:1px solid #e3e5e8}.book .cover{box-shadow:none}
.hasshin a{background:#fafafa}.hasshin a:hover{background:#e3e5e8}
.newsletter-row{background:#1c2b4a}.hero .hero-nl{border-top:1px solid #e3e5e8;border-bottom:1px solid #e3e5e8}
.row .num{color:#c8322b}.newsletter-row .num{color:#fafafa}.future-art img{mix-blend-mode:normal}

/* Quiet abstract trajectories: supporting the words, without a caption. */
.trajectory-art{margin:0 0 32px;animation:none!important}
.trajectory-art svg{display:block;width:100%;height:auto;max-height:440px}
.hero .intro>div{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:30px}
.hero .intro .profile-summary{font-size:14px;line-height:2}
@media(max-width:900px){.hero .intro>div{grid-template-columns:140px minmax(0,1fr)}.hero .intro>div>p:last-child{grid-column:auto}.profile-break{display:none}}
@media(max-width:640px){.trajectory-art{max-width:none;margin:8px 0 22px;height:170px}.trajectory-art svg{height:170px;width:100%}.hero .intro>div{display:block}.hero .intro .profile-summary{font-size:14px}}
