:root{color-scheme:light;--bg: #f4f4f1;--surface: #ffffff;--surface-soft: #e9e9e4;--ink: #111111;--muted: #5e5e59;--subtle: #8b8b84;--line: #d8d8d0;--line-strong: #bdbdb4;--accent: #d9471e;--accent-dark: #9f2d16;--orange: #f07822;--shadow: 0 28px 80px rgba(17, 17, 17, .1);font-family:Inter,Noto Sans JP,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(90deg,rgba(17,17,17,.04) 1px,transparent 1px),linear-gradient(180deg,#fbfbf8 0%,var(--bg) 42%,#ecece6 100%);background-size:56px 56px,auto;color:var(--ink);line-height:1.75}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p,figure,blockquote{margin:0}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem clamp(1rem,4vw,3.5rem);border-bottom:1px solid rgba(17,17,17,.1);background:#f4f4f1db;backdrop-filter:blur(18px)}.brand,.nav,.header-actions,.language-switcher,.button-row,.site-footer{display:flex;align-items:center}.brand{gap:.8rem;min-width:0}.brand span:last-child{display:grid;gap:.05rem}.brand strong{color:var(--ink);font-size:.96rem;line-height:1.1}.brand small{color:var(--muted);font-size:.72rem;line-height:1.1}.brand-mark{width:1.6rem;height:1.6rem;border:1px solid var(--ink);background:linear-gradient(90deg,transparent 0 42%,var(--accent) 42% 58%,transparent 58%),linear-gradient(var(--surface),var(--surface))}.nav{gap:clamp(.72rem,1.8vw,1.35rem);color:var(--muted);font-size:.86rem;font-weight:720}.nav a:hover,.lang-switch:hover,.lang-switch.active{color:var(--accent)}.header-actions{gap:clamp(.75rem,2vw,1.3rem);min-width:0}.lang-switch{display:inline-flex;align-items:center;justify-content:center;min-width:2.55rem;min-height:2rem;padding:.24rem .62rem;border:1px solid var(--line-strong);color:var(--muted);font-size:.78rem;font-weight:800}.language-switcher{gap:.36rem;color:var(--subtle);font-size:.78rem;font-weight:800}.language-switcher .lang-switch{min-width:2.25rem}.language-switcher .lang-switch.active{border-color:var(--accent);background:#d9471e14}.hero,.landing-hero,.production-note,.statement,.section{width:min(1180px,calc(100% - 2rem));margin:0 auto}.landing-hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,1.22fr);gap:clamp(2rem,5vw,5rem);min-height:clamp(28rem,72vh,42rem);align-items:center;padding:clamp(4rem,9vw,8rem) 0 clamp(3rem,7vw,6rem);border-bottom:2px solid var(--ink)}.landing-hero-copy{max-width:58rem}.landing-hero h1{max-width:11.5em}.landing-hero p:not(.eyebrow){max-width:42rem;margin-bottom:1.9rem;color:var(--muted);font-size:clamp(1.08rem,1.5vw,1.28rem)}.landing-hero-media{overflow:hidden;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.landing-hero-media img{width:100%;aspect-ratio:1.35 / 1;background:#f3f1ec;object-fit:contain}.hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(380px,1.22fr);gap:clamp(2rem,5vw,5.5rem);align-items:center;padding:clamp(4rem,8vw,7.5rem) 0 clamp(3rem,7vw,6rem)}.eyebrow{margin-bottom:.9rem;color:var(--accent-dark);font-size:.74rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}h1{max-width:13em;margin-bottom:1.25rem;font-size:clamp(2.35rem,5vw,5.2rem);line-height:1.05;letter-spacing:0}.copy-lines span{display:block}h2{max-width:14em;font-size:clamp(1.65rem,3.4vw,3.35rem);line-height:1.16;letter-spacing:0}h3{font-size:1.05rem;line-height:1.38}.hero-lead{max-width:30rem;margin-bottom:1.9rem;color:var(--muted);font-size:clamp(1.08rem,1.4vw,1.22rem)}.button-row{flex-wrap:wrap;gap:.78rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.72rem 1.05rem;border:1px solid var(--ink);font-weight:820;line-height:1.2;transition:transform .16s ease,border-color .16s ease,background .16s ease}.button:hover{transform:translateY(-2px)}.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.button.secondary{background:#ffffff94;color:var(--ink)}.hero-media,.product-media{overflow:hidden;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.hero-media img{width:100%;aspect-ratio:1.3 / 1;background:#f3f1ec;object-fit:contain}.hero-media figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.78rem .95rem;border-top:1px solid var(--line);color:var(--subtle);font-size:.8rem}.production-note{display:grid;grid-template-columns:minmax(240px,.52fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,4rem);padding:clamp(1.8rem,4vw,3rem) 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line-strong)}.production-note h2{font-size:clamp(1.45rem,2.4vw,2.4rem)}.production-note-copy{display:grid;gap:.85rem;max-width:52rem;color:var(--muted);font-size:clamp(1rem,1.2vw,1.08rem)}.statement{padding:clamp(1.8rem,4vw,3rem) 0;border-bottom:1px solid var(--line-strong)}.statement p{max-width:56rem;color:var(--ink);font-size:clamp(1.2rem,2vw,1.85rem);font-weight:760;line-height:1.55;text-wrap:balance}.statement p span{display:block}.statement p span+span{margin-top:.65em}.section{padding:clamp(4rem,8vw,7rem) 0}.split-section{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(1.8rem,5vw,5rem);align-items:start;border-bottom:1px solid var(--line)}.split-section>p,.section-heading>p,.section-copy>p{max-width:44rem;color:var(--muted);font-size:clamp(1rem,1.2vw,1.08rem)}.feature-section,.comparison-section{border-bottom:1px solid var(--line)}.section-heading{display:grid;gap:1rem;margin-bottom:clamp(1.8rem,4vw,3rem)}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong)}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.comparison-grid article{padding:clamp(1.15rem,3vw,1.7rem);border:1px solid var(--line-strong);background:#ffffffad;box-shadow:var(--shadow)}.comparison-grid h3{margin-bottom:1rem}.comparison-image{overflow:hidden;margin-bottom:1rem;border:1px solid var(--line);border-radius:8px;background:#f3f1ec}.comparison-image img{width:100%;aspect-ratio:1.55 / 1;object-fit:cover}.comparison-grid ul{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.comparison-grid li{position:relative;padding-left:1.2rem;color:var(--muted)}.comparison-grid li:before{position:absolute;top:.7em;left:0;width:.42rem;height:.42rem;background:var(--accent);content:""}.feature-item{min-height:14rem;padding:clamp(1rem,2.4vw,1.4rem);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#ffffff8a}.feature-item h3{margin-bottom:.7rem}.feature-item p{color:var(--muted);font-size:.95rem}.process-section{border-bottom:1px solid var(--line)}.process-list{display:grid;border-top:1px solid var(--line-strong)}.process-list article{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:clamp(1rem,3vw,2rem);padding:clamp(1.25rem,3vw,2rem) 0;border-bottom:1px solid var(--line)}.process-index{color:var(--accent);font-family:var(--mono);font-size:clamp(1.2rem,3vw,2rem);font-weight:760;line-height:1}.process-body{display:grid;gap:.85rem;max-width:54rem}.process-body h3{font-size:clamp(1.1rem,1.6vw,1.35rem)}.process-body>p{color:var(--muted)}.process-image-grid{display:flex;flex-wrap:wrap;gap:.85rem}.process-image{overflow:hidden;width:min(100%,32rem);max-width:32rem;justify-self:start;border:1px solid var(--line);border-radius:8px;background:#f3f1ec}.process-image img{display:block;width:100%;aspect-ratio:1.55 / 1;object-fit:contain}.process-image--quiet{width:min(100%,20rem);max-width:20rem}.process-image--quiet img{aspect-ratio:4 / 3;object-fit:cover}.process-note{display:grid;gap:.25rem;padding:.85rem 1rem;border-left:3px solid var(--accent-soft);background:#ffffff9e;color:var(--ink)}.process-note span{color:var(--accent);font-family:var(--mono);font-size:.72rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.media-section{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(1.8rem,5vw,4.5rem);align-items:center;border-bottom:1px solid var(--line)}.media-section.reverse{grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr)}.media-section.reverse .product-media{order:2}.media-section.reverse .section-copy{order:1}.product-media img{width:100%;aspect-ratio:1.55 / 1;background:#f3f1ec;object-fit:contain}.section-copy{display:grid;gap:1.05rem}blockquote{max-width:42rem;padding-left:1.1rem;border-left:4px solid var(--accent);color:var(--ink);white-space:pre-line;font-size:clamp(1.12rem,1.8vw,1.55rem);font-weight:760;line-height:1.55}.actions-section,.projects-section{padding-bottom:clamp(4.5rem,9vw,8rem)}.section-action{display:flex;margin-top:clamp(1.4rem,4vw,2.5rem)}.parts-hero{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(4rem,9vw,7rem) 0 clamp(2.5rem,6vw,4rem);border-bottom:2px solid var(--ink)}.parts-hero div{max-width:58rem}.parts-hero h1{max-width:12em}.parts-hero p:not(.eyebrow){max-width:43rem;color:var(--muted);font-size:clamp(1.08rem,1.5vw,1.28rem)}.parts-note,.parts-warning{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(1.4rem,4vw,2.2rem);border:1px solid var(--accent);background:#d9471e14}.parts-note{margin-top:clamp(1rem,3vw,1.8rem)}.parts-note p,.parts-warning p{max-width:52rem;color:var(--ink);white-space:pre-line;font-size:clamp(1.05rem,1.4vw,1.22rem);font-weight:720;line-height:1.6}.parts-warning{margin-bottom:clamp(4rem,8vw,7rem)}.parts-warning h2{margin-bottom:.8rem;font-size:clamp(1.35rem,2.2vw,2rem)}.profile-hero,.profile-card-section{width:min(1180px,calc(100% - 2rem));margin:0 auto}.profile-hero{padding:clamp(4rem,9vw,7rem) 0 clamp(2rem,5vw,3.5rem);border-bottom:2px solid var(--ink)}.profile-hero div{max-width:58rem}.profile-hero h1{max-width:10em}.profile-hero p:not(.eyebrow){max-width:42rem;color:var(--muted);font-size:clamp(1.08rem,1.5vw,1.28rem)}.profile-card-section{padding:clamp(1.2rem,3vw,2rem) 0 0}.profile-card{display:grid;grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);gap:clamp(1.2rem,4vw,3rem);align-items:center;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--line-strong);background:#ffffffb8;box-shadow:var(--shadow)}.profile-photo{position:relative;overflow:hidden;width:min(100%,18rem);border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,rgba(217,71,30,.1),transparent 45%),#f3f1ec}.profile-photo img,.profile-photo span{width:100%;aspect-ratio:4 / 5}.profile-photo img{object-fit:cover}.profile-photo span{display:grid;place-items:center;padding:1rem;color:var(--subtle);font-size:.78rem;font-weight:820;letter-spacing:.08em;text-align:center;text-transform:uppercase}.profile-photo span[hidden]{display:none}.profile-card-body{display:grid;gap:.9rem}.profile-card-body h2{max-width:16em;font-size:clamp(1.55rem,3vw,2.7rem)}.profile-card-body>p:not(.eyebrow){max-width:48rem;color:var(--muted)}.profile-role{color:var(--ink);font-weight:780}.profile-education{display:grid;gap:.28rem;margin-top:.15rem;color:var(--subtle);font-size:.82rem}.profile-education span{color:var(--accent-dark);font-family:var(--mono);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.profile-education ul{display:grid;gap:.12rem;margin:0;padding:0;list-style:none}.profile-about,.profile-skills,.profile-philosophy{border-bottom:1px solid var(--line)}.profile-copy{display:grid;gap:1rem;max-width:54rem}.profile-copy p{color:var(--muted);font-size:clamp(1rem,1.2vw,1.08rem)}.skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong)}.skill-card{display:grid;min-height:8rem;align-items:end;padding:clamp(1rem,2.4vw,1.35rem);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#ffffff94}.skill-card h3{max-width:14em}.profile-cta{padding-bottom:clamp(4.5rem,9vw,8rem)}.parts-section{border-bottom:1px solid var(--line)}.parts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem}.part-card{display:grid;min-height:100%;grid-template-rows:auto 1fr;border:1px solid var(--line-strong);background:#ffffffbf;box-shadow:var(--shadow)}.part-card-media{overflow:hidden;border-bottom:1px solid var(--line);background:#f3f1ec}.part-card-media img,.part-placeholder{width:100%;aspect-ratio:1.5 / 1}.part-card-media img{object-fit:contain}.part-placeholder{display:grid;place-items:center;color:var(--subtle);font-size:1.4rem;font-weight:850;letter-spacing:.08em}.part-placeholder span{display:inline-grid;width:4.2rem;height:4.2rem;place-items:center;border:1px solid var(--line-strong);background:#ffffffb3}.part-card-body{display:grid;gap:.75rem;padding:clamp(1rem,2.6vw,1.35rem)}.part-card-topline{display:flex;justify-content:flex-start}.level-badge{display:inline-flex;align-items:center;min-height:1.75rem;padding:.2rem .55rem;border:1px solid var(--accent);background:#d9471e14;color:var(--accent-dark);font-size:.76rem;font-weight:850}.part-card p,.part-card dd{color:var(--muted)}.part-card dl{display:grid;gap:.55rem;margin:0}.part-card dl div{display:grid;gap:.12rem}.part-card dt{color:var(--ink);font-size:.78rem;font-weight:850}.part-card dd{margin:0;font-size:.94rem}.part-card small,.part-no-link{color:var(--subtle);font-size:.82rem;font-weight:720}.part-card .button{width:fit-content;margin-top:auto}.project-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem}.project-card{display:grid;min-height:100%;position:relative;overflow:hidden;min-height:clamp(22rem,42vw,31rem);border:1px solid var(--line-strong);background:#1b1a18;box-shadow:var(--shadow);transition:transform .16s ease,border-color .16s ease}.project-card:hover{transform:translateY(-3px);border-color:var(--accent)}.project-card figure{position:absolute;inset:0;overflow:hidden;background:#f3f1ec}.project-card img{width:100%;height:100%;object-fit:contain}.project-card figure:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,#12110f2e,#12110fb8),linear-gradient(90deg,#12110fb8,#12110f1f)}.project-card-body{display:grid;position:relative;z-index:1;align-content:end;gap:.75rem;padding:clamp(1rem,2.6vw,1.45rem);min-height:100%;color:#fffaf1}.project-card-meta{display:flex;justify-content:space-between;gap:1rem;color:#fffaf1db;font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.project-card p{max-width:42rem;color:#fffaf1e0}.project-card small{margin-top:auto;color:#fffaf1b8;font-size:.82rem;font-weight:760}.project-card-cta{width:fit-content;margin-top:.25rem;padding:.72rem 1rem;border:1px solid rgba(255,250,241,.46);background:#fffaf1eb;color:var(--ink);font-size:.88rem;font-weight:850}.action-list{display:grid;border-top:1px solid var(--line-strong)}.action-list article{display:grid;grid-template-columns:4rem minmax(180px,.35fr) minmax(0,1fr);gap:clamp(1rem,3vw,2rem);align-items:baseline;padding:1.15rem 0;border-bottom:1px solid var(--line)}.action-list span{color:var(--accent-dark);font-size:.82rem;font-weight:850}.action-list p{color:var(--muted)}.site-footer{justify-content:space-between;gap:1rem;padding:1.3rem clamp(1rem,4vw,3.5rem);border-top:1px solid var(--line-strong);color:var(--muted);font-size:.84rem}@media (max-width: 980px){.hero,.landing-hero,.profile-card,.production-note,.split-section,.media-section,.media-section.reverse{grid-template-columns:1fr}.media-section.reverse .product-media,.media-section.reverse .section-copy{order:initial}.feature-grid,.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 680px){.site-header{align-items:center;flex-direction:row}.brand small{display:none}.header-actions{flex:1;justify-content:flex-end;min-width:0}.nav{width:auto;overflow-x:auto;padding-bottom:.1rem}.hero,.landing-hero,.parts-hero,.profile-hero,.profile-card-section,.production-note,.statement,.section{width:min(100% - 1.2rem,1180px)}.hero{padding-top:2.6rem}.hero-media figcaption{align-items:flex-start;flex-direction:column}.feature-grid,.comparison-grid,.skill-grid,.process-list article,.action-list article{grid-template-columns:1fr}.profile-card{padding:.9rem}.profile-photo{width:min(100%,15rem)}.process-list article{gap:.8rem}.action-list article{gap:.35rem}.button,.part-card .button,.section-action .button{width:100%}.site-footer{align-items:flex-start;flex-direction:column}}
