@font-face{font-family:Montserrat;src:url('assets/montserrat-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-medium.woff') format('woff');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-semibold.woff') format('woff');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-italic.woff') format('woff');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('assets/instrument-serif-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
:root{--cream:#F3EEE6;--gold:#e9c4cd;--ink:#234244;--paper:#f6f3e9;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:#12302F}body{font-family:Montserrat,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;color:var(--cream);overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #F6B3C6;outline-offset:4px}::selection{background:#e9c4cd;color:#12302F}
#pond{width:100%;height:100vh;height:100svh}
.center{position:absolute;inset:0 0 6svh;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,2vw,24px);padding:0 24px;text-align:center;pointer-events:none}
.center::before{content:'';position:absolute;left:50%;top:50%;z-index:-1;width:min(1000px,96vw);height:min(46svh,420px);transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(6,22,24,.5),rgba(6,22,24,.2) 60%,transparent)}
.title{position:relative;margin:0;font-family:Montserrat,Georgia,serif;font-size:clamp(56px,11.5vw,184px);font-weight:400;line-height:.92;letter-spacing:-.025em;white-space:nowrap;color:#F3EEE6;text-shadow:0 2px 22px rgba(8,22,24,.6),0 12px 60px rgba(8,22,24,.5)}.hi,.name{display:inline-block}.name{font-style:italic;padding-right:.06em;background:linear-gradient(100deg,#FBE9EF 5%,#F6B3C6 50%,#EC8FAE 95%);-webkit-background-clip:text;background-clip:text;color:transparent}
.subtitle{margin:0;font-size:clamp(15px,1.5vw,18px);letter-spacing:.06em;color:rgba(250,236,240,.86);text-shadow:0 1px 14px rgba(8,22,24,.75)}
.reveal{animation:reveal 1.8s cubic-bezier(.215,.61,.355,1) both;animation-delay:calc(.25s + var(--i,0)*.16s)}@keyframes reveal{from{opacity:0;transform:translateY(28px);filter:blur(14px)}}
.pond-controls{position:absolute;right:28px;top:25px;z-index:5;display:flex;gap:8px}.icon-button{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(18,40,42,.35);border:1px solid #e9c4cd3d;color:#eee5e7;backdrop-filter:blur(8px);transition:background .2s,border-color .2s}.icon-button:hover{background:#e9c4cd20;border-color:#e9c4cd80}.icon-button svg{width:17px;height:17px}.sound-on,.play-icon{display:none}#sound-toggle[aria-pressed=true] .sound-off{display:none}#sound-toggle[aria-pressed=true] .sound-on{display:block}#motion-toggle[aria-pressed=true] .pause-icon{display:none}#motion-toggle[aria-pressed=true] .play-icon{display:block}
.pond-footer{position:absolute;bottom:23px;left:29px;right:29px;z-index:3;display:flex;justify-content:space-between;gap:18px;pointer-events:none;font-size:10px;letter-spacing:.06em;color:#eee0e175}.skip-link{position:fixed;left:20px;top:-100px;z-index:20;padding:12px 18px;background:var(--paper);color:var(--ink);border-radius:3px}.skip-link:focus{top:15px}.text-button,.inline-link{background:none;border:0;padding:3px 0;font-size:11px;letter-spacing:.3px;display:flex;gap:15px;align-items:center;color:var(--ink)}.text-button:hover,.inline-link:hover{color:#9b607b}.inline-link{margin-top:23px;text-decoration:underline;text-underline-offset:5px;font-size:12px}.status-dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:#9dba89;flex:none}
dialog{color-scheme:light;color:var(--ink);width:min(850px,calc(100vw - 64px));max-height:calc(100svh - 74px);padding:0;border:1px solid #d4cdb7;border-radius:5px;background:var(--paper);box-shadow:0 35px 150px #00171988;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a8b7a8 transparent}dialog[open]{animation:panel-in .4s cubic-bezier(.2,.75,.25,1)}dialog::backdrop{background:#05212579;backdrop-filter:blur(9px);animation:backdrop-in .3s}.dialog-shell{padding:28px 41px 24px;background-image:radial-gradient(#6c7e6110 .65px,transparent .65px);background-size:5px 5px}.dialog-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #264e451c;padding-bottom:17px}.dialog-wordmark{font:20px Montserrat,Georgia,serif;letter-spacing:-.3px}.dialog-wordmark span{color:#8d7850;margin-left:6px;font-size:20px}.close-button{display:grid;place-items:center;background:transparent;border:1px solid #2a51452e;border-radius:50%;width:33px;height:33px;color:var(--ink);transition:background .2s}.close-button svg{width:17px;height:17px}.close-button:hover{background:#e6e8d9}.panel-content{padding:32px 0 35px}.panel-eyebrow,.small-label{display:block;font-size:9px;line-height:1.6;letter-spacing:2px;color:#7a826c;margin:0 0 20px}.panel-content h2{font:400 clamp(34px,4.5vw,50px)/1.08 Montserrat,Georgia,serif;letter-spacing:-1.6px;margin:0 0 22px}.panel-content h2 em{font-weight:400;color:#75816a}.panel-lead{font-size:14px;line-height:1.7;max-width:530px;margin:0 0 26px;color:#52635a}.about-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:start}.about-prose p{font-size:12px;line-height:1.85;margin:0 0 15px;color:#52635a}.note-card{position:relative;padding:33px 23px 20px;margin-top:6px;background:#e9e9d9;transform:rotate(3deg);border:1px solid #c8cfb87a;box-shadow:3px 6px 0 #5c726308}.note-pin{position:absolute;top:-14px;left:calc(50% - 14px);color:#9b7956;font-size:30px}.note-label{font-size:8px;letter-spacing:1.4px;color:#7b826c}.note-card p{font:italic 24px/1.4 Montserrat,Georgia,serif;margin:20px 0;color:#5d735d}.note-signature{font:italic 21px Montserrat,Georgia,serif;color:#8b815e}.interest-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.interest-tags span{font-size:10px;padding:7px 11px;border:1px solid #aeb8a47a;border-radius:20px;color:#65745d}.dialog-footer{border-top:1px solid #264e451c;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;color:#82907d}.dialog-footer .text-button{font-size:10px;color:var(--ink)}.dialog-footer .text-button:hover{color:#8a764d}
.book-project{display:grid;grid-template-columns:190px 1fr;gap:36px;align-items:center;background:#e8e9dd7a;border:1px solid #d1d7c3;padding:25px;margin:20px 0}.book-cover{aspect-ratio:.7;background:#7e2934;color:#e4caaa;padding:20px 15px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:7px 6px 0 #283d2d17;border-left:5px solid #9c4e52;position:relative}.book-cover:after{position:absolute;inset:9px;border:1px solid #d5b68a55;content:"";pointer-events:none}.book-cover-top{font-size:6px;letter-spacing:1.5px;line-height:1.6}.book-cover svg{width:110px;height:103px;margin:7px 0}.book-cover-title{font:23px/1.08 Montserrat,Georgia,serif;letter-spacing:-.5px}.book-cover-bottom{font-size:5px;letter-spacing:1.8px;margin-top:auto;padding-top:17px}.book-description .small-label{margin-bottom:13px}.book-description h3{font:31px/1.1 Montserrat,Georgia,serif;letter-spacing:-.7px;margin:0 0 15px}.book-description p{font-size:12px;line-height:1.8;color:#5b6a5d;margin:0 0 20px}.project-status{font-size:9px;letter-spacing:.5px;color:#778465;display:flex;align-items:center;gap:8px}.project-status .status-dot{background:#8e9c6b}.story-link{display:flex;align-items:center;justify-content:space-between;text-decoration:none;padding:17px 2px;gap:20px}.story-link>span:first-child{display:flex;flex-direction:column;gap:8px}.story-link .small-label{margin-bottom:0;font-size:8px}.story-link strong{font:23px Montserrat,Georgia,serif}.story-link>span>span:last-child{font-size:11px;color:#66745f}.round-arrow{width:38px;height:38px;border:1px solid #9ca991;border-radius:50%;display:grid;place-items:center;flex:none}.story-link:hover .round-arrow{background:#e0e5d3}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.journey-card{padding:23px;border:1px solid #c9ceb9}.journey-card.china{background:#e9e5d4;color:#74775a}.journey-card.japan{background:#e6e7df;color:#667c73}.journey-index{font-size:9px;letter-spacing:1.5px}.journey-art{height:115px;margin:8px 0 16px}.journey-art svg{width:100%;height:100%}.journey-card h3{font:32px Montserrat,Georgia,serif;margin:0 0 8px;color:#354f45}.journey-card p{font-size:11px;line-height:1.8;margin:0 0 20px;min-height:59px}.journey-places{font-size:9px;letter-spacing:1px}.travel-footnote{display:flex;gap:16px;align-items:center;padding:24px 10px 0;font:italic 17px/1.5 Montserrat,Georgia,serif;color:#7c856b}.travel-footnote>span{font-size:26px}.travel-footnote p{margin:0}.joy-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.joy{padding:20px 18px 20px 0}.joy:nth-child(2n){padding-left:22px}.joy:nth-child(-n+2){border-bottom:1px solid #d8ddcc}.joy-illustration{font:38px Montserrat,Georgia,serif;color:#8f976e;display:block;height:45px}.joy-book{font-size:35px}.joy h3{font:23px Montserrat,Georgia,serif;margin:8px 0}.joy p{font-size:12px;line-height:1.7;color:#6b7663;margin:0;max-width:240px}.small-delight{padding:15px 18px;border:1px solid #abb598;background:#e6e9d7;color:#526546;width:100%;margin-top:18px;display:flex;align-items:center;gap:14px;text-align:left;font-size:11px}.small-delight:hover{background:#dce2ca}.small-delight span:first-child{font-size:21px;color:#9b7a82}.small-delight span:last-child{margin-left:auto}.contact-card{display:flex;gap:18px;align-items:center;border-top:1px solid #cbd3bf;border-bottom:1px solid #cbd3bf;padding:29px 0;margin:38px 0 28px;text-decoration:none}.contact-icon{width:49px;height:49px;border:1px solid #b6c0a9;border-radius:50%;display:grid;place-items:center}.contact-icon svg{width:25px;height:25px}.contact-card .small-label{font-size:8px;margin-bottom:7px}.contact-card strong{font:30px Montserrat,Georgia,serif;font-weight:400}.contact-card>span:last-child{margin-left:auto;font-size:25px;transition:transform .2s}.contact-card:hover>span:last-child{transform:translate(3px,-3px)}.contact-postscript{font:italic 20px/1.5 Montserrat,Georgia,serif;color:#7e896e}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%,16px);background:var(--paper);border:1px solid #b8bfa8;color:var(--ink);padding:13px 21px;border-radius:40px;font-size:12px;z-index:10;opacity:0;pointer-events:none;transition:opacity .4s,transform .4s;white-space:nowrap}
.toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes panel-in{from{opacity:0;transform:translateY(25px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
.panel-content strong{font-weight:500}.panel-lead{font-size:14px}.about-prose p,.book-description p{font-size:13px}.interest-tags{margin-top:20px}.interest-tags span{font-size:11px}.dialog-wordmark{font-size:23px}.dialog-topline .close-button{width:35px;height:35px}.panel-content h2{font-size:clamp(40px,4.5vw,57px);letter-spacing:-1px}.book-cover-title{font-size:26px}.book-cover-top{font-size:7px}.book-cover-bottom{font-size:6px}.book-description h3{font-size:36px}.note-card p{font-size:28px}.note-signature{font-size:24px}.story-link strong{font-size:26px}.joy h3{font-size:27px}.joy p{font-size:13px}.journey-card p{font-size:13px}.journey-card h3{font-size:36px}.contact-postscript{font-size:23px}
@media(max-width:700px){.center{inset:0 0 14svh;gap:19px}.subtitle{max-width:290px;font-size:13px;line-height:1.65}.pond-controls{top:20px;right:20px}.pond-footer{left:20px;right:20px;bottom:19px;font-size:9px}.icon-button{width:32px;height:32px}.koi-pond__link{font-size:12px;padding:9px 13px}dialog{width:calc(100vw - 26px);max-height:calc(100svh - 30px);border-radius:4px}.dialog-shell{padding:20px 24px}.panel-content{padding:26px 0}.panel-content h2{font-size:38px;letter-spacing:-.8px}.panel-lead{font-size:14px}.dialog-footer>span{display:none}.dialog-footer{justify-content:flex-end}.toast{font-size:11px;bottom:70px;max-width:90vw;white-space:normal;line-height:1.6;text-align:center}.about-layout{grid-template-columns:1fr;gap:6px}.note-card{margin:18px 4px 21px;padding:25px 24px 15px;max-width:280px;transform:rotate(2deg)}.note-card p{font-size:27px;margin:12px 0}.about-prose p{font-size:13px}.book-project{grid-template-columns:140px 1fr;gap:21px;padding:21px}.book-cover{padding:20px 13px}.book-cover-title{font-size:23px}.book-cover-top{font-size:5px}.book-cover svg{width:85px;height:80px;margin:9px 0}.book-cover-bottom{font-size:4px;letter-spacing:1px}.book-description h3{font-size:29px}.book-description .small-label{font-size:8px;letter-spacing:1px}.project-status{font-size:9px}.story-link strong{font-size:24px}.story-link>span>span:last-child{font-size:12px;line-height:1.6}.travel-footnote{font-size:19px}.joy h3{font-size:25px}.small-delight{font-size:11px;padding:13px;gap:9px}.contact-card{gap:13px}.contact-card .small-label{font-size:8px;letter-spacing:1px}.contact-card strong{font-size:29px}.contact-icon{width:43px;height:43px;flex:none}.contact-postscript{font-size:22px}}
@media(max-width:520px){.panel-content h2{font-size:clamp(35px,9vw,42px)}.book-project{grid-template-columns:1fr;gap:25px;padding:22px}.book-cover{width:160px;justify-self:center}.book-cover-title{font-size:25px}.book-cover-top{font-size:6px}.book-cover svg{width:90px;height:85px}.book-cover-bottom{font-size:5px;padding-top:16px}.book-description h3{font-size:31px}.book-description p{line-height:1.8}.journey-grid{grid-template-columns:1fr;gap:15px}.journey-card{padding:22px}.journey-art{height:115px}.journey-card p{min-height:0}.journey-index,.journey-places{font-size:10px}.joy-grid{grid-template-columns:1fr}.joy,.joy:nth-child(2n){padding:19px 0;border-bottom:1px solid #d8ddcc}.joy p{max-width:none}.dialog-footer .text-button{font-size:11px}}
@media(max-width:360px){.title{font-size:50px}.subtitle{font-size:12px;max-width:250px}.koi-pond__link{font-size:11px;padding:8px 11px}.pond-footer{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.subtitle{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:1000px;line-height:1.5}.subtitle-role{font-weight:500;letter-spacing:.035em}.subtitle-details{display:flex;justify-content:center;flex-wrap:wrap;row-gap:4px;font-size:clamp(12px,1.05vw,14px);letter-spacing:.025em;line-height:1.8;color:rgba(250,236,240,.78)}.subtitle-details>span{white-space:nowrap}.subtitle-details>span+span::before{content:'·';padding:0 12px;opacity:.65}
@media(max-width:700px){.subtitle{max-width:100%;gap:8px}.subtitle-role{font-size:14px}.subtitle-details{flex-direction:column;font-size:12px;line-height:1.8;row-gap:0}.subtitle-details>span+span::before{display:none}}
@media(max-width:360px){.subtitle-role{font-size:13px}.subtitle-details{font-size:11px}}

/* Site typography: Montserrat throughout; the signature font awaits the supplied Amsterdam Four asset. */
.hi{font-size:.68em;letter-spacing:-.04em}.name,.note-signature{font-family:'Instrument Serif',Georgia,serif}
.panel-content h2{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.035em;line-height:1.15}.dialog-wordmark{font-size:16px;font-weight:500;letter-spacing:-.02em}.note-card p{font-size:20px;line-height:1.55}.book-cover-title{font-size:18px;line-height:1.3}.book-description h3{font-size:28px;line-height:1.2}.journey-card h3{font-size:28px;letter-spacing:-.02em}.joy h3{font-size:21px;line-height:1.25}.story-link strong{font-size:22px}.contact-postscript{font-size:17px;line-height:1.6}
