:root{--paper:#f7f8fa;--white:#fff;--ink:#191c24;--muted:#5b606c;--blue:#1639d2;--blue-deep:#10299b;--line:#d4d7de;--soft:#eceef2;--space:clamp(24px,4.2vw,72px);--radius:12px;--motion:480ms cubic-bezier(.16,1,.3,1);font-family:Onest,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}
*{box-sizing:border-box}body{margin:0}::selection{color:white;background:var(--blue)}html{scrollbar-color:#9298aa var(--paper)}a{color:inherit;text-decoration:none;text-underline-offset:5px}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}.icon{width:24px;height:24px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.038em;text-wrap:balance}h1{font-size:clamp(48px,5.1vw,84px);line-height:1.07}h2{font-size:clamp(34px,3.7vw,58px);line-height:1.12}h3{font-size:26px;line-height:1.25}p{line-height:1.65}p,dd{overflow-wrap:break-word}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}main:focus{outline:0}[hidden]{display:none!important}.shell{width:calc(100% - var(--space)*2);max-width:1552px;margin-inline:auto}.section{padding-block:104px}.muted{color:var(--muted)}.skip{position:fixed;left:16px;top:12px;transform:translateY(-200%);padding:14px;background:var(--ink);color:white;z-index:100}.skip:focus{transform:none}.site-header{background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:24px}.wordmark{display:flex;align-items:center;gap:13px;min-height:52px;min-width:180px;font-size:17px;font-weight:600;line-height:1.18;letter-spacing:-.035em}.brand-mark{display:flex;align-items:center;gap:3px;width:36px;height:38px;transform:skewY(-12deg)}.brand-mark i{display:block;background:var(--blue);height:29px;width:8px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:last-child{height:12px}#main-nav{display:flex;align-items:center;gap:28px}#main-nav a{min-height:48px;min-width:44px;display:flex;align-items:center;font-size:14px;gap:14px;transition:color 160ms}#main-nav a:hover,#main-nav a[aria-current]{color:var(--blue)}#main-nav .nav-contact{border-bottom:1px solid var(--ink);margin-left:34px}.menu-toggle{display:none;min-height:48px;border:0;background:none;padding:8px;align-items:center;gap:10px}.button,.text-action{min-height:54px;min-width:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:14px;font-weight:500}.button{background:var(--blue);color:white;padding:16px 24px;transition:background 180ms;white-space:nowrap}.button:hover{background:var(--blue-deep)}.text-action{padding:12px 0;border-bottom:1px solid currentColor;width:fit-content}.text-action:hover{color:var(--blue)}.hero{display:grid;grid-template-columns:47% 53%;position:relative;padding-top:64px}.hero-copy{padding:18px 0 64px;position:relative;z-index:1}.hero h1{font-size:clamp(48px,5vw,86px);letter-spacing:-.04em;max-width:680px;line-height:1.08}.hero h1 span{color:var(--blue)}.hero-copy>p{font-size:17px;max-width:420px;padding-top:30px;line-height:1.7;padding-right:12px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:34px}.hero-art{position:relative;align-self:stretch;background:#1636c8;min-height:520px;margin-left:30px;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-art>img{width:100%;height:100%;object-fit:cover;object-position:47% center;position:absolute;inset:0;animation:hero-arrive 900ms cubic-bezier(.16,1,.3,1) both}.hero-art figcaption{position:absolute;bottom:22px;left:24px;right:24px;display:flex;flex-direction:column;gap:9px;color:white;font-size:12px}.hero-art figcaption>span:last-child{display:flex;align-items:center;gap:10px;font-size:17px}.hero-art figcaption .icon{width:20px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:56px;margin-bottom:44px}.section-heading>p,.section-heading>div{max-width:470px;font-size:16px;color:var(--muted)}.section-heading .text-action{color:var(--ink);margin-top:10px}.work-section{padding-top:80px}.project-grid{display:grid;gap:28px}.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-link{display:block;height:100%;outline-offset:5px}.project-art{position:relative;min-width:0;min-height:360px;padding:25px 25px 20px;display:flex;flex-direction:column;overflow:hidden;background:var(--soft);transition:filter 220ms}.project-link:hover .project-art{filter:brightness(.965)}.art-product-name{display:flex;justify-content:space-between;gap:10px;font-size:22px;letter-spacing:-.035em;font-weight:500;line-height:1.2;position:relative;z-index:1}.art-foot{font-size:10px;line-height:1.5;display:block;margin-top:auto;position:relative;z-index:1;padding-top:20px}.art-voice{background:#222736;color:#fff}.window-symbol{display:grid;grid-template-columns:repeat(2,8px);grid-template-rows:repeat(2,8px);gap:3px}.window-symbol i{background:#b7b7fb}.voice-example{margin-top:24px}.voice-example p{font-size:27px;line-height:1.25;letter-spacing:-.035em;margin-top:18px}.sound-bars{display:flex;align-items:center;gap:4px;height:38px}.sound-bars i{display:block;width:4px;height:15px;background:#aaa7f5;border-radius:5px}.sound-bars i:nth-child(3n){height:34px}.sound-bars i:nth-child(4n){height:24px}.sound-bars i:nth-child(5n){height:9px}.art-voice img{width:calc(100% + 50px);max-width:none;margin:16px -25px 0}.art-voice .art-foot{color:#d5d8e5}.art-pora{background:#eceafa;color:#333151}.pora-glyph{width:23px;height:23px;border:6px solid #6662af;border-radius:50%}.pora-statement{font-size:24px;line-height:1.3;letter-spacing:-.03em;margin-top:25px}.art-pora img{margin:18px -25px 0;width:calc(100% + 50px);max-width:none}.art-pora .art-foot{color:#494562}.art-radar{background:#deeae5;color:#18362b}.radar-glyph{width:24px;height:24px;border:1px solid #326651;border-radius:50%;position:relative}.radar-glyph:before{content:'';position:absolute;inset:5px;border:1px solid #326651;border-radius:50%}.radar-glyph:after{content:'';position:absolute;left:11px;top:2px;width:1px;height:10px;transform:rotate(40deg);transform-origin:bottom;background:#326651}.signal{margin:28px 0 0;background:#fff;padding:18px;box-shadow:0 12px 30px #163b2810;border-radius:8px}.signal-top{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#4d685c}.signal strong{font-size:20px;font-weight:500;letter-spacing:-.035em;line-height:1.22;display:block;margin-top:15px}.signal dl{margin:15px 0 0}.signal dl>div{display:grid;grid-template-columns:60px 1fr;gap:8px;padding-block:8px;border-top:1px solid #e1e9e4;font-size:10px;line-height:1.45}.signal dt{font-weight:600}.signal dd{margin:0;color:#486052}.signal-result{font-size:9px;padding-top:9px;display:flex;align-items:center;justify-content:space-between}.signal-result .icon{width:15px}.project-caption{padding:20px 0 0}.project-type{font-size:11px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:12px}.project-caption h3{font-size:25px;margin-top:8px;letter-spacing:-.04em}.project-caption p{font-size:14px;margin-top:13px;color:var(--muted);max-width:50ch}.project-status{font-size:11px;display:block;margin-top:18px;color:var(--ink)}.project-status:before{content:'';display:inline-block;width:5px;height:5px;background:currentColor;margin-right:8px;vertical-align:2px;border-radius:50%}.services{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:1.05fr 1fr 52px;gap:40px;align-items:center;padding:34px 0;border-top:1px solid var(--line);min-height:120px}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-size:24px;max-width:420px}.service-row span:not(.service-arrow){font-size:12px;color:var(--muted);display:block;margin-top:13px}.service-row p{font-size:15px;color:var(--muted);max-width:50ch}.service-arrow{width:48px;height:48px;display:grid;place-items:center;transition:color 180ms}.service-row:hover h3,.service-row:hover .service-arrow{color:var(--blue)}.approach{background:#e9ecf3}.method-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:60px 0 0;gap:52px}.step-number{color:var(--blue);font-size:14px;letter-spacing:-.02em}.method-list h3{font-size:30px;margin-top:34px}.method-list p{font-size:15px;color:#50586c;margin-top:23px;max-width:43ch}.method-output{display:block;font-size:12px;border-top:1px solid #b9bfd0;margin-top:28px;padding-top:17px;line-height:1.6}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,8vw,130px);align-items:center}.about-image{max-width:470px}.about-image img{width:100%;object-fit:cover;aspect-ratio:1/1.08;object-position:center 35%;filter:grayscale(1)}.about-image>div{display:flex;justify-content:space-between;font-size:12px;padding-top:16px;color:var(--muted)}.about-copy h2{margin-bottom:30px}.about-copy p{font-size:16px;max-width:54ch;color:var(--muted);margin-top:20px}.about-links{display:flex;gap:16px 30px;flex-wrap:wrap;margin-top:22px}.about-links .text-action{font-size:13px}.faq{border-top:1px solid var(--line)}.faq-list{max-width:950px;margin-left:auto}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:19px;min-height:80px;padding:20px 0;cursor:pointer;line-height:1.45}.faq summary::-webkit-details-marker{display:none}.faq details[open] summary .icon{transform:rotate(45deg)}.faq summary .icon{transition:transform 200ms}.faq details p{max-width:75ch;font-size:16px;color:var(--muted);padding:0 52px 28px 0}.contact{background:var(--blue);color:#fff;padding-block:85px 72px}.contact-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.contact h2{font-size:clamp(44px,5.4vw,82px);font-weight:400;line-height:1.08;letter-spacing:-.04em}.contact h2 span{color:#c4cfff}.contact-copy>p:first-child{font-size:19px;line-height:1.6}.button-light{background:white;color:var(--blue);margin-top:30px}.button-light:hover{background:#e0e7ff}.email-row{display:flex;align-items:center;gap:15px;margin-top:17px}.email-row>a{display:flex;align-items:center;min-height:48px;min-width:44px;font-size:19px}.copy-email{color:white;border:1px solid #859bea;background:none;min-width:44px;min-height:44px;display:grid;place-items:center}.copy-email:hover{background:#ffffff18}.copy-email .icon{width:19px}.copy-status{font-size:12px;min-height:24px;color:#dce3ff}.contact-hint{font-size:13px;line-height:1.7;color:#dce3ff;margin-top:13px}.contact a:focus-visible,.contact button:focus-visible{outline-color:white}.contact-compact{margin-top:100px}.contact-compact h2{font-size:clamp(40px,4.3vw,64px)}.site-footer{padding:42px 0 14px}.footer-top{display:flex;align-items:center;gap:70px}.footer-name{font-size:22px;min-height:48px;display:flex;align-items:center;letter-spacing:-.035em}.footer-top p{font-size:12px;color:var(--muted)}.back-top{margin-left:auto;display:flex;align-items:center;gap:18px;min-height:48px;min-width:44px;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:30px;border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:var(--muted)}.footer-bottom>div{display:flex;gap:25px}.footer-bottom a{display:flex;align-items:center;gap:6px;min-width:44px;min-height:48px}.footer-bottom .icon{width:14px}.page-intro{padding-top:76px;padding-bottom:70px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end}.intro-aside p{font-size:18px;color:var(--muted);max-width:46ch}.intro-aside>span{display:block;font-size:12px;margin-top:24px;color:var(--muted)}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--line);padding-top:28px}.filter{min-height:48px;min-width:44px;background:none;border:1px solid var(--line);padding:11px 19px;font-size:13px;color:var(--ink);transition:background 150ms}.filter[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.filter:hover:not([aria-pressed=true]){background:var(--soft)}.filter-status{font-size:12px;color:var(--muted);padding-block:18px 24px;min-height:55px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 34px}.portfolio-grid .project-art{min-height:450px}.portfolio-grid .art-voice img{max-height:140px;object-fit:cover}.portfolio-grid .art-pora img{max-height:310px;object-fit:contain}.portfolio-grid .signal{max-width:380px;width:100%;margin-inline:auto}.portfolio-grid .signal strong{font-size:28px}.portfolio-grid .signal dl>div{font-size:13px;grid-template-columns:80px 1fr}.portfolio-grid .art-foot{font-size:12px}.portfolio-grid .signal-top,.portfolio-grid .signal-result{font-size:11px}.art-screenshot{padding:32px 32px 20px;background:#e6e8ee;justify-content:center}.art-screenshot img{object-fit:contain;width:100%;max-height:380px}.art-diagram{background:#e6e7ef}.art-stock{background:#e6edf0}.art-proposal{background:#efebe4}.art-contour{background:#252d43;color:#fff}.art-agent{background:#e1e6fb;color:#1c307f}.process-visual{display:flex;flex-direction:column;margin:35px 0 15px;gap:0}.process-visual>div{display:flex;align-items:center;gap:20px;min-height:61px;padding-block:12px;border-bottom:1px solid currentColor}.process-visual>div>span{font-size:11px;opacity:.8}.process-visual strong{font-size:19px;font-weight:400;letter-spacing:-.025em}.process-visual .icon{margin-left:auto;width:19px}.breadcrumb{display:inline-flex;align-items:center;gap:15px;min-height:48px;font-size:13px;margin-top:30px}.breadcrumb .icon{transform:rotate(180deg);width:19px}.case-intro{padding:36px 0 55px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.case-intro h1{font-size:clamp(43px,5.6vw,90px);overflow-wrap:anywhere}.case-lead h2{font-size:32px;line-height:1.2}.case-lead>p{font-size:16px;color:var(--muted);margin-top:24px}.case-tags{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;margin-top:28px;color:var(--muted)}.case-hero-art .project-art{min-height:510px;padding:40px 55px}.case-hero-art .art-product-name{font-size:30px}.case-hero-art .art-voice{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.case-hero-art .art-voice .art-product-name{grid-column:1/-1}.case-hero-art .voice-example p{font-size:48px}.case-hero-art .art-voice img{margin:0;width:100%}.case-hero-art .art-foot{font-size:12px;grid-column:1/-1}.case-hero-art .art-pora{display:grid;grid-template-columns:.8fr 1.2fr;column-gap:30px;align-items:center}.case-hero-art .art-pora .art-product-name{grid-column:1/-1}.case-hero-art .art-pora .pora-statement{font-size:40px}.case-hero-art .art-pora img{margin:0;width:100%;max-height:370px;object-fit:contain}.case-hero-art .art-radar{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px}.case-hero-art .art-radar .art-product-name{font-size:42px;display:block;max-width:300px}.case-hero-art .radar-glyph{display:block;width:100px;height:100px;margin-top:35px}.case-hero-art .radar-glyph:before{inset:22px}.case-hero-art .signal{margin:0;width:100%;max-width:520px;padding:30px}.case-hero-art .signal strong{font-size:34px}.case-hero-art .signal dl>div{font-size:14px;grid-template-columns:85px 1fr;padding-block:14px}.case-hero-art .signal-top,.case-hero-art .signal-result{font-size:12px}.case-hero-art .art-screenshot img{max-height:620px}.case-hero-art .process-visual{flex-direction:row;gap:30px;margin:80px 0}.case-hero-art .process-visual>div{flex:1;align-items:start;flex-wrap:wrap}.case-hero-art .process-visual strong{font-size:25px;flex:1}.case-overview,.case-boundary{display:grid;grid-template-columns:1fr 1fr;gap:65px}.case-overview h2,.case-boundary h2,.case-evidence h2,.case-mechanics h2{font-size:44px}.case-overview dl{margin:0}.case-overview dl>div{padding-block:23px;border-top:1px solid var(--line)}.case-overview dt{font-size:12px;color:var(--muted);margin-bottom:9px}.case-overview dd{margin:0;font-size:17px;line-height:1.6}.case-mechanics{border-top:1px solid var(--line);padding-top:70px}.case-mechanics ol{list-style:none;margin:38px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 65px}.case-mechanics li{display:flex;gap:25px}.case-mechanics h3{font-size:25px}.case-mechanics p{font-size:15px;color:var(--muted);margin-top:15px;max-width:60ch}.source-image{padding:32px;background:var(--soft)}.source-image img{width:100%}.source-image figcaption{font-size:12px;color:var(--muted);margin-top:18px}.case-boundary{border-bottom:1px solid var(--line)}.case-boundary p{font-size:17px}.case-boundary p+p{font-size:14px;margin-top:22px}.case-evidence{max-width:1000px}.case-evidence ul{list-style:none;padding:0;margin:30px 0}.case-evidence li{border-top:1px solid var(--line);padding:18px 0;font-size:16px;line-height:1.65}.evidence-links{display:flex;flex-wrap:wrap;gap:20px 30px}.source-note{font-size:12px;color:var(--muted);margin-top:24px}.source-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;text-decoration:underline}.source-link .icon{width:16px}.next-project{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;gap:30px}.next-project>span{font-size:12px;color:var(--muted)}.next-project strong{display:block;margin-top:14px;font-weight:500;color:var(--ink);font-size:clamp(28px,4vw,56px);letter-spacing:-.035em}.next-project>.icon{width:45px;height:45px}.legal{max-width:900px}.legal h1{margin-bottom:34px}.legal h2{font-size:30px;margin:50px 0 20px}.legal p{font-size:17px;color:var(--muted)}.legal .lead{font-size:22px}.not-found{padding-block:100px 150px}.not-found p{margin-block:30px}.not-found .text-action{margin-left:30px}@keyframes hero-arrive{from{transform:scale(1.04)}to{transform:scale(1)}}
@media(min-width:1700px){.hero-art{min-height:600px}.project-art{min-height:415px}.featured-grid .signal{margin-top:38px}.featured-grid .signal strong{font-size:25px}.featured-grid .signal dl>div{font-size:12px}.featured-grid .signal-top,.featured-grid .signal-result{font-size:11px}.featured-grid .art-pora img{max-height:220px;object-fit:contain}.hero-copy>p{font-size:18px}}
@media(max-width:1100px){:root{--space:32px}.header-inner{min-height:84px}#main-nav{gap:20px}#main-nav .nav-contact{margin-left:5px}.hero{grid-template-columns:49% 51%;padding-top:40px}.hero h1{font-size:55px}.hero-art{margin-left:24px;min-height:490px}.hero-copy>p{font-size:15px}.hero-actions{gap:15px}.hero .button{padding:15px 18px}.hero .text-action{font-size:13px}.section{padding-block:75px}.section-heading{gap:40px}.featured-grid{gap:20px}.project-art{padding:20px;min-height:325px}.art-product-name{font-size:20px}.voice-example p{font-size:24px}.art-voice img,.art-pora img{width:calc(100% + 40px);margin-left:-20px;margin-right:-20px}.signal{padding:14px;margin-top:24px}.signal strong{font-size:19px}.signal dl>div{grid-template-columns:48px 1fr;font-size:9px;gap:7px}.signal-result{font-size:8px}.signal-top{font-size:8px}.pora-statement{font-size:22px}.art-foot{font-size:9px}.project-caption h3{font-size:23px}.project-caption p{font-size:13px}.service-row{gap:30px}.service-row h3{font-size:22px}.method-list{gap:32px}.method-list h3{font-size:27px}.contact-inner{gap:50px}.page-intro,.case-intro{gap:40px}.case-overview,.case-boundary{gap:45px}.case-hero-art .project-art{padding:35px}.case-hero-art .voice-example p{font-size:40px}}
@media(max-width:760px){:root{--space:22px;scroll-padding-top:85px}.header-inner{min-height:76px}.wordmark{font-size:15px;min-width:150px;gap:10px}.brand-mark{transform:scale(.85) skewY(-12deg);width:31px}.menu-toggle{display:flex;font-size:13px}#main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px var(--space) 24px;background:var(--paper);border-bottom:1px solid var(--line);gap:0;box-shadow:0 12px 20px #1a245414}#main-nav.is-open{display:flex;flex-direction:column;align-items:stretch}#main-nav a{min-height:54px;font-size:17px}#main-nav .nav-contact{margin:0;justify-content:space-between;border-bottom:0;color:var(--blue)}.hero{padding-top:32px;grid-template-columns:1fr}.hero-copy{padding:0 0 32px}.hero h1{font-size:clamp(43px,7.6vw,57px);max-width:600px}.hero-copy>p{font-size:15px;max-width:48ch;line-height:1.65;padding-top:23px;padding-right:0}.hero-copy>p br{display:none}.hero-actions{margin-top:24px;gap:17px}.hero .button{font-size:13px;min-height:52px;padding:15px 17px;gap:15px}.hero .text-action{min-height:52px;gap:12px}.hero-art{margin:0;min-height:0;aspect-ratio:1.46;align-self:initial}.hero-art>img{object-fit:cover;object-position:center}.hero-art figcaption{bottom:17px;left:20px;font-size:10px;gap:6px}.hero-art figcaption>span:last-child{font-size:14px}.hero-bottom{margin-top:0;padding-block:19px;gap:15px;font-size:10px;align-items:start}.hero-bottom span:first-child{max-width:190px}.hero-bottom span:last-child{text-align:right;max-width:120px}.section{padding-block:64px}h2{font-size:36px}.section-heading{display:block;margin-bottom:32px}.section-heading>p,.section-heading>div{margin-top:22px;font-size:15px}.section-heading p br{display:none}.section-heading>div{max-width:45ch}.featured-grid{grid-template-columns:1fr;gap:42px}.project-art{min-height:395px;padding:25px}.art-product-name{font-size:24px}.voice-example p{font-size:30px}.art-voice img,.art-pora img{margin-left:-25px;margin-right:-25px;width:calc(100% + 50px)}.art-foot{font-size:11px}.signal{padding:22px;margin:25px 0 0}.signal strong{font-size:24px}.signal dl>div{grid-template-columns:65px 1fr;font-size:11px;padding:10px 0}.signal-top,.signal-result{font-size:10px}.pora-statement{font-size:27px}.art-pora img{max-height:270px;object-fit:contain}.project-caption{padding-top:18px}.project-caption h3{font-size:28px}.project-caption p{font-size:15px;margin-top:10px}.project-type{font-size:12px}.project-status{font-size:12px;margin-top:15px}.service-row{grid-template-columns:1fr 36px;gap:18px;padding-block:26px}.service-row>div{grid-column:1}.service-row h3{font-size:23px}.service-row p{grid-column:1;grid-row:2;font-size:14px}.service-arrow{grid-column:2;grid-row:1;align-self:start;width:36px}.service-row span:not(.service-arrow){font-size:11px;margin-top:10px}.method-list{grid-template-columns:1fr;gap:36px;margin-top:38px}.method-list li{display:grid;grid-template-columns:34px 1fr;gap:14px}.method-list h3{margin:0;font-size:28px}.method-list h3 br{display:none}.method-list .step-number{padding-top:6px}.method-list p,.method-output{grid-column:2;margin:0}.method-list p{font-size:15px}.method-output{padding-top:14px;margin-top:5px}.about{grid-template-columns:1fr;gap:36px}.about-image{max-width:none;display:grid;grid-template-columns:110px 1fr;align-items:end;gap:23px}.about-image img{aspect-ratio:1;filter:grayscale(1)}.about-image>div{display:flex;flex-direction:column;align-items:start;gap:8px;padding-bottom:12px;font-size:14px}.about-copy h2{margin-bottom:22px}.about-copy h2 br:last-child{display:none}.about-copy p{font-size:15px}.about-links{gap:10px}.about-links .text-action{font-size:12px}.faq summary{min-height:78px;font-size:17px;padding:20px 0}.faq details p{font-size:15px;padding-right:12px}.contact{padding-block:54px}.contact-inner{grid-template-columns:1fr;gap:34px}.contact h2{font-size:54px}.contact-copy>p:first-child{font-size:17px}.contact-copy>p br{display:none}.contact-hint{max-width:42ch}.contact-compact{margin-top:60px}.site-footer{padding-top:28px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:15px}.footer-name{font-size:20px}.footer-top p{grid-column:1;font-size:11px}.back-top{grid-column:2;grid-row:1}.footer-bottom{align-items:start;gap:10px;font-size:10px;margin-top:25px}.footer-bottom>span{padding-top:16px}.footer-bottom>div{gap:13px;flex-wrap:wrap;justify-content:end}.footer-bottom a{font-size:10px}.page-intro{padding:44px 0 35px;grid-template-columns:1fr;gap:25px}.page-intro h1{font-size:48px}.intro-aside p{font-size:16px}.intro-aside>span{font-size:11px;margin-top:20px}.filter{min-height:46px;padding:10px 14px;font-size:12px}.filter-bar{gap:8px;padding-top:22px}.portfolio-grid{grid-template-columns:1fr;gap:42px}.portfolio-grid .project-art{min-height:400px}.portfolio-grid .signal strong{font-size:25px}.portfolio-grid .signal dl>div{font-size:11px;grid-template-columns:65px 1fr}.portfolio-grid .signal-top,.portfolio-grid .signal-result{font-size:10px}.portfolio-grid .art-foot{font-size:10px}.art-screenshot{min-height:300px!important;padding:24px}.art-screenshot img{max-height:340px}.process-visual strong{font-size:18px}.case-intro{display:block;padding:24px 0 35px}.case-intro h1{font-size:48px;overflow-wrap:anywhere}.case-lead{margin-top:28px}.case-lead h2{font-size:27px}.case-lead>p{font-size:15px;margin-top:18px}.case-tags{gap:12px;margin-top:22px}.case-hero-art .project-art{padding:25px;min-height:400px}.case-hero-art .art-voice,.case-hero-art .art-pora,.case-hero-art .art-radar{display:flex;gap:0}.case-hero-art .art-product-name{font-size:24px}.case-hero-art .voice-example p{font-size:32px}.case-hero-art .art-voice img{width:calc(100% + 50px);margin:20px -25px 0}.case-hero-art .art-foot{font-size:10px}.case-hero-art .art-pora .pora-statement{font-size:27px}.case-hero-art .art-pora img{max-height:270px;width:calc(100% + 50px);margin:20px -25px 0}.case-hero-art .art-radar .art-product-name{font-size:24px;display:flex;max-width:none}.case-hero-art .radar-glyph{width:24px;height:24px;margin:0}.case-hero-art .radar-glyph:before{inset:5px}.case-hero-art .signal{margin-top:25px;padding:20px}.case-hero-art .signal strong{font-size:25px}.case-hero-art .signal dl>div{font-size:11px;grid-template-columns:65px 1fr;padding-block:10px}.case-hero-art .signal-top,.case-hero-art .signal-result{font-size:10px}.case-hero-art .process-visual{flex-direction:column;margin:35px 0 15px;gap:0}.case-hero-art .process-visual>div{flex-wrap:nowrap;align-items:center}.case-hero-art .process-visual strong{font-size:18px}.case-overview,.case-boundary{grid-template-columns:1fr;gap:32px}.case-overview h2,.case-boundary h2,.case-evidence h2,.case-mechanics h2{font-size:34px}.case-overview dd{font-size:16px}.case-mechanics ol{grid-template-columns:1fr;gap:32px}.case-mechanics h3{font-size:23px}.case-mechanics p{font-size:15px}.case-mechanics li{gap:18px}.source-image{padding:13px}.source-image figcaption{font-size:10px;margin-top:12px}.case-boundary p{font-size:16px}.case-evidence li{font-size:15px}.evidence-links .text-action{font-size:12px;gap:14px;max-width:100%}.next-project strong{font-size:32px}.next-project>.icon{width:30px;height:30px}.legal h1{font-size:44px}.legal .lead{font-size:18px}.legal h2{font-size:26px}.legal p{font-size:15px}.not-found{padding-block:60px 100px}.not-found h1{font-size:46px}.not-found .text-action{margin:20px 0 0;display:flex}}
/* Policy: the accepted visual system in a long-form reading layout. */
.privacy-page .policy-intro{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:72px;padding:38px 0 64px;border-bottom:1px solid var(--line);align-items:start}
.privacy-page .policy-intro h1{font-size:clamp(40px,4.4vw,68px);line-height:1.12;max-width:880px;letter-spacing:-.032em;text-wrap:initial}
.privacy-page .policy-intro>div>p{font-size:17px;color:var(--muted);margin-top:26px;max-width:58ch}
.privacy-page .policy-meta{margin:5px 0 0;display:grid;gap:24px}
.privacy-page .policy-meta dt{font-size:12px;color:var(--muted);margin-bottom:6px}
.privacy-page .policy-meta dd{margin:0;font-size:15px;line-height:1.6}
.privacy-page .policy-meta dd span{display:block;font-size:13px;color:var(--muted)}
.privacy-page .policy-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:72px;padding-block:58px 90px;align-items:start}
.privacy-page .policy-sidebar{position:sticky;top:126px}
.privacy-page .policy-toc h2{font-size:17px;letter-spacing:-.02em;font-weight:500;margin:0 0 19px}
.privacy-page .policy-toc ol{list-style:none;padding:0;margin:0}
.privacy-page .policy-toc li{border-top:1px solid var(--line)}
.privacy-page .policy-toc li:last-child{border-bottom:1px solid var(--line)}
.privacy-page .policy-toc li a{display:flex;align-items:center;gap:17px;min-height:48px;min-width:44px;padding:10px 0;font-size:13px;line-height:1.4}
.privacy-page .policy-toc li a>span{color:var(--muted);font-size:11px;width:20px;flex-shrink:0;font-variant-numeric:tabular-nums}
.privacy-page .policy-toc a:hover{color:var(--blue)}
.privacy-page .policy-question{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:48px;margin-top:19px;font-size:13px;color:var(--blue)}
.privacy-page .policy-question .icon{width:19px;height:19px}
.privacy-page .policy-document{max-width:740px;min-width:0}
.privacy-page .policy-section{padding:0 0 48px;margin-bottom:42px;border-bottom:1px solid var(--line);scroll-margin-top:126px}
.privacy-page .policy-section h2{display:flex;align-items:baseline;gap:20px;font-size:31px;line-height:1.24;margin:0 0 23px;text-wrap:initial}
.privacy-page .policy-section h2>span{font-size:13px;letter-spacing:0;color:var(--blue);font-variant-numeric:tabular-nums;flex-shrink:0}
.privacy-page .policy-prose{max-width:660px;font-size:16px;line-height:1.75;color:var(--muted)}
.privacy-page .policy-prose p{line-height:inherit;margin-top:18px}
.privacy-page .policy-prose p:first-child{margin-top:0}
.privacy-page .policy-prose ul,.privacy-page .policy-prose ol{padding-left:23px;margin:19px 0}
.privacy-page .policy-prose li{padding-left:7px;margin-bottom:12px}
.privacy-page .policy-prose li::marker{color:var(--blue)}
.privacy-page .policy-prose strong{color:var(--ink);font-weight:500}
.privacy-page .policy-prose a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;color:var(--blue);overflow-wrap:anywhere}
.privacy-page .policy-prose time{display:block;color:var(--ink);font-weight:500}
.privacy-page .policy-end{padding:6px 0 0}
.privacy-page .policy-end p{font-size:14px;color:var(--muted)}
.privacy-page .policy-end>a{min-height:54px;min-width:44px;display:inline-flex;align-items:center;gap:30px;color:var(--blue);font-size:27px;letter-spacing:-.025em;border-bottom:1px solid currentColor;margin-top:8px}
@media(max-width:1100px){.privacy-page .policy-intro{grid-template-columns:minmax(0,1fr) 220px;gap:36px}.privacy-page .policy-intro h1{font-size:49px}.privacy-page .policy-layout{grid-template-columns:220px minmax(0,1fr);gap:42px}.privacy-page .policy-section h2{font-size:28px}}
@media(max-width:760px){
  .privacy-page .policy-intro{display:block;padding:27px 0 34px}
  .privacy-page .policy-intro h1{font-size:clamp(32px,7.7vw,46px);line-height:1.14}
  .privacy-page .policy-intro h1 br{display:none}
  .privacy-page .policy-intro>div>p{font-size:15px;margin-top:23px}
  .privacy-page .policy-intro>div>p br{display:none}
  .privacy-page .policy-meta{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px;margin-top:30px}
  .privacy-page .policy-meta>div:first-child{grid-column:1/-1}
  .privacy-page .policy-meta dd{font-size:14px}
  .privacy-page .policy-layout{display:block;padding:30px 0 60px}
  .privacy-page .policy-sidebar{position:static;margin-bottom:44px}
  .privacy-page .policy-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:stretch}
  .privacy-page .policy-toc li a{font-size:14px;min-height:56px;height:100%;gap:9px}
  .privacy-page .policy-toc li a>span{font-size:12px}
  .privacy-page .policy-question{max-width:320px}
  .privacy-page .policy-section{padding-bottom:32px;margin-bottom:32px;scroll-margin-top:98px}
  .privacy-page .policy-section h2{font-size:26px;gap:13px;line-height:1.25;margin-bottom:18px}
  .privacy-page .policy-prose{font-size:15px;line-height:1.75}
  .privacy-page .policy-prose ul,.privacy-page .policy-prose ol{padding-left:19px}
  .privacy-page .policy-prose li{padding-left:4px}
  .privacy-page .policy-end>a{font-size:25px}
}
@media(max-width:359px){.privacy-page .policy-toc ol{grid-template-columns:1fr}.privacy-page .policy-toc li a{min-height:48px}}
/* Shared optical refinements after the first rendered review. */
h1,h2,h3{letter-spacing:-.032em}
.hero-art>img{object-position:center}
.about.section,.faq.section{padding-block:80px}
@media(max-width:760px){
  .hero h1{letter-spacing:-.032em}
  .about.section,.faq.section{padding-block:55px}
  .hero-bottom,.art-foot,.project-type,.project-status,.service-row span:not(.service-arrow),.method-output,.footer-bottom,.footer-bottom a,.intro-aside>span,.case-tags,.source-image figcaption{font-size:12px}
  .portfolio-grid .art-foot,.case-hero-art .art-foot{font-size:12px}
  .hero-bottom{line-height:1.5}
  .footer-bottom{flex-direction:column;gap:0}
  .footer-bottom>div{justify-content:start;gap:20px}
  .contact h2{font-size:49px}
}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
