/* JP / Creative signal — a portfolio with its own pulse. */
:root{--electric:#666bff}.hero{padding-top:25px;background:radial-gradient(ellipse at 78% 48%,#31334f18,transparent 43%)}.hero-main{grid-template-columns:1.08fr 1fr;min-height:555px;margin-top:35px;align-items:center}.hero-type{padding-bottom:45px;z-index:3}.hero-id{color:#9ba48c;font-size:8px;letter-spacing:.16em;display:block;margin-bottom:27px}.hero-type h1{font-size:clamp(95px,11.8vw,207px);line-height:.82;letter-spacing:-.085em;font-weight:600;white-space:nowrap}.name-line{font-weight:400;color:#eeeede}.surname-line{display:block;margin-top:8px;position:relative;left:-.025em}.hero-type h1 br{display:none}.hero-type h1 .lime{font-weight:400}.hero-manifesto{display:flex;gap:18px;margin-top:42px;align-items:start}.manifesto-marker{font-size:35px;color:var(--lime);line-height:1}.hero-manifesto p{font-size:23px;letter-spacing:-.8px;line-height:1.1}.hero-art{height:555px;margin-top:0;isolation:isolate;position:relative}.hero-art .kinetic-stage{position:absolute;inset:-2% -7% auto -5%;width:112%;height:100%;z-index:1}.hero-collage{z-index:2;pointer-events:none;transform:none!important}.hero-tile{pointer-events:auto;border:1px solid #dfdfd1;padding:5px;box-shadow:0 20px 25px #0006}.hero-tile img{aspect-ratio:1.55;height:auto}.hero-tile:nth-child(1){width:31%;left:-8%;top:auto;bottom:8%;transform:rotate(-8deg)}.hero-tile:nth-child(2){width:29%;right:-3%;top:5%;transform:rotate(10deg)}.hero-tile:nth-child(3){display:none}.hero-tile-caption{font-size:7px;padding:7px 2px 3px;gap:8px}.art-coordinate{position:absolute;top:4px;left:4%;z-index:2;color:#7c856f;font-size:8px}.kinetic-controls{left:9%;right:9%;bottom:-1%}.hero-bottom{margin-top:10px;padding-top:24px;border-top:1px solid #2c3027;position:relative;z-index:4}.hero-edition{font-size:8px}.hero-signature p{max-width:300px}.hero-signature .signature-star{display:none}.round-arrow{background:var(--lime);color:var(--bg);border:0}.discipline-strip{transform:none;margin-top:39px;padding:9px 0;background:var(--bg);color:var(--ink);border-block:1px solid #42483a;opacity:.9}.marquee-track>span{font-size:28px;font-weight:400;letter-spacing:-1.2px}.marquee-track b{color:var(--lime);font-size:26px;font-weight:400}.intro-word{font-size:clamp(180px,30vw,450px);display:flex;align-items:center;justify-content:center;line-height:1}.intro-mark{font-size:.7em;display:inline-block;animation:spin 5s linear infinite}.intro-caption{position:absolute;top:62%;left:var(--pad);right:var(--pad);text-align:center;letter-spacing:.2em;font-size:9px}.desktop-nav{gap:25px}.work-section{padding-top:85px}.section-heading h2{font-size:clamp(40px,5.5vw,88px)}.project-image-button{border-radius:1px}.project-card:nth-child(1){grid-column:1/-1;display:grid;grid-template-columns:1.5fr .65fr;align-items:end;gap:35px}.project-card:nth-child(1) .project-image-button>img{aspect-ratio:1.8}.project-card:nth-child(1) .project-caption{padding:0 0 15px;display:block}.project-card:nth-child(1) h3{font-size:clamp(30px,3.3vw,53px);line-height:1.05;letter-spacing:-2px}.project-card:nth-child(1) .project-caption p{font-size:12px;margin-top:22px}.project-card:nth-child(1) .project-number{display:block;margin-top:30px}.project-card:nth-child(even){transform:none}.project-card:nth-child(2n+3){transform:translateY(65px)}.project-caption h3{font-size:21px}.project-index{margin-top:45px;border-block:1px solid var(--line)}.project-index summary{cursor:pointer;list-style:none;padding:19px 0;display:flex;justify-content:space-between}.project-index summary::-webkit-details-marker{display:none}.project-index summary span{color:var(--lime);font-size:18px;line-height:1}.project-index[open] summary span{transform:rotate(45deg)}.project-index ol{list-style:none;padding:0;margin:0 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:0 35px;counter-reset:work-index}.project-index li{border-top:1px solid #292e23;padding:13px 0;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.project-index li a:hover{color:var(--lime)}.project-index li>span{font:8px ui-monospace,monospace;color:var(--muted);text-align:right}.skills-signal{padding-top:15px;padding-bottom:90px}.skills-heading{display:flex;gap:40px;align-items:end;justify-content:space-between;margin:39px 0}.skills-heading h2{font-size:clamp(40px,5vw,78px)}.skills-heading h2>span{color:var(--lime)}.skills-heading p{max-width:255px;color:var(--muted);font-size:13px}.signal-skills{display:flex;flex-wrap:wrap;gap:10px}.signal-skills>span{padding:10px 15px;font-size:11px;border:1px solid var(--line);color:#b9c1ae}.signal-skills>span:first-child{border-color:#66774c;background:#26311d;color:var(--lime)}.journal-section{padding-top:25px;padding-bottom:100px}.journal-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin:45px 0}.journal-heading h2{font-size:clamp(55px,7.3vw,116px);letter-spacing:-.075em}.journal-heading h2 em{font-family:Georgia,serif;font-weight:400;font-size:1.08em;color:var(--lime)}.journal-heading p{font-size:12px;color:var(--muted)}.journal-heading .text-link{margin:0}.journal-empty{display:grid;grid-template-columns:.7fr 1fr 70px;gap:40px;align-items:center;border-block:1px solid var(--line);padding:45px 30px;background:linear-gradient(110deg,#13180f,#10110f 65%);transition:background .3s}.journal-empty:hover{background:#192012}.journal-empty h3{font-size:clamp(34px,4vw,59px);line-height:1.05;letter-spacing:-2px;margin:20px 0}.journal-empty p{font-size:13px;color:var(--muted);max-width:420px}.journal-empty .mono{font-size:8px;color:var(--lime)}.journal-orbit{height:230px;position:relative;display:grid;place-items:center}.journal-orbit:before,.journal-orbit:after{content:"";position:absolute;width:90%;height:80%;border:1px solid #748254;border-radius:50%;transform:rotate(30deg) scaleX(.5)}.journal-orbit:after{transform:rotate(-30deg) scaleX(.5)}.journal-orbit span{font-size:180px;font-weight:400;line-height:1;color:var(--lime);animation:spin 50s linear infinite}.journal-arrow{font-size:47px;color:var(--lime)}.journal-entry{display:grid;grid-template-columns:50px 1fr 160px 40px;align-items:center;gap:30px;border-top:1px solid var(--line);padding:28px 0}.journal-entry:last-child{border-bottom:1px solid var(--line)}.journal-entry h3{font-size:32px;line-height:1.1;letter-spacing:-1px;margin:12px 0}.journal-entry p{font-size:12px;color:var(--muted);max-width:600px}.journal-entry img{width:160px;height:110px;object-fit:cover}.journal-category{color:var(--lime);font-size:9px}.journal-index{color:var(--muted)}.journal-entry:hover h3{color:var(--lime)}.case-page .project-topbar nav{display:flex;gap:25px;font-size:12px}.case-heading{display:flex;justify-content:space-between;align-items:start;gap:50px;margin-top:35px}.case-heading h1{font-size:clamp(52px,7.4vw,120px);line-height:.97;font-weight:500;max-width:1000px;letter-spacing:-.065em}.case-number{font-size:clamp(80px,13vw,200px);color:transparent;-webkit-text-stroke:1px #555e49;line-height:.8;letter-spacing:-.08em}.case-page .project-gallery img{height:auto}.case-page .project-next h2{font-size:clamp(30px,4vw,60px);margin-top:20px}.case-footer{border-top:1px solid var(--line);padding-block:25px;display:flex;justify-content:space-between;gap:30px;align-items:center}.case-footer a{font-size:12px}.case-missing{padding-top:80px;padding-bottom:100px}.case-missing h1{font-size:clamp(50px,7vw,100px);margin:25px 0}.case-missing p{color:var(--muted);margin-bottom:35px;max-width:500px}.case-page .project-description{margin-top:20px}.case-page .project-summary{margin-top:0}
@media(min-width:1700px){.hero-main{min-height:655px}.hero-art{height:655px}.hero-type{padding-bottom:65px}.hero-manifesto{margin-top:60px}.hero-tile:nth-child(1){max-width:250px}.hero-tile:nth-child(2){max-width:230px}}
@media(max-width:1100px){.hero-main{min-height:470px}.hero-art{height:470px}.hero-type h1{font-size:11.7vw}.hero-manifesto p{font-size:21px}.hero-type{padding-bottom:28px}.hero-id{font-size:7px}.desktop-nav{gap:20px}.desktop-nav a{font-size:11px}.hero-tile:nth-child(1){left:-5%}.hero-tile:nth-child(2){right:0}.hero-edition{display:none}.kinetic-controls{font-size:8px}.journal-heading p{display:none}}
@media(max-width:760px){.hero{padding-top:22px}.hero-main{display:flex;flex-direction:column;align-items:stretch;min-height:0;margin-top:33px}.hero-type{padding:0;pointer-events:auto}.hero-id{font-size:7px;margin-bottom:19px}.hero-type h1{font-size:18vw;line-height:.84;letter-spacing:-.085em}.surname-line{margin-top:7px;letter-spacing:-.09em}.hero-manifesto{position:absolute;top:5px;right:0;margin:0;gap:8px;max-width:155px}.hero-manifesto p{font-size:15px;line-height:1.2;letter-spacing:-.4px}.manifesto-marker{font-size:22px}.hero-art{height:365px;width:100%;margin:-4px 0 0;max-width:none}.hero-art .kinetic-stage{inset:-5% -4% auto -4%;width:108%;height:100%}.hero-tile:nth-child(1){width:29%;left:0;bottom:13%;padding:3px}.hero-tile:nth-child(2){width:27%;right:0;top:13%;padding:3px}.hero-tile-caption{font-size:6px;padding:5px 1px 2px}.art-coordinate{top:23px;left:0;font-size:6px}.kinetic-controls{left:5%;right:5%;bottom:-2%}.hero-bottom{margin-top:15px;padding-top:20px;align-items:center}.hero-signature p{max-width:260px;font-size:11px}.hero-signature{gap:0}.discipline-strip{margin-top:16px;padding:10px 0}.marquee-track>span{font-size:19px}.marquee-track b{font-size:21px}.work-section{padding-top:62px}.project-card:nth-child(1){grid-template-columns:1fr;gap:0}.project-card:nth-child(1) .project-caption{display:flex;margin-top:14px;padding:0}.project-card:nth-child(1) h3{font-size:26px;letter-spacing:-1.3px}.project-card:nth-child(1) .project-caption p{font-size:10px;margin-top:8px}.project-card:nth-child(1) .project-number{display:none}.project-card:nth-child(1) .project-image-button>img{aspect-ratio:1.25}.project-card:nth-child(2n+3){transform:translateY(35px)}.project-caption h3{font-size:15px}.project-index{margin-top:35px}.project-index ol{grid-template-columns:1fr}.project-index li{font-size:11px;gap:12px}.project-index li>span{font-size:7px;max-width:75px;flex-shrink:0}.skills-signal{padding-top:0;padding-bottom:60px}.skills-heading{display:block;margin:30px 0}.skills-heading h2{font-size:clamp(34px,7.4vw,50px);letter-spacing:-.06em}.skills-heading p{margin-top:24px;max-width:290px;font-size:12px}.signal-skills{gap:7px}.signal-skills>span{font-size:10px;padding:9px 11px}.journal-section{padding-top:0;padding-bottom:60px}.journal-heading{margin:30px 0;display:block}.journal-heading h2{font-size:58px}.journal-heading .text-link{margin-top:24px}.journal-empty{grid-template-columns:1fr 25px;gap:15px;padding:27px 0}.journal-orbit{display:none}.journal-empty h3{font-size:37px}.journal-empty p{font-size:12px}.journal-arrow{font-size:30px}.journal-entry{grid-template-columns:25px 1fr 24px;gap:15px;padding:25px 0}.journal-entry img{display:none}.journal-entry h3{font-size:25px}.journal-entry p{font-size:11px}.journal-category{font-size:8px}.case-heading{gap:15px;margin-top:25px}.case-heading h1{font-size:44px;letter-spacing:-2px}.case-number{display:none}.case-page .project-topbar{gap:15px}.case-page .project-topbar nav{gap:13px;font-size:10px}.case-page .project-topbar nav a:last-child{display:none}.case-page .project-topbar .wordmark{font-size:20px}.case-missing{padding-top:55px;padding-bottom:60px}.case-missing h1{font-size:45px}.case-missing p{font-size:13px}.intro-caption{top:59%;font-size:7px}}
@media(max-width:380px){.hero-manifesto{right:0;max-width:135px}.hero-manifesto p{font-size:13px}.hero-art{height:325px}.kinetic-controls{font-size:7px}.hero-signature p{max-width:225px}.hero-tile-caption{font-size:5px}}
.mobile-nav{overflow-y:auto;overscroll-behavior:contain}.mobile-nav a{flex-shrink:0}.mobile-nav p{flex-shrink:0}
.discipline-strip{width:100%;margin-inline:0}
