*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#555;background:linear-gradient(#fff,#f2f3f3 440px,#fff 1100px);font:16px/1.95 -apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",sans-serif;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{touch-action:manipulation}:focus-visible{outline:2px solid #666;outline-offset:5px}.skip{position:absolute;left:20px;top:-80px;background:white;padding:12px;z-index:99}.skip:focus{top:10px}.page-header{max-width:1440px;margin:auto;padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.page-header img{display:block;width:145px;height:auto}.page-header nav,.page-footer nav{display:flex;gap:28px;font-size:14px}.page-main{max-width:1240px;margin:auto;padding:56px 5% 110px;min-height:70vh}.page-heading{margin:0 0 64px}.eyebrow{font-size:11px;letter-spacing:.22em}.page-heading h1{font-size:clamp(32px,5vw,64px);font-weight:400;line-height:1.45;letter-spacing:.02em;margin:20px 0}.page-heading h1 span{display:block;font-size:16px;margin-top:16px}.page-heading time,.journal-card time{font-size:12px;color:#727272;letter-spacing:.08em}.reading{max-width:820px;margin:auto}.entry-content{line-height:2.1}.entry-content p{margin:1.6em 0}.entry-content h2{font-size:26px;font-weight:500;margin:3em 0 1em;padding-bottom:16px;border-bottom:1px solid #ddd}.entry-content h3{font-size:21px;font-weight:500;margin-top:2em}.entry-content a{text-decoration:underline;text-underline-offset:4px}.entry-content figure{margin:32px 0}.entry-content iframe{max-width:100%}.entry-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.entry-content td,.entry-content th{padding:12px;border-bottom:1px solid #ddd}.profile-portrait{display:block;width:260px;border-radius:50%;margin:0 auto 64px}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 30px}.journal-image{aspect-ratio:4/3;overflow:hidden;background:#e9eaea;display:grid;place-items:center;margin-bottom:20px}.journal-image img{width:100%;height:100%;object-fit:contain;transition:transform .4s}.journal-card a:hover img{transform:scale(1.035)}.journal-image span{font-size:35px;letter-spacing:.08em;color:#888}.journal-card h2{font-size:18px;font-weight:500;line-height:1.7;margin:8px 0 16px}.read-more{font-size:12px}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:72px 0 0}.page-numbers{padding:8px 16px;border:1px solid #ddd}.page-numbers.current{background:#e3e5e5}.article-navigation{display:flex;justify-content:space-between;gap:32px;border-top:1px solid #ddd;margin-top:64px;padding-top:24px;font-size:14px}.article-navigation a{max-width:48%}.back-link{display:inline-block;margin-top:40px}.page-footer{border-top:1px solid #e6e6e6;padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px}.page-footer small{color:#737373}.wpcf7{max-width:680px}.wpcf7 input:not([type=checkbox]):not([type=radio]),.wpcf7 textarea,.wpcf7 select{width:100%;border:1px solid #c9cdcd;background:#fff;border-radius:3px;padding:14px}.wpcf7 input[type=submit]{cursor:pointer;background:#606666!important;color:white;padding:16px;max-width:260px}.wpcf7 textarea{min-height:200px}.wpcf7-not-valid-tip{font-size:14px}.entry-content .wp-block-image img{height:auto}@media(max-width:760px){.page-header{align-items:flex-start;padding:24px 6%;flex-direction:column;gap:20px}.page-header nav{width:100%;justify-content:space-between;gap:10px}.page-header nav a{padding:8px 0}.page-main{padding:32px 6% 72px}.page-heading{margin-bottom:40px}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px}.journal-card h2{font-size:16px}.profile-portrait{width:190px}.page-footer{padding:32px 6%;flex-direction:column;align-items:flex-start}.entry-content h2{font-size:23px}}@media(max-width:420px){.journal-grid{grid-template-columns:1fr}.journal-image{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.journal-image img{transition:none}}
/* Contact — an open editorial layout, shared with the portfolio. */
body.page-template-default:has(.contact-intro){background:linear-gradient(155deg,#fff 8%,#f0f1f1 48%,#fff 88%)}
.contact-intro{padding:30px 0 76px;border-bottom:1px solid #dadddd;position:relative}.contact-title-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.contact-title-row h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(76px,12vw,150px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin:24px 0 36px}.contact-title-row h1 span{font-family:-apple-system,BlinkMacSystemFont,sans-serif;display:block;font-size:13px;letter-spacing:.18em;margin-top:24px}.contact-arrow{font-size:clamp(70px,10vw,120px);font-weight:200;color:#a4aaaa}.contact-lead{font-size:clamp(26px,4vw,42px);line-height:1.65;letter-spacing:.08em;font-weight:400;margin:24px 0}.contact-sub{font-size:14px;line-height:2;color:#686e6e}.contact-layout{display:grid;grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr);gap:9%;padding-top:76px}.contact-guide h2,.contact-form-heading h2{font-size:23px;font-weight:400;letter-spacing:.06em;margin:18px 0 28px}.contact-original{font-size:14px;line-height:2}.contact-original p{margin:0 0 24px}.contact-original .has-box-style{border-left:2px solid #b8bebe;padding:8px 0 8px 20px;background:transparent}.contact-mail{display:block;border-top:1px solid #d6dada;border-bottom:1px solid #d6dada;padding:22px 0;margin-top:40px;font-size:16px}.contact-mail>span:first-child{display:block;font-size:10px;letter-spacing:.18em;margin-bottom:6px}.contact-note,.contact-form-heading>p:last-child{font-size:12px;color:#6e7474}.contact-form-panel{min-width:0}.contact-form-panel .wpcf7{max-width:none}.contact-form-panel .wpcf7 form>p{margin:0 0 28px}.contact-form-panel label{font-size:13px;letter-spacing:.06em;display:block}.contact-form-panel .wpcf7-form-control-wrap{display:block;margin-top:10px}.contact-form-panel .wpcf7 input:not([type=submit]),.contact-form-panel .wpcf7 textarea{border:1px solid #d3d8d8;background:rgba(255,255,255,.75);border-radius:0;padding:14px 16px;transition:border-color .2s,background .2s;box-shadow:none}.contact-form-panel .wpcf7 input:focus,.contact-form-panel .wpcf7 textarea:focus{background:#fff;border-color:#6e7777;outline:2px solid #a8b0b0;outline-offset:3px}.contact-form-panel .wpcf7 textarea{min-height:220px;resize:vertical}.contact-form-panel .wpcf7 input[type=submit]{max-width:none;border:0;border-radius:0;padding:19px;background:#626b6b!important;letter-spacing:.22em;transition:background .2s;min-height:60px}.contact-form-panel .wpcf7 input[type=submit]:hover{background:#454e4e!important}.contact-form-panel .wpcf7-response-output{margin:24px 0;padding:16px;font-size:14px}.contact-end{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #dadddd;margin-top:90px;padding-top:30px;font-size:12px;letter-spacing:.12em}.contact-end>span{color:#7d8585}@media(max-width:760px){.contact-intro{padding:20px 0 48px}.contact-title-row h1{font-size:clamp(72px,18vw,110px)}.contact-arrow{font-size:64px}.contact-layout{grid-template-columns:1fr;gap:52px;padding-top:48px}.contact-guide{max-width:520px}.contact-mail{margin-top:28px}.contact-form-panel{border-top:1px solid #dadddd;padding-top:36px}.contact-end{margin-top:56px}.contact-lead{font-size:28px}}@media(prefers-reduced-motion:reduce){.contact-form-panel input,.contact-form-panel textarea{transition:none!important}}
/* About */
body:has(.profile-intro){background:linear-gradient(155deg,#fff 8%,#f0f1f1 40%,#fff 85%)}.profile-intro{padding-top:30px}.profile-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:10%;padding:36px 0 80px}.profile-hero-grid figure{margin:0}.profile-hero-grid figure img{display:block;width:100%;border-radius:2px}.profile-hero-grid figcaption{font-size:10px;letter-spacing:.18em;margin-top:16px;color:#727b7b}.profile-hero-grid h2{font-size:40px;font-weight:400;margin:16px 0 28px}.profile-hero-grid h2 span{font-family:Georgia,serif;font-size:25px;color:#7d8585;margin-left:14px}.profile-statement{font-size:clamp(25px,3vw,38px);line-height:1.8;letter-spacing:.06em}.profile-hero-grid p:not(.eyebrow):not(.profile-statement){font-size:14px;line-height:2}.profile-work-link{display:flex;justify-content:space-between;border-bottom:1px solid #bdc4c4;padding:18px 0;margin-top:24px;font-size:14px}.profile-section{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:8%;border-top:1px solid #d7dcdc;padding:48px 0}.profile-section-label h2{font-size:21px;font-weight:400;margin:14px 0;line-height:1.7}.profile-section-body{font-size:15px;line-height:2.15}.profile-section-body>p:first-child{margin-top:0}.profile-section-body p{margin-bottom:0}.profile-section-body .fz-14px{font-size:inherit}.profile-section-body .column-wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px}.profile-section-body .column-wrap p{margin-top:0}.profile-section-body strong{font-weight:500}.profile-section-body a{overflow-wrap:anywhere}.profile-contact{border-top:1px solid #d7dcdc;padding:64px 0 10px;margin-top:24px}.profile-contact>a{display:block;position:relative;font-size:clamp(27px,4.5vw,46px);line-height:1.75;letter-spacing:.05em;padding:12px 65px 12px 0}.profile-contact>a span{position:absolute;right:0;top:25px;font-size:45px;color:#8d9696}.profile-contact>p:last-child{font-size:13px;color:#707777}@media(max-width:760px){.profile-intro{padding-top:20px}.profile-hero-grid{grid-template-columns:1fr;gap:32px;padding:12px 0 48px}.profile-hero-grid figure{max-width:360px;width:100%;margin:auto}.profile-hero-grid h2{font-size:32px}.profile-statement{font-size:28px}.profile-section{grid-template-columns:1fr;gap:16px;padding:32px 0}.profile-section-label h2{margin-bottom:4px}.profile-section-body{font-size:14px}.profile-contact{padding-top:40px}.profile-section-body .column-wrap{grid-template-columns:1fr;gap:20px}}
/* Journal pagination */
.pagination{align-items:center;gap:8px;border-top:1px solid #d7dcdc;padding-top:34px;margin-top:72px}.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:0;background:transparent;font-size:13px;line-height:1.4;color:#747c7c;text-decoration:none;position:relative}.pagination .page-numbers.current{color:#454e4e;font-weight:600}.pagination .page-numbers.current::after{content:"";position:absolute;bottom:2px;left:calc(50% - 9px);width:18px;height:2px;background:#737e7e}.pagination a.page-numbers:hover{color:#353e3e;background:#e9eded}.pagination .prev,.pagination .next{font-size:12px;letter-spacing:.1em;padding-inline:16px}.pagination .prev{margin-right:auto}.pagination .next{margin-left:auto}.pagination .dots{min-width:20px;padding-inline:2px}@media(max-width:420px){.pagination{gap:2px;flex-wrap:wrap;padding-top:24px}.pagination .page-numbers{min-width:38px;min-height:44px;padding:8px}.pagination .prev,.pagination .next{padding-inline:8px;letter-spacing:0}}
/* Contact submit — restrained outline treatment */
.contact-form-panel .wpcf7 input[type=submit]{display:inline-block;width:220px;max-width:100%;min-height:52px;padding:14px 30px;border:1px solid #aeb7b7;border-radius:0;background:transparent!important;color:#596363;font-size:13px;font-weight:400;letter-spacing:.16em;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.contact-form-panel .wpcf7 input[type=submit]:hover{background:#e9eded!important;border-color:#758181;color:#394545}.contact-form-panel .wpcf7 input[type=submit]:focus-visible{outline:2px solid #758181;outline-offset:5px}.contact-form-panel .wpcf7 input[type=submit]:disabled{opacity:.5;cursor:wait}.contact-form-panel .wpcf7 form>p:has(input[type=submit]){margin-top:36px;display:flex;align-items:center;gap:12px}.contact-form-panel .wpcf7-spinner{margin:0;flex-shrink:0}@media(prefers-reduced-motion:reduce){.contact-form-panel .wpcf7 input[type=submit]{transition:none}}
