@font-face{font-family:DM Sans;src:url('/fonts/dm-sans.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:DM Mono;src:url('/fonts/dm-mono.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#eeeee8;--ink:#20211f;--soft:#6c6d66;--line:rgba(32,33,31,.22);--gutter:4.2vw;--sans:'DM Sans',Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--mono:'DM Mono',monospace;--vh:100svh}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}body,button,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:500}img,video{display:block;width:100%}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline:2px solid currentColor;outline-offset:7px}button:disabled{cursor:default}a,button{position:relative}.micro,.eyebrow{font-family:var(--mono);font-size:12px;font-weight:400;line-height:1.65;letter-spacing:.025em}.eyebrow{letter-spacing:.075em}.eyebrow span{margin-left:18px;opacity:.45}.section-pad{padding-left:var(--gutter);padding-right:var(--gutter)}.section-line{display:flex;align-items:center;justify-content:space-between;padding:30px 0;border-top:1px solid var(--line)}.line-mask{display:block;overflow:hidden;padding-bottom:.13em;margin-bottom:-.13em}.line-mask>span{display:block}.skip-link{position:fixed;left:24px;top:12px;z-index:100;background:var(--paper);padding:12px 18px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:29px var(--gutter);color:#f1f1eb;mix-blend-mode:difference;pointer-events:none}.site-header a,.site-header nav{pointer-events:auto}.brand{font-weight:600;letter-spacing:-.06em;font-size:29px;line-height:1}.brand-mark{display:inline-block;vertical-align:top;font-size:15px;margin:3px 0 0 8px}.site-header nav{display:flex;gap:36px}.site-header nav a{font-family:var(--mono);font-size:12px;padding:10px 0}.site-header nav small{opacity:.55;font-size:10px;margin-left:8px}.site-header nav a::after{content:'';position:absolute;inset:auto 0 4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s}.site-header nav a:hover::after{transform:scaleX(1);transform-origin:left}
.hero-film{position:relative}.hero-viewport{height:var(--vh);min-height:600px;position:relative;overflow:hidden;background:#dee0d8;isolation:isolate}.hero-camera,.hero-media{position:absolute;inset:0;transform-origin:29% 47%}.hero-poster,.hero-video{position:absolute;inset:0;height:100%;object-fit:cover;object-position:50% 50%}.hero-video{opacity:0}.hero-video.ready{opacity:1}.hero-light{position:absolute;inset:0;background:linear-gradient(90deg,transparent 10%,rgba(238,238,232,.18) 45%,rgba(238,238,232,.45) 100%);pointer-events:none}.fog{position:absolute;pointer-events:none;transform-origin:center}.fog-near{inset:-15%;background:radial-gradient(ellipse at 70% 70%,rgba(238,238,232,.91),rgba(238,238,232,.4) 42%,transparent 65%);filter:blur(28px);opacity:0}.fog-far{inset:-30%;background:var(--paper);clip-path:ellipse(20% 13% at 85% 80%);filter:blur(20px);opacity:0}.hero-copy{position:absolute;z-index:3;top:29%;left:42.5%;right:var(--gutter)}.hero-eyebrow{margin-bottom:30px}.hero-copy h1{font-size:clamp(48px,6.75vw,128px);line-height:.88;letter-spacing:-.075em}.hero-sub{margin-top:30px;display:flex;justify-content:space-between;align-items:end}.hero-sub p{font-size:17px;line-height:1.5}.hero-sub .micro{font-size:11px}.hero-bridge{position:absolute;z-index:4;inset:27% var(--gutter) auto;text-align:center;pointer-events:none;opacity:0}.bridge-overline{display:block;margin-bottom:35px}.hero-bridge p{font-size:clamp(70px,10vw,160px);line-height:.93;letter-spacing:-.065em}.bridge-jp{display:block;font-size:15px;letter-spacing:.1em;margin-top:28px}.hero-footer{position:absolute;z-index:5;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:end;color:#f1f1eb;mix-blend-mode:difference}.hero-role{font-size:11px}.begin-link{display:flex;gap:18px;align-items:center;border:0;background:none;padding:15px 0;color:inherit;font-size:11px}.scroll-glyph{height:32px;width:18px;border:1px solid currentColor;border-radius:12px;position:relative}.scroll-glyph::before{content:'';position:absolute;left:7px;top:6px;width:2px;height:7px;background:currentColor}.scene-state{width:155px;display:grid;grid-template-columns:1fr;gap:8px;text-align:right;font-size:11px}.scene-track{height:1px;background:rgba(240,240,235,.3)}.scene-track span{display:block;transform:scaleX(0);transform-origin:left;height:1px;background:currentColor}.scene-count{font-size:10px;opacity:.7}
.about-section{padding-top:80px;padding-bottom:120px;background:var(--ink);color:var(--paper);--line:rgba(238,238,232,.22)}.about-copy{margin-top:70px;margin-bottom:95px}.about-copy h2{font-size:clamp(54px,7.65vw,134px);letter-spacing:-.062em;line-height:1.04}.about-copy em{font-family:Georgia,serif;font-weight:400}.about-footer{display:grid;grid-template-columns:1fr 1fr;gap:60px}.about-signature{display:flex;align-items:start;gap:35px}.signature-word{font-size:34px;font-weight:600;letter-spacing:-.06em}.about-signature .micro{font-size:10px;opacity:.55;line-height:1.8}.about-text{max-width:490px;margin-left:auto}.about-jp{font-size:24px;line-height:1.6;letter-spacing:.015em;margin-bottom:28px}.about-text>p:last-child{font-size:15px;line-height:1.95;color:#b4b5ad}
.capabilities-section{padding-top:105px;padding-bottom:125px}.capabilities-list{margin-top:42px}.capability-row{display:grid;grid-template-columns:6% 1fr 21% 5%;align-items:center;border-bottom:1px solid var(--line);padding:29px 0 35px;gap:20px}.cap-index{align-self:start;padding-top:12px;color:var(--soft)}.capability-row h3{font-size:clamp(68px,10vw,170px);line-height:.95;letter-spacing:-.065em}.capability-row p{font-size:16px;line-height:1.5;color:var(--soft)}.cap-mark{font-size:39px;font-weight:400;line-height:1}.cap-experience{padding-top:47px;padding-bottom:50px}.cap-experience h3{font-size:clamp(50px,7.6vw,130px);line-height:.95;letter-spacing:-.065em}.cap-experience .cap-mark{font-size:63px}.capabilities-foot{display:flex;justify-content:space-between;margin-top:30px;color:var(--soft)}.capabilities-foot .micro{font-size:11px}
.contact-section{padding-top:95px;background:#deded5}.contact-section h2{margin-top:80px;font-size:clamp(62px,9.8vw,180px);letter-spacing:-.065em;line-height:.91}.contact-action{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-top:75px;margin-bottom:140px}.contact-action>p{font-size:19px;line-height:1.65}.contact-links{display:flex;align-items:start;flex-direction:column;margin-left:20%}.contact-cta{font-size:30px;font-weight:500;letter-spacing:-.035em;padding-bottom:14px}.contact-underline{display:block;position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--ink);transform-origin:left;transition:transform .4s}.contact-cta:hover .contact-underline{transform:scaleX(.55)}.email-link{font-size:14px;margin-top:22px;line-height:1.6}.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:34px 0}.footer-brand{font-size:29px;font-weight:600;letter-spacing:-.055em}.footer-brand span{font-size:18px;margin-left:10px;vertical-align:top}.site-footer .micro{font-size:10px}.back-top{padding:12px 0}.grain{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}.no-script-note{padding:20px var(--gutter);font-size:14px}.media-fallback .hero-video{display:none}.media-fallback .hero-poster{opacity:1}
@media(min-width:1700px){}
@media(max-width:1000px){.hero-copy{left:36%;top:33%;right:3vw}.hero-copy h1{font-size:7.5vw}.hero-sub{gap:15px;align-items:start;flex-direction:column}.about-signature{gap:20px}.capability-row{grid-template-columns:5% 1fr 22% 4%;gap:13px}.contact-links{margin-left:8%}.contact-section h2{font-size:10vw}}
@media(max-width:600px){
 :root{--gutter:24px}html{scroll-padding-top:85px}.site-header{padding:23px 24px}.brand{font-size:26px}.brand-mark{font-size:13px;margin-left:5px}.site-header nav{gap:18px}.site-header nav a{font-size:10px;padding:8px 0}.site-header nav small{display:none}.hero-viewport{min-height:600px}.hero-camera{inset:14% -58% 8%;transform-origin:33% 42%}.hero-media{inset:0}.hero-poster,.hero-video{object-fit:cover;object-position:47% 50%}.hero-light{background:linear-gradient(0deg,var(--paper) 0%,transparent 30%,transparent 76%,rgba(238,238,232,.65) 100%)}.hero-copy{top:auto;bottom:18%;left:24px;right:24px}.hero-copy h1{font-size:12.2vw;line-height:.9;letter-spacing:-.06em}.hero-eyebrow{font-size:9px;margin-bottom:21px}.hero-sub{margin-top:20px;flex-direction:row;align-items:end;gap:12px}.hero-sub p{font-size:14px}.hero-sub .micro{font-size:9px;white-space:nowrap}.fog-near{inset:-10%;filter:blur(12px)}.fog-far{filter:blur(12px)}.hero-bridge{inset:34% 24px auto}.bridge-overline{font-size:9px;margin-bottom:25px}.hero-bridge p{font-size:17vw}.bridge-jp{font-size:12px;margin-top:23px}.hero-footer{left:24px;right:24px;bottom:24px;align-items:end}.hero-role{font-size:9px;max-width:165px}.begin-link{position:absolute;left:0;bottom:70px;gap:12px;font-size:10px;padding:10px 0}.scroll-glyph{height:28px;width:15px}.scroll-glyph::before{left:6px;width:1px}.scene-state{width:111px;font-size:9px;gap:7px}.scene-count{font-size:9px}.section-line{padding:23px 0;gap:20px}.eyebrow{font-size:10px}.eyebrow span{margin-left:10px}.section-line>.micro{font-size:9px;text-align:right;max-width:130px}.about-section{padding-top:42px;padding-bottom:66px}.about-copy{margin-top:40px;margin-bottom:45px}.about-copy h2{font-size:9.7vw;line-height:1.12;letter-spacing:-.055em}.about-footer{display:flex;flex-direction:column-reverse;gap:42px}.about-text{max-width:none}.about-jp{font-size:21px;margin-bottom:23px}.about-text>p:last-child{font-size:14px}.about-signature{justify-content:space-between;align-items:center}.signature-word{font-size:30px}.about-signature .micro{font-size:9px}.capabilities-section{padding-top:60px;padding-bottom:64px}.capabilities-list{margin-top:17px}.capability-row{grid-template-columns:20px 1fr 20px;padding:28px 0;gap:12px;position:relative}.capability-row h3{font-size:19vw;line-height:1}.cap-index{font-size:9px;padding-top:8px}.capability-row p{grid-column:2;font-size:12px;margin-top:2px}.cap-mark{grid-column:3;grid-row:1;font-size:26px;align-self:center}.cap-experience h3{font-size:11.9vw;line-height:1.04;letter-spacing:-.065em}.cap-experience .cap-mark{font-size:27px}.capabilities-foot{align-items:start;gap:25px}.capabilities-foot .micro{font-size:9px;max-width:150px;line-height:1.8}.capabilities-foot p:last-child{text-align:right}.contact-section{padding-top:50px}.contact-section h2{margin-top:43px;font-size:9.35vw;line-height:1.03;letter-spacing:-.065em}.contact-action{display:flex;flex-direction:column;gap:35px;margin-top:39px;margin-bottom:75px}.contact-action>p{font-size:17px;line-height:1.7}.contact-links{margin-left:0}.contact-cta{font-size:27px;padding-bottom:11px}.email-link{font-size:12px;margin-top:18px}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:25px 0 27px;align-items:center}.footer-brand{font-size:26px}.site-footer>p:first-of-type{grid-column:1;grid-row:2;font-size:8px}.back-top{grid-column:2;grid-row:1;text-align:right;font-size:9px}.copyright{grid-column:2;grid-row:2;text-align:right}.grain{opacity:.019}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.grain{display:none}*,*::before,*::after{animation:none!important;transition:none!important}}
.reduced-motion .hero-viewport{height:auto;min-height:0;background:var(--paper);overflow:hidden}.reduced-motion .hero-camera{position:relative;height:70svh;inset:auto;transform:none!important}.reduced-motion .hero-copy{position:relative;inset:auto;padding:60px var(--gutter);background:var(--paper)}.reduced-motion .hero-copy h1{font-size:10vw}.reduced-motion .hero-eyebrow{font-size:11px}.reduced-motion .hero-footer,.reduced-motion .fog,.reduced-motion .hero-bridge,.reduced-motion .hero-light{display:none}.reduced-motion .hero-video{display:none}.reduced-motion .hero-poster{opacity:1}
@media(max-width:600px){.reduced-motion .hero-camera{height:55svh;margin:15svh -32% 0}.reduced-motion .hero-copy{padding-top:30px;padding-bottom:35px}.reduced-motion .hero-copy h1{font-size:12.2vw}.reduced-motion .hero-eyebrow{font-size:9px}}
/* Keep navigation legible across moving footage and dark sections. */
.site-header{mix-blend-mode:normal;color:var(--ink)}
.site-header nav{background:rgba(238,238,232,.94);padding:0 12px;margin-right:-12px}
.site-header.on-ink{color:var(--paper)}.site-header.on-ink nav{background:rgba(32,33,31,.95)}
@media(max-width:600px){.site-header nav{gap:15px;padding:0 8px;margin-right:-8px}.site-header nav a{font-size:11px;padding:12px 0}.site-header{padding-top:18px}}
/* Optical tracking and a mobile landscape framing that retains both subjects. */
.hero-copy h1{letter-spacing:-.055em}
.capability-row h3{letter-spacing:-.055em}.contact-section h2{letter-spacing:-.05em}
@media(max-width:600px){.hero-viewport{background:var(--paper)}.hero-camera{inset:20% -12.5% auto;height:32.5%;transform-origin:28% 45%;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 80%,transparent)}.hero-poster,.hero-video{object-position:50% 50%}.hero-copy{bottom:18%}.hero-copy h1{letter-spacing:-.055em}.contact-section h2{letter-spacing:-.045em}.reduced-motion .hero-camera{height:35svh;margin:18svh -12.5% 0;inset:auto;mask-image:none;-webkit-mask-image:none}}
/* TAIGA is a web and LP practice. The introduction is service-led. */
.services-section{padding-top:110px;padding-bottom:100px}
.services-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin:38px 0 90px}
.services-heading h2{font-size:clamp(65px,8.8vw,160px);line-height:.94;letter-spacing:-.055em}
.services-heading>p{font-size:23px;line-height:1.7;width:26%;padding-bottom:7px}
.service{display:grid;grid-template-columns:6% 42% 1fr;gap:30px;padding:55px 0 60px;border-top:1px solid var(--line);align-items:start}
.service-number{padding-top:7px;color:var(--soft)}
.service-name h3{font-size:clamp(35px,4.2vw,75px);line-height:.99;letter-spacing:-.045em}
.service-name>.micro{font-family:var(--sans);font-size:13px;letter-spacing:.02em;margin-top:25px;color:var(--soft)}
.service-description{padding-top:5px;max-width:440px;margin-left:auto}
.service-description>p:first-child{font-size:16px;line-height:1.95;color:#53564e}
.service-tags{font-size:10px;line-height:1.7;margin-top:28px}
.services-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:30px}
.services-foot>.micro{color:var(--soft);font-size:11px}
.service-inquiry{font-size:14px;line-height:1.6;border-bottom:1px solid var(--ink);padding-bottom:8px}
.capability-row h3{font-size:clamp(65px,8vw,140px)}
.cap-experience h3{font-size:clamp(48px,6.7vw,115px)}
.hero-copy h1{font-size:clamp(48px,6.5vw,120px)}
.reduced-motion .services-section{padding-top:40px}
@media(max-width:1000px){.services-heading>p{font-size:19px;width:30%}.service{grid-template-columns:5% 40% 1fr;gap:20px}.service-description>p:first-child{font-size:15px}.service-tags{font-size:9px}}
@media(max-width:600px){.hero-copy h1{font-size:10.65vw;letter-spacing:-.05em}.hero-eyebrow{font-size:9px}.hero-sub{flex-direction:column;align-items:start;gap:17px}.hero-sub p{font-size:13px}.hero-sub .micro{font-size:9px}.hero-copy{bottom:15.5%}.site-header nav{gap:13px}.site-header nav a{font-size:10px}.services-section{padding-top:65px;padding-bottom:65px}.services-heading{display:block;margin:30px 0 50px}.services-heading h2{font-size:16.5vw;line-height:.97}.services-heading>p{font-size:19px;width:100%;margin-top:31px}.service{grid-template-columns:24px 1fr;gap:10px 12px;padding:32px 0 38px}.service-name h3{font-size:10.3vw;line-height:1.04}.service-number{font-size:10px;padding-top:5px}.service-name>.micro{font-size:12px;margin-top:17px}.service-description{grid-column:2;margin-top:13px}.service-description>p:first-child{font-size:14px;line-height:1.9}.service-tags{font-size:9px;margin-top:20px}.services-foot{gap:25px;align-items:start;padding-top:26px}.services-foot>.micro{font-size:9px;max-width:110px}.service-inquiry{font-size:12px}.capability-row h3{font-size:12.7vw;letter-spacing:-.04em}.cap-experience h3{font-size:11.5vw;line-height:1.1}.reduced-motion .hero-copy h1{font-size:10.65vw}}
/* One film, shared by the entire site. Reading surfaces reveal the moving scene. */
.cinematic-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--paper);pointer-events:none}
main{position:relative;z-index:2}
.hero-viewport{background:transparent;isolation:auto;overflow:clip}
.hero-footer{mix-blend-mode:normal;color:var(--paper)}
.hero-footer .scene-state,.hero-footer .begin-link{color:var(--ink)}
.hero-footer .scene-track{background:rgba(32,33,31,.25)}
.hero-footer .hero-role{text-shadow:0 1px 8px rgba(0,0,0,.25)}
.services-section{background:rgba(238,238,232,.77)}
.service-description>p:first-child,.service-name>.micro{color:var(--ink)}
.about-section{background:rgba(25,27,24,.86)}
.capabilities-section{background:rgba(238,238,232,.79)}
.capability-row p,.capabilities-foot{color:#3e423b}
.contact-section{background:rgba(222,222,213,.84)}
.cinema-window{position:relative;min-height:75svh;background:linear-gradient(180deg,rgba(238,238,232,.15),transparent 25%,transparent 80%,rgba(32,33,31,.15));display:flex;align-items:end;padding:45px var(--gutter)}
.cinema-caption{display:flex;justify-content:space-between;align-items:center;width:100%;color:var(--ink)}
.cinema-caption p{background:var(--paper);padding:7px 10px;line-height:1.6}
.post-hero .hero-camera{filter:none!important;transform:scale(1.055)!important}
.reduced-motion .cinematic-backdrop{position:absolute;height:70svh}
.reduced-motion .cinematic-backdrop .hero-camera{height:100%;position:absolute;inset:0;margin:0}
.reduced-motion .hero-viewport{padding-top:70svh;background:transparent}
.reduced-motion .hero-copy{background:var(--paper)}
.reduced-motion .cinema-window{display:none}
.reduced-motion .services-section,.reduced-motion .capabilities-section{background:var(--paper)}
.reduced-motion .about-section{background:var(--ink)}
.reduced-motion .contact-section{background:#deded5}
@media(max-width:600px){.cinematic-backdrop{background:var(--paper)}.hero-footer .hero-role{color:var(--ink);text-shadow:none}.cinema-window{min-height:60svh;padding:27px var(--gutter)}.cinema-caption .micro{font-size:9px}.cinema-caption p{padding:6px 8px}.services-section{background:rgba(238,238,232,.73)}.about-section{background:rgba(25,27,24,.88)}.capabilities-section{background:rgba(238,238,232,.76)}.contact-section{background:rgba(222,222,213,.8)}.reduced-motion .cinematic-backdrop{height:35svh;top:15svh}.reduced-motion .cinematic-backdrop .hero-camera{inset:0 -12.5%;height:100%;margin:0}.reduced-motion .hero-viewport{padding-top:50svh}}
@media(max-width:600px){.post-hero .hero-camera{inset:0;height:100%;mask-image:none;-webkit-mask-image:none;transform-origin:25% 50%}.post-hero .hero-poster,.post-hero .hero-video{object-position:25% 50%}}
