/*
Theme Name: 文章と珈琲.ink — ブロック編集版
Author: 文章と珈琲.ink
Description: 写真と物語を主役にした、文章と珈琲.ink専用テーマ。
Version: 3.0.0
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ink-literary
*/
:root{--paper:#faf9f6;--ink:#202b36;--blue:#273e55;--muted:#656c73;--line:#d9d9d3;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.9}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid #94623f;outline-offset:6px}a:hover{opacity:.75}figure,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0}h2{font-size:clamp(30px,3.25vw,48px);line-height:1.85;letter-spacing:.12em}h3{font-size:25px;letter-spacing:.07em;margin-bottom:22px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:10px}.skip-link:focus{top:10px}.site-header{height:100px;background:#fff;display:flex;align-items:center;padding:0 4.2%;gap:35px;position:relative;z-index:20}.brand{width:275px;margin-right:auto;display:block;overflow:hidden}.brand img{width:440px;max-width:none;margin-left:-94px}.desktop-nav{display:flex;gap:27px;font-size:14px;letter-spacing:.05em}.shop-link{font-size:12px;letter-spacing:.13em;border-bottom:1px solid;padding:9px 0;white-space:nowrap}.shop-link span{font-size:20px;margin-left:16px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{background:white;position:absolute;left:0;right:0;z-index:30;padding:20px 7%;border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:12px 0}.hero{position:relative;min-height:690px;height:calc(100svh - 100px);max-height:1000px;background:var(--blue);color:#fff;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 33%;overflow:hidden;border-radius:42% 0 0 8% / 62% 0 0 12%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,42,58,.28),transparent 50%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:55% center}.hero-copy{position:relative;z-index:2;padding:95px 0 70px 8%}.eyebrow{font-size:12px;letter-spacing:.18em;font-family:var(--sans);line-height:1.7}.hero .eyebrow{color:#d7e0e9;margin-bottom:38px}.hero h1{font-size:clamp(36px,4.1vw,65px);line-height:1.85;letter-spacing:.15em;text-shadow:0 2px 22px #21334570}.hero-sub{font-family:var(--serif);font-size:18px;line-height:2.1;letter-spacing:.15em;margin-top:30px}.hero-scroll{display:flex;align-items:center;gap:30px;font-size:11px;letter-spacing:.17em;margin-top:48px;width:max-content}.hero-scroll span{font-size:22px}.hero-index{position:absolute;bottom:28px;right:4%;z-index:2;letter-spacing:.15em;font-size:12px}.section{padding:135px 8%;max-width:1600px;margin:auto}.story{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.story-photo{position:relative}.story-photo>img{width:100%;aspect-ratio: .91;object-fit:cover;object-position:46% center;border-radius:48% 48% 7% 40% / 35% 48% 8% 42%}.photo-note{font-family:var(--serif);display:block;margin-top:25px;font-size:14px;letter-spacing:.16em;text-align:center}.story-copy .eyebrow{margin-bottom:32px}.eyebrow span{margin-left:34px;color:#747e87}.story-copy h2{margin-bottom:38px}.story-copy>p:not(.eyebrow){font-size:16px;line-height:2.3;margin-bottom:23px}.experience{padding-top:50px;padding-bottom:100px}.section-heading{text-align:center;margin-bottom:75px}.section-heading h2{margin:25px 0}.section-heading>p:last-child{font-family:var(--serif);letter-spacing:.13em}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.experience-card .image-frame{overflow:hidden;margin-bottom:35px}.image-frame img{width:100%;height:100%;object-fit:cover}.sleeve-frame{aspect-ratio:1.1;border-radius:4% 40% 7% 7% / 5% 35% 7% 7%}.sleeve-frame img{object-position:center 43%}.brew-frame{aspect-ratio:1.1;border-radius:40% 5% 7% 7% / 35% 5% 7% 7%}.coffee-card{padding-top:100px}.experience-card .eyebrow{margin-bottom:14px;color:var(--muted)}.experience-card>p:last-child{line-height:2.2;font-size:16px}.pause{position:relative;min-height:510px;display:grid;place-items:center;overflow:hidden;background:#fff}.pause>img{position:absolute;width:550px;height:550px;object-fit:contain;opacity:.13;transform:rotate(-12deg)}.pause>div{position:relative;text-align:center;font-family:var(--serif);font-size:clamp(28px,3vw,42px);letter-spacing:.19em;line-height:2}.pause span{display:block;font-family:var(--sans);font-size:13px;margin-top:30px;letter-spacing:.15em}.visit{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center}.visit-copy h2{margin:28px 0}.visit-copy>p:not(.eyebrow){line-height:2.2}.line-link{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--ink);padding:18px 0;margin-top:25px;font-size:14px;width:fit-content;max-width:100%}.line-link span{font-size:20px}.visit-photo img{aspect-ratio:1.12;width:100%;object-fit:cover;object-position:55%;border-radius:42% 6% 6% 6% / 38% 6% 6% 6%}.news{display:grid;grid-template-columns:1fr 2fr;gap:10%;padding-top:0;padding-bottom:100px}.news h2{font-size:30px;margin-top:15px}.news-list a{display:grid;grid-template-columns:100px 1fr 20px;gap:20px;padding:23px 0;border-bottom:1px solid var(--line);font-size:15px}.news time{font-size:13px;color:var(--muted)}.shop-band{background:var(--blue);color:white;text-align:center;padding:65px 6% 75px}.shop-band p{font-family:var(--serif);font-size:18px;letter-spacing:.13em;margin-bottom:20px}.shop-band>a{font-size:clamp(30px,4.4vw,60px);letter-spacing:.11em;font-weight:400;display:inline-flex;align-items:center;gap:60px;border-bottom:1px solid #8997a3;padding-bottom:10px}.shop-band>a span{font-size:35px}.site-footer{background:white;display:flex;flex-direction:column;align-items:center;padding:50px 20px 30px;gap:20px;text-align:center}.footer-brand{width:310px;overflow:hidden}.footer-brand img{max-width:none;width:540px;margin-left:-115px}.site-footer p{font-family:var(--serif);font-size:14px;letter-spacing:.09em}.site-footer>a:not(.footer-brand){font-size:14px}.site-footer small{font-size:12px;color:var(--muted);margin-top:15px}.document{min-height:60vh;max-width:1000px}.document h1{font-size:clamp(28px,4vw,46px);margin-bottom:25px}.document article{margin-bottom:50px}.entry-content{overflow-wrap:anywhere}.entry-content a{text-decoration:underline}.entry-content p{margin:1.4em 0}.entry-content img{height:auto}.post-date{font-size:14px;color:var(--muted)}.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.will-reveal.arrived{opacity:1;transform:none}
@media(min-width:1600px){.hero-copy{padding-left:max(8%,calc((100vw - 1344px)/2))}}@media(max-width:1100px){.site-header{gap:20px}.brand{width:210px}.brand img{width:360px;margin-left:-77px}.desktop-nav{gap:17px}.hero-copy{padding-left:6%}.hero h1{font-size:46px}.section{padding-left:6%;padding-right:6%}.story{gap:7%}.story-copy>p br{display:none}.experience-card>p:last-child br{display:none}.visit{gap:5%}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:10px;border:0;background:none;padding:8px 0;font-size:14px;color:var(--ink)}.menu-toggle span{font-size:22px}.site-header{height:85px}.hero{height:760px;min-height:0}.hero h1{font-size:42px}.hero-copy{padding-top:70px}.hero-photo{left:27%;top:50px;border-radius:47% 0 0 5% / 50% 0 0 8%}.hero-photo:after{background:linear-gradient(90deg,#273e5590,transparent 65%)}.section{padding-top:85px;padding-bottom:85px}.story{gap:6%}h2{font-size:31px}.story-copy>p:not(.eyebrow){font-size:15px}.experience{padding-top:20px}.experience-grid{gap:6%}.experience-card h3{font-size:23px}.visit{grid-template-columns:1fr}.visit-photo{margin-top:45px}.visit-photo img{aspect-ratio:1.65}.news{padding-top:0}}
@media(max-width:600px){html{scroll-padding-top:25px}.site-header{height:78px;padding:0 5%;gap:14px}.brand{width:180px}.brand img{width:310px;margin-left:-66px}.shop-link{display:none}.menu-toggle{white-space:nowrap;font-size:13px}.hero{height:760px;max-height:none}.hero-copy{padding:35px 7% 0}.hero .eyebrow{font-size:11px;margin-bottom:18px}.hero h1{font-size:clamp(29px,7.6vw,42px);line-height:1.8;letter-spacing:.12em}.hero-sub{font-size:15px;margin-top:20px}.hero-photo{inset:265px -35px 30px 13%;border-radius:47% 0 0 15% / 44% 0 0 15%}.hero-photo img{object-position:53% center}.hero-photo:after{background:linear-gradient(180deg,#273e5530,transparent 35%)}.hero-scroll{position:absolute;top:515px;left:5%;writing-mode:vertical-rl;gap:15px;margin:0;font-size:10px}.hero-scroll span{writing-mode:horizontal-tb}.hero-index{font-size:10px;right:6%;bottom:10px}.section{padding:65px 7%}.story{grid-template-columns:1fr;gap:42px}.story-photo{width:88%}.story-photo>img{aspect-ratio:1.1}.story-copy{padding-left:5%}.story-copy h2{font-size:32px;margin-bottom:25px}.story-copy>p:not(.eyebrow){font-size:16px}.story-copy .eyebrow{margin-bottom:20px}.story-copy>p br{display:initial}.section-heading{margin-bottom:42px}.section-heading h2{font-size:32px}.experience{padding-top:20px}.experience-grid{grid-template-columns:1fr;gap:45px}.coffee-card{padding-top:0}.experience-card h3{font-size:24px}.experience-card .image-frame{margin-bottom:25px}.experience-card>p:last-child{font-size:16px}.pause{min-height:360px}.pause>img{width:380px;height:380px}.pause>div{font-size:27px;letter-spacing:.13em}.visit{gap:0}.visit-copy h2{font-size:32px}.visit-copy>p br{display:none}.visit-photo img{aspect-ratio:1.17}.news{grid-template-columns:1fr;gap:20px;padding-top:0}.news-list a{grid-template-columns:1fr 20px;gap:5px}.news-list time{grid-column:1/-1}.shop-band{padding:45px 6% 50px}.shop-band p{font-size:16px}.shop-band>a{font-size:29px;gap:25px}.shop-band>a span{font-size:25px}.site-footer{padding-top:35px}.footer-brand{width:270px}.footer-brand img{width:470px;margin-left:-100px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.will-reveal{opacity:1;transform:none;transition:none}}

/* Animated reading edition */
.reading-room{background:#edece7;max-width:none;padding-top:100px;padding-bottom:85px;overflow:hidden}.reading-room .section-heading{margin-bottom:55px}.ink-book{max-width:1040px;margin:auto;position:relative;isolation:isolate;perspective:1900px;border-radius:3px 12px 12px 3px;box-shadow:0 30px 55px #202b361c,5px 7px 0 #d8d5cb,8px 10px 0 #f9f7ef,10px 13px 0 #bcb8ae;background:#f9f6ed}.book-pages{position:relative;perspective:1900px}.book-page{position:relative;display:grid;grid-template-columns:1fr 1fr;background:#f9f6ed;min-height:490px;margin-bottom:25px}.book-ready .book-page{margin:0}.book-page[hidden]{display:none}.book-picture{min-width:0;position:relative;overflow:hidden}.book-picture img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.book-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 90%,#0003)}.book-words{padding:55px 42px 65px;position:relative;background:linear-gradient(90deg,#d9d5ca 0,#f9f6ed 6%,#fffdf7 97%,#eee9dd 100%)}.book-words .eyebrow{font-size:11px;color:var(--muted);letter-spacing:.13em;margin-bottom:35px}.book-words h3{font-size:clamp(24px,2.7vw,37px);line-height:1.9;margin-bottom:27px;letter-spacing:.09em}.book-words>p:not(.eyebrow){font-family:var(--serif);font-size:16px;line-height:2.3}.page-number{position:absolute;bottom:24px;right:30px;font-family:var(--serif);font-size:13px;color:var(--muted)}.book-spine{position:absolute;z-index:4;top:0;bottom:0;left:50%;width:1px;background:#9a938b50;pointer-events:none}.book-controls{display:flex;align-items:center;justify-content:space-between;max-width:700px;margin:38px auto 0;gap:15px}.book-controls[hidden]{display:none}.book-controls button{color:var(--ink);background:transparent;border:1px solid #abb0b1;border-radius:40px;padding:12px 24px;min-height:48px;font-size:14px;cursor:pointer;transition:background .25s,color .25s}.book-controls button:hover:not(:disabled){background:var(--blue);color:#fff}.book-controls button:disabled{opacity:.35;cursor:default}.book-status{font-family:var(--serif);font-size:15px;white-space:nowrap;letter-spacing:.15em}.book-hint{text-align:center;margin-top:20px;font-size:13px;color:var(--muted);letter-spacing:.1em}.book-ready .turning-page{position:absolute;inset:0;z-index:5;transform-origin:left center;backface-visibility:hidden;box-shadow:15px 5px 40px #0003;pointer-events:none}.ink-motion-ready .hero-copy{animation:inkEnter 1.2s both}.ink-motion-ready .hero-photo{animation:photoEnter 1.7s cubic-bezier(.2,.6,.2,1) both}.hero-scroll span{animation:scrollNudge 2.8s ease-in-out infinite}.image-frame img,.visit-photo img{transition:transform 1.2s cubic-bezier(.2,.6,.2,1)}@media(hover:hover){.image-frame:hover img{transform:scale(1.035)}}.will-reveal{transform:translateY(35px) rotate(.6deg);transition:opacity 1.15s ease,transform 1.15s cubic-bezier(.2,.6,.2,1)}.will-reveal.arrived{transform:translateY(0) rotate(0)}@keyframes inkEnter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes photoEnter{from{opacity:0;transform:translateX(35px) scale(1.035)}to{opacity:1;transform:none}}@keyframes scrollNudge{0%,75%,100%{transform:translateY(0)}40%{transform:translateY(7px)}}@media(max-width:900px){.book-words{padding:35px 25px 60px}.book-words h3{font-size:27px}.book-words>p:not(.eyebrow){font-size:15px}.book-page{min-height:460px}}@media(max-width:600px){.reading-room{padding:60px 6%}.reading-room .section-heading{margin-bottom:35px}.book-page{grid-template-columns:1fr;min-height:0}.book-picture{height:185px}.book-picture img{object-position:center 48%}.book-words{padding:27px 28px 50px;min-height:340px}.book-words .eyebrow{margin-bottom:16px}.book-words h3{font-size:27px;line-height:1.65;margin-bottom:18px}.book-words>p:not(.eyebrow){font-size:15px;line-height:2.1}.book-spine{left:0;box-shadow:4px 0 12px #0002}.book-controls{gap:10px;margin-top:28px}.book-controls button{padding:10px 12px;font-size:13px}.book-status{font-size:13px;letter-spacing:.03em}.book-picture:after{background:linear-gradient(0deg,#0002,transparent 20%)}}@media(prefers-reduced-motion:reduce){.ink-motion-ready .hero-copy,.ink-motion-ready .hero-photo,.hero-scroll span{animation:none}.will-reveal,.image-frame img,.visit-photo img,.book-controls button{transition:none;transform:none}.will-reveal{opacity:1}}


/* Growing event journal */
.event-book .book-page{min-height:560px}.event-book .book-words{overflow-wrap:anywhere}.event-book .book-words h3{font-size:clamp(23px,2.4vw,33px);line-height:1.6;margin-bottom:20px}.event-book .book-words .eyebrow{margin-bottom:12px}.event-book .book-words .event-day{font-family:var(--sans);font-size:18px;line-height:1.7;letter-spacing:.04em;margin-bottom:18px}.event-details{margin:0 0 20px;font-size:14px;line-height:1.9}.event-details>div{display:grid;grid-template-columns:45px 1fr;gap:12px;padding:6px 0;border-bottom:1px solid #dedbd2}.event-details dt{color:var(--muted)}.event-details dd{margin:0}.event-book .book-words .event-summary{font-size:15px;line-height:2;white-space:normal}.event-links{display:flex;flex-wrap:wrap;gap:20px;font-size:14px;margin-top:18px}.event-links a{border-bottom:1px solid #a7a39c}.sample-label{font-family:var(--sans)!important;font-size:12px!important;color:#6b5a40;margin-top:20px;line-height:1.7!important}.event-empty{display:grid;grid-template-columns:1fr 1fr;max-width:1000px;margin:auto;gap:40px;align-items:center}.event-empty img{border-radius:8px}.event-empty h3{font-size:26px}.event-book .book-picture img{position:absolute}.event-book .turning-page{height:100%;overflow:hidden}@media(max-width:600px){.event-book .book-page{min-height:0}.event-book .book-words{min-height:410px;padding:27px 25px 55px}.event-book .book-words .event-day{font-size:16px}.event-empty{grid-template-columns:1fr;gap:25px}.event-book .book-controls button{font-size:12px}}

/* Event heading */
.event-book .section-heading{max-width:1040px;margin-left:auto;margin-right:auto;text-align:left}.event-book .section-heading #book-title{font-family:var(--sans);font-size:clamp(22px,2.3vw,30px);font-weight:500;letter-spacing:.04em;line-height:1.6;margin:0}


/* Opening photograph: a small rounded window unfolds into the hero. */
@media(prefers-reduced-motion:no-preference){
.ink-motion-ready .hero-photo{animation:inkPhotoUnfold 2.2s cubic-bezier(.2,.65,.25,1) both;transform:none;will-change:clip-path}
.ink-motion-ready .hero-photo img{animation:inkPhotoSettle 2.5s cubic-bezier(.2,.65,.25,1) both}
.ink-motion-ready .hero-copy{animation:inkEnter 1.2s .65s both}
@keyframes inkPhotoUnfold{0%{clip-path:ellipse(5% 8% at 54% 48%);opacity:0}12%{opacity:1}45%{clip-path:ellipse(35% 43% at 54% 48%)}100%{clip-path:ellipse(110% 110% at 54% 48%);opacity:1}}
@keyframes inkPhotoSettle{from{transform:scale(1.13)}to{transform:scale(1)}}
}


/* Article reading layout — 2026-10-24 */
body.single-post main.journal-article{width:100%;max-width:800px;margin:0 auto;padding:64px 40px 80px;color:#302e29;}
body.single-post .journal-article>.journal-back{margin:0 0 28px;font-size:13px;letter-spacing:.04em;}
body.single-post .journal-article>.wp-block-post-title{font-family:var(--serif);font-size:clamp(28px,3.4vw,42px);line-height:1.6;letter-spacing:.06em;margin:0 0 20px;overflow-wrap:anywhere;}
body.single-post .journal-article>.wp-block-post-date,body.single-post .journal-article>.wp-block-post-terms{font-size:12px;line-height:1.8;color:#77746e;margin:0 0 8px;}
body.single-post .journal-article>.wp-block-post-featured-image{width:100%;max-width:100%;margin:32px 0 40px;}
body.single-post .journal-article>.wp-block-post-featured-image img{width:100%;height:auto;max-height:none;object-fit:contain;}
body.single-post .journal-article .entry-content{width:100%;max-width:none;margin:0;padding:0;font-size:16px;line-height:2.2;letter-spacing:.045em;overflow-wrap:anywhere;}
body.single-post .journal-article .entry-content>*{max-width:100%;}
body.single-post .journal-article .entry-content p{margin:0 0 1.8em;}
body.single-post .journal-article .entry-content p:empty{display:none;}
body.single-post .journal-article .entry-content :is(h2,h3){line-height:1.7;letter-spacing:.06em;margin:2.5em 0 1em;}
body.single-post .journal-article .entry-content figure{margin:2em 0;max-width:100%;}
body.single-post .journal-article .entry-content img{max-width:100%;height:auto;margin:0 auto;}
body.single-post .journal-article .entry-content figcaption{font-size:12px;line-height:1.8;color:#89857e;text-align:center;margin-top:12px;}
body.single-post.postid-67 .journal-article .entry-content>.wp-block-image:first-child{display:none;}
body.single-post .journal-article>.journal-post-nav{margin-top:48px;}
body.single-post .journal-article>.journal-back:last-child{margin:48px 0 0;padding-top:24px;border-top:1px solid #d9d9d3;}
@media(max-width:600px){body.single-post main.journal-article{padding:36px 20px 56px;}body.single-post .journal-article>.wp-block-post-title{font-size:28px;line-height:1.65;letter-spacing:.04em;}body.single-post .journal-article .entry-content{font-size:15px;line-height:2.05;}body.single-post .journal-article>.wp-block-post-featured-image{margin:28px 0 32px;}}

/* Square event announcements — 2026-11-02. 1000px target, responsive without cropping. */
#visit.event-book .book-picture{width:100%;max-width:1000px;height:auto;min-height:0;aspect-ratio:1 / 1;align-self:center;justify-self:center;background:var(--paper);}
#visit.event-book .book-picture img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:scale-down;object-position:center;}
