:root{--paper:#f5f5f5;--ink:#333333;--muted:#717171;--green:#505050;--line:rgba(35,39,45,.12);--serif:'Newsreader',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--glass:rgba(255,255,255,.8)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px;overflow-x:clip}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #959595;outline-offset:5px}input:focus,textarea:focus,select:focus{outline:2px solid #959595;outline-offset:2px}[hidden]{display:none!important}::selection{background:#dadada}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.ambient{position:absolute;top:0;right:0;width:62%;height:930px;pointer-events:none;overflow:hidden;z-index:-1;filter:blur(48px);opacity:.65}.ambient span{position:absolute;border-radius:50%;animation:ambient-flow 22s ease-in-out infinite alternate;will-change:transform}.ambient span:nth-child(1){background:#dedede;width:500px;height:500px;top:60px;right:-80px}.ambient span:nth-child(2){background:#dddddd;width:400px;height:400px;top:120px;right:180px;animation-delay:-9s;animation-duration:27s}.ambient span:nth-child(3){background:#d9d9d9;width:450px;height:450px;top:330px;right:50px;animation-delay:-17s}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:14px;font-weight:700;display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:32px;height:35px;border-radius:9px;background:linear-gradient(140deg,#818181,#474747);color:#ffffff;font:italic 27px var(--serif);box-shadow:inset 0 1px 1px #ffffff8f,0 5px 12px #4747471f;padding-bottom:5px}.header-inner nav{display:flex;gap:29px;font-size:12px}.header-inner nav a{color:var(--muted);position:relative}.header-inner nav .active{color:var(--ink)}.header-inner nav .active:after{content:'';width:4px;height:4px;background:var(--green);position:absolute;bottom:-11px;left:calc(50% - 2px);border-radius:100%}.header-actions{display:flex;align-items:center;gap:12px}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;background:linear-gradient(160deg,#717171 0%,#4c4c4c 65%,#434343 100%);border:1px solid #535353;box-shadow:inset 0 1px 1px #ffffff66,0 5px 12px #36363621;color:#ffffff;padding:12px 19px;border-radius:8px;font-size:12px;font-weight:500;transition:box-shadow .2s,transform .2s}.button:hover{transform:translateY(-2px);box-shadow:inset 0 1px 1px #ffffff66,0 8px 20px #36363633}.button span{font-size:17px;line-height:1}.button.small{font-size:11px;padding:10px 15px;gap:14px}.icon-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#ffffff7d;font-size:22px;flex-shrink:0}.mobile-menu{display:none}.hero{padding-top:69px;padding-bottom:59px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;min-height:704px}.eyebrow{text-transform:uppercase;letter-spacing:1.65px;font-size:9px;font-weight:600;line-height:1.7;color:#6e6e6e}.hero .eyebrow{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:1.5px}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8b8b8b;box-shadow:0 0 0 3px #a0a0a01f;vertical-align:middle;flex-shrink:0}.hero h1{font:400 clamp(61px,6.15vw,86px)/.98 var(--serif);letter-spacing:-3.8px;margin-top:27px;color:#353535;text-shadow:0 1px 0 white,0 5px 14px #5050500d}.hero h1>span{background:linear-gradient(130deg,#363636 25%,#686868 75%,#969696);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none}.hero-role{display:flex;align-items:center;gap:13px;margin-top:24px}.fine-rule{width:27px;height:1px;background:#888888}.hero-role p{font-size:17px;font-weight:500}.hero-role em{font-family:var(--serif);font-size:22px;font-weight:400}.hero-description{max-width:370px;margin-top:13px;color:var(--muted);font-size:12px;line-height:1.8}.hero-actions{display:flex;gap:23px;align-items:center;margin-top:27px}.text-link{font-size:11px;font-weight:500;display:inline-flex;gap:17px;align-items:center;white-space:nowrap}.text-link span{font-size:16px}.hero-art{position:relative;padding:0 28px 0 34px;max-width:500px;margin-top:0}.hero-aura{position:absolute;top:-60px;right:-75px;width:400px;height:330px;background:radial-gradient(ellipse at 65% 35%,#dedede9c 0,transparent 63%),radial-gradient(ellipse at 45% 65%,#cececeba,transparent 70%);filter:blur(30px);animation:halo-drift 16s ease-in-out infinite alternate;z-index:-1}.portrait-frame{position:relative;border-radius:150px 150px 15px 15px;overflow:hidden;border:7px solid rgba(255,255,255,.76);outline:1px solid #d2d2d28f;box-shadow:0 28px 65px -30px #5a5a5a70,0 3px 12px #7d7d7d14,inset 0 0 0 1px white;background:#f0f0f0;height:484px;transform:rotate(1.3deg)}.portrait-frame:after{content:'';position:absolute;inset:0;border-radius:140px 140px 10px 10px;border:1px solid #ffffffa1;pointer-events:none;background:linear-gradient(130deg,#ffffff33,transparent 35%,transparent 80%,#ffffff22)}.portrait-frame>img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.portrait-caption{position:absolute;bottom:13px;left:12px;right:12px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border:1px solid #ffffff99;box-shadow:0 5px 20px #29292917;border-radius:8px;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;font-size:9px;gap:8px}.portrait-caption span:first-child{display:flex;align-items:center;gap:7px}.portrait-caption span:last-child{font-size:8px;color:var(--muted)}.orbit-label{font-size:9px;letter-spacing:.4px;display:flex;gap:9px;align-items:center;margin-bottom:16px;padding-left:10px}.orbit-label>span{font-size:24px;line-height:1;animation:spin 36s linear infinite}.photo-note{position:absolute;left:-9px;bottom:83px;background:linear-gradient(120deg,#fffffff5,#f3f3f3e8);border:1px solid white;box-shadow:0 9px 24px #5959591f,inset 0 1px 1px white;display:flex;gap:11px;align-items:center;padding:15px 20px 14px 15px;transform:rotate(-4deg);border-radius:10px;font-size:11px;line-height:1.45;backdrop-filter:blur(20px)}.mini-spark{font-size:28px;color:#818181}.photo-note em{font-family:var(--serif);font-size:17px}.portrait-foot{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.4px;margin-top:19px;padding:0 6px;color:#7b7b7b}.intro-line{display:flex;justify-content:space-between;align-items:center;border-block:1px solid var(--line);padding-block:17px}.intro-line p{font-size:11px;color:var(--muted)}.intro-line em{font-family:var(--serif);font-size:16px;color:var(--ink);margin-left:4px}.intro-line>a{font-size:18px}.section{padding-top:76px;padding-bottom:8px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-number{color:#949494;margin-right:9px;font-size:8px}.section h2{font:400 39px/1.15 var(--serif);letter-spacing:-1.2px;margin-top:10px}.section-heading>p{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:4px}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.work-card{background:linear-gradient(135deg,#ffffffba,#fbfbfb8a);border:1px solid #dedede;border-top-color:#ffffff;box-shadow:inset 0 1px 0 white,0 7px 19px -14px #3636361f;border-radius:12px;padding:21px 25px 19px;transition:transform .3s,box-shadow .3s}.work-card:hover{transform:translateY(-3px);box-shadow:0 13px 25px -17px #36363659}.card-top{display:flex;justify-content:space-between;align-items:center}.role{font-size:8px;text-transform:uppercase;letter-spacing:1.25px;font-weight:600;color:#797979}.work-index{font-size:9px;letter-spacing:1px;color:#a3a3a3}.work-card h3{font-family:var(--serif);font-size:25px;letter-spacing:-.45px;margin:10px 0 7px;line-height:1.2}.work-card h3 a{display:flex;justify-content:space-between;align-items:center;gap:10px}.work-card h3 a>span{font:15px var(--sans);color:#8d8d8d}.work-card>p{font-size:11px;color:var(--muted);line-height:1.8;max-width:470px}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:15px}.tags>span{font-size:8px;padding:3px 8px;border-radius:4px;background:#ebebeb8c;color:#7e7e7e}.licensing-card{margin-top:14px;background:linear-gradient(120deg,#ebebebaa,#fafafacf);padding:24px 27px;border:1px solid #dedede;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:36px}.licensing-title .role{display:flex;justify-content:space-between}.licensing-title h3{font:25px/1.2 var(--serif);margin:10px 0 7px}.licensing-title>p{font-size:11px;line-height:1.8;color:var(--muted)}.clients{padding-left:30px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.clients .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:10px}.clients>div{display:grid;grid-template-columns:1fr 1fr;gap:8px 15px;font-size:9px;color:#5d5d5d}.clients>div>span{position:relative;padding-left:9px}.clients>div>span:before{content:'';width:3px;height:3px;position:absolute;top:6px;left:0;border-radius:50%;background:#9a9a9a}.journey{display:grid;grid-template-columns:1.45fr 1fr;gap:78px;padding-top:83px}.section-intro{font-size:11px;color:var(--muted);margin-top:13px;max-width:410px}.experience-list{margin-top:25px}.experience-list details{border-bottom:1px solid var(--line)}.experience-list summary{display:flex;gap:17px;align-items:center;cursor:pointer;padding:14px 0;list-style:none}.experience-list summary::-webkit-details-marker{display:none}.experience-index{font-size:9px;color:#9e9e9e;align-self:flex-start;padding-top:3px}.experience-list strong{font-size:12px;font-weight:500;display:block}.experience-list small{display:block;font-size:9px;color:var(--muted);margin-top:2px}.expand-symbol{font-size:17px;color:#959595;margin-left:auto;transition:transform .3s}.experience-list details[open] .expand-symbol{transform:rotate(45deg)}.experience-list details>p{font-size:11px;color:var(--muted);padding:0 25px 15px 32px}.experience-list details>p a{text-decoration:underline}.credentials{align-self:start;margin-top:19px;padding:34px 32px 25px;background:linear-gradient(145deg,#e8e8e8a6,#f8f8f8);border:1px solid #dcdcdc;box-shadow:inset 0 1px 0 white;border-radius:120px 120px 14px 14px;position:relative;text-align:center}.credential-seal{font-size:34px;display:block;color:#929292;line-height:1.4}.credentials .eyebrow{font-size:8px}.credentials h3{font:32px/1.1 var(--serif);letter-spacing:-.7px;margin-top:13px}.credentials>p:not(.eyebrow){font-size:10px;line-height:1.8;color:var(--muted);margin:15px auto 21px;max-width:255px}.credential-list{text-align:left;border-top:1px solid var(--line)}.credential-list>div{padding:9px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.credential-list span{font-size:10px}.credential-list small{font-size:8px;color:#909090}.projects-section{margin-top:75px;padding-top:65px;padding-bottom:55px;background:linear-gradient(180deg,#ecececaa,#efefefb0);border-block:1px solid #e0e0e0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-preview{display:block;width:100%;padding:13px 13px 0;aspect-ratio:1.38;background:#e6e6e6;border:1px solid #d7d7d7;border-radius:12px;overflow:hidden;position:relative;text-align:left}.window-bar{height:20px;display:flex;gap:3px;align-items:center;background:#ffffffc9;border-radius:6px 6px 0 0;padding:0 7px;border:1px solid #ffffff;position:relative;z-index:1}.window-bar i{width:3px;height:3px;border-radius:50%;background:#a6a6a6}.window-bar span{font-size:5px;color:#8d8d8d;margin-left:8px;letter-spacing:.1px}.project-preview>img{width:100%;height:auto;min-height:100%;object-fit:cover;object-position:left top;box-shadow:0 5px 18px #3d3d3d1a;transition:transform .5s}.project-preview:hover>img{transform:scale(1.025)}.tumbuh-preview{background:#e6e6e6;border-color:#dbdbdb}.preview-zoom{position:absolute;bottom:10px;right:9px;padding:4px 8px;border:1px solid #ffffff99;border-radius:5px;backdrop-filter:blur(10px);background:#f9f9f9c4;font-size:7px;opacity:0;transition:opacity .3s}.project-preview:hover .preview-zoom,.project-preview:focus-visible .preview-zoom{opacity:1}.project-info{padding:17px 2px 0}.project-label{font-size:7px;text-transform:uppercase;letter-spacing:.7px;display:flex;justify-content:space-between;gap:8px;color:#848484}.project-state{letter-spacing:.2px;text-transform:none;font-size:7px}.project-info h3{font:28px var(--serif);letter-spacing:-.6px;margin:8px 0}.project-info>p{font-size:10px;color:var(--muted);line-height:1.85;min-height:56px}.project-info .text-link{margin-top:14px;font-size:10px}.link-button{background:none;padding:0;text-align:left}.fatherhood-preview{display:block;aspect-ratio:1.38;position:relative;border-radius:12px;overflow:hidden;background:#dedede;border:1px solid #cecece;padding:18px 32px 0}.paper-sheet{position:relative;z-index:1;background:linear-gradient(115deg,#fcfcfc,#f0f0f0);box-shadow:-3px 4px 19px #6c6c6c1f,1px 0 white;transform:rotate(-6deg);padding:19px 22px;min-height:300px}.paper-sheet .eyebrow{font-size:5px;letter-spacing:1px;color:#8c8c8c}.paper-title{display:block;font:34px/.95 var(--serif);letter-spacing:-1px;color:#5b5b5b;margin-top:14px}.paper-title em{color:#7d7d7d}.paper-rule{width:25px;height:1px;background:#b8b8b8;margin-top:14px}.paper-subtitle{font-size:7px;display:block;color:#8d8d8d;line-height:1.7;margin-top:10px}.paper-circle{width:150px;height:150px;border:1px solid #bdbdbd80;border-radius:50%;position:absolute;right:-50px;top:-35px}.paper-caption{position:absolute;bottom:12px;right:13px;z-index:2;font-size:6px;letter-spacing:1.4px;color:#818181;transform:rotate(-90deg);transform-origin:right top}.notes-list{border-top:1px solid var(--line)}.note-row{display:grid;grid-template-columns:155px 1fr 20px;gap:18px;align-items:center;border-bottom:1px solid var(--line);width:100%;text-align:left;padding:20px 9px 19px 2px;background:transparent;transition:background .2s}.note-row:hover{background:#eaeaea69}.note-type{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#8e8e8e}.note-row h3{font:26px var(--serif);letter-spacing:-.4px}.note-row div>span{font-size:9px;color:var(--muted);display:block;margin-top:3px}.note-arrow{color:#8a8a8a;font-size:18px}.concept-row h3{color:#6a6a6a}.personal-section{padding-bottom:70px;margin-top:68px;border-block:1px solid var(--line);background:linear-gradient(145deg,#eeeeeeb3,#f8f8f8)}.personal-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-top:28px}.personal-tabs>button{padding:0 0 13px;background:transparent;font-size:10px;color:#8e8e8e;position:relative;white-space:nowrap}.personal-tabs>button>span{margin-left:18px}.personal-tabs>[aria-selected=true]{color:var(--ink)}.personal-tabs>[aria-selected=true]:after{content:'';height:2px;background:#888888;position:absolute;bottom:-1px;left:0;right:0}.personal-panel{padding-top:29px;min-height:377px}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.collection-heading h3{font:28px/1.2 var(--serif);letter-spacing:-.4px}.collection-heading p{font-size:10px;color:var(--muted);margin-top:7px}.gallery-actions{display:flex;align-items:center;gap:20px}.filter-group{display:flex;gap:10px}.filter-group button{padding:5px 0;background:transparent;font-size:9px;color:#919191}.filter-group .selected{color:#535353;text-decoration:underline;text-underline-offset:5px}.outline-button{padding:9px 13px;background:#ffffff80;border:1px solid #d8d8d8;border-radius:6px;font-size:9px;white-space:nowrap;transition:background .2s}.outline-button:hover{background:#ffffff}.photo-grid{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:17px;align-items:start}.photo-item{margin:0;position:relative;min-width:0}.photo-image{position:relative;border-radius:10px;aspect-ratio:1.28;overflow:hidden;background:#e7e7e7;border:1px solid var(--line);width:100%;padding:0;display:block}.photo-image>img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-image:hover>img{transform:scale(1.035)}.photo-item:first-child .photo-image>img{object-position:center 33%}.photo-caption{display:flex;justify-content:space-between;gap:10px;margin-top:9px;font-size:10px;color:#5b5b5b}.photo-caption small{font-size:8px;color:#939393;display:block;margin-top:1px}.photo-tag{font-size:7px;text-transform:uppercase;letter-spacing:.6px;padding-top:2px;color:#9b9b9b}.photo-placeholder{aspect-ratio:1.28;border:1px dashed #c9c9c9;border-radius:10px;background:linear-gradient(150deg,#eeeeee,#e8e8e8d9);position:relative;overflow:hidden;width:100%;padding:0;text-align:left;color:#787878;display:flex;align-items:flex-end}.photo-placeholder>svg{position:absolute;inset:0;width:100%;height:100%;opacity:.6}.placeholder-copy{position:relative;z-index:1;padding:17px;font-size:10px;line-height:1.5}.placeholder-copy small{display:block;font-size:8px;color:#919191;margin-top:2px}.photo-placeholder.work-placeholder{background:linear-gradient(145deg,#ededed,#e5e5e5)}.frame-outline{position:absolute;inset:23px 45px 30px;border:1px solid #c0c0c0;transform:rotate(-7deg);border-radius:90px 90px 4px 4px}.frame-outline:after{content:'+';position:absolute;font-size:25px;font-family:var(--serif);color:#afafaf;top:calc(50% - 24px);left:calc(50% - 6px)}.local-hint{font-size:9px;color:#8d8d8d;line-height:1.8;margin-top:18px}.remove-item{position:absolute;top:7px;right:7px;width:24px;height:24px;background:#f9f9f9e0;border:1px solid #ffffff;border-radius:50%;display:grid;place-items:center;font-size:16px;box-shadow:0 2px 10px #1c1c1c12}.empty-gallery{grid-column:1/-1;padding:50px;text-align:center;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:12px}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.book-card{position:relative}.book-cover{height:200px;max-width:135px;width:100%;box-shadow:5px 9px 12px #36363617;background:linear-gradient(120deg,#787878,#515151);border-radius:1px 5px 5px 1px;position:relative;color:#ededed;padding:23px 14px;display:flex;flex-direction:column;justify-content:space-between;font:24px/1.1 var(--serif);overflow-wrap:anywhere}.book-cover:after{content:'';position:absolute;left:5px;top:0;bottom:0;width:2px;background:#30303040;box-shadow:2px 0 1px #fbfbfb26}.book-cover>img{width:100%;height:100%;object-fit:cover}.book-cover.has-image{padding:0}.book-cover small{font:8px var(--sans);color:#dadada}.book-card h4{font-size:12px;font-weight:500;line-height:1.4;margin:14px 0 1px}.book-author{font-size:9px;color:var(--muted)}.book-date{font-size:8px;color:#909090;margin-top:4px}.book-takeaway{font:italic 15px/1.4 var(--serif);color:#7d7d7d;margin-top:10px}.empty-books{grid-column:1/-1;display:flex;gap:30px;align-items:center;background:#eaeaea91;border:1px solid #dfdfdf;border-radius:10px;padding:24px 35px}.empty-books .empty-book-icon{width:90px;height:124px;border-radius:2px 6px 6px 2px;border:1px solid #b7b7b7;background:linear-gradient(105deg,#d0d0d0,#e5e5e5);font:36px var(--serif);display:grid;place-items:center;color:#a0a0a0;box-shadow:5px 7px 0 #d8d8d8,7px 9px 0 #c0c0c0;flex-shrink:0}.empty-books h4{font:27px var(--serif);margin:0 0 8px}.empty-books p{max-width:420px;font-size:11px;color:var(--muted)}.empty-books button{margin-top:16px}.topic-panel{display:flex;gap:45px;align-items:flex-start;padding:38px 25px;max-width:800px;min-height:350px}.topic-mark{font-size:65px;color:#989898;line-height:1;min-width:85px}.topic-panel h3{font:36px var(--serif);margin-top:12px}.topic-panel p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:10px;max-width:550px;line-height:1.8}.topic-chips{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.topic-chips span{font-size:9px;background:#e6e6e6;border:1px solid #dbdbdb;border-radius:5px;padding:5px 9px;color:#868686}.contact{text-align:center;position:relative;padding-block:90px 85px;overflow:hidden}.contact-glow{position:absolute;width:450px;height:220px;top:40px;left:calc(50% - 225px);background:radial-gradient(ellipse,#dddddda8,transparent 70%);filter:blur(30px);z-index:-1;animation:halo-drift 18s ease-in-out infinite alternate}.contact h2{font:80px/1.2 var(--serif);letter-spacing:-3.5px;margin-top:13px;text-shadow:0 2px white,0 8px 25px #4e4e4e14}.contact>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:8px 0 24px}.contact>.button{padding:12px 21px;gap:36px}.footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:24px;padding-bottom:82px;gap:15px;font-size:9px;color:#8b8b8b}.footer>a{color:var(--ink)}.concept-toolbar{position:fixed;bottom:17px;left:50%;transform:translateX(-50%);z-index:30;background:#f9f9f9e6;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid #ffffff;box-shadow:0 5px 30px #3f3f3f21,0 0 0 1px #9b9b9b1c;border-radius:30px;display:flex;gap:0;align-items:center;padding:9px 6px 9px 15px;white-space:nowrap}.concept-toolbar>span{font-size:7px;letter-spacing:1.2px;display:flex;gap:7px;align-items:center;padding-right:14px}.concept-toolbar b{font-weight:500;color:#a7a7a7}.concept-toolbar>button{font-size:8px;background:transparent;padding:2px 12px;border-left:1px solid #dadada;color:#878787}.toast{position:fixed;bottom:83px;left:50%;transform:translateX(-50%);background:#3f3f3f;color:white;border:1px solid #717171;box-shadow:0 3px 20px #38383833;z-index:70;padding:12px 20px;border-radius:10px;font-size:12px;max-width:calc(100% - 40px)}dialog{border:1px solid #dbdbdb;color:var(--ink);border-radius:16px;background:#f9f9f9;box-shadow:0 30px 100px #29292940;max-height:90vh;overscroll-behavior:contain}dialog::backdrop{background:#2f2f2f80;backdrop-filter:blur(6px)}.editor-dialog{width:min(570px,calc(100% - 32px));padding:30px 32px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:17px}.dialog-heading h2{font:37px/1.1 var(--serif);letter-spacing:-.8px;margin-top:8px}.editor-dialog p:not(.eyebrow):not(.form-error){font-size:12px;color:var(--muted);line-height:1.8}.editor-dialog label{display:flex;flex-direction:column;gap:7px;font-size:11px;margin-top:19px;color:#666666}input,textarea,select{background:#ffffff;border:1px solid #d6d6d6;border-radius:6px;padding:10px 11px;font-size:12px;min-width:0;width:100%;color:var(--ink)}input[type=file]{font-size:10px;padding:9px}input::file-selector-button{font-size:10px;border:0;background:#eaeaea;color:#606060;border-radius:3px;padding:5px 7px;margin-right:8px}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.editor-dialog form>.button{width:100%;margin-top:20px}.form-error{font-size:11px;color:#565656;margin-top:10px}.image-dialog{width:min(1180px,calc(100% - 40px));padding:15px 20px 20px}.image-dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:15px}.image-dialog-top p{font-size:12px}#expanded-image{max-height:72vh;width:100%;object-fit:contain;border-radius:8px;background:#f0f0f0}#image-caption{font-size:11px;margin-top:12px;color:var(--muted)}.concept-points{margin:25px 0}.concept-points>div{border-top:1px solid var(--line);padding:13px 0}.concept-points dt{font:21px var(--serif);margin-bottom:5px}.concept-points dd{margin:0;font-size:11px;color:var(--muted);line-height:1.8}.concept-actions{display:flex;gap:10px;margin-top:20px}.motion-paused *{animation-play-state:paused!important}.motion-paused{scroll-behavior:auto}
@keyframes ambient-flow{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-70px,55px,0) scale(1.16)}}@keyframes halo-drift{0%{transform:translate3d(0,0,0) scale(.9);opacity:.7}100%{transform:translate3d(35px,-20px,0) scale(1.15);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero h1{font-size:90px}.hero{min-height:755px;padding-top:80px;padding-bottom:80px}.portrait-frame{height:510px}.hero-art{margin-left:auto;width:470px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-inner nav{gap:21px}.hero{gap:26px;grid-template-columns:1fr 1fr;min-height:660px}.hero h1{font-size:72px}.hero-art{padding-right:8px;padding-left:25px}.portrait-frame{height:440px}.hero-actions{gap:17px}.hero-actions .text-link{font-size:10px;gap:8px}.hero-actions .button{font-size:11px;padding:11px 14px;gap:14px}.photo-note{padding:13px;left:0}.journey{gap:45px}.project-grid{gap:16px}.project-label{font-size:6px;letter-spacing:.25px}.project-state{font-size:6px}.project-info h3{font-size:24px}.project-info>p{font-size:10px;min-height:72px}.collection-heading{align-items:flex-start}.gallery-actions{gap:13px;flex-direction:column;align-items:flex-end}.work-card h3{font-size:24px}}
@media(max-width:800px){.wrap{width:calc(100% - 44px)}.header-inner{height:72px}.header-inner nav{display:none;position:absolute;top:72px;left:0;right:0;padding:19px 22px 24px;background:#f7f7f7f5;border-bottom:1px solid var(--line);box-shadow:0 20px 20px #36363612}.header-inner nav.open{display:flex;flex-direction:column;gap:0}.header-inner nav a{padding:10px 0;border-bottom:1px solid #e1e1e1}.header-inner nav .active:after{display:none}.mobile-menu{display:grid}.brand{font-size:12px}.brand-mark{width:29px;height:31px;font-size:24px}.hero{padding-block:45px 43px;gap:18px;min-height:590px}.hero h1{font-size:61px;letter-spacing:-2.7px}.hero .eyebrow{font-size:7px;letter-spacing:1px}.hero-role p{font-size:13px}.hero-role em{font-size:18px}.fine-rule{width:17px}.hero-role{gap:8px}.hero-description{font-size:11px;max-width:285px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-art{padding-left:15px;padding-right:0}.portrait-frame{height:365px;border-width:5px;border-radius:130px 130px 13px 13px}.photo-note{font-size:8px;gap:7px;left:-12px;bottom:61px;padding:10px}.photo-note em{font-size:13px}.mini-spark{font-size:20px}.portrait-caption{padding:8px;bottom:8px;left:5px;right:5px}.portrait-caption span:first-child{font-size:8px}.portrait-caption span:last-child{font-size:6px}.orbit-label{font-size:7px;padding-left:8px;gap:7px}.orbit-label>span{font-size:20px}.portrait-foot{font-size:5px;letter-spacing:1px}.section{padding-top:58px}.section h2{font-size:33px}.section-heading>p{font-size:10px}.work-card{padding:19px}.work-card h3{font-size:24px;line-height:1.05;min-height:48px;margin-bottom:9px}.work-card>p{font-size:10px;line-height:1.8;min-height:54px}.role{font-size:7px;letter-spacing:1px}.licensing-card{gap:20px;padding:21px}.licensing-title h3{font-size:24px}.licensing-title>p{font-size:10px}.clients{padding-left:20px}.clients>div{grid-template-columns:1fr;font-size:8px;gap:5px}.journey{gap:30px;grid-template-columns:1.25fr 1fr}.credentials{padding:25px 20px}.credentials h3{font-size:29px}.credentials>p:not(.eyebrow){font-size:9px}.credential-list>div{display:block;padding:7px 0}.credential-list small{display:block;margin-top:2px}.experience-list strong{font-size:11px}.experience-list small{font-size:8px}.projects-section{margin-top:55px;padding-bottom:40px}.project-grid{gap:13px}.project-preview{padding:9px 9px 0;aspect-ratio:1.2}.window-bar{height:16px;padding-inline:4px}.window-bar span{font-size:4px;margin-left:4px}.window-bar i{width:2px;height:2px}.project-info{padding-top:13px}.project-label{display:block;font-size:6px}.project-state{display:none}.project-info h3{font-size:22px;min-height:49px}.project-info>p{font-size:9px;min-height:92px}.project-info .text-link{font-size:8px;gap:7px}.fatherhood-preview{aspect-ratio:1.2;padding:14px 18px 0}.paper-sheet{padding:12px 14px}.paper-title{font-size:26px}.paper-sheet .eyebrow{font-size:4px}.paper-subtitle{font-size:6px}.paper-caption{font-size:5px}.note-row{grid-template-columns:120px 1fr 16px;gap:14px}.note-type{font-size:7px}.note-row h3{font-size:23px}.note-row div>span{font-size:8px}.personal-section{margin-top:50px;padding-bottom:45px}.personal-tabs{gap:28px}.personal-tabs>button>span{margin-left:12px}.collection-heading h3{font-size:25px}.photo-grid{gap:12px;grid-template-columns:1fr 1.15fr 1fr}.placeholder-copy{padding:12px;font-size:9px}.placeholder-copy small{font-size:7px}.photo-caption{font-size:9px}.photo-tag{font-size:6px}.photo-caption small{font-size:7px}.local-hint{font-size:8px}.contact{padding-block:65px}.contact h2{font-size:66px}.footer{font-size:8px}.footer>span:nth-child(2){display:none}}
@media(max-width:560px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 36px)}.header-inner{height:68px;gap:8px}.header-inner nav{top:68px}.brand{font-size:11px;gap:8px}.brand-mark{width:26px;height:29px;font-size:22px}.button.small{font-size:9px;padding:9px 11px;gap:8px}.header-actions{gap:8px}.icon-button{width:31px;height:31px;font-size:20px}.hero{grid-template-columns:1fr;gap:36px;padding-top:35px;padding-bottom:32px}.hero-copy{position:relative}.hero .eyebrow{font-size:7px;letter-spacing:1px}.hero h1{font-size:clamp(56px,17vw,69px);line-height:.96;margin-top:24px;letter-spacing:-3px}.hero h1>span>br{display:initial}.hero h1>span{display:block;max-width:340px}.hero-role{margin-top:22px}.hero-role p{font-size:15px}.hero-role em{font-size:20px}.hero-description{font-size:12px;max-width:340px;margin-top:10px}.hero-actions{flex-direction:row;align-items:center;gap:18px;margin-top:22px}.hero-actions .button{font-size:10px;gap:9px;padding:12px 14px}.hero-actions .text-link{font-size:9px;gap:7px}.hero-art{width:100%;max-width:380px;justify-self:center;padding:0 19px 0 32px;position:relative}.orbit-label{font-size:8px;margin-bottom:11px}.portrait-frame{height:390px;border-radius:140px 140px 13px 13px;border-width:6px;max-width:315px;margin:auto;transform:rotate(1deg)}.portrait-frame>img{object-position:center 42%}.photo-note{left:2px;bottom:64px;font-size:10px;padding:12px 15px;gap:10px}.photo-note em{font-size:15px}.mini-spark{font-size:25px}.portrait-caption{padding:10px;bottom:9px;left:8px;right:8px}.portrait-caption span:first-child{font-size:9px}.portrait-caption span:last-child{font-size:7px}.portrait-foot{font-size:6px;letter-spacing:1px;padding-left:9px}.hero-aura{width:330px;right:-10px;top:-35px}.ambient{width:100%;height:1100px;opacity:.65}.ambient span:nth-child(1){top:360px;width:300px;height:400px}.ambient span:nth-child(2){top:540px;right:20px;width:300px;height:300px}.ambient span:nth-child(3){top:700px;width:350px;height:350px}.intro-line{padding-block:13px}.intro-line p{font-size:9px;max-width:270px}.intro-line em{font-size:13px;margin-left:0;display:block}.section{padding-top:44px}.section-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:24px}.section h2{font-size:34px;letter-spacing:-1px;margin-top:8px}.section-heading>p{font-size:10px;line-height:1.7}.section-heading>p br{display:none}.eyebrow{font-size:8px}.work-grid{grid-template-columns:1fr;gap:11px}.work-card{padding:20px 21px 18px}.work-card h3{font-size:28px;min-height:0;margin-top:12px}.work-card>p{font-size:11px;min-height:0;line-height:1.8}.role{font-size:8px}.tags{margin-top:13px}.tags>span{font-size:8px}.licensing-card{grid-template-columns:1fr;gap:18px;padding:21px}.licensing-title h3{font-size:26px}.licensing-title>p{font-size:11px}.clients{padding:16px 0 0;border-left:0;border-top:1px solid var(--line)}.clients>div{grid-template-columns:1fr 1fr;font-size:8px;gap:8px 10px}.journey{grid-template-columns:1fr;gap:27px}.section-intro{font-size:11px}.experience-list strong{font-size:12px}.experience-list small{font-size:9px}.experience-list summary{padding:16px 0}.credentials{border-radius:12px;padding:24px 25px;text-align:left;margin-top:0}.credential-seal{float:right;font-size:40px}.credentials h3{font-size:30px}.credentials h3 br{display:none}.credentials>p:not(.eyebrow){max-width:100%;font-size:10px;margin:12px 0 18px}.credential-list{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.credential-list span{font-size:10px}.credential-list small{font-size:8px}.projects-section{margin-top:40px;padding-top:42px;padding-bottom:34px}.project-grid{grid-template-columns:1fr;gap:30px}.project-preview{aspect-ratio:1.5;padding:15px 15px 0}.window-bar{height:21px;gap:4px;padding:0 8px}.window-bar i{width:3px;height:3px}.window-bar span{font-size:5px;margin-left:8px}.project-label{display:flex;font-size:7px}.project-state{display:block;font-size:7px}.project-info h3{font-size:31px;min-height:0}.project-info>p{font-size:11px;min-height:0;line-height:1.8;max-width:360px}.project-info .text-link{font-size:10px;gap:14px;margin-top:10px}.preview-zoom{opacity:1;font-size:8px}.fatherhood-preview{aspect-ratio:1.5;padding:23px 54px 0}.paper-sheet{padding:22px 26px}.paper-sheet .eyebrow{font-size:6px}.paper-title{font-size:38px}.paper-subtitle{font-size:8px}.paper-caption{font-size:6px}.note-row{grid-template-columns:1fr 20px;padding-block:17px;gap:5px 12px}.note-type{grid-column:1;grid-row:1;font-size:7px}.note-row>div{grid-column:1;grid-row:2}.note-row h3{font-size:25px}.note-row div>span{font-size:9px;line-height:1.8}.note-arrow{grid-column:2;grid-row:1/3;font-size:19px}.personal-section{margin-top:40px;padding-bottom:37px}.personal-tabs{gap:20px;overflow-x:auto;margin-top:23px}.personal-tabs>button{font-size:9px;padding-bottom:12px}.personal-tabs>button>span{display:none}.collection-heading{flex-direction:column;gap:17px;margin-bottom:20px}.collection-heading h3{font-size:27px}.collection-heading p{font-size:10px}.gallery-actions{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.filter-group{gap:16px}.filter-group>button{font-size:10px}.outline-button{font-size:9px}.photo-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.photo-item:first-child{grid-column:1/-1}.photo-item:first-child .photo-image{aspect-ratio:1.65}.photo-item:first-child .photo-image>img{object-position:center 26%}.photo-placeholder{aspect-ratio:.88}.placeholder-copy{font-size:9px;padding:12px}.placeholder-copy small{font-size:7px}.photo-caption{font-size:10px}.photo-tag{font-size:7px}.frame-outline{inset:18px 25px 40px}.local-hint{font-size:9px}.book-grid{grid-template-columns:1fr 1fr;gap:25px 20px}.book-cover{height:190px;max-width:130px}.empty-books{gap:22px;padding:24px 20px}.empty-books .empty-book-icon{width:61px;height:92px;font-size:29px}.empty-books h4{font-size:24px}.empty-books p{font-size:10px}.empty-books .outline-button{font-size:8px}.topic-panel{padding:30px 4px;gap:18px;min-height:350px}.topic-mark{min-width:38px;font-size:39px}.topic-panel h3{font-size:31px}.topic-panel p:not(.eyebrow){font-size:12px}.topic-panel .eyebrow{font-size:7px}.topic-chips{gap:6px}.topic-chips span{font-size:8px}.contact{padding-block:65px}.contact h2{font-size:71px}.contact>p:not(.eyebrow){font-size:11px;max-width:270px;margin:8px auto 24px}.footer{font-size:8px;gap:10px;padding-bottom:82px;padding-top:20px}.concept-toolbar{bottom:12px;padding:9px 4px 9px 11px;width:max-content;max-width:calc(100% - 20px)}.concept-toolbar>span{font-size:6px;gap:5px;padding-right:9px;letter-spacing:.8px}.concept-toolbar>button{font-size:7px;padding-inline:9px}.concept-toolbar b{display:none}.concept-toolbar>span .status-dot{width:4px;height:4px}.editor-dialog{padding:23px 21px}.dialog-heading h2{font-size:32px}.form-grid{grid-template-columns:1fr;gap:0}.image-dialog{padding:12px;max-width:calc(100% - 20px);width:calc(100% - 20px)}.image-dialog-top p{font-size:10px}.concept-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep the compact composition readable at normal browser zoom. */
.header-inner nav{font-size:13px}.hero-description{font-size:14px}.hero .eyebrow{font-size:10px}.hero-actions .text-link{font-size:12px}.eyebrow{font-size:10px}.section-number{font-size:9px}.section-heading>p{font-size:13px}.intro-line p{font-size:12px}.intro-line em{font-size:17px}.work-card>p,.licensing-title>p{font-size:13px;line-height:1.75}.role{font-size:9px}.tags>span{font-size:9px}.clients .eyebrow{font-size:9px}.clients>div{font-size:11px}.section-intro{font-size:13px}.experience-list strong{font-size:14px}.experience-list small{font-size:11px}.experience-list details>p{font-size:13px}.credentials>p:not(.eyebrow){font-size:12px}.credential-list span{font-size:12px}.credential-list small{font-size:9px}.project-label,.project-state{font-size:8px}.project-info>p{font-size:12px;min-height:70px}.project-info .text-link{font-size:11px}.note-type{font-size:9px}.note-row div>span{font-size:11px}.personal-tabs>button{font-size:12px}.collection-heading p{font-size:12px}.filter-group button{font-size:11px}.outline-button{font-size:11px}.photo-caption{font-size:12px}.photo-caption small{font-size:10px}.photo-tag{font-size:9px}.placeholder-copy{font-size:12px}.placeholder-copy small{font-size:10px}.local-hint{font-size:11px}.contact>p:not(.eyebrow){font-size:14px}.footer{font-size:11px}
@media(max-width:1100px) and (min-width:561px){.hero-description{font-size:12px}.hero .eyebrow{font-size:8px}.hero-actions .text-link{font-size:10px}.work-card>p,.licensing-title>p{font-size:12px}.clients>div{font-size:10px}.project-info>p{font-size:11px;min-height:95px}.project-info .text-link{font-size:9px}.personal-tabs>button{font-size:11px}.photo-caption{font-size:11px}.placeholder-copy{font-size:10px}.placeholder-copy small{font-size:8px}.credentials>p:not(.eyebrow){font-size:10px}.experience-list strong{font-size:12px}.experience-list small{font-size:9px}.section-heading>p{font-size:11px}.photo-tag{font-size:7px}.credential-list span{font-size:11px}.credential-list small{font-size:8px}}
@media(max-width:560px){.hero .eyebrow{font-size:8px}.hero-description{font-size:13px}.hero-actions .text-link{font-size:10px}.eyebrow{font-size:9px}.section-heading>p{font-size:12px}.intro-line p{font-size:11px}.intro-line em{font-size:15px}.work-card>p,.licensing-title>p{font-size:13px}.role{font-size:9px}.clients>div{font-size:10px}.section-intro{font-size:12px}.experience-list strong{font-size:13px}.experience-list small{font-size:10px}.credentials>p:not(.eyebrow){font-size:12px}.credential-list span{font-size:11px}.credential-list small{font-size:9px}.project-info>p{font-size:13px;min-height:0}.project-info .text-link{font-size:12px}.note-type{font-size:9px}.note-row div>span{font-size:11px}.personal-tabs{gap:16px}.personal-tabs>button{font-size:10px}.collection-heading p{font-size:12px}.filter-group button{font-size:11px}.outline-button{font-size:10px}.photo-caption{font-size:11px}.photo-caption small{font-size:9px}.photo-tag{font-size:8px}.placeholder-copy{font-size:10px}.placeholder-copy small{font-size:8px}.local-hint{font-size:10px}.contact>p:not(.eyebrow){font-size:13px}.footer{font-size:9px}}

/* White concept: retain composition and motion, use white glass and silver light. */
:root{--paper:#fff;--ink:#25282e;--muted:#6b7079;--green:#343941;--line:rgba(35,39,45,.12);--glass:rgba(255,255,255,.8)}
body{background:#fff}
.site-header{background:rgba(255,255,255,.88);border-bottom-color:#eceef0}
.brand-mark{color:#333840;background:linear-gradient(140deg,#fff,#edf0f3);box-shadow:inset 0 1px 1px white,0 3px 10px #20252e12;border:1px solid #e2e6ea}
.button{background:linear-gradient(155deg,#555b64,#30353c 70%,#282d33);border-color:#363d45;box-shadow:inset 0 1px 1px #ffffff66,0 5px 12px #20263020}
.button:hover{box-shadow:inset 0 1px 1px #ffffff66,0 8px 20px #2026302c}
.hero h1{color:#25282e;text-shadow:0 1px white,0 5px 14px #2531400a}
.hero h1>span{background-image:linear-gradient(130deg,#22262c 25%,#525b66 75%,#939ca7);text-shadow:none}
.ambient{opacity:.78}
.ambient span:nth-child(1){background:#edf0f5}
.ambient span:nth-child(2){background:#f4f5f8}
.ambient span:nth-child(3){background:#e9edf3}
.hero-aura{background:radial-gradient(ellipse at 65% 35%,#ffffffbd 0,transparent 63%),radial-gradient(ellipse at 45% 65%,#dce2eccc,transparent 70%)}
.portrait-frame{background:#fff;border-color:#fff;outline-color:#e3e7ed;box-shadow:0 28px 65px -30px #48546555,0 3px 12px #6f7c8c14,inset 0 0 0 1px white}
.portrait-caption{background:rgba(255,255,255,.88);box-shadow:0 5px 20px #20263015}
.photo-note{background:linear-gradient(120deg,#fffffff5,#f7f9fce8);box-shadow:0 9px 24px #4854651c,inset 0 1px 1px white}
.work-card{background:linear-gradient(135deg,#fff,#fafbfd);border-color:#e4e8ed;border-top-color:#f4f6f8;box-shadow:inset 0 1px 0 white,0 7px 19px -14px #26314021}
.work-card:hover{box-shadow:0 13px 25px -17px #26314045}
.tags>span{background:#f0f2f5;color:#7b818a}
.licensing-card{background:linear-gradient(120deg,#f9fafc,#fff);border-color:#e4e8ed}
.credentials{background:linear-gradient(145deg,#f4f6f9,#fff);border-color:#e2e6ec}
.projects-section{background:linear-gradient(180deg,#fafbfc,#fff);border-color:#e7eaee}
.project-preview,.tumbuh-preview{background:#f0f2f5;border-color:#e0e5eb}
.fatherhood-preview{background:linear-gradient(140deg,#ebeff4,#f5f7fa);border-color:#dfe4eb}
.paper-sheet{background:linear-gradient(115deg,#fff,#f5f7fa);box-shadow:-3px 4px 19px #5260711f,1px 0 white}
.paper-title{color:#4b535f}.paper-title em{color:#7d8793}.paper-rule{background:#c1c9d3}
.note-row:hover{background:#f6f7fa}
.personal-section{background:linear-gradient(145deg,#fafbfd,#fff);border-color:#e7eaee}
.outline-button{background:#fff;border-color:#dfe4eb}.outline-button:hover{background:#f7f9fc}
.photo-image{background:#f3f5f8;border-color:#e0e5ec}
.photo-placeholder,.photo-placeholder.work-placeholder{background:linear-gradient(150deg,#fafbfd,#eef1f5);border-color:#cbd3de}
.empty-books{background:#f7f9fc;border-color:#e2e7ee}
.empty-books .empty-book-icon{background:linear-gradient(105deg,#dce3ed,#f3f6fa);border-color:#bdc9d8;color:#9aa8ba;box-shadow:5px 7px 0 #e5eaf2,7px 9px 0 #c9d3e1}
.book-cover{background:linear-gradient(120deg,#738194,#3e4b5e)}
.topic-chips span{background:#f0f3f7;border-color:#e1e6ee}
.contact-glow{background:radial-gradient(ellipse,#e6ebf3aa,transparent 70%)}
.concept-toolbar{background:#fffffff0;border-color:#fff;box-shadow:0 5px 30px #2a35451c,0 0 0 1px #bac4d138}
.concept-toolbar>button{border-left-color:#e0e5ed}
.toast{background:#333c49;border-color:#657185}
dialog{background:#fff;border-color:#e1e6ee;box-shadow:0 30px 100px #23304333}
dialog::backdrop{background:#202a3880}
.editor-dialog label{color:#626e7d}input,textarea,select{border-color:#d8e0eb;background:#fff}
input::file-selector-button{background:#eef2f8;color:#536176}
#expanded-image{background:#f5f7fa}.form-error{color:#b42318}
@media(max-width:800px){.header-inner nav{background:#fffffff5;border-color:#e1e6ed;box-shadow:0 20px 20px #2532470f}.header-inner nav a{border-bottom-color:#e9edf2}}

/* Motion 03: silver light travels behind the hero, with slow orbital lines. */
.ambient{position:fixed;inset:0;width:100%;height:100vh;opacity:.65;filter:blur(40px)}
.ambient span:nth-child(1){background:#e8edf4;animation:light-travel 11s ease-in-out infinite alternate}
.ambient span:nth-child(2){background:#f3f5f8;animation:light-travel 15s ease-in-out -6s infinite alternate-reverse}
.ambient span:nth-child(3){background:#e4eaf2;animation:light-travel 13s ease-in-out -4s infinite alternate}
.hero-aura{width:460px;height:430px;background:radial-gradient(ellipse at 55% 45%,#dbe2edc9,transparent 68%);filter:blur(25px);animation:hero-light 8s ease-in-out infinite alternate}
.motion-rings{position:absolute;inset:-50px -80px -25px -50px;pointer-events:none;z-index:-1;overflow:visible}
.motion-rings>span{position:absolute;inset:40px 0;border:1px solid #b5c1d054;border-radius:50%;transform:rotate(-25deg);animation:orbit-drift 20s linear infinite}
.motion-rings>span:nth-child(2){inset:105px -25px;border-color:#bdc8d73d;animation-direction:reverse;animation-duration:26s}
.photo-note{animation:note-float 6s ease-in-out infinite alternate}
.portrait-frame:before{content:'';position:absolute;z-index:1;top:-20%;left:-90%;height:140%;width:45%;pointer-events:none;background:linear-gradient(90deg,transparent,#ffffff25,transparent);transform:skewX(-25deg);animation:glass-light 10s ease-in-out infinite}
.footer-actions{display:flex;align-items:center;gap:22px}.motion-control{background:none;padding:0;color:#7e8793;font-size:10px;font-family:var(--sans)}
.footer{padding-bottom:32px}.photo-placeholder{cursor:default}.gallery-actions{justify-content:flex-end}
.frame-outline:after{content:none}
@keyframes light-travel{0%{transform:translate3d(70px,-65px,0) scale(.8)}100%{transform:translate3d(-170px,100px,0) scale(1.22)}}
@keyframes hero-light{0%{transform:translate3d(55px,-35px,0) scale(.8);opacity:.45}100%{transform:translate3d(-60px,45px,0) scale(1.2);opacity:1}}
@keyframes orbit-drift{from{transform:rotate(-25deg) scale(.96)}50%{transform:rotate(20deg) scale(1.05)}to{transform:rotate(335deg) scale(.96)}}
@keyframes note-float{from{transform:translateY(-5px) rotate(-4deg)}to{transform:translateY(7px) rotate(-2deg)}}
@keyframes glass-light{0%,25%{left:-90%}70%,100%{left:150%}}
@media(max-width:560px){.hero-aura{width:340px;height:360px;right:0}.motion-rings{inset:-20px -8px 0 0}.motion-rings>span{inset:40px 0}.motion-rings>span:nth-child(2){inset:100px -10px}.footer-actions{gap:14px}.motion-control{font-size:8px}.footer{padding-bottom:25px}.ambient{height:100vh}.ambient span:nth-child(1){top:200px}.ambient span:nth-child(2){top:400px}.ambient span:nth-child(3){top:550px}}

/* Revision 04: deeper card shadows and inward-moving lines below the name. */
.name-motion{width:min(375px,100%);height:25px;position:relative;margin-top:13px;overflow:hidden}
.name-motion .motion-track{position:absolute;left:0;right:0;top:11px;height:2px;background:linear-gradient(90deg,#e3e7ed30,#c9d0daaa,#e3e7ed30)}
.motion-beam{position:absolute;top:10px;width:24%;height:4px;border-radius:4px;box-shadow:0 0 8px #68758a35}
.motion-beam.left{left:0;background:linear-gradient(90deg,transparent,#596677);animation:line-in-left 2.7s ease-in-out infinite}
.motion-beam.right{right:0;background:linear-gradient(90deg,#596677,transparent);animation:line-in-right 2.7s ease-in-out infinite}
.motion-beam.echo{top:17px;height:2px;opacity:.45;animation-delay:-1.35s}
.motion-center{position:absolute;left:calc(50% - 4px);top:8px;width:8px;height:8px;background:#5e6b7d;border:2px solid #f1f4f8;border-radius:50%;box-shadow:0 0 0 4px #8c9bb31a,0 0 15px #8799b23b;animation:center-breathe 2.7s ease-in-out infinite}
.hero-role{margin-top:9px}
.motion-rings>span{border-width:2px;border-color:#91a2b36b}
.motion-rings>span:nth-child(2){border-width:1.5px;border-color:#9dacc05e}
.hero-aura{background:radial-gradient(ellipse at 55% 45%,#cfd9e9da,transparent 70%)}
.ambient{opacity:.75}
.work-card,.licensing-card,.credentials,.empty-books{box-shadow:inset 0 1px 0 #fff,0 5px 12px #26344b0b,0 16px 30px -9px #26344b20,0 30px 55px -24px #26344b24}
.work-card:hover{box-shadow:inset 0 1px #fff,0 8px 16px #26344b12,0 22px 35px -9px #26344b2c,0 35px 60px -24px #26344b30}
.project-card{border:1px solid #e0e6ee;background:linear-gradient(135deg,#fff,#fbfcfe);border-radius:14px;padding:12px 12px 19px;box-shadow:0 6px 13px #26344b0c,0 19px 35px -11px #26344b29,0 33px 50px -26px #26344b21}
.project-info{padding-inline:7px}.project-preview,.fatherhood-preview{box-shadow:inset 0 1px #fff,0 6px 14px #34445d13}
.photo-image,.photo-placeholder{box-shadow:0 5px 10px #26344b0b,0 14px 25px -9px #26344b29,0 25px 40px -22px #26344b24}
.photo-note{box-shadow:inset 0 1px #fff,0 8px 15px #26344b13,0 20px 35px -10px #26344b30}
.portrait-frame{box-shadow:0 10px 22px -10px #3b4d6838,0 30px 60px -22px #3b4d6866,0 50px 80px -40px #3b4d683d,inset 0 0 0 1px #fff}
.book-cover{box-shadow:4px 7px 12px #26344b22,9px 18px 25px -8px #26344b38}
@keyframes line-in-left{0%{transform:translateX(0);opacity:0}15%{opacity:1}72%{opacity:1}100%{transform:translateX(108.333%);opacity:0}}
@keyframes line-in-right{0%{transform:translateX(0);opacity:0}15%{opacity:1}72%{opacity:1}100%{transform:translateX(-108.333%);opacity:0}}
@keyframes center-breathe{0%,35%,100%{transform:scale(.85);opacity:.55}75%{transform:scale(1.25);opacity:1}}
@media(max-width:560px){.name-motion{width:300px;max-width:100%;margin-top:12px;height:24px}.hero-role{margin-top:8px}.project-card{padding:11px 11px 19px}.project-grid{gap:27px}.project-info{padding-inline:6px}.work-card{box-shadow:inset 0 1px #fff,0 5px 10px #26344b0d,0 15px 27px -9px #26344b27}}

/* Shared page-to-page graphic and section entrances. */
.page-transition{position:fixed;inset:0;z-index:1000;background:#fffffff2;backdrop-filter:blur(16px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility .15s}
.page-transition.is-active{opacity:1;visibility:visible;pointer-events:auto}
.transition-graphic{width:190px;height:120px;position:relative}
.transition-orbit{position:absolute;inset:8px 22px;border:1.5px solid #9eaec36e;border-radius:50%;transform:rotate(-25deg)}
.transition-orbit.second{inset:26px 0;border-color:#b5c0d060;transform:rotate(27deg)}
.transition-axis{position:absolute;top:58px;width:60px;height:3px;background:linear-gradient(90deg,transparent,#62758e);border-radius:3px}
.transition-axis.left{left:-10px}.transition-axis.right{right:-10px;background:linear-gradient(90deg,#62758e,transparent)}
.transition-graphic i{position:absolute;top:54px;left:90px;width:10px;height:10px;border-radius:50%;background:#7f92ad;box-shadow:0 0 0 6px #96a7bc16,0 0 30px #96a7bc55}
.transition-label{font:25px var(--serif);color:#8a9aaf;letter-spacing:-.3px}
.is-active .transition-orbit{animation:transition-orbit .6s ease-out both}.is-active .transition-orbit.second{animation-direction:reverse}
.is-active .transition-axis.left{animation:transition-left .39s ease-out both}.is-active .transition-axis.right{animation:transition-right .39s ease-out both}.is-active .transition-graphic i{animation:center-breathe .5s ease-out both}
.motion-reveal{opacity:0;transform:translateY(17px);transition:opacity .6s ease-out var(--reveal-delay,0ms),transform .6s ease-out var(--reveal-delay,0ms)}
.motion-reveal.is-revealed,.motion-paused .motion-reveal{opacity:1;transform:none}
.personal-panel.panel-enter,details[open]>p{animation:panel-enter .42s ease-out both}
.writing-loading{padding:22px 0;font-size:12px;color:#98a4b6}.source-notice{font-size:10px;color:#9aa8ba;line-height:1.8;margin:12px 0}
@keyframes transition-orbit{from{transform:rotate(-60deg) scale(.75);opacity:.3}to{transform:rotate(20deg) scale(1);opacity:1}}
@keyframes transition-left{from{transform:translateX(-25px);opacity:0}to{transform:translateX(60px);opacity:1}}
@keyframes transition-right{from{transform:translateX(25px);opacity:0}to{transform:translateX(-60px);opacity:1}}
@keyframes panel-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none}.page-transition{display:none}.personal-panel.panel-enter,details[open]>p{animation:none!important}}

/* Revision 06: repeated title entrances and a gentle enlargement on hover. */
.title-motion{position:relative;width:fit-content;max-width:100%}
.title-motion-text{display:inline-block;max-width:100%;transform-origin:left bottom}
.title-motion:after{content:'';position:absolute;bottom:-10px;left:0;width:min(128px,48%);height:2px;border-radius:2px;background:linear-gradient(90deg,#7d8ca2,#c5cedc55,transparent);transform:scaleX(0);transform-origin:left;pointer-events:none}
.title-inview>.title-motion-text{animation:title-arrival .72s cubic-bezier(.16,1,.3,1) both}
.title-inview:after{animation:title-rule .85s cubic-bezier(.16,1,.3,1) .12s both}
.hover-card{scale:1;transform-origin:center;transition-property:opacity,transform,scale,box-shadow,border-color;transition-duration:.6s,.6s,.28s,.28s,.28s;transition-timing-function:ease-out,ease-out,cubic-bezier(.2,.8,.2,1),ease,ease;transition-delay:var(--reveal-delay,0ms),var(--reveal-delay,0ms),0ms,0ms,0ms}
@media(hover:hover) and (pointer:fine){
  .hover-card:hover,.hover-card:focus-within{position:relative;z-index:4;scale:1.025;box-shadow:inset 0 1px #fff,0 9px 18px #26344b17,0 26px 40px -11px #26344b38,0 40px 65px -27px #26344b2c}
  .portrait-frame.hover-card:hover,.photo-note.hover-card:hover{position:relative;scale:1.02}
  .photo-note.hover-card:hover{position:absolute}
  .photo-item.hover-card:hover,.book-card.hover-card:hover{box-shadow:none}
  .photo-item.hover-card:hover .photo-image{box-shadow:0 9px 18px #26344b17,0 25px 39px -11px #26344b38}
}
.motion-paused .title-motion-text{animation:none!important;opacity:1;transform:none}
.motion-paused .title-motion:after{animation:none!important;transform:scaleX(1)}
@keyframes title-arrival{from{opacity:0;transform:translateY(24px) rotate(1.1deg);filter:blur(2px)}to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}
@keyframes title-rule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.title-motion-text{animation:none!important;opacity:1;transform:none;filter:none}.title-motion:after{animation:none!important;transform:scaleX(1)}.hover-card:hover,.hover-card:focus-within{scale:1}}
/* A single cover per category opens its complete photo album. */
#photo-grid.album-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;align-items:stretch}.album-grid .album-item:first-child{grid-column:auto}.album-item{min-width:0}.album-card{width:100%;height:100%;padding:0;border:1px solid #e0e5ec;border-radius:14px;background:#fff;text-align:left;overflow:hidden;box-shadow:inset 0 1px #fff,0 6px 14px #26344b0a,0 20px 36px -15px #26344b2c;display:flex;flex-direction:column;color:var(--ink)}.album-cover{display:block;position:relative;height:clamp(210px,25vw,290px);width:100%;overflow:hidden;background:#e9edf2}.album-cover>img{width:100%;height:100%;object-fit:cover;object-position:center 33%;transition:transform .5s}.album-cover:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#131c3047);pointer-events:none}.album-count{position:absolute;z-index:1;right:16px;top:16px;padding:7px 11px;border:1px solid #fff9;border-radius:25px;background:#fffffff0;box-shadow:0 3px 12px #1d29331a;backdrop-filter:blur(12px);font-size:11px;color:#5e6978}.album-cover-hint{position:absolute;z-index:1;left:20px;bottom:17px;color:#fff;font-size:11px;letter-spacing:.2px}.album-info{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%}.album-title{display:block;font:31px/1.15 var(--serif);letter-spacing:-.5px}.album-subtitle{display:block;font-size:12px;color:#909ba9;line-height:1.7;margin-top:7px}.album-open{flex-shrink:0;width:36px;height:36px;border:1px solid #e1e6ee;border-radius:50%;display:grid;place-items:center;font-size:19px;color:#8290a2;background:linear-gradient(145deg,#fff,#f2f5f9)}.album-empty{grid-column:1/-1;padding:40px 28px;background:#f9fafc;border:1px dashed #d3dce7;border-radius:12px}.album-empty h4{font:31px var(--serif);margin:13px 0}.album-empty p{font-size:13px;color:#929cab;line-height:1.8}.album-card:focus-visible{outline:2px solid #8a9bb0;outline-offset:5px}.gallery-actions .filter-group{flex-wrap:wrap;row-gap:12px}.image-viewer-open{overflow:hidden}.image-dialog{max-height:calc(100dvh - 32px);width:min(1180px,calc(100% - 40px));max-width:calc(100% - 40px);padding:18px;overflow:auto;background:#fff}.image-dialog [hidden]{display:none!important}.image-dialog-top{margin-bottom:13px}.image-dialog-top p{font-size:14px;line-height:1.6;color:#566477;overflow-wrap:anywhere}.image-dialog-top .icon-button{width:40px;height:40px;flex-shrink:0;font-size:27px}.image-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:62dvh;min-height:180px;max-height:640px;background:#f2f4f7;border-radius:9px;touch-action:pan-y pinch-zoom}.image-dialog #expanded-image{display:block;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:9px}.image-dialog.gallery-viewer .image-stage{height:55dvh;max-height:600px}.image-dialog .gallery-arrow{position:absolute;z-index:2;top:50%;translate:0 -50%;width:44px;height:44px;border:1px solid #fff9;border-radius:50%;display:grid;place-items:center;background:#ffffffe8;color:#59697e;box-shadow:0 3px 14px #26344b29;backdrop-filter:blur(12px);font-size:22px;padding:0}.gallery-arrow.previous{left:14px}.gallery-arrow.next{right:14px}.gallery-arrow:hover{background:#fff;color:#26354a}.gallery-arrow:focus-visible,.gallery-thumbnail:focus-visible{outline:2px solid #6b809b;outline-offset:3px}#image-caption{font-size:12px;line-height:1.7;color:#8b96a5;margin:12px 3px 0}.gallery-position{font-size:11px;color:#909bab;line-height:1.7;margin:12px 3px 0}.gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:10px 3px 4px;margin-top:3px;scrollbar-width:thin}.gallery-thumbnail{padding:3px;border:1px solid transparent;border-radius:7px;background:transparent;flex-shrink:0;width:65px;height:55px;opacity:.6}.gallery-thumbnail img{width:100%;height:100%;object-fit:cover;border-radius:4px}.gallery-thumbnail[aria-current=true]{border-color:#8596ad;opacity:1;background:#eef2f7}.gallery-error{font-size:12px;line-height:1.7;color:#8b6b63;padding:13px 0}.slide-enter{animation:album-slide-in .22s ease-out}@keyframes album-slide-in{from{opacity:.45;transform:translateX(6px)}to{opacity:1;transform:translateX(0)}}
@media(hover:hover) and (pointer:fine){.album-card:hover .album-cover>img{transform:scale(1.035)}.album-card.hover-card:hover{scale:1.015;box-shadow:inset 0 1px #fff,0 10px 20px #26344b12,0 28px 46px -13px #26344b36}}
@media(max-width:560px){#photo-grid.album-grid{grid-template-columns:1fr;gap:21px}.album-cover{height:220px}.album-info{padding:19px}.album-title{font-size:29px}.album-subtitle{font-size:11px}.album-count{top:13px;right:13px;font-size:10px}.album-cover-hint{left:19px;font-size:10px}.image-dialog{max-width:calc(100% - 18px);width:calc(100% - 18px);max-height:calc(100dvh - 18px);padding:12px}.image-dialog-top p{font-size:12px}.image-dialog .gallery-arrow{width:42px;height:42px}.gallery-arrow.previous{left:8px}.gallery-arrow.next{right:8px}.image-dialog .image-stage{height:62dvh;min-height:140px}.image-dialog.gallery-viewer .image-stage{height:51dvh}.gallery-thumbnail{width:58px;height:49px}.gallery-position{font-size:10px}#image-caption{font-size:11px}.collection-heading .gallery-actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.slide-enter{animation:none}.album-cover>img{transition:none}}.motion-paused .slide-enter{animation:none}
.album-grid .album-item{width:100%;max-width:560px}.album-grid .album-item.hover-card:hover{scale:1;transform:none}
.album-cover>img.album-portrait{object-position:center 15%}
