:root{--bg:#ffffff;--bg-alt:#fafaf8;--ph-fill:#ecebe6;--ph-border:#e2e1db;--ink:#14161b;--text:#54565d;--text-weak:#6e717a;--text-faint:#85827a;--chapter:#b6b4ac;--rule:#e6e5e1;--rule-nav:#ececea;--ghost-border:#d6d5d0;--nav-text:#3c3e44;--ph-label:#9a988f;--acc:#1f49d6;--maxw:1240px;--gutter:clamp(22px,4vw,48px);--section-y:clamp(56px,9vh,108px);--contact-y:clamp(64px,11vh,128px);--nav-h:68px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-zen),"Zen Kaku Gothic New",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{text-decoration:none;color:inherit}h1,h2,h3,p{margin:0}::selection{background:rgba(31,73,214,.16)}.latin,.wonder{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif}.wonder{color:var(--acc)}.container{max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.section{border-top:1px solid var(--rule)}.section--alt{background:var(--bg-alt)}.section__inner{max-width:var(--maxw);margin:0 auto;padding:var(--section-y) var(--gutter)}.eyebrow{display:flex;gap:18px;align-items:baseline;margin-bottom:clamp(26px,4vh,40px)}.eyebrow--wide{margin-bottom:clamp(34px,5vh,52px)}.eyebrow__num{font-size:13px;color:var(--chapter)}.eyebrow__label,.eyebrow__num{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-weight:700}.eyebrow__label{font-size:12px;letter-spacing:.16em;color:var(--text)}.ph{background:var(--ph-fill);border:1px solid var(--ph-border);display:flex;align-items:flex-end}.ph__label{letter-spacing:.1em;color:var(--ph-label);text-transform:uppercase}.btn,.ph__label{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif}.btn{font-weight:600;border-radius:2px;display:inline-block;cursor:pointer}.btn--primary{color:#fff;background:var(--ink);transition:opacity .2s}.btn--primary:hover{opacity:.85}.btn--ghost{color:var(--ink);border:1px solid var(--ghost-border);transition:border-color .2s}.btn--ghost:hover{border-color:var(--ink)}.link-acc{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-weight:600;color:var(--acc);display:inline-block}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.1) blur(8px);backdrop-filter:saturate(1.1) blur(8px);border-bottom:1px solid var(--rule-nav)}.nav__inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);height:var(--nav-h);display:flex;align-items:center;justify-content:space-between}.nav__logo{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-weight:800;font-size:23px;letter-spacing:-.02em}.nav__links{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px);font-size:13.5px;color:var(--nav-text)}.nav__link{transition:color .2s}.nav__link:hover{color:var(--acc)}.nav__cta{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-weight:600;border:1px solid var(--ink);border-radius:2px;padding:9px 18px;font-size:13px;transition:background .2s,color .2s}.nav__cta:hover{background:var(--ink);color:#fff}.nav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:0;margin:0;border:none;background:transparent;cursor:pointer}.nav__toggle span{display:block;width:22px;height:1.5px;background:var(--ink);transition:transform .25s,opacity .25s}.nav__toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px) rotate(45deg)}.nav__toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav__toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero{max-width:var(--maxw);margin:0 auto;padding:clamp(56px,9vh,104px) var(--gutter) clamp(36px,5vh,56px)}.hero__eyebrow{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--acc);margin-bottom:clamp(26px,4vh,40px)}.hero__h1{font-weight:700;font-size:clamp(38px,7vw,84px);line-height:1.22;letter-spacing:-.015em;max-width:13em}.hero__wonder{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;color:var(--acc);margin:0 .06em}.hero__grid{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:48px;gap:48px;margin-top:clamp(30px,5vh,48px);align-items:end}.hero__lead{font-size:clamp(15px,1.5vw,18px);line-height:2;color:var(--text);max-width:30em}.hero__cta{display:flex;gap:14px;justify-content:flex-start}.hero__band-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter) clamp(40px,7vh,80px)}.hero__band{height:clamp(280px,52vh,540px);padding:clamp(16px,2vw,26px)}.hero__band .ph__label{font-size:11px;letter-spacing:.14em}.btn--hero-primary{font-size:14px;padding:14px 30px}.btn--hero-ghost{font-size:14px;padding:14px 26px}.mission__statement{font-weight:700;font-size:clamp(26px,3.6vw,46px);line-height:1.6;letter-spacing:-.01em;max-width:19em}.mission__support{font-size:clamp(15px,1.5vw,18px);line-height:2;color:var(--text);max-width:30em;margin-top:clamp(22px,3.5vh,34px)}.mission__link{font-size:14px;margin-top:clamp(24px,3.5vh,34px)}.page-hero{max-width:var(--maxw);margin:0 auto;padding:clamp(48px,8vh,96px) var(--gutter) clamp(20px,3vh,36px)}.page-hero__title{font-weight:700;font-size:clamp(32px,5vw,64px);line-height:1.3;letter-spacing:-.015em}.page-hero__lead{font-size:clamp(15px,1.5vw,18px);line-height:2;color:var(--text);max-width:32em;margin-top:clamp(20px,3vh,28px)}.philosophy__list{display:flex;flex-direction:column}.philosophy__item{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:clamp(24px,4vw,64px);gap:clamp(24px,4vw,64px);padding:clamp(30px,4.5vh,48px) 0;border-top:1px solid var(--rule)}.philosophy__item:last-child{border-bottom:1px solid var(--rule)}.philosophy__item-title{font-weight:700;font-size:clamp(18px,2vw,24px);line-height:1.6;letter-spacing:-.01em}.philosophy__item-body p{font-size:clamp(15px,1.45vw,17px);line-height:2.05;color:var(--text)}.philosophy__item-body p+p{margin-top:1.5em}.philosophy__back{font-size:14px;margin-top:clamp(34px,5vh,52px)}.business__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(32px,5vw,64px);gap:clamp(32px,5vw,64px);align-items:center}.business__title{font-weight:700;font-size:clamp(26px,3.4vw,40px);line-height:1.4;margin:0 0 22px}.business__desc{font-size:clamp(15px,1.4vw,16px);line-height:2.1;color:var(--text);margin:0 0 32px}.features{display:flex;flex-direction:column;gap:0;margin-bottom:34px}.feature{display:flex;gap:16px;align-items:baseline;padding:16px 0;border-top:1px solid var(--rule)}.feature__no{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-size:12px;font-weight:700;color:var(--acc);min-width:28px}.feature__title{font-size:15px;font-weight:700;margin-bottom:5px}.feature__desc{font-size:13.5px;line-height:1.85;color:var(--text-weak)}.rule-cap{border-top:1px solid var(--rule)}.btn--business{font-size:14px;padding:14px 28px}.business__image{aspect-ratio:4/5;padding:clamp(14px,1.6vw,22px)}.business__image .ph__label{font-size:11px;letter-spacing:.12em}.pickup__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:clamp(30px,4vh,44px);flex-wrap:wrap;gap:12px}.pickup__head-right{display:flex;align-items:center;gap:clamp(12px,2vw,22px)}.pickup__title{font-weight:700;font-size:clamp(22px,2.8vw,30px)}.pickup__more{font-size:13.5px}.pickup__grid{--pickup-gap:clamp(16px,1.8vw,24px);display:flex;gap:var(--pickup-gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ink) var(--rule)}.pickup__grid::-webkit-scrollbar{height:4px}.pickup__grid::-webkit-scrollbar-track{background:var(--rule)}.pickup__grid::-webkit-scrollbar-thumb{background:var(--ink)}.pickup__card{flex:0 0 calc((100% - 2 * var(--pickup-gap)) / 3);scroll-snap-align:start}.card{display:block}.card__img{padding:14px;margin-bottom:16px;transition:opacity .25s}a.card:hover .card__img{opacity:.82}.card__img .ph__label{font-size:10px}.card__tag{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--acc);margin-bottom:9px}.pickup__card .card__img{aspect-ratio:3/2}.pickup__card .card__title{font-size:14.5px;font-weight:500;line-height:1.6}.works__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:clamp(34px,5vh,52px)}.works__head .eyebrow{margin-bottom:0}.pickup__nav,.works__nav{display:flex;gap:8px;flex:none}.pickup__arrow,.works__arrow{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ghost-border);background:transparent;border-radius:2px;font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-size:16px;color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s,color .2s}.pickup__arrow:hover,.works__arrow:hover{border-color:var(--ink)}.works__grid{--works-gap:clamp(20px,2.4vw,36px);display:flex;gap:var(--works-gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ink) var(--rule)}.works__grid::-webkit-scrollbar{height:4px}.works__grid::-webkit-scrollbar-track{background:var(--rule)}.works__grid::-webkit-scrollbar-thumb{background:var(--ink)}.works__card{flex:0 0 calc((100% - 2 * var(--works-gap)) / 3);scroll-snap-align:start}.works__card .card__img{aspect-ratio:3/2;padding:16px;margin-bottom:20px}.works__card .card__tag{margin-bottom:11px}.works__card .card__title{font-size:18px;font-weight:700;line-height:1.5;margin-bottom:9px}.works__card .card__desc{font-size:13.5px;line-height:1.9;color:var(--text-weak)}.team__title{font-weight:700;font-size:clamp(22px,2.8vw,32px);line-height:1.5;margin:0 0 clamp(34px,5vh,48px);max-width:18em}.team__grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:clamp(20px,2.6vw,36px);gap:clamp(20px,2.6vw,36px)}.member__photo{aspect-ratio:1;width:100%;object-fit:cover;display:block;margin-bottom:16px;border:1px solid var(--ph-border)}.member__photo--empty{background:var(--ph-fill)}.member__name{font-size:18px;font-weight:700;line-height:1.45;margin-bottom:6px}.member__role{font-size:13px;line-height:1.7;color:var(--text-weak)}.ph-photo{display:block;width:100%;object-fit:cover;padding:0;border:1px solid var(--ph-border)}.pickup__card .ph-photo,.works__card .ph-photo{padding:0}.hero__band.ph-photo{height:auto}.news__title{font-weight:700;font-size:clamp(22px,2.8vw,30px);margin:0 0 clamp(28px,4vh,40px)}.news__row{display:flex;align-items:baseline;gap:clamp(14px,2.6vw,32px);padding:22px 4px;border-top:1px solid var(--rule);transition:padding-left .3s}.news__row--link{cursor:pointer}.news__row--link:hover{padding-left:12px}.news__date{font-size:13.5px;color:var(--text-weak);min-width:88px}.news__date,.news__tag{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;flex:none}.news__tag{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--acc);border:1px solid;padding:4px 9px;border-radius:2px}.news__headline{font-size:14.5px;line-height:1.65;font-weight:500}.contact__inner{max-width:var(--maxw);margin:0 auto;padding:var(--contact-y) var(--gutter)}.contact__title{font-weight:700;font-size:clamp(28px,4.4vw,56px);line-height:1.42;letter-spacing:-.01em;max-width:15em}.contact__lead{font-size:clamp(15px,1.5vw,17px);line-height:2;color:var(--text);margin:26px 0 38px;max-width:30em}.btn--contact{font-size:15px;padding:16px 38px}.footer{border-top:1px solid var(--ink)}.footer__inner{max-width:var(--maxw);margin:0 auto;padding:clamp(44px,6vh,60px) var(--gutter);display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px}.footer__logo{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;margin-bottom:10px}.footer__copy{font-size:13px;color:var(--text-faint)}.footer__social{font-family:var(--font-hanken),"Hanken Grotesk",sans-serif;font-size:13px;color:var(--text);display:flex;gap:24px}.footer__social a{transition:color .2s}.footer__social a:hover{color:var(--acc)}@media (max-width:960px){.hero__grid{grid-template-columns:1fr;gap:32px;align-items:start}.business__grid{grid-template-columns:1fr;gap:clamp(28px,6vw,44px)}.business__image{max-width:280px;margin-inline:auto}.pickup__card{flex-basis:calc((100% - var(--pickup-gap)) / 2)}.works__card{flex-basis:calc((100% - var(--works-gap)) / 2)}.team__grid{grid-template-columns:repeat(3,1fr)}.philosophy__item{grid-template-columns:1fr;gap:12px}}@media (max-width:640px){.nav__toggle{display:flex}.nav__links{position:absolute;top:var(--nav-h);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--rule-nav);padding:8px var(--gutter) 20px;font-size:16px;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height .3s ease,opacity .2s ease}.nav__links--open{max-height:70vh;opacity:1;pointer-events:auto}.nav__link{padding:14px 0;border-bottom:1px solid var(--rule)}.nav__cta{margin-top:16px;text-align:center;font-size:14px;padding:12px 18px}.pickup__card,.works__card{flex-basis:82%}.pickup__nav,.works__nav{display:none}.team__grid{grid-template-columns:repeat(2,1fr)}.news__row{flex-wrap:wrap;gap:10px 14px}.news__headline{flex-basis:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}