@font-face{font-family:Instrument;src:url('/fonts/instrument-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url('/fonts/instrument-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('/fonts/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/fonts/inter-600.woff2') format('woff2');font-weight:600;font-display:swap}
/* One shared system for the approved portfolio. Source imagery and copy remain intact. */
:root{--ink:#182334;--muted:#525e70;--blue:#2647ef;--paper:#f4f5f7;--white:#fff;--line:#cdd3de;--soft:#e8ecf7;--max:1280px;--gap:24px;--section:clamp(56px,7vw,104px);--ease:cubic-bezier(.22,1,.36,1);--radius:4px}
body{font:400 16px/1.65 Inter,Arial,sans-serif}h1,h2,h3,h4,.wordmark,.stats strong{font-family:Instrument,Arial,sans-serif;font-weight:500;text-wrap:balance}h1{letter-spacing:-.055em}h2{font-size:clamp(32px,4vw,54px);letter-spacing:-.045em;line-height:1.08}h3{letter-spacing:-.025em}.wrap{width:calc(100% - clamp(40px,7vw,112px));max-width:var(--max)}
#header{background:var(--paper)}.nav-bar{height:88px;gap:24px}.wordmark{font-size:24px;letter-spacing:-.04em}.main-nav{gap:28px}.main-nav a{font-size:14px;min-height:44px;display:flex;align-items:center}.nav-actions{gap:20px}.language{border-radius:var(--radius);padding:0;border:0}.language a{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:var(--radius);font-size:12px}.button{font-size:14px;min-height:48px;padding:12px 20px;border-radius:var(--radius);transition:background .2s,border-color .2s}.text-link{font-size:14px;min-height:44px}.eyebrow{font-size:11px;letter-spacing:.11em}.pills{gap:8px}.pills span{font-size:12px;padding:6px 0;background:none;border-radius:0}.pills span:not(:last-child):after{content:' /';margin-left:8px;color:var(--muted)}
.home-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:64px 0 56px;align-items:center}.hero-copy{grid-column:1/9;max-width:none;padding:0 36px 0 0}.home-hero h1{font-size:clamp(48px,6.6vw,92px);line-height:1.01;max-width:12ch}.hero-copy>p{font-size:18px;max-width:43ch;margin-top:28px}.hero-copy .pills{margin-top:20px}.hero-actions{margin-top:28px;gap:24px}.resume-links{font-size:12px;gap:6px 18px;margin-top:18px}.resume-links a{display:inline-flex;align-items:center;min-height:44px}.portrait{grid-column:9/13;align-self:center;aspect-ratio:3/4;overflow:visible;border-radius:var(--radius);height:auto;margin-bottom:48px}.portrait>img{object-fit:cover;object-position:center top;border-radius:var(--radius)}.portrait-note{position:absolute;top:100%;bottom:auto;left:0;right:0;width:auto;padding:14px 0;background:none;font-size:12px;line-height:1.5;border-radius:0;border-top:1px solid var(--line);margin-top:14px}.portrait-note i{display:none}
.company-band{background:transparent;border-block:1px solid var(--line)}.clients-band{min-height:104px}.client-logo img{opacity:.72}.logo-track{animation:none;width:100%;will-change:auto}.logo-group{width:100%;justify-content:space-between;gap:16px;padding:0}.logo-group[aria-hidden=true]{display:none}.client-logo{width:auto;min-width:0;flex:1}.client-logo img{max-width:100%;max-height:32px}.logo-marquee{mask-image:none;-webkit-mask-image:none}
.section{padding:var(--section) 0}.section-header{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:end;margin-bottom:40px}.section-header>div{grid-column:1/9}.section-header>p{grid-column:9/13;max-width:30ch;font-size:14px}.section-header h2{max-width:20ch}.section-header .eyebrow{font-size:11px;margin-bottom:16px}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:52px 32px}.project-grid .project-card{grid-column:span 6}.project-card.project-card-image{border-radius:0;background:none;color:var(--ink);overflow:visible;min-height:0}.project-grid .project-card-image .project-visual,.case-page .next-section .project-card-image .project-visual{aspect-ratio:3/2;border-radius:var(--radius);overflow:hidden;background:var(--soft)}.project-grid .project-card-image .project-cover,.case-page .next-section .project-card-image .project-cover{inset:0;width:100%;height:100%;object-fit:cover;translate:none;will-change:auto;transition:transform 400ms var(--ease)}.project-grid .project-card-image .project-text,.case-page .next-section .project-card-image .project-text{position:relative;width:100%;min-height:0;padding:24px 54px 0 0}.project-company{font-size:12px;letter-spacing:.025em;margin-bottom:10px;color:var(--muted)}.project-grid .project-card-image h3,.case-page .next-section .project-card-image h3{font-size:clamp(26px,2.5vw,34px);line-height:1.12;max-width:25ch}.project-grid .project-card-image .project-text>p.project-support,.case-page .next-section .project-card-image .project-text>p.project-support{font-size:17px;font-weight:400;color:var(--muted);margin-top:12px;max-width:42ch;line-height:1.55}.project-open{position:static;margin-top:18px}.project-open>span:last-child{opacity:1;transform:none;font-size:12px}.round-arrow{position:absolute;right:0;top:24px;width:40px;height:40px;border:1px solid var(--line);background:none!important;color:var(--ink)!important}.round-arrow svg{width:18px;height:18px;transition:transform 200ms var(--ease)}.project-card:is(:hover,:focus-visible) .project-cover{transform:scale(1.025)}.project-card:is(:hover,:focus-visible) h3{color:var(--blue)}.project-card:is(:hover,:focus-visible) .round-arrow svg{transform:translate(2px,-2px)}
.capabilities{padding:0 0 var(--section);gap:32px}.capability{background:none;border:0;border-top:1px solid var(--line);padding:24px 0;min-height:0}.capability .icon-tile{position:static;margin-bottom:24px;background:none;border-radius:0;width:24px;height:24px}.capability h3{font-size:23px;margin-bottom:12px}.capability p{font-size:15px;max-width:36ch}.about-section{border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}.about-copy{grid-column:1/7}.about-copy h2{font-size:clamp(32px,4vw,52px);max-width:18ch}.about-copy>p{font-size:16px;max-width:54ch;line-height:1.8}.about-facts{grid-column:8/13;padding:0;border:0}.stats{gap:24px;margin-bottom:36px}.stats strong{font-size:56px;line-height:1.1;letter-spacing:-.05em}.stats span{font-size:13px}.about-facts .eyebrow{font-size:11px}.about-facts .pills span{font-size:13px}
.experience-section{border-top:1px solid var(--line)}.experience-grid{display:block;margin-top:0}.experience-item{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:center;border-top:1px solid var(--line);padding:24px 0}.experience-year{grid-column:1/3;font-size:13px;margin:0}.experience-item h3{grid-column:3/6;font-size:28px}.experience-item p{grid-column:6/11;font-size:14px;min-height:0;max-width:36ch}.experience-item .text-link{grid-column:11/13;justify-self:end;margin:0;font-size:12px}.testimonials-section{padding-top:var(--section)}.testimonials-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}.testimonial-card{grid-column:span 4;background:none;border:0;border-top:1px solid var(--line);padding:24px 0;border-radius:0}.testimonial-mark{font-family:Instrument,Arial,sans-serif;font-size:54px;height:42px}.testimonial-card blockquote p{font-size:20px;line-height:1.5;font-family:Instrument,Arial,sans-serif;letter-spacing:-.015em}.testimonial-card cite{font-size:14px}.testimonial-card figcaption span{font-size:12px}.testimonials-source p{font-size:12px}.contact-panel{background:var(--ink);color:var(--white);border-radius:var(--radius);padding:clamp(28px,5vw,64px);margin:0 0 56px;gap:40px}.contact-panel h2{font-size:clamp(36px,4.5vw,64px);line-height:1.06;letter-spacing:-.04em;max-width:18ch}.contact-panel p{font-size:16px;color:#d0d8e6;max-width:48ch}.contact-panel .button{flex-shrink:0;background:var(--white);color:var(--ink);border-color:var(--white)}.contact-panel .button:hover{background:#dfe5ff}.coffee{font-size:13px;color:#d0d8e6}.footer-inner{padding:32px 0}.footer-inner>span,.footer-inner>div{font-size:12px}.footer-inner a{min-height:44px;display:inline-flex;align-items:center}
/* Case layouts share tokens while preserving each brand and its narrative. */
.back-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center;margin:28px 0}.case-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:start;padding:24px 0 56px}.case-intro{grid-column:1/8;padding:0 32px 0 0}.case-intro .eyebrow{font-size:11px}.case-intro h1{font-size:clamp(42px,5.2vw,72px);letter-spacing:-.05em;line-height:1.04;max-width:16ch}.case-intro>p{font-size:18px;line-height:1.7;max-width:50ch;margin-top:24px}.case-meta{gap:24px;margin-top:32px}.case-meta dt{font-size:11px}.case-meta dd{font-size:13px;line-height:1.6}.case-hero-image{grid-column:8/13;aspect-ratio:4/5;border-radius:var(--radius);margin-top:0}.case-hero-image>img{object-fit:cover}.case-summary{gap:24px;margin-bottom:32px}.case-summary>article{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:24px 0}.case-summary .icon-tile{background:none;border-radius:0}.case-summary h3{font-size:21px}.case-summary p{font-size:14px;line-height:1.7}.case-nav{display:flex;flex-wrap:wrap;gap:8px 28px;min-height:64px;padding:8px 0;margin-bottom:0;border-block:1px solid var(--line)}.case-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center;padding:8px 0}.case-row{padding:var(--section) 0;border-bottom:1px solid var(--line);gap:40px;scroll-margin-top:100px}.section-intro .eyebrow{font-size:11px}.section-intro h2{font-size:clamp(30px,3.5vw,46px);letter-spacing:-.04em;line-height:1.1;max-width:24ch}.section-intro>p{font-size:16px;line-height:1.8;max-width:54ch}.flow-panel{background:var(--soft);border:0;border-radius:var(--radius);padding:32px}.diagram-label{font-size:11px}.flow-node h3{font-size:15px}.flow-node p{font-size:12px}.flow-insight{font-size:16px;line-height:1.6}.decision-grid{gap:24px}.decision-card{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:24px 0}.decision-card>.icon-tile{background:none;position:static;margin-bottom:20px}.decision-card h3{font-size:23px;line-height:1.25}.decision-card p{font-size:15px;line-height:1.75}.evidence-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}.evidence-row>.section-intro{grid-column:1/5}.evidence-list{grid-column:6/13}.evidence-list li{padding:26px 0;gap:20px}.evidence-number{font:400 18px Instrument,Arial,sans-serif}.evidence-list h3{font-size:24px;line-height:1.2}.evidence-list p{font-size:16px;line-height:1.75}.examples-gallery{gap:28px}.examples-gallery .example-screen{border-radius:var(--radius)}.examples-gallery figcaption{margin-top:20px;gap:16px}.examples-gallery h3{font-size:22px}.examples-gallery figcaption p{font-size:14px;line-height:1.75}.caption-number{font-size:12px}.example-badge{font-size:10px}.case-page .results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.case-page .results-grid>article{padding:28px;background:none;border:1px solid var(--line);border-radius:var(--radius)}.case-page .results-grid h3{font-size:25px;line-height:1.2}.case-page .results-grid p{font-size:15px;line-height:1.75}.results-grid .icon-tile{background:none;border-radius:0}.case-editorial-note{padding:28px 0;max-width:80ch;margin:0;border-top:0}.case-editorial-note p{font-size:13px}.source-reference{font-size:13px}.next-section{padding:var(--section) 0;gap:48px}.next-section .project-card{color:var(--ink)}
.scroll-reveal{transition:opacity 300ms var(--ease),transform 300ms var(--ease)}.scroll-reveal.reveal-pending{opacity:0;transform:translateY(14px)}[data-parallax]{will-change:auto}a,button{scroll-margin:100px}a:focus-visible,button:focus-visible{outline:3px solid #2647ef;outline-offset:6px}.contact-panel a:focus-visible{outline-color:white}a:active{opacity:.85}button:disabled{opacity:.5;cursor:not-allowed}
@media(min-width:1100px){.project-grid .project-card:nth-child(2){margin-top:64px}.project-grid .project-card:nth-child(3){margin-top:-32px}.testimonials-grid .testimonial-card:first-child{grid-column:span 5}.testimonials-grid .testimonial-card:nth-child(2){grid-column:span 4}.testimonials-grid .testimonial-card:nth-child(3){grid-column:span 3}}
@media(max-width:1099px){.nav-actions{gap:12px}.main-nav{gap:18px}.home-hero{gap:24px;padding-top:48px}.hero-copy{grid-column:1/8;padding:0}.portrait{grid-column:8/13}.home-hero h1{font-size:clamp(48px,6.8vw,74px)}.case-intro{grid-column:1/8;padding:0}.case-hero-image{grid-column:8/13}.case-intro h1{font-size:clamp(42px,5.8vw,64px)}.case-row{gap:28px}.experience-item{gap:16px}.testimonial-card blockquote p{font-size:19px}}
@media(max-width:900px){.nav-bar{height:76px}.nav-cta{display:none}.main-nav{display:none}.menu-toggle{display:flex;min-width:44px;min-height:44px;justify-content:center;align-items:center;flex-direction:column;gap:5px}.mobile-nav a{min-height:48px;display:flex;align-items:center;font-size:16px}.home-hero{grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}.hero-copy>p{font-size:16px}.home-hero h1{font-size:clamp(44px,6.6vw,60px)}.portrait{aspect-ratio:3/4}.portrait-note{font-size:11px}.section-header>div{grid-column:1/8}.section-header>p{grid-column:8/13}.capabilities{gap:24px}.capability h3{font-size:21px}.capability p{font-size:14px}.experience-item h3{font-size:23px}.experience-item p{grid-column:6/10}.experience-item .text-link{grid-column:10/13}.case-hero{gap:24px}.case-intro h1{font-size:44px}.case-intro>p{font-size:16px}.case-meta{grid-template-columns:1fr 1fr}.case-row{grid-template-columns:1fr}.evidence-row>.section-intro,.evidence-list{grid-column:1/-1}.decision-grid{grid-template-columns:1fr}.decision-card{display:grid;grid-template-columns:32px 1fr;gap:12px 16px}.decision-card>.icon-tile{grid-row:1/3}.decision-card p{grid-column:2}.case-summary h3{font-size:19px}.case-summary p{font-size:14px}.testimonials-grid{gap:24px}.contact-panel{align-items:start;flex-direction:column}.logo-group{flex-wrap:wrap;justify-content:center}.client-logo{flex:0 0 calc(25% - 16px);height:56px}.clients-band{padding-block:20px}}
@media(max-width:640px){:root{--gap:20px;--section:56px}.wrap{width:calc(100% - 40px)}.nav-bar{height:72px;gap:12px}.wordmark{font-size:22px}.language a{min-width:36px}.home-hero{grid-template-columns:1fr;gap:32px;padding:40px 0 40px}.hero-copy,.portrait{grid-column:1}.hero-copy{padding:0;max-width:none}.home-hero h1{font-size:clamp(44px,11.7vw,66px);max-width:12ch;line-height:1.03}.hero-copy>p{font-size:17px;line-height:1.65;margin-top:24px;max-width:38ch}.hero-copy .pills{margin-top:16px}.pills span{font-size:11px}.hero-actions{gap:20px;flex-wrap:wrap;margin-top:24px}.hero-actions .button{font-size:14px}.resume-links{font-size:12px;margin-top:12px;gap:0 14px}.resume-links span{flex-basis:100%;margin-bottom:4px}.portrait{width:100%;aspect-ratio:4/3;max-height:none;margin-bottom:52px}.portrait>img{object-position:center 12%;width:100%;height:100%}.portrait-note{font-size:12px;margin-top:12px;padding:12px 0}.section-header{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.section-header>div,.section-header>p{grid-column:1}.section-header h2{font-size:36px;max-width:20ch}.section-header>p{font-size:14px;max-width:40ch}.project-grid{grid-template-columns:1fr;gap:36px}.project-grid .project-card{grid-column:1;margin:0}.project-grid .project-card-image .project-visual{aspect-ratio:3/2}.project-grid .project-card-image .project-text{padding:20px 48px 0 0;min-height:0}.project-grid .project-card-image h3{font-size:29px;max-width:20ch}.project-grid .project-card-image .project-text>p.project-support{font-size:16px;line-height:1.6}.round-arrow{top:20px;width:36px;height:36px}.project-open>span:last-child{font-size:12px}.capabilities{grid-template-columns:1fr;gap:0}.capability{padding:24px 0 24px 44px;position:relative}.capability .icon-tile{position:absolute;left:0;top:26px;width:24px;height:24px}.capability h3{font-size:23px}.capability p{font-size:15px;max-width:none}.about-section{grid-template-columns:1fr;gap:32px}.about-copy,.about-facts{grid-column:1}.about-copy h2{font-size:36px;max-width:20ch}.about-copy>p{font-size:16px;line-height:1.8}.about-facts{padding:28px 0 0;border-top:1px solid var(--line)}.stats{gap:12px}.stats strong{font-size:40px}.stats>div:last-child strong{font-size:25px;line-height:44px}.stats span{font-size:12px}.experience-item{grid-template-columns:1fr 1fr;gap:8px 16px;padding:24px 0}.experience-year{grid-column:1/-1;font-size:12px}.experience-item h3{grid-column:1/-1;font-size:28px}.experience-item p{grid-column:1/-1;font-size:15px;max-width:none}.experience-item .text-link{grid-column:1/-1;justify-self:start;margin-top:4px;font-size:13px}.testimonials-grid{grid-template-columns:1fr;gap:24px}.testimonial-card{grid-column:1;padding:24px 0}.testimonial-card blockquote p{font-size:23px}.testimonial-card figcaption{padding-top:16px}.testimonials-source{gap:8px}.contact-panel{padding:32px 24px;margin-bottom:32px;gap:24px}.contact-panel h2{font-size:38px}.contact-panel p{font-size:16px}.contact-panel .button{font-size:14px;min-height:48px}.footer-inner{gap:16px;flex-wrap:wrap}.footer-inner>span,.footer-inner>div{font-size:12px}.client-logo{flex:0 0 calc(33.333% - 16px)}.client-logo img{max-width:94px;max-height:28px}.client-logo.logo-itau img{width:32px;height:32px}.client-logo.logo-einstein img{max-height:38px}.back-link{font-size:13px;margin:20px 0}.case-hero{grid-template-columns:1fr;gap:28px;padding:12px 0 32px}.case-intro,.case-hero-image{grid-column:1}.case-intro h1{font-size:clamp(40px,10vw,58px);max-width:17ch;letter-spacing:-.045em}.case-intro>p{font-size:17px;line-height:1.75}.case-intro .eyebrow{font-size:11px;line-height:1.6}.case-meta{gap:20px 24px}.case-meta dt{font-size:12px}.case-meta dd{font-size:14px}.case-meta>div:last-child{display:block;grid-column:1/-1}.case-hero-image{aspect-ratio:3/2;max-height:none}.case-summary{grid-template-columns:1fr;gap:0}.case-summary>article{padding:20px 0;gap:16px}.case-summary h3{font-size:21px}.case-summary p{font-size:15px;line-height:1.7}.case-nav{flex-wrap:nowrap;gap:24px;overflow-x:auto;scrollbar-width:thin;min-height:60px}.case-nav a{font-size:13px;white-space:nowrap;flex-shrink:0}.case-row{padding:48px 0;gap:28px;scroll-margin-top:88px}.section-intro h2{font-size:34px;max-width:22ch}.section-intro>p{font-size:16px;line-height:1.8}.flow-panel{padding:24px}.flow-node h3{font-size:16px}.flow-node p{font-size:13px}.flow-insight{font-size:15px}.decision-card{padding:24px 0}.decision-card h3{font-size:23px}.decision-card p{font-size:15px}.evidence-row{grid-template-columns:1fr;gap:28px}.evidence-list li{gap:16px;grid-template-columns:28px minmax(0,1fr)}.evidence-list h3{font-size:23px}.evidence-list p{font-size:16px;line-height:1.75}.examples-gallery{grid-template-columns:1fr;gap:36px}.case-page .examples-gallery figure{display:block}.examples-gallery figcaption{display:grid;grid-template-columns:28px 1fr;gap:16px;margin-top:20px}.examples-gallery h3{font-size:23px}.examples-gallery figcaption p{font-size:15px}.caption-number{font-size:12px;align-self:start}.example-badge{font-size:10px}.case-page .results-grid{grid-template-columns:1fr;gap:16px}.case-page .results-grid>article{padding:24px}.case-page .results-grid h3{font-size:26px}.case-page .results-grid p{font-size:16px}.case-editorial-note h2{font-size:16px}.case-editorial-note p{font-size:14px}.source-reference{font-size:13px}.next-section{grid-template-columns:1fr;gap:28px}.next-section .section-intro h2{font-size:34px}.case-page .next-section .project-card-image .project-text{padding:20px 48px 0 0}.case-page .next-section .project-card-image h3{font-size:29px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scroll-reveal.reveal-pending{opacity:1;transform:none}[data-parallax]{translate:none!important}}
/* Project-specific emphasis follows the evidence already available. */
@media(min-width:901px){.case-page[data-project="itau"] .evidence-list{background:var(--soft);padding:12px 28px;border-top:0;border-radius:var(--radius)}.case-page[data-project="bia"] .evidence-row{grid-template-columns:repeat(12,minmax(0,1fr))}.case-page[data-project="bia"] .evidence-row>.section-intro{grid-column:1/6}.case-page[data-project="bia"] .evidence-list{grid-column:7/13}.case-page[data-project="porto-bank"] .results-grid>article:first-child{background:var(--soft);border-color:transparent}.case-page[data-project="nome-social"] .evidence-list li:first-child{border-top:3px solid var(--blue)}}
@media(min-width:641px){.home-hero h1{max-width:16ch}}
.home-hero>*,.case-hero>*,.case-row>*,.project-grid>*,.experience-item>*{min-width:0}
@media(max-width:900px){.mobile-nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;gap:0;padding:16px 20px 24px;background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100svh - 76px);overflow:auto}.mobile-nav[hidden]{display:none}.menu-toggle{padding:0;border:0;background:none;color:var(--ink)}.menu-toggle span{display:block;width:20px;height:2px;background:currentColor}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Keep portrait parallax on larger screens only. */
@media(max-width:640px){[data-parallax]{translate:none!important;will-change:auto}}

/* The portrait no longer has a caption underneath. */
.home-hero .portrait{margin-bottom:0}
/* Quotations and their authors have distinct typographic roles. */
.testimonial-card blockquote p{font-style:italic}
.testimonial-card figcaption{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:center}
.testimonial-avatar{display:block;width:48px;height:48px;border-radius:50%;object-fit:cover;max-width:none}
.testimonial-card figcaption>div{min-width:0}
.testimonial-card cite{font-style:normal}
/* Match the home portrait and project covers with a shared 24px corner. */
.home-hero .portrait,
.home-hero .portrait>img,
.projects-section .project-grid .project-card-image .project-visual{border-radius:24px}
/* Carry the same image corners through every case study. */
.case-page .case-hero-image,
.case-page .case-hero-image>img,
.case-page .examples-gallery .example-screen,
.case-page .next-section .project-card-image .project-visual{border-radius:24px}

.case-diagram-caption{margin-top:24px;font-size:13px;line-height:1.7;color:var(--muted)}

/* Shared skill chips: controls in the filter bar, labels inside project links. */
.skill-chips{display:flex;flex-wrap:wrap;gap:8px}
.skill-chip{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font:inherit;font-size:12px;line-height:1.4;letter-spacing:0;color:var(--muted);background:transparent}
.project-filters{margin:0 0 40px;gap:8px}
.skill-filter{min-height:44px;cursor:pointer;transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}
.skill-filter:hover{border-color:var(--blue);color:var(--blue)}
.skill-filter.is-active{background:var(--blue);border-color:var(--blue);color:#fff}
.skill-filter:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.project-skills{margin:14px 0 16px}
.project-skills .skill-chip{font-size:11px;padding:5px 10px}
.project-grid>.project-card[hidden]{display:none}
.project-grid.is-filtered>.project-card{margin-top:0}
@media(max-width:640px){.project-filters{margin-bottom:28px}.skill-filter{padding-inline:14px}.project-skills{gap:6px}}
@media(prefers-reduced-motion:reduce){.skill-filter{transition:none}}

.filter-status.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* One responsive type scale for all three profile indicators. */
.about-facts .stats{container-type:inline-size;grid-template-columns:repeat(3,minmax(0,1fr))}
.about-facts .stats>div{min-width:0}
.about-facts .stats>div:last-child{grid-column:auto}
.about-facts .stats strong{font-size:28px;font-size:clamp(24px,8cqi,40px);line-height:1.1;letter-spacing:-.04em;white-space:nowrap;text-wrap:nowrap}
