/* Generated from src/styles; edit the source files. */
:root {--paper:#f7f7f5;--ink:#171717;--muted:#656561;--line:#d2d2ce;--accent:#2444f5;--soft:#ededea;--gutter:clamp(22px,5vw,100px);--sans:Arial,Helvetica,"Noto Sans JP",sans-serif;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}* {box-sizing:border-box}html {font-size:100%;scroll-behavior:smooth}body {margin:0;font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}a {color:inherit;text-decoration:none}button,input,textarea {font:inherit}button,a,input,textarea {-webkit-tap-highlight-color:transparent}button {cursor:pointer}img,video {max-width:100%;height:auto;display:block}figure,p,h1,h2,h3,h4,ul,ol {margin:0}ul,ol {padding:0}li {list-style:none}[hidden] {display:none!important}::selection {background:var(--accent);color:white}:focus-visible {outline:3px solid var(--accent);outline-offset:5px}.skip-link {position:fixed;left:20px;top:-90px;z-index:1100;background:var(--ink);color:white;padding:10px 18px}.skip-link:focus {top:12px}#main-content {scroll-margin-top:25px;outline:0}.eyebrow,.section-label {font-size:.8125rem;font-weight:600;letter-spacing:.055em;line-height:1.5}.muted {color:var(--muted)}.site-header {margin:0 var(--gutter);min-height:115px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:35px;border-bottom:1px solid var(--line)}.wordmark {font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:800;letter-spacing:-.065em;line-height:1}.wordmark span {color:var(--accent)}.header-discipline {font-size:.8125rem;line-height:1.5;letter-spacing:-.01em}.site-header nav ul {display:flex;gap:clamp(20px,2.3vw,40px)}.site-header nav a {display:block;font-size:.875rem;font-weight:600;padding:12px 0;position:relative}.site-header nav a:after {content:"";height:2px;background:var(--accent);position:absolute;bottom:8px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s}.site-header nav a:hover:after,.site-header nav a.current:after {transform:scaleX(1)}.site-menu-toggle,#mobile-navigation {display:none}.portfolio-home {padding:0 var(--gutter)}.portfolio-hero {padding:70px 0 85px}.hero-kicker {display:flex;justify-content:space-between;gap:20px;margin-bottom:35px}.hero-kicker span:last-child {color:var(--muted)}.portfolio-hero h1 {font-size:clamp(4.4rem,10.7vw,12.5rem);line-height:.91;letter-spacing:-.075em;font-weight:700;margin-left:-.065em}.portfolio-hero h1 span {color:var(--accent)}.hero-bottom {display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px;align-items:end}.hero-scroll {font-size:.875rem;display:inline-flex;gap:32px;align-items:center;width:fit-content}.hero-scroll span {font-size:1.4rem}.hero-statement {max-width:470px;font-size:1rem;line-height:1.95;font-weight:500}.hero-statement .name {display:block;font-size:.8125rem;margin-top:15px;color:var(--muted);letter-spacing:.04em}.section-heading {display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:24px 0;border-top:1px solid var(--ink);margin-bottom:35px}.section-heading h2 {font-size:1.25rem;line-height:1.2;font-weight:600;letter-spacing:-.03em}.section-heading h2 span {font-size:.75rem;margin-left:12px;vertical-align:super;color:var(--muted)}.text-link {font-size:.875rem;text-decoration:underline;text-underline-offset:6px;white-space:nowrap}.text-link:hover {color:var(--accent)}.featured-grid {display:grid;grid-template-columns:1.18fr .82fr;gap:90px 7%;align-items:start}.project-card {min-width:0}.project-card:nth-child(2) {margin-top:180px}.project-card:nth-child(3) {width:84%;margin-top:-45px}.project-card:nth-child(4) {margin-top:95px}.project-image {display:block;overflow:hidden;background:var(--soft)}.project-image img {width:100%;height:auto;transition:transform .65s cubic-bezier(.2,.65,.3,1)}.project-image:hover img {transform:scale(1.035)}.project-heading {display:flex;align-items:start;justify-content:space-between;gap:18px;padding-top:20px}.project-heading h3 {font-size:clamp(1.3rem,2vw,2rem);font-weight:600;line-height:1.4;letter-spacing:-.045em}.project-heading .project-arrow {font-size:1.5rem;line-height:1.5;transition:transform .2s}.project-card:hover .project-arrow {transform:translate(3px,-3px)}.project-kind {font-size:.75rem;color:var(--accent);letter-spacing:.03em;margin-bottom:8px;display:block}.project-description {font-size:.875rem;color:var(--muted);line-height:1.85;margin-top:12px;max-width:48ch}.project-foot {display:flex;justify-content:space-between;gap:20px;font-size:.75rem;margin-top:18px;color:var(--muted)}.all-works-link {margin:80px 0 0;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:clamp(1.3rem,3.2vw,3rem);font-weight:600;letter-spacing:-.04em}.all-works-link:hover {color:var(--accent)}.home-about {padding:110px 0 120px;display:grid;grid-template-columns:1fr 1.5fr;gap:50px}.home-about h2 {font-size:clamp(2rem,3.7vw,4rem);line-height:1.35;font-weight:600;letter-spacing:-.05em;margin-bottom:25px}.home-about p:not(.eyebrow) {max-width:56ch;line-height:2;color:var(--muted);margin-bottom:26px}.home-about .eyebrow {margin-top:12px}.site-footer {background:var(--accent);color:white;padding:60px var(--gutter) 25px}.footer-top {border-bottom:1px solid #ffffff60;padding-bottom:50px}.footer-contact {font-size:clamp(4.5rem,10.8vw,12rem);font-weight:700;line-height:1.25;letter-spacing:-.075em;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:15px}.footer-contact span {font-weight:400;transition:transform .25s}.footer-contact:hover span {transform:translate(5px,-5px)}.footer-bottom {display:flex;justify-content:space-between;gap:25px;align-items:center;padding-top:30px;font-size:.75rem}.footer-bottom .wordmark {font-size:1.5rem}.footer-bottom a:last-child {text-decoration:underline;text-underline-offset:5px}/* Shared presentation for existing archives, articles and contact. */.key_visual {margin:0 var(--gutter);padding:75px 0 55px;border-bottom:1px solid var(--line)}.key_visual :is(h1,h2) {font-size:clamp(4rem,9.5vw,9rem);line-height:.95;font-weight:700;letter-spacing:-.07em}.key_visual .read_txt {max-width:650px;margin-top:30px;line-height:1.9;color:var(--muted)}.read_txt a {text-decoration:underline;text-underline-offset:4px}main:not(.portfolio-home):not(.case-main):not(.about-main):not(.works-main) {margin:0 var(--gutter);padding:55px 0 100px}main .contents {max-width:1600px;margin:auto}.blog_list,.works_list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 35px}.list_box {position:relative;min-width:0}.list_box .thumb {overflow:hidden;background:var(--soft)}.list_box .thumb img {width:100%;height:auto;transition:transform .4s}.list_box .thumb:hover img {transform:scale(1.025)}.list_box .detail {padding:20px 0}.list_box .detail ul,.tag_list {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;font-size:.75rem;color:var(--accent)}.list_box time {font-size:.75rem;color:var(--muted)}.list_box h4 {font-size:1.25rem;line-height:1.5;margin:8px 0 12px;letter-spacing:-.025em}.list_box .cont {font-size:.875rem;line-height:1.8;color:var(--muted)}.list_box .more {margin-top:15px;font-size:.875rem}.list_box .more a {border-bottom:1px solid var(--ink);padding-bottom:4px}.page-navi {grid-column:1/-1;margin:50px 0 0}.wp-pagenavi {display:flex;gap:16px;align-items:center;justify-content:center}.wp-pagenavi .current,.wp-pagenavi a {padding:6px 12px;border:1px solid var(--line)}.wp-pagenavi .current {background:var(--ink);color:white}.wp-pagenavi a:hover {border-color:var(--ink)}#single .contents {max-width:1180px}#single .thumb img {width:100%}#single .detail {max-width:850px;margin:55px auto;line-height:2}#single .detail :is(h1,h2) {font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.25;letter-spacing:-.06em;margin-bottom:20px}#single .detail p {margin:20px 0}#single .detail h3 {font-size:1.5rem;margin:50px 0 20px;line-height:1.5}#single .detail h4 {font-size:1.2rem;margin:35px 0 15px}#single .detail a:not(.button a) {text-decoration:underline;text-underline-offset:4px}#single .detail hr {border:0;border-top:1px solid var(--line);margin:35px 0}#single .detail .cat,#single .detail time {font-size:.875rem;color:var(--muted)}#single .page-navi {display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:25px;font-size:.875rem}#single .list_link {margin-left:auto}.list_link img {width:30px;height:30px}.gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gallery-item {width:auto!important;float:none!important;margin:0!important}.gallery br {display:none}.gallery img {width:100%}.video-embed {width:100%;height:auto;aspect-ratio:16/9;border:0}.button a {display:inline-block;border-bottom:1px solid var(--ink);padding:8px 0}.about_detail {max-width:1000px;margin:auto}.about_detail p {margin-bottom:25px;line-height:2}.about_detail h2 {font-size:clamp(2rem,5vw,5rem);line-height:1.15;letter-spacing:-.05em;margin-bottom:35px}.about_detail h3 {font-size:2rem;margin:50px 0 25px}.about_detail h4 {font-size:1.3rem;margin-bottom:20px}.service_list ul {display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.about_detail hr {border:0;border-top:1px solid var(--line);margin:30px 0}.preview-contact {max-width:760px;margin:auto}.contact-preview-note {font-size:.875rem;line-height:1.9;padding:20px 24px;margin-bottom:45px;background:var(--soft);border-left:2px solid var(--accent)}.contact-preview-note a {text-decoration:underline;text-underline-offset:4px}.preview-contact label {display:block;margin-bottom:28px}.preview-contact label span {display:block;font-size:.875rem;margin-bottom:12px}.preview-contact input,.preview-contact textarea {display:block;width:100%;padding:16px;border:1px solid var(--line);border-radius:0;color:var(--ink);background:transparent}.preview-contact input:focus,.preview-contact textarea:focus {border-color:var(--accent);outline:1px solid var(--accent)}.preview-contact textarea {resize:vertical;min-height:180px}.preview-contact button {padding:18px 26px;width:100%;border:1px solid var(--ink);background:var(--ink);color:white}.preview-contact button:hover {background:var(--accent);border-color:var(--accent)}.preview-contact [role=status] {margin-top:20px;line-height:1.9}@media(max-width:1100px) {.header-discipline {display:none}.site-header {grid-template-columns:1fr auto}.portfolio-hero h1 {font-size:11.7vw}.featured-grid {gap:65px 6%}.project-card:nth-child(2) {margin-top:130px}.project-card:nth-child(4) {margin-top:70px}.blog_list,.works_list {grid-template-columns:repeat(2,minmax(0,1fr))}.hero-bottom {grid-template-columns:.7fr 1fr}.home-about {grid-template-columns:.6fr 1fr}}@media(max-width:767px) {.site-header {min-height:85px}.site-header nav ul {gap:18px}.site-header nav a {font-size:.8125rem}.js-ready .site-header nav {display:none}.site-menu-toggle {position:fixed;right:var(--gutter);top:23px;z-index:1000;display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:var(--paper);border:1px solid var(--line);padding:10px}.site-menu-toggle span {display:block;width:18px;height:2px;background:var(--ink)}#mobile-navigation {position:fixed;inset:0;z-index:999;background:var(--paper);padding:100px var(--gutter) 45px;display:flex;flex-direction:column;gap:5px;overflow:auto}#mobile-navigation a {font-size:clamp(2.5rem,10vw,4.5rem);line-height:1.6;font-weight:600;letter-spacing:-.045em}#mobile-navigation a.current {color:var(--accent)}.menu-open {overflow:hidden}.portfolio-hero {padding:42px 0 55px}.hero-kicker {font-size:.6875rem;letter-spacing:.04em;margin-bottom:38px;align-items:start;gap:15px}.hero-kicker span:last-child {text-align:right}.portfolio-hero h1 {font-size:12.5vw;line-height:.98;letter-spacing:-.07em}.hero-bottom {display:flex;flex-direction:column-reverse;align-items:stretch;gap:30px;margin-top:32px}.hero-statement {font-size:.9375rem;max-width:39ch}.hero-statement .name {margin-top:12px}.hero-scroll {font-size:.8125rem}.section-heading {padding:20px 0;margin-bottom:15px}.section-heading h2 {font-size:1.125rem}.section-heading .text-link {font-size:.8125rem}.featured-grid {display:block}.project-card,.project-card:nth-child(n) {width:100%;margin:0 0 48px}.project-heading {padding-top:17px}.project-heading h3 {font-size:1.4rem}.project-description {font-size:.875rem}.project-foot {margin-top:12px}.project-kind {font-size:.6875rem}.all-works-link {margin-top:10px;padding:21px 0;font-size:1.5rem}.home-about {padding:65px 0 75px;display:block}.home-about .eyebrow {margin-bottom:25px}.home-about h2 {font-size:2rem}.home-about p:not(.eyebrow) {font-size:.9375rem}.site-footer {padding-top:40px}.footer-top {padding-bottom:30px}.footer-contact {font-size:15vw;margin-top:18px}.footer-bottom {display:grid;grid-template-columns:1fr 1fr;row-gap:22px;font-size:.6875rem}.footer-bottom .wordmark {font-size:1.4rem}.footer-bottom>:nth-child(2n) {text-align:right}.key_visual {padding:45px 0 35px}.key_visual :is(h1,h2) {font-size:4rem}.key_visual .read_txt {font-size:.9375rem;margin-top:22px}.blog_list,.works_list {grid-template-columns:1fr;gap:28px}main:not(.portfolio-home):not(.case-main):not(.about-main):not(.works-main) {padding:35px 0 65px}#single .detail {margin:30px auto;font-size:1rem}#single .detail :is(h1,h2) {font-size:2.2rem}.gallery {grid-template-columns:repeat(2,minmax(0,1fr))}.service_list ul {grid-template-columns:1fr;gap:20px}.preview-contact label {margin-bottom:22px}}@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto}*,*:before,*:after {transition:none!important;animation:none!important}}/* The original textured blue, paired with a bolder, playful type system. */:root {--paper:#17658d;--ink:#fbfaf6;--muted:#d3e2e9;--line:#ffffff45;--accent:#ffda64;--soft:#ffffff12;background:var(--paper) url('/assets/theme/img/bg.webp') repeat}body {background:transparent}.site-header {border-bottom-color:var(--line)}.portfolio-hero {position:relative;padding-bottom:70px}.portfolio-hero h1 {line-height:1}.playful-line {display:flex;align-items:center;min-height:1.5em;line-height:1.4;white-space:nowrap}.playful-word {--play-scale:1;display:inline-block;font-family:Chewy,cursive;font-weight:400;font-size:calc(1em * var(--play-scale));letter-spacing:-.035em;line-height:1.5;transition:opacity .15s}.playful-word[data-font-variant="oleo"] {font-family:'Oleo Script',cursive;--play-scale:.96}.playful-word[data-font-variant="marker"] {font-family:'Permanent Marker',cursive;--play-scale:.84;letter-spacing:-.055em}.playful-word[data-font-variant="rock"] {font-family:'Rock Salt',cursive;--play-scale:.63;letter-spacing:-.055em}.playful-word[data-font-variant="leckerli"] {font-family:'Leckerli One',cursive;--play-scale:.82}.hero-bottom {margin-top:18px;position:relative}.project-image {box-shadow:0 2px 0 #ffffff20}.project-heading h3 {font-weight:600}.project-description {color:var(--muted)}.project-kind {line-height:1.6}.home-about {border-top:1px solid var(--line);margin-top:80px}.site-footer {background:#064362 url('/assets/theme/img/footer_bg.webp') repeat;color:var(--ink)}.footer-contact:hover {color:var(--accent)}.footer-contact:focus-visible {outline-color:var(--accent)}.site-menu-toggle {background:#064362;border-color:#ffffff50}.site-menu-toggle span {background:#fff}#mobile-navigation {background:#064362 url('/assets/theme/img/footer_bg.webp') repeat}.wp-pagenavi .current {color:#064362}.wp-pagenavi a:hover {background:#ffffff10}.preview-contact input,.preview-contact textarea {color:var(--ink);background:#ffffff08}.preview-contact button {background:var(--accent);border-color:var(--accent);color:#163e52}.preview-contact button:hover {background:#ffe494}.contact-preview-note {background:#09445f50}.skip-link {background:var(--accent);color:#064362}.footer-bottom {font-size:.8125rem}.works-main {padding:65px var(--gutter) 100px}.works-heading {margin-bottom:60px}.works-heading .eyebrow {margin-bottom:30px;color:var(--muted)}.works-heading h1 {font-size:clamp(5rem,12.5vw,13rem);line-height:.9;letter-spacing:-.075em}.works-heading h1 span {font-size:.14em;letter-spacing:0;vertical-align:top;display:inline-block;margin:15px 0 0 25px;color:var(--accent)}.works-heading>p:last-child {margin-top:35px;line-height:1.9;color:var(--muted)}.archive-project-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 40px}.archive-project-grid .project-card:nth-child(n) {width:100%;margin:0}.archive-project-grid .project-kind {font-size:.75rem}.archive-project-grid .project-heading h3 {font-size:clamp(1.3rem,2.1vw,2rem)}.works-pagination {display:flex;justify-content:center;gap:18px;padding-top:75px}.works-pagination>* {display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);font-size:.875rem}.works-pagination [aria-current] {background:var(--accent);color:#064362;border-color:var(--accent)}.case-main {padding:60px var(--gutter) 0}.back-link {display:block;font-size:.8125rem;margin-bottom:55px;color:var(--muted)}.back-link:hover {color:var(--accent)}.case-heading .eyebrow {color:var(--accent);margin-bottom:22px}.case-heading h1 {font-size:clamp(2.8rem,6.8vw,7rem);font-weight:600;line-height:1.18;letter-spacing:-.055em;max-width:1200px;overflow-wrap:anywhere}.case-caption {font-size:clamp(1rem,1.6vw,1.4rem);margin-top:25px;line-height:1.7}.case-meta {display:flex;gap:80px;margin:55px 0 60px;max-width:900px}.case-meta>div:first-child {flex:1}.case-meta span {display:block;font-size:.75rem;color:var(--muted);margin-bottom:10px;letter-spacing:.04em}.case-meta p {font-size:.875rem;line-height:1.8}.case-image {background:#eceeeb}.case-image img {width:100%;height:auto;max-width:1400px;margin:auto}.case-overview {display:grid;grid-template-columns:1fr 2fr;gap:50px;background:#f8f8f4;color:#15242d;padding:70px clamp(25px,6vw,95px);--ink:#15242d;--muted:#52626a;--accent:#17658d;--line:#15242d40}.case-overview>.eyebrow {margin-top:10px;color:var(--muted)}.case-overview h2 {font-size:clamp(1.4rem,2.5vw,2.2rem);font-weight:600;line-height:1.6;margin-bottom:25px;letter-spacing:-.025em}.case-body {font-size:1rem;line-height:2.1;max-width:65ch}.case-body p {margin-bottom:24px}.case-body a {color:#17658d;text-decoration:underline}.case-overview .text-link {display:inline-block;margin-top:20px}.next-project {display:block;margin:75px 0 0;padding:28px 0 65px;border-top:1px solid var(--line)}.next-project>.eyebrow {color:var(--muted)}.next-title {display:flex;justify-content:space-between;gap:35px;font-size:clamp(1.8rem,4.3vw,4.5rem);line-height:1.4;letter-spacing:-.05em;margin-top:20px}.next-title>span {color:var(--accent);flex-shrink:0}.next-project:hover .next-title {color:var(--accent)}.about-main {padding:70px var(--gutter) 100px}.about-intro>.eyebrow {color:var(--muted);margin-bottom:32px}.about-intro h1 {font-size:clamp(4rem,9vw,10rem);letter-spacing:-.065em;line-height:1.05}.about-intro .playful-word {display:block;color:var(--accent);line-height:1.5;white-space:nowrap}.about-bio {display:grid;grid-template-columns:1fr 1.4fr;gap:70px;border-top:1px solid var(--line);margin-top:55px;padding-top:50px}.about-bio h2 {font-size:clamp(1.9rem,3.5vw,3.5rem);letter-spacing:-.045em;font-weight:600;line-height:1.4}.about-bio .job-title {font-size:.875rem;color:var(--accent);margin-top:12px}.bio-body {max-width:62ch;line-height:2}.bio-body p {margin-bottom:25px}.bio-body .bio-history {font-size:.875rem;color:var(--muted)}.expertise {margin:70px 0}.expertise-row {display:grid;grid-template-columns:70px 1fr 1fr;gap:30px;padding:30px 0;border-top:1px solid var(--line)}.expertise-row:last-child {border-bottom:1px solid var(--line)}.expertise-row .number {color:var(--accent);font-size:.8125rem}.expertise-row h3 {font-size:clamp(1.4rem,2.8vw,2.4rem);font-weight:500;letter-spacing:-.035em;line-height:1.3}.expertise-row p {font-size:.9375rem;color:var(--muted);line-height:1.9}.about-motion {display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center;margin-top:75px}.about-motion h2 {font-size:clamp(1.8rem,3.5vw,3.5rem);letter-spacing:-.04em;line-height:1.35;margin:22px 0}.about-motion p:not(.eyebrow) {font-size:.9375rem;color:var(--muted);line-height:2}.about-motion video {width:100%;aspect-ratio:16/9;object-fit:cover;background:#063447}.about-motion .text-link {display:inline-block;margin-top:25px}@media(max-width:767px) {.hero-kicker {font-size:.75rem}.hero-bottom {margin-top:15px;gap:30px}.portfolio-hero h1 {font-size:12.4vw}.playful-line {min-height:1.62em}.portfolio-hero {padding-bottom:55px}.home-about {margin-top:60px}.project-kind {font-size:.75rem}.project-foot {font-size:.75rem}.footer-bottom {font-size:.75rem}.works-main {padding:45px var(--gutter) 65px}.works-heading {margin-bottom:40px}.works-heading h1 {font-size:22vw}.works-heading h1 span {margin:8px 0 0 15px;font-size:.2em}.works-heading>p:last-child {font-size:.9375rem}.archive-project-grid {grid-template-columns:1fr;gap:45px}.works-pagination {padding-top:45px}.case-main {padding:35px var(--gutter) 0}.back-link {margin-bottom:35px}.case-heading h1 {font-size:2.7rem}.case-meta {gap:30px;margin:35px 0}.case-overview {grid-template-columns:1fr;gap:25px;padding:32px 24px}.case-overview h2 {font-size:1.4rem}.case-body {line-height:1.95}.next-project {margin-top:45px;padding-bottom:45px}.next-title {font-size:1.8rem;gap:20px}.about-main {padding-top:45px;padding-bottom:60px}.about-intro h1 {font-size:12vw}.about-bio {grid-template-columns:1fr;gap:30px;margin-top:40px;padding-top:30px}.about-bio h2 {font-size:2rem}.expertise {margin:45px 0}.expertise-row {grid-template-columns:30px 1fr;gap:10px 18px;padding:24px 0}.expertise-row p {grid-column:2}.expertise-row h3 {font-size:1.5rem}.about-motion {grid-template-columns:1fr;gap:30px;margin-top:45px}.about-motion h2 {font-size:2rem}}/* Quicksand identity with clear hierarchy and level image surfaces. */:root {--sans:'Quicksand','Noto Sans JP',sans-serif}.wordmark {font-family:'Quicksand',sans-serif;font-weight:400;font-size:clamp(1.7rem,2.65vw,2.4rem);letter-spacing:.015em}.header-discipline {font-weight:500}.site-header nav a {font-weight:500;letter-spacing:0}.hero-statement {font-family:'Noto Sans JP',sans-serif;font-size:.9375rem;line-height:2}.hero-statement .name {font-family:'Quicksand',sans-serif;font-weight:500}.project-heading h3 {font-family:'Quicksand','Noto Sans JP',sans-serif;font-weight:600;letter-spacing:-.025em}.project-description,.case-body,.bio-body,.expertise-row p,.home-about p:not(.eyebrow) {font-family:'Noto Sans JP',sans-serif}.project-kind,.project-foot,.eyebrow,.section-label {font-family:'Quicksand','Noto Sans JP',sans-serif;font-weight:500;letter-spacing:.035em}.footer-contact {font-family:'Quicksand',sans-serif;font-weight:500;letter-spacing:-.055em}.footer-bottom .wordmark {font-weight:400;letter-spacing:.015em}.works-heading h1,.about-intro h1 {font-family:'Quicksand',sans-serif;font-weight:600;letter-spacing:-.055em}.playful-word {font-family:'Quicksand',sans-serif;font-weight:500;--play-scale:.88;transform:none}.playful-word[data-font-variant="oleo"],.playful-word[data-font-variant="marker"],.playful-word[data-font-variant="rock"],.playful-word[data-font-variant="leckerli"] {font-weight:400}.project-image,.project-image img {border-radius:0}/* A full-width film leads the page; the blue texture frames the experience. */.portfolio-home {max-width:none;padding:0;margin:0}.portfolio-hero {padding:26px 0 80px}.hero-kicker {margin:0 var(--gutter) 26px;font-size:.75rem}.hero-stage {position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(520px,72svh,820px);padding:clamp(36px,4.5vw,80px) var(--gutter)}.hero-film {position:absolute;inset:0;overflow:hidden;background:#064362;margin:0;transform:none;border:0;box-shadow:none}.hero-film:after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#04182208 15%,#04182218 35%,#041822a6 100%)}.hero-film video {width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:none}.portfolio-hero h1 {position:relative;z-index:1;pointer-events:none;min-width:0;width:100%;max-width:1620px;margin:0 auto;font-family:'Quicksand',sans-serif;font-weight:600;font-size:clamp(4.2rem,9.6vw,11.5rem);line-height:1;letter-spacing:-.06em;color:#fff}.hero-stage .playful-line {min-height:1.4em;line-height:1.35}.hero-video-toggle {position:absolute;z-index:2;right:var(--gutter);bottom:25px;min-height:44px;padding:10px 15px;color:white;background:#063447b8;border:1px solid #ffffff80;border-radius:0;font-size:.8125rem;line-height:1.4;letter-spacing:.01em}.hero-video-toggle:hover {background:#063447}.hero-video-toggle:focus-visible {outline-offset:4px}.hero-bottom {display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin:38px var(--gutter) 0}#selected-work,.home-about {margin-left:var(--gutter);margin-right:var(--gutter)}@media(max-width:767px) {.wordmark {font-size:1.75rem}.portfolio-hero {padding-top:20px;padding-bottom:55px}.hero-kicker {font-size:.6875rem;gap:12px;margin-bottom:20px}.hero-stage {min-height:clamp(440px,68svh,620px);padding:32px var(--gutter) 72px}.portfolio-hero h1 {font-size:13.3vw;letter-spacing:-.065em}.hero-stage .playful-line {min-height:1.5em}.hero-video-toggle {bottom:18px;right:var(--gutter)}.hero-bottom {display:flex;flex-direction:column-reverse;align-items:stretch;gap:24px;margin-top:28px}.hero-statement {font-size:.9375rem;max-width:39ch}.footer-contact {font-size:14.5vw}.footer-bottom .wordmark {font-size:1.35rem}}/* Tactile project surfaces: the image moves in depth, its caption stays level. */:root {--accent:#d5edff;--line:#ffffff38}.site-header {min-height:100px}.hero-kicker {font-size:.8125rem}.hero-bottom {padding-bottom:8px}.hero-statement {font-size:1rem}.hero-scroll {font-size:.875rem}#selected-work .section-heading {align-items:flex-end;padding:30px 0 42px;border-top-color:var(--line);margin-bottom:22px}#selected-work .section-heading h2 {font-size:clamp(2.5rem,5.1vw,5.4rem);font-weight:500;letter-spacing:-.065em;line-height:1.05}#selected-work .section-heading h2 span {font-size:.8125rem;letter-spacing:0;margin-left:18px}.section-label {font-size:.875rem;max-width:15ch;text-align:right;line-height:1.6}.featured-grid {grid-template-columns:1.12fr .88fr;column-gap:8%;row-gap:105px}.featured-grid .project-card:nth-child(2) {margin-top:190px}.featured-grid .project-card:nth-child(3) {width:88%;margin-top:-30px}.featured-grid .project-card:nth-child(4) {margin-top:105px}.project-topline {display:flex;justify-content:flex-start;align-items:center;gap:20px;margin-bottom:18px;min-height:34px;border-top:1px solid var(--line);padding-top:15px}.project-topline .project-kind {font-size:.8125rem;line-height:1.5;text-align:left;margin:0;color:var(--muted)}.project-image {position:relative;display:block;overflow:visible;background:transparent;box-shadow:none;perspective:1100px;transform:none;isolation:isolate}.project-plane {position:relative;display:block;transform-style:preserve-3d;transform:translate3d(0,var(--card-lift,0px),0) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));transition:transform .65s cubic-bezier(.18,.7,.25,1)}.project-plane:before {content:"";position:absolute;inset:0;background:#0b3047;border:1px solid #b5d7ea70;transform:translateZ(-8px);box-shadow:0 14px 28px #001c3038;transition:box-shadow .4s}.project-surface {display:block;position:relative;overflow:hidden;background:#e6e9e8;border:1px solid #ffffff75;transform:translateZ(0)}.project-surface img {display:block;width:100%;height:auto;transform:none;transition:transform .65s cubic-bezier(.18,.7,.25,1)}.project-light {position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%),#ffffff30,transparent 65%);transform:translateZ(1px);transition:opacity .4s}.project-action {position:absolute;z-index:2;bottom:18px;right:18px;display:flex;align-items:center;gap:25px;min-height:44px;padding:10px 14px;background:#eff5f8;color:#103e56;font-size:.8125rem;font-weight:500;line-height:1.4;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .3s;pointer-events:none}.project-action span {font-size:1.2rem;line-height:1}.project-heading {align-items:baseline;padding-top:23px;gap:20px}.project-heading h3 {font-size:clamp(1.5rem,2.2vw,2.4rem);font-weight:500;line-height:1.35;letter-spacing:-.035em}.project-year {font-size:.8125rem;color:var(--muted);white-space:nowrap}.project-description {font-size:1rem;line-height:1.85;margin-top:12px;max-width:44ch}.project-image:focus-visible .project-action {opacity:1;transform:none}.project-heading a:hover {color:var(--accent)}.home-about h2 {font-weight:500}.home-about .eyebrow {font-size:.875rem}.home-about p:not(.eyebrow) {font-size:1rem}@media(hover:hover) and (pointer:fine) {.project-image:hover .project-action,.project-image:focus-visible .project-action {opacity:1;transform:none}}@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {.project-image.is-active .project-plane {--card-lift:-6px;transition-duration:.18s}.project-image.is-active .project-plane:before {box-shadow:0 30px 48px #001b315c}.project-image.is-active .project-light {opacity:1}.project-image:hover img {transform:scale(1.025)}.project-image:focus-visible .project-plane {--card-lift:-4px}}@media(hover:none),(pointer:coarse) {.project-action {opacity:1;transform:none;bottom:12px;right:12px;min-height:40px;padding:8px 12px;gap:20px}}@media(max-width:767px) {.site-header {min-height:85px}.hero-kicker {font-size:.75rem}.section-label {font-size:.75rem;max-width:11ch}#selected-work .section-heading {padding:24px 0 30px;margin-bottom:0;gap:20px}#selected-work .section-heading h2 {font-size:clamp(2rem,8.2vw,3.6rem);letter-spacing:-.055em}#selected-work .section-heading h2 span {display:block;font-size:.75rem;margin:10px 0 0;line-height:1}.featured-grid .project-card:nth-child(n) {width:100%;margin:0 0 55px}.project-topline {margin-bottom:14px;padding-top:16px}.project-topline .project-kind {font-size:.75rem}.project-heading {padding-top:20px}.project-heading h3 {font-size:1.5rem}.project-description {font-size:1rem}.archive-project-grid {gap:50px}.archive-project-grid .project-heading h3 {font-size:1.5rem}}@media(prefers-reduced-motion:reduce) {.project-plane,.project-surface img {transform:none!important}.project-light {display:none}.project-action {transition:none}}/* Quiet typography: let the film and project surfaces carry the scale. */.site-header {grid-template-columns:minmax(0,1fr) auto;min-height:100px;border-bottom:0}.site-header nav {justify-self:end}.portfolio-hero {padding-top:0}.hero-stage {padding:38px var(--gutter)}.portfolio-hero h1 {font-size:clamp(1.75rem,3.2vw,3rem);font-weight:400;line-height:1.4;letter-spacing:-.02em}.hero-stage .playful-line {display:inline-flex;min-height:0;line-height:1.4;vertical-align:baseline}.playful-word {font-weight:400}.hero-film:after {background:linear-gradient(180deg,#04182200 30%,#04182212 60%,#04182280 100%)}.hero-bottom {margin-top:32px;align-items:start}#selected-work .section-heading {align-items:center;padding:25px 0 30px;margin-bottom:14px}#selected-work .section-heading h2 {font-size:clamp(1.5rem,2.2vw,2rem);font-weight:400;letter-spacing:-.02em;line-height:1.4}.section-label {max-width:none;font-size:.8125rem;letter-spacing:.025em}.project-heading h3,.archive-project-grid .project-heading h3 {font-size:clamp(1.125rem,1.6vw,1.5rem);font-weight:400;letter-spacing:-.01em;line-height:1.5}.all-works-link {font-size:clamp(1.125rem,1.7vw,1.5rem);font-weight:400;letter-spacing:0;padding:23px 0}.home-about h2 {font-size:clamp(1.5rem,2.1vw,2rem);font-weight:400;letter-spacing:0;line-height:1.6}.works-heading h1,.about-intro h1,.key_visual :is(h1,h2) {font-size:clamp(2rem,3.6vw,3.5rem);font-weight:400;letter-spacing:-.025em;line-height:1.3}.works-heading h1 span {font-size:.875rem;vertical-align:middle;margin:0 0 0 14px}.works-heading .eyebrow,.about-intro>.eyebrow {margin-bottom:24px}.works-heading>p:last-child,.key_visual .read_txt {margin-top:24px}.about-intro .playful-word {display:inline-block;margin-left:.2em;line-height:1.5}.about-bio h2 {font-size:clamp(1.5rem,2.2vw,2rem);font-weight:400;letter-spacing:-.015em}.expertise-row h3 {font-size:clamp(1.25rem,1.8vw,1.65rem);font-weight:400;letter-spacing:-.01em}.about-motion h2,.case-overview h2 {font-size:clamp(1.375rem,2vw,1.875rem);font-weight:400;letter-spacing:0;line-height:1.6}.case-heading h1,#single .detail :is(h1,h2) {font-size:clamp(1.75rem,3.4vw,3rem);font-weight:400;letter-spacing:-.02em;line-height:1.4}.next-title {font-size:clamp(1.375rem,2.4vw,2rem);letter-spacing:-.015em}.footer-contact {font-size:clamp(2.25rem,4.2vw,4rem);font-weight:400;letter-spacing:-.025em;line-height:1.4;margin-top:22px}.footer-top {padding-bottom:42px}@media(max-width:767px) {.site-header {min-height:85px}.portfolio-hero {padding-top:0}.hero-stage {padding:30px var(--gutter) 78px}.portfolio-hero h1 {font-size:1.625rem;line-height:1.5;letter-spacing:-.02em}.hero-stage .playful-line {min-height:0;line-height:1.5}.hero-bottom {gap:25px;margin-top:26px}#selected-work .section-heading {padding:24px 0;margin-bottom:8px;gap:18px;align-items:baseline}#selected-work .section-heading h2 {font-size:1.5rem}.section-label {max-width:11ch;font-size:.75rem}.project-heading h3,.archive-project-grid .project-heading h3 {font-size:1.25rem}.about-intro .playful-word {display:block;margin-left:0}.footer-contact {font-size:2.5rem}.footer-top {padding-bottom:30px}}/* The practice leads; the individual profile has its own place on About. */.portfolio-hero {padding-bottom:56px}.hero-bottom {display:flex;flex-direction:row;justify-content:flex-end;align-items:center;margin-top:22px;padding:0}.about-section-heading {font-size:1.25rem;font-weight:400;letter-spacing:0;line-height:1.5;margin-bottom:25px}.about-profile {margin-top:90px}.about-profile .eyebrow {font-size:.875rem;color:var(--muted);margin-bottom:22px}.profile-english {display:block;font-family:'Quicksand',sans-serif;font-weight:400;font-size:1.125rem;line-height:1.5;letter-spacing:.01em;margin-top:8px}@media(max-width:767px) {.portfolio-hero {padding-bottom:40px}.hero-bottom {margin-top:20px}.about-profile {margin-top:55px}.about-section-heading {font-size:1.125rem;margin-bottom:22px}}/* Reveal the home film with a black curtain pulled toward its top edge. */.hero-curtain {position:absolute;inset:0;z-index:3;background:#000;pointer-events:none;transform-origin:center top;animation:hero-curtain-open .82s cubic-bezier(.76,0,.24,1) .12s both}@keyframes hero-curtain-open {from {transform:scaleY(1)}to {transform:scaleY(0)}}@media(min-width:960px) {.expertise {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,4vw,64px)}.expertise>.about-section-heading {grid-column:1/-1;margin-bottom:26px}.expertise-row {display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:26px 0 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.expertise-row h3 {font-size:clamp(1.25rem,1.7vw,1.65rem);line-height:1.5}.expertise-row p {font-size:1rem;line-height:1.9;max-width:30ch}}@media(prefers-reduced-motion:reduce) {.hero-curtain {display:none;animation:none}}.visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-loading:after {content:"";position:fixed;left:0;top:0;width:32%;height:2px;background:var(--accent);z-index:1500;pointer-events:none;animation:page-loading-slide 1s ease-in-out infinite}@keyframes page-loading-slide {from {transform:translateX(-100%)}to {transform:translateX(320%)}}@media(prefers-reduced-motion:reduce) {.page-loading:after {width:100%;animation:none}}/* Keep the navigation anchored while the content moves. */:root {--motion-ease:cubic-bezier(.22,1,.36,1);scrollbar-gutter:stable}.site-header nav {position:relative}.nav-indicator {position:absolute;left:0;bottom:8px;height:1px;background:var(--ink);width:var(--nav-width,0px);transform:translateX(var(--nav-x,0px));opacity:var(--nav-opacity,0);pointer-events:none;transition:transform .38s var(--motion-ease),width .38s var(--motion-ease),opacity .2s}.nav-enhanced a:after {display:none}.site-header nav a {transition:opacity .25s}.site-header nav a:hover {opacity:.7}@media(max-width:767px) {.site-menu-toggle {top:auto;right:max(20px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));width:56px;height:56px;padding:0;border:1px solid #ffffff60;border-radius:0;background:#edf4f7;color:#064362;box-shadow:0 6px 24px #001c3026;transition:background .25s,box-shadow .25s}.site-menu-toggle span {position:absolute;left:17px;top:23px;width:22px;height:1.5px;background:currentColor;transition:transform .35s var(--motion-ease)}.site-menu-toggle span+span {top:31px}.site-menu-toggle[aria-expanded="true"] span:first-child {transform:translateY(4px) rotate(45deg)}.site-menu-toggle[aria-expanded="true"] span:last-child {transform:translateY(-4px) rotate(-45deg)}#mobile-navigation {height:100dvh;padding:100px var(--gutter) calc(110px + env(safe-area-inset-bottom));justify-content:center;gap:0;overscroll-behavior:contain;transform:translateY(100%);transition:transform .48s var(--motion-ease);will-change:transform}#mobile-navigation.is-open {transform:translateY(0)}#mobile-navigation.is-leaving {transform:translateY(-100%)}.mobile-menu-brand {position:absolute;top:29px;left:var(--gutter);font-family:Quicksand,sans-serif;font-size:1.65rem;font-weight:400;letter-spacing:0}.mobile-menu-links {width:100%;margin:auto 0;flex-shrink:0}#mobile-navigation a {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0;border-bottom:1px solid #ffffff25;font-size:clamp(1.8rem,7.8vw,2.5rem);font-weight:400;letter-spacing:0;line-height:1.35;opacity:0;transform:translateY(18px);transition:opacity .25s,transform .4s var(--motion-ease)}#mobile-navigation a:first-child {border-top:1px solid #ffffff25}#mobile-navigation a span {font-size:1.05rem;opacity:.55}#mobile-navigation.is-open a {opacity:1;transform:none;transition-delay:calc(70ms + var(--menu-order,0)*35ms)}#mobile-navigation a.current {color:var(--ink)}#mobile-navigation a.current span {opacity:1}#mobile-navigation a.current:before {content:"";width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:-12px}#mobile-navigation a.current span {margin-left:auto}.site-footer {padding-bottom:calc(104px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce) {#mobile-navigation,#mobile-navigation a {transform:none!important}.nav-indicator {transition:none}}.site-header {view-transition-name:site-header}.site-menu-toggle {view-transition-name:menu-toggle}::view-transition {pointer-events:none}::view-transition-group(root) {animation:none}::view-transition-old(root) {animation:page-flow-out .26s ease-out both;mix-blend-mode:normal}::view-transition-new(root) {animation:page-flow-in .46s var(--motion-ease) both;mix-blend-mode:normal}::view-transition-group(site-header),::view-transition-group(menu-toggle) {animation:none;z-index:1}::view-transition-old(site-header),::view-transition-old(menu-toggle) {display:none}::view-transition-new(site-header),::view-transition-new(menu-toggle) {animation:none;mix-blend-mode:normal}@keyframes page-flow-out {to {opacity:0;transform:translateY(-8px)}}@keyframes page-flow-in {from {opacity:0;transform:translateY(16px)}to {opacity:1;transform:none}}@media(prefers-reduced-motion:reduce) {::view-transition-group(*),::view-transition-old(*),::view-transition-new(*) {animation:none!important}}/* A fluid canvas: compact outer gutters, full-bleed film, responsive project columns. */:root {--gutter:clamp(22px,2.4vw,72px);--layout-gap:clamp(24px,2.4vw,64px);--control-radius:12px}.site-menu-toggle,.project-action,.preview-contact button,.works-pagination>*,.wp-pagenavi a,.wp-pagenavi .current {border-radius:var(--control-radius)}.hero-video-toggle {border-radius:999px;padding-inline:18px;right:var(--gutter)}.site-header,.hero-bottom,#selected-work,.home-about,.key_visual,main:not(.portfolio-home):not(.case-main):not(.about-main):not(.works-main) {width:auto;max-width:none;margin-left:var(--gutter);margin-right:var(--gutter)}.case-main,.works-main,.about-main {width:auto;max-width:none;margin-left:0;margin-right:0;padding-left:var(--gutter);padding-right:var(--gutter)}.site-footer {padding-left:var(--gutter);padding-right:var(--gutter)}main .contents,#single .contents {max-width:none}.hero-stage {width:100%;max-width:none;margin-inline:0}.portfolio-hero h1 {max-width:none;margin-inline:0}.featured-grid {column-gap:var(--layout-gap);row-gap:clamp(72px,6vw,140px)}.archive-project-grid,.blog_list {column-gap:var(--layout-gap)}.case-image img {max-width:none}@media(min-width:1400px) {.archive-project-grid {grid-template-columns:repeat(3,minmax(0,1fr));row-gap:72px}.case-main {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:var(--layout-gap);align-items:start}.case-heading {grid-column:1;min-width:0}.case-meta {flex-wrap:wrap;gap:32px}.case-image {grid-column:2;min-width:0}.case-overview,.next-project {grid-column:1/-1}.case-overview {margin-top:clamp(56px,5vw,120px);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--layout-gap)}}@media(min-width:1600px) {.hero-stage {min-height:clamp(620px,76svh,1200px)}.hero-video-toggle {bottom:30px}.home-about,.about-bio {grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:var(--layout-gap)}}@media(min-width:2200px) {.featured-grid {grid-template-columns:1.12fr .94fr .98fr .96fr;align-items:start}.featured-grid .project-card:nth-child(n) {width:100%;margin:0;min-width:0}.featured-grid .project-card:nth-child(2) {margin-top:clamp(96px,6vw,220px)}.featured-grid .project-card:nth-child(3) {margin-top:clamp(40px,2vw,80px)}.featured-grid .project-card:nth-child(4) {margin-top:clamp(144px,8vw,280px)}}@media(min-width:2400px) {.archive-project-grid,.blog_list {grid-template-columns:repeat(4,minmax(0,1fr))}}
