:root{color-scheme:light;--ink:#1d1d1f;--muted:#6e6e73;--blue:#0066cc;--paper:#fff;--soft:#f5f5f7;--line:#e6e6e8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:6px}img{display:block;max-width:100%;height:auto}button{cursor:pointer}.wrap{max-width:1240px;margin:auto;padding:0 40px}.skip{position:fixed;top:-70px;background:#fff;z-index:100;padding:16px}.skip:focus{top:0}.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.84);backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,.06)}.nav-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:1.25rem;font-weight:650;letter-spacing:-.7px}.brand span{font-weight:400;color:var(--muted)}.nav-links{display:flex;align-items:center;gap:34px;font-size:0.875rem}.nav-links a:hover{color:var(--blue)}.nav-links .nav-contact{padding:10px 19px;border-radius:99px;background:var(--ink);color:white}.hero{text-align:center;padding:83px 20px 0;overflow:hidden}.eyebrow{font-size:0.875rem;letter-spacing:1.7px;font-weight:600;text-transform:uppercase;color:var(--muted)}.intro{font-size:1.0625rem;letter-spacing:-.25px;margin:0 0 25px;color:#55555b}.hero h1{font-size:clamp(3.125rem,7.6vw,6.5rem);line-height:1.02;letter-spacing:-.065em;font-weight:650;margin:0}.hero h1 span{display:block;color:#7e7e84}.hero-copy{max-width:490px;margin:28px auto 24px;font-size:1.25rem;line-height:1.5;color:var(--muted);letter-spacing:-.4px}.actions{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;justify-content:center;border:0;padding:14px 24px;border-radius:50px;background:var(--blue);color:white;font-size:1rem;transition:background .2s,transform .2s}.pill:hover{background:#0052a5;transform:translateY(-2px)}.text-link{font-size:1rem;color:var(--blue)}.text-link:hover{text-decoration:underline}.showcase{position:relative;display:flex;justify-content:center;align-items:center;gap:20px;height:365px;margin:36px auto 0;max-width:1420px}.showcase a{flex:0 0 42%;border-radius:16px;overflow:hidden;box-shadow:0 22px 55px #10182820;transition:transform .5s}.showcase img{width:100%;aspect-ratio:1.62;object-fit:cover}.showcase a:first-child{transform:translateY(35px) rotate(-8deg);margin-right:-100px;z-index:0}.showcase a:nth-child(2){z-index:2;flex-basis:49%;transform:translateY(0)}.showcase a:last-child{transform:translateY(35px) rotate(8deg);margin-left:-100px}.showcase a:hover{transform:translateY(-9px) rotate(0)}.discipline{border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:55px;padding:36px 10px;color:var(--muted);font-size:0.875rem}.section{padding-top:110px;padding-bottom:110px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:42px}.section h2{font-size:clamp(2.25rem,4.4vw,3.625rem);letter-spacing:-.055em;line-height:1.07;margin:14px 0 0;font-weight:650}.section-head p{color:var(--muted);font-size:1.0625rem;line-height:1.5;max-width:300px;margin:0}.projects{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project{background:var(--soft);border-radius:25px;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s}.project:hover{transform:translateY(-6px);box-shadow:0 18px 45px #0000000c}.project-text{padding:34px 34px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.project-kicker{font-size:0.8125rem;color:var(--muted);margin-bottom:9px}.project h3{font-size:1.75rem;font-weight:600;letter-spacing:-1px;margin:0}.project-copy{font-size:1rem;line-height:1.45;color:var(--muted);margin:10px 0 0}.project img{width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .7s}.project:hover img{transform:scale(1.025)}.plus{width:34px;height:34px;display:grid;place-items:center;background:#e4e4e9;border-radius:50%;font-size:1.5625rem;flex-shrink:0;font-weight:300}.feature{grid-column:1/-1;background:#121317;color:#fff;display:grid;grid-template-columns:.8fr 1.3fr;min-height:380px;align-items:center}.feature .project-text{padding:48px;display:block}.feature h3{font-size:2.6875rem;line-height:1.04;letter-spacing:-1.8px}.feature .project-kicker{color:#a5c8ff}.feature .project-copy{color:#a7abb5;max-width:280px;margin-top:18px}.feature img{height:100%;object-fit:cover;min-height:380px}.feature .feature-link{display:inline-block;color:#91bbff;margin-top:30px;font-size:0.9375rem}.about{background:var(--soft)}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.portrait{border-radius:28px;width:100%;height:540px;object-fit:cover;object-position:center 30%;background:#dedee2}.about p{font-size:1.1875rem;line-height:1.65;color:var(--muted);margin:26px 0}.about h2{margin-top:15px}.expertise{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0}.expertise span{padding:9px 15px;font-size:0.875rem;border:1px solid #d9d9de;border-radius:30px}.about-links{display:flex;gap:24px;margin-top:32px}.contact{text-align:center;padding:110px 20px 105px}.contact h2{font-size:clamp(2.6875rem,6.9vw,5.25rem);letter-spacing:-.06em;line-height:1.05;margin:18px 0 26px;font-weight:650}.contact>p{font-size:1.1875rem;color:var(--muted);margin:0 0 30px}.contact-email{margin-top:24px!important;font-size:0.9375rem!important}.footer{display:flex;justify-content:space-between;gap:20px;padding-top:27px;padding-bottom:27px;border-top:1px solid var(--line);font-size:0.8125rem;color:var(--muted)}.footer div{display:flex;gap:25px}.case-header{padding:60px 0 55px}.back{display:inline-block;font-size:0.875rem;color:var(--blue);margin-bottom:55px}.case-header h1{font-size:clamp(3rem,7vw,5.5rem);letter-spacing:-.06em;line-height:1.02;margin:17px 0 25px;max-width:900px}.case-intro{font-size:1.3125rem;line-height:1.5;max-width:670px;color:var(--muted);margin-bottom:30px}.case-image{width:100%;height:auto;background:var(--soft);border:1px solid #ededf0}.case-gallery{max-width:1240px;margin:auto;padding:0 40px 65px}.case-gallery figure{margin:0 0 26px;overflow:hidden;border-radius:12px}.case-nav{display:flex;justify-content:space-between;align-items:center;padding-top:45px;padding-bottom:70px;gap:30px}.case-nav p{color:var(--muted);font-size:0.875rem}.case-nav h2{font-size:1.875rem;letter-spacing:-1px;margin:0}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s}.js-motion .reveal.visible{opacity:1;transform:none}@media(min-width:1500px){.hero{padding-top:100px}.showcase{height:410px}}@media(max-width:800px){.wrap{padding-left:24px;padding-right:24px}.nav-inner{height:66px}.nav-links{gap:21px}.brand{font-size:1.125rem}.brand span{display:none}.hero{padding-top:63px}.hero h1{font-size:clamp(2.75rem,8.6vw,4.5rem)}.hero-copy{font-size:1.125rem;max-width:400px}.showcase{height:280px;margin-top:25px;gap:0}.showcase a{flex-basis:54%}.showcase a:nth-child(2){flex-basis:70%}.showcase a:first-child{margin-right:-150px}.showcase a:last-child{margin-left:-150px}.discipline{gap:26px;font-size:0.75rem}.section{padding-top:75px;padding-bottom:75px}.section-head{align-items:start}.section-head p{max-width:220px;font-size:1rem}.projects{gap:20px}.project-text{padding:25px}.project h3{font-size:1.4375rem}.project-copy{font-size:0.9375rem}.feature{grid-template-columns:1fr 1.1fr;min-height:300px}.feature .project-text{padding:30px}.feature h3{font-size:2.0625rem}.feature img{min-height:300px}.about-grid{gap:40px}.portrait{height:440px}.about p{font-size:1.0625rem}.about h2{font-size:2.375rem}.case-gallery{padding-left:24px;padding-right:24px}}@media(max-width:540px){.nav-links{gap:19px}.nav-links .nav-contact{padding:8px 14px}.hero{padding-top:48px}.intro{font-size:0.875rem;margin-bottom:23px}.hero h1{font-size:3rem;letter-spacing:-.065em}.hero-copy{font-size:1.0625rem;margin-top:24px;max-width:300px}.pill{padding:13px 22px;font-size:0.9375rem}.showcase{height:220px;margin-top:35px}.showcase a{flex-basis:70%;border-radius:10px}.showcase a:nth-child(2){flex-basis:90%}.showcase a:first-child{margin-right:-210px;transform:translateY(25px) rotate(-10deg)}.showcase a:last-child{margin-left:-210px;transform:translateY(25px) rotate(10deg)}.discipline{gap:16px;padding:25px 0;flex-wrap:wrap}.discipline span:last-child{display:none}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:20px;max-width:290px}.projects{grid-template-columns:1fr;gap:24px}.feature{display:flex;min-height:0}.feature .project-text{padding:32px}.feature h3{font-size:2.4375rem;max-width:300px}.feature .project-copy{max-width:100%}.feature img{min-height:0;aspect-ratio:1.5}.project h3{font-size:1.6875rem}.about-grid{grid-template-columns:1fr;gap:38px}.portrait{height:370px}.about h2{font-size:2.625rem}.contact{padding:80px 24px}.contact h2{font-size:3.1875rem}.contact>p{font-size:1.0625rem}.footer{font-size:0.75rem;align-items:start;flex-direction:column}.case-header{padding-top:32px}.back{margin-bottom:36px}.case-intro{font-size:1.125rem}.case-gallery{padding-left:12px;padding-right:12px}.case-gallery figure{border-radius:7px;margin-bottom:14px}.case-nav h2{font-size:1.5rem}.eyebrow{font-size:0.75rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js-motion .reveal{opacity:1;transform:none}}
/* Consistent page gutters across the portfolio. */
:root{--page-gutter:80px}.wrap{max-width:none;width:100%;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.hero{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.contact{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.case-gallery{max-width:none;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.resume-section{background:#111214;color:#f5f5f7}.resume-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:9%;align-items:start}.resume-intro .eyebrow{color:#97baff}.resume-intro h2{font-size:clamp(2.25rem,4.2vw,3.625rem);margin:20px 0 25px}.resume-intro>p{max-width:430px;font-size:1.125rem;line-height:1.65;color:#b0b1b8}.resume-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.resume-actions .pill{background:#f5f5f7;color:#171719}.resume-actions .pill:hover{background:#fff}.resume-download,.resume-all{color:#a9c9ff;font-size:1rem}.resume-download:hover,.resume-all:hover{text-decoration:underline}.resume-meta{font-size:0.8125rem;color:#9a9ba3;margin-top:20px}.experience-row{padding:27px 0;border-top:1px solid #36373c}.experience-row:first-child{padding-top:0;border-top:0}.experience-heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.experience-heading h3{font-size:1.375rem;font-weight:600;letter-spacing:-.65px;margin:0}.experience-heading span{font-size:0.8125rem;color:#9a9ba3;white-space:nowrap}.experience-role{color:#eeeef0!important;font-size:0.9375rem!important;margin-top:9px!important}.experience-row p{font-size:1rem;line-height:1.5;color:#b0b1b8;margin:10px 0 0;max-width:470px}.resume-all{display:inline-block;margin-top:7px}
@media(max-width:1000px){.resume-layout{gap:45px;grid-template-columns:1fr 1fr}.experience-heading{display:block}.experience-heading span{display:block;margin-top:8px}.about-grid{gap:45px}}
@media(max-width:767px){:root{--page-gutter:16px}.resume-layout{grid-template-columns:1fr;gap:48px}.resume-intro h2{font-size:2.75rem}.resume-intro>p{font-size:1.0625rem}.experience-heading{display:flex;flex-wrap:wrap;gap:8px 16px}.experience-heading h3{font-size:1.3125rem}.experience-heading span{margin:0}.resume-actions{gap:22px}.about-grid{grid-template-columns:1fr}.nav-inner{gap:12px}.nav-links{gap:16px}.nav-about{display:none}.hero h1{overflow-wrap:normal}.case-gallery{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}}
@media(max-width:359px){.nav-links{gap:10px;font-size:0.8125rem}.nav-links .nav-contact{padding:8px 10px}.brand{font-size:1.0625rem}.hero h1{font-size:2.625rem}.resume-intro h2{font-size:2.5rem}}
.hero-experience{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;align-items:center;font-size:0.9375rem;margin:0 auto 25px}.hero-experience>span:first-child{color:var(--muted);font-size:0.8125rem}.hero-experience a{font-weight:600}.hero-experience a:hover{color:var(--blue)}.enterprise-card{grid-column:1/-1;display:flex;flex-direction:column;min-height:480px;border-radius:26px;padding:40px 48px;overflow:hidden;color:#fff;transition:transform .35s,box-shadow .35s}.enterprise-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px #00000016}.amazon{background:#171a20;--project-accent:#ffbc64}.royal{background:#062858;--project-accent:#a8caff}.enterprise-top{display:flex;justify-content:space-between;gap:20px;color:#b8c0ce;font-size:0.8125rem}.enterprise-brand{font-size:clamp(3rem,6vw,5.75rem);font-weight:600;letter-spacing:-.055em;line-height:1.05;margin:42px 0 38px}.royal .enterprise-brand{font-size:clamp(2.625rem,5.4vw,5.125rem)}.enterprise-product{color:var(--project-accent);font-size:0.875rem;margin-bottom:14px}.enterprise-bottom{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-top:auto}.enterprise-bottom h3{font-size:clamp(1.625rem,3vw,2.625rem);line-height:1.15;letter-spacing:-.035em;max-width:710px;margin:0}.enterprise-bottom p{color:#bdc6d5;font-size:1.0625rem;line-height:1.6;max-width:660px;margin:16px 0 0}.enterprise-cta{white-space:nowrap;border:1px solid #ffffff55;border-radius:30px;padding:13px 21px;font-size:0.9375rem}.enterprise-header{color:white;padding:44px 0 62px}.enterprise-header .back{color:var(--project-accent);margin-bottom:55px}.enterprise-header .eyebrow{color:var(--project-accent)}.enterprise-header h1{font-size:clamp(2.75rem,6.2vw,5.375rem);letter-spacing:-.055em;line-height:1.05;max-width:1120px;margin:24px 0}.enterprise-lede{font-size:1.3125rem;line-height:1.55;max-width:780px;color:#c2ccdd}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:950px;border-top:1px solid #ffffff30;padding-top:28px;margin:48px 0 0}.project-facts dt{font-size:0.8125rem;color:#a7b2c5;margin-bottom:10px}.project-facts dd{font-size:1.0625rem;margin:0}.narrative{padding-top:24px;padding-bottom:36px}.story-row{display:grid;grid-template-columns:1fr 2.2fr;gap:50px;padding:65px 0;border-bottom:1px solid var(--line)}.story-row>.eyebrow{padding-top:9px}.story-row h2,.story-decisions>h2{font-size:clamp(1.75rem,3vw,2.625rem);font-weight:600;letter-spacing:-.035em;line-height:1.15;margin:0 0 24px}.story-row p,.decision p{font-size:1.1875rem;line-height:1.75;color:var(--muted);max-width:800px;margin:0}.story-decisions{padding:65px 0;border-bottom:1px solid var(--line)}.story-decisions>h2{margin-top:20px}.decision{display:grid;grid-template-columns:1fr 2.2fr;gap:50px;padding:32px 0}.decision-number{font-size:3.4375rem;color:#b6b8bd;letter-spacing:-3px}.decision h3{font-size:1.5625rem;letter-spacing:-.6px;margin:0 0 18px}.deliverables{padding-left:22px;margin:0;color:var(--muted);font-size:1.125rem;line-height:1.7}.deliverables li+li{margin-top:10px}@media(max-width:1000px){.enterprise-bottom{align-items:start;flex-direction:column}.enterprise-card{padding:35px;min-height:470px}.story-row,.decision{grid-template-columns:1fr 2fr;gap:28px}}@media(max-width:767px){.enterprise-card{padding:27px 24px;min-height:470px;border-radius:22px}.enterprise-top{font-size:0.75rem;gap:15px}.enterprise-brand{margin:40px 0 32px;font-size:3.625rem}.royal .enterprise-brand{font-size:3rem}.enterprise-bottom{gap:25px}.enterprise-bottom h3{font-size:1.875rem}.enterprise-bottom p{font-size:1rem}.enterprise-product{font-size:0.8125rem;line-height:1.5}.hero-experience{gap:9px 12px;font-size:0.8125rem}.hero-experience>span:first-child{flex-basis:100%;font-size:0.75rem}.enterprise-header{padding:30px 0 45px}.enterprise-header h1{font-size:2.9375rem}.enterprise-lede{font-size:1.125rem}.project-facts{grid-template-columns:1fr;gap:23px;margin-top:32px}.story-row,.decision{grid-template-columns:1fr;gap:22px}.story-row{padding:42px 0}.story-row p,.decision p{font-size:1.0625rem}.story-row h2,.story-decisions>h2{font-size:2rem}.story-decisions{padding:42px 0}.decision{padding:25px 0;gap:15px}.decision-number{font-size:2.1875rem;letter-spacing:-1px}.decision h3{font-size:1.4375rem}.deliverables{font-size:1.0625rem}.case-nav h2{max-width:210px}}
/* Image-led featured stories */
.featured-showcase{height:390px;margin-top:45px}.featured-showcase a{position:relative;isolation:isolate}.featured-showcase img{height:340px;aspect-ratio:auto;object-fit:cover}.featured-showcase a:nth-child(2){flex-basis:52%}.showcase-caption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#071022ed);padding:65px 26px 26px;color:white;text-align:left}.showcase-caption span{display:block;font-size:0.875rem;margin-bottom:7px}.showcase-caption b{font-size:1.5625rem;line-height:1.15;letter-spacing:-.6px;font-weight:600}.image-led{padding:0;min-height:0;display:grid;grid-template-columns:1fr 1.08fr;gap:0}.enterprise-cover{min-width:0;min-height:520px;grid-column:2;grid-row:1;overflow:hidden}.enterprise-cover img{height:100%;width:100%;object-fit:cover;transition:transform .8s}.image-led:hover .enterprise-cover img{transform:scale(1.035)}.enterprise-card-content{padding:40px;grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between}.image-led .enterprise-top{font-size:0.75rem;flex-wrap:wrap;gap:8px}.image-led .enterprise-brand{font-size:clamp(2.25rem,3.5vw,3.625rem);margin:35px 0 28px}.image-led .enterprise-bottom{display:block}.image-led .enterprise-bottom h3{font-size:clamp(1.6875rem,2.7vw,2.4375rem)}.image-led .enterprise-bottom p{font-size:1rem}.image-led .enterprise-cta{display:inline-block;margin-top:28px}.case-cover{margin:0;padding-top:48px;padding-bottom:16px}.case-cover>img{width:100%;height:auto;max-height:690px;object-fit:cover;border-radius:24px}.case-cover figcaption{font-size:0.8125rem;line-height:1.6;color:var(--muted);margin-top:14px;max-width:970px}.case-cover figcaption a{text-decoration:underline}.story-row p+p{margin-top:22px}.work-status{display:inline-block;margin-top:22px;font-size:0.8125rem;background:#edf3fa;color:#28486c;padding:9px 13px;border-radius:8px}.evidence-block,.journey-block,.hierarchy-block,.outcome-block{background:var(--soft);border-radius:24px;padding:45px;margin:25px 0}.evidence-block h2,.outcome-block h2{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.045em;line-height:1.12;margin:18px 0 22px;max-width:790px}.section-explainer,.outcome-block>p{max-width:840px;font-size:1.1875rem;line-height:1.7;color:var(--muted)}.evidence-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:36px 0}.evidence-stats strong{display:block;font-size:clamp(2.625rem,5vw,4.75rem);letter-spacing:-.055em;line-height:1.1;color:#073366}.evidence-stats span{display:block;color:var(--muted);font-size:0.9375rem;line-height:1.5;margin-top:12px}.evidence-detail{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--line);padding-top:24px}.evidence-detail b{display:block;font-size:1rem;margin-bottom:9px}.evidence-detail span{font-size:0.9375rem;color:var(--muted)}.evidence-note{font-size:0.8125rem!important;line-height:1.65!important;color:var(--muted);margin-top:24px!important;max-width:950px!important}.research-takeaway{border-top:1px solid var(--line);margin-top:30px;padding-top:27px}.research-takeaway h3{font-size:1.4375rem;margin:0 0 16px;letter-spacing:-.5px}.research-takeaway p{font-size:1.0625rem;line-height:1.65;color:var(--muted);max-width:850px;margin:0}.journey-block h3{font-size:1.8125rem;letter-spacing:-.8px;margin:20px 0 30px}.journey-steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:0;margin:0}.journey-steps li{border-top:2px solid #abc3dd;padding-top:20px}.journey-steps span{font-size:0.8125rem;color:#446d9a}.journey-steps b{display:block;font-size:1.3125rem;margin-top:12px}.journey-steps p{font-size:1rem;line-height:1.6;color:var(--muted)}.visual-note{font-size:0.8125rem;line-height:1.6;color:var(--muted);margin:22px 0 0}.design-demo{padding:45px 0;border-bottom:1px solid var(--line)}.demo-caption{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.demo-caption h3{font-size:1.875rem;letter-spacing:-.8px;margin:16px 0 0;line-height:1.2}.reconstruction-label{font-size:0.75rem;color:#415774;background:#eff3f8;padding:8px 12px;border-radius:20px;white-space:nowrap}.offer-demo-shell{background:#eaf0f8;display:grid;grid-template-columns:1.7fr 1fr;gap:35px;padding:36px;border-radius:24px}.offer-demo-main{background:#fff;border-radius:16px;padding:26px;min-width:0}.offer-demo-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}.demo-overline{font-size:0.9375rem;font-weight:700;letter-spacing:1px;color:#073366}.demo-count{font-size:0.8125rem;color:var(--muted)}.filter-control{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.filter-control label{font-size:0.875rem;color:#3e4653}.filter-control select{font:inherit;font-size:0.875rem;border:1px solid #cbd4e2;border-radius:8px;padding:10px;background:#fff;max-width:100%;color:var(--ink)}.demo-offer{border:1px solid #dbe1eb;border-radius:12px;overflow:hidden;margin-top:18px}.demo-offer[hidden]{display:none}.offer-photo{height:155px}.offer-photo img{width:100%;height:100%;object-fit:cover}.offer-demo-info{padding:22px}.offer-code{font-size:0.75rem;color:#526079;letter-spacing:.6px}.offer-demo-info h4{font-size:1.4375rem;letter-spacing:-.7px;margin:12px 0}.offer-demo-info p{font-size:0.875rem;line-height:1.65;color:#596578}.redemption-count{color:#254d83!important}.perk-list{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0}.perk-list span{background:#eff3f8;padding:7px 10px;border-radius:5px;font-size:0.75rem;color:#354662}.demo-details{border-top:1px solid #dbe1eb;margin-top:10px;padding-top:15px}.demo-details summary{cursor:pointer;font-size:0.9375rem;color:#0754a8;font-weight:600;line-height:1.5}.demo-details summary span{font-size:0.75rem;font-weight:400;display:inline-block;margin-left:12px}.demo-details ul{font-size:0.875rem;line-height:1.65;color:#596578;padding-left:20px}.demo-annotations{display:flex;flex-direction:column;justify-content:center;gap:28px}.demo-annotations>div{border-left:2px solid #bacbdd;padding-left:20px}.demo-annotations span{font-size:0.8125rem;color:#466580}.demo-annotations h4{font-size:1.1875rem;letter-spacing:-.4px;margin:10px 0}.demo-annotations p{font-size:1rem;line-height:1.6;color:#596578;margin:0}.hierarchy-items,.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px}.hierarchy-items span{font-size:0.8125rem;color:#466b95}.hierarchy-items h3,.outcome-grid h3{font-size:1.4375rem;letter-spacing:-.6px;margin:15px 0}.hierarchy-items p,.outcome-grid p{font-size:1.0625rem;line-height:1.65;color:var(--muted);margin:0}.outcome-block{background:#062858;color:#fff;margin-bottom:35px}.outcome-block .eyebrow{color:#a8caff}.outcome-block p,.outcome-grid p,.outcome-block .evidence-note{color:#c0ccdf}.outcome-grid{border-top:1px solid #ffffff30;padding-top:22px}.outcome-grid h3{color:#fff}.narrative{min-width:0}
@media(max-width:1050px){.image-led{grid-template-columns:1fr}.enterprise-cover{grid-column:1;grid-row:1;min-height:0;height:350px}.enterprise-card-content{grid-column:1;grid-row:2}.image-led .enterprise-brand{font-size:2.9375rem;margin:28px 0}.offer-demo-shell{grid-template-columns:1.5fr 1fr;gap:24px;padding:24px}.filter-control{align-items:start;flex-direction:column;gap:10px}.evidence-block,.journey-block,.hierarchy-block,.outcome-block{padding:32px}.hierarchy-items,.outcome-grid{gap:22px}.featured-showcase img{height:280px}.featured-showcase{height:340px}.showcase-caption b{font-size:1.3125rem}}
@media(max-width:767px){.featured-showcase{height:255px;margin-top:30px}.featured-showcase img{height:220px}.featured-showcase a:nth-child(2){flex-basis:89%}.showcase-caption{padding:45px 17px 17px}.showcase-caption span{font-size:0.75rem}.showcase-caption b{font-size:1.25rem}.enterprise-cover{height:250px}.enterprise-card-content{padding:27px 24px}.image-led .enterprise-brand{font-size:2.5rem}.image-led .enterprise-bottom h3{font-size:1.8125rem}.case-cover{padding-top:24px}.case-cover>img{border-radius:14px;min-height:230px;object-fit:cover}.evidence-block,.journey-block,.hierarchy-block,.outcome-block{padding:25px 20px;border-radius:18px}.evidence-stats{grid-template-columns:1fr;gap:22px;padding:25px 0}.evidence-stats>div{display:flex;align-items:center;gap:20px}.evidence-stats strong{font-size:2.9375rem;min-width:140px}.evidence-stats span{font-size:0.875rem;margin:0}.evidence-detail{grid-template-columns:1fr;gap:20px}.section-explainer,.outcome-block>p{font-size:1.0625rem}.journey-steps{grid-template-columns:1fr 1fr;gap:22px}.journey-block h3{font-size:1.625rem}.demo-caption{align-items:start;flex-direction:column;gap:16px}.demo-caption h3{font-size:1.75rem}.offer-demo-shell{grid-template-columns:1fr;padding:16px;gap:30px;border-radius:18px}.offer-demo-main{padding:18px 14px}.offer-demo-info{padding:19px 15px}.offer-demo-info h4{font-size:1.3125rem}.demo-annotations{gap:22px;padding:0 4px 8px}.hierarchy-items,.outcome-grid{grid-template-columns:1fr;gap:22px}.hierarchy-items>div+div{border-top:1px solid var(--line);padding-top:15px}.hierarchy-items h3,.outcome-grid h3{margin:9px 0 12px}.casino-header h1{font-size:2.75rem}.case-cover figcaption{font-size:0.75rem}}

/* Whole Foods palette, accessible controls, and quiet interactions. */
:root{--muted:#626269}
.amazon{background:#064c3f;--project-accent:#d8efb7}
.amazon .enterprise-top,.amazon .enterprise-bottom p,.amazon .enterprise-lede,.amazon .project-facts dt{color:#dcece4}
.amazon .enterprise-cover img{object-position:60% center}
.enterprise-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;margin-top:28px}
.image-led .enterprise-cta{margin-top:0;display:inline-flex;align-items:center;gap:12px;min-height:48px;border-color:#c4d8ce;transition:background .2s,color .2s}
.enterprise-cta:hover{background:#fff;color:#062858}
.amazon .enterprise-cta:hover{color:#064c3f}
.figma-link{display:inline-flex;align-items:center;gap:8px;min-height:48px;font-size:1rem;text-decoration:underline;text-underline-offset:5px;color:#fff}
.figma-link:hover{color:#d8efb7}
.figma-button{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:14px 22px;background:#e2f0d1;color:#064c3f;border-radius:99px;font-weight:600;margin-top:10px;transition:background .2s,transform .2s}
.figma-button:hover{background:#fff;transform:translateY(-2px)}
.enterprise-bottom h3 a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.showcase-caption{background:rgba(4,20,33,.94);padding:18px 24px}
.decision-number{color:#73767e}
.hero h1 span{color:#727278}
.nav-links a,.brand{display:inline-flex;align-items:center;min-height:44px}
.text-link,.back,.resume-download,.resume-all,.footer a,.hero-experience a{display:inline-flex;align-items:center;min-height:28px;line-height:1.5}
.filter-control select{min-height:44px;border-color:#67758a}
.demo-details summary{min-height:44px;padding:9px 0}
:where(a,button,select,summary,[tabindex]):focus-visible{outline:3px solid #111;outline-offset:3px;box-shadow:0 0 0 3px #fff}
.enterprise-cover:focus-visible{outline-offset:-7px;outline-color:#fff;box-shadow:inset 0 0 0 10px #111}
.js-motion .reveal:focus-within{opacity:1;transform:none}
.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px}
.work-toolbar[hidden],[hidden]{display:none!important}
.work-filters{display:flex;gap:8px;flex-wrap:wrap}
.work-filters button{border:1px solid #73737b;background:#fff;color:#414148;padding:11px 20px;border-radius:99px;min-height:44px;font-size:.9375rem;transition:background .2s,color .2s}
.work-filters button[aria-pressed="true"]{background:#1d1d1f;border-color:#1d1d1f;color:#fff}
.work-filters button:hover{background:#ececee;color:#1d1d1f}
.work-count{font-size:.875rem;color:var(--muted);white-space:nowrap}
.image-zoom{border:0;padding:0;width:100%;display:block;position:relative;background:transparent;cursor:zoom-in;border-radius:inherit;color:#fff;text-align:left}
.image-zoom img{width:100%;border-radius:inherit}
.case-cover .image-zoom{border-radius:24px;overflow:hidden}
.case-cover .image-zoom img{max-height:690px;object-fit:cover}
.zoom-label{position:absolute;right:16px;bottom:16px;display:flex;gap:9px;align-items:center;padding:10px 15px;min-height:44px;border-radius:99px;background:#152322;color:#fff;font-size:.875rem;box-shadow:0 2px 12px #0003}
.image-zoom:hover .zoom-label{background:#064c3f}
.image-lightbox{padding:0;border:0;border-radius:18px;width:min(1200px,calc(100% - 32px));max-height:90dvh;background:#fff;color:#1d1d1f;overflow:hidden}
.image-lightbox::backdrop{background:rgba(0,15,12,.85)}
.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid #ccc}
.lightbox-bar h2{font-size:1rem;margin:0;line-height:1.5}
.lightbox-bar button{background:#1d1d1f;color:#fff;border:0;border-radius:50px;min-height:44px;padding:10px 18px;white-space:nowrap}
.lightbox-scroll{overflow:auto;max-height:calc(90dvh - 80px);overscroll-behavior:contain;padding:12px}
.lightbox-scroll img{width:100%;height:auto}
body.lightbox-open{overflow:hidden}
@media(max-width:767px){.showcase-caption{padding:14px 17px}.work-toolbar{align-items:flex-start;flex-direction:column}.work-filters{gap:7px}.work-filters button{padding:10px 15px}.enterprise-actions{gap:8px 18px}.image-lightbox{width:calc(100% - 16px)}.lightbox-bar{padding:10px 14px}.case-cover .image-zoom{border-radius:14px}.case-cover .image-zoom img{min-height:230px}.zoom-label{right:12px;bottom:12px}.image-led .enterprise-top{font-size:.8125rem}.case-cover figcaption{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){.showcase a:hover,.project:hover,.enterprise-card:hover,.pill:hover,.figma-button:hover,.image-led:hover .enterprise-cover img,.project:hover img{transform:none}.js-motion .reveal{opacity:1;transform:none}}

@media(max-width:767px){.nav-inner{height:auto;min-height:66px;padding-top:8px;padding-bottom:8px}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:4px 16px}.brand{flex-shrink:0}.enterprise-card-content{min-width:0}.enterprise-brand,.enterprise-header h1{overflow-wrap:anywhere}}

/* Product-led Amazon introduction: image fills the previously empty right side. */
.amazon-intro-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(32px,4vw,76px)}
.amazon-intro-copy{min-width:0}
.amazon-split-header .back{margin-bottom:32px}
.amazon-split-header h1{font-size:clamp(2.75rem,4.25vw,5.25rem);max-width:850px;margin:23px 0}
.amazon-split-header .enterprise-lede{font-size:1.1875rem;max-width:660px}
.amazon-split-header .project-facts{max-width:none;margin-top:40px}
.amazon-header-visual{margin:0;position:relative;overflow:hidden;border-radius:26px;aspect-ratio:1.08;isolation:isolate;background:#173a31;box-shadow:0 22px 60px #002e2940}
.amazon-header-visual>img{width:100%;height:100%;object-fit:cover;object-position:48% center}
.amazon-header-visual figcaption{position:absolute;bottom:0;left:0;right:0;padding:20px 24px;background:#073d33;color:#fff;font-size:.875rem;line-height:1.5}
.amazon-header-visual figcaption span{display:block}
.amazon-header-visual figcaption span:first-child{font-size:1.0625rem;font-weight:600;margin-bottom:4px}
.amazon-header-visual figcaption span:last-child{color:#dcece4}
.dash-cart-context{padding-top:84px;padding-bottom:40px}
.dash-cart-context-heading{display:grid;grid-template-columns:1fr 1.1fr;align-items:end;gap:50px;margin-bottom:36px}
.dash-cart-context h2{font-size:clamp(2.25rem,3.6vw,3.5rem);line-height:1.1;letter-spacing:-.045em;margin:15px 0 0}
.dash-cart-context p{font-size:1.1875rem;color:var(--muted);line-height:1.7;margin:0;max-width:730px}
.dash-cart-feature-figure{margin:0}
.dash-cart-feature-figure>img,.dash-cart-feature-figure .image-zoom{width:100%;border-radius:22px;overflow:hidden}
.dash-cart-feature-figure figcaption{font-size:.8125rem;color:var(--muted);line-height:1.6;margin-top:14px}
.dash-cart-context-footer{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:38px 0 28px;border-bottom:1px solid var(--line)}
.dash-cart-context h3{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}
.dash-cart-context-footer p{font-size:1.0625rem}
.feature-transcript{align-self:start;border:1px solid #7e9189;border-radius:16px;padding:4px 22px;background:#f2f7f3;color:#204638}
.feature-transcript summary{cursor:pointer;min-height:52px;padding:15px 0;font-size:1rem;line-height:1.5;font-weight:600}
.feature-transcript ol{padding-left:23px;margin:4px 0 22px;font-size:1rem;line-height:1.65}
.feature-transcript li+li{margin-top:15px}
/* Noticeable, finite entrance motion with no continuously moving distractions. */
@keyframes intro-rise{from{opacity:0;transform:translateY(38px)}to{opacity:1;transform:translateY(0)}}
@keyframes image-arrive{from{opacity:0;transform:translateY(46px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes gallery-arrive{from{opacity:0;transform:translateY(55px) scale(.89)}to{opacity:1;transform:translateY(0) scale(1)}}
.motion-ready .hero .intro{animation:intro-rise .8s both}
.motion-ready .hero h1{animation:intro-rise 1s .1s both}
.motion-ready .hero-copy{animation:intro-rise 1s .24s both}
.motion-ready .hero-experience,.motion-ready .hero .actions{animation:intro-rise 1s .38s both}
.motion-ready .featured-showcase{animation:gallery-arrive 1.3s .35s both}
.motion-ready .amazon-intro-copy{animation:intro-rise 1s .1s both}
.motion-ready .amazon-header-visual{animation:image-arrive 1.3s .25s both}
.motion-ready .amazon-split-header .project-facts{animation:intro-rise 1s .45s both}
.js-motion .reveal{transform:translateY(48px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js-motion .reveal.visible,.js-motion .reveal:focus-within{transform:none;opacity:1}
.pointer-image{--image-x:0px;--image-y:0px}
.motion-ready .pointer-image>img{transition:transform .55s cubic-bezier(.2,.7,.2,1);will-change:transform}
@media(hover:hover) and (pointer:fine){
.motion-ready .pointer-image:hover>img{transform:translate(var(--image-x),var(--image-y)) scale(1.09)}
.motion-ready .showcase a{transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .7s}
.motion-ready .showcase a:hover{transform:translateY(-20px) rotate(0);box-shadow:0 30px 60px #10182840}
.motion-ready .enterprise-card:has(a:hover){box-shadow:0 24px 60px #001c1825}
}
.reading-progress{position:fixed;top:0;left:0;z-index:30;width:100%;height:3px;background:#064c3f;transform:scaleX(0);transform-origin:left;pointer-events:none}
@media(max-width:1100px){.amazon-intro-grid{gap:32px}.amazon-header-visual{aspect-ratio:.88}.amazon-split-header h1{font-size:clamp(2.625rem,4.5vw,4rem)}.amazon-header-visual figcaption{padding:17px}.amazon-split-header .enterprise-lede{font-size:1.0625rem}.dash-cart-context-footer{gap:32px}}
@media(max-width:767px){.amazon-intro-grid{grid-template-columns:1fr;gap:32px}.amazon-header-visual{aspect-ratio:1.25;border-radius:18px}.amazon-split-header h1{font-size:clamp(2.625rem,9.2vw,3.5rem)}.amazon-split-header .project-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.amazon-split-header .project-facts dd{font-size:.9375rem;line-height:1.5}.amazon-split-header .project-facts dt{font-size:.8125rem}.dash-cart-context{padding-top:55px}.dash-cart-context-heading{grid-template-columns:1fr;gap:22px;margin-bottom:26px}.dash-cart-context p{font-size:1.0625rem}.dash-cart-context-footer{grid-template-columns:1fr;gap:26px;padding-top:28px}.dash-cart-feature-figure>img,.dash-cart-feature-figure .image-zoom{border-radius:14px}.dash-cart-feature-figure .zoom-label{position:static;width:fit-content;margin-top:12px;background:#064c3f}.feature-transcript{padding:4px 17px}}
@media(prefers-reduced-motion:reduce){.motion-ready *{animation:none!important}.pointer-image>img,.motion-ready .pointer-image:hover>img{transform:none!important}.js-motion .reveal{opacity:1;transform:none}.reading-progress{display:none}}

/* Selected work: one clear reading path, followed by a quiet filter bar. */
#work>.work-intro{display:block;max-width:1100px;margin:0 0 36px}
#work>.work-intro .eyebrow{font-size:.8125rem;letter-spacing:.12em;line-height:1.5;margin-bottom:17px}
#work>.work-intro h2{font-size:clamp(2.625rem,4.25vw,4rem);font-weight:600;letter-spacing:-.05em;line-height:1.12;margin:0;text-wrap:balance}
#work>.work-intro h2 span{color:#68686e}
#work>.work-intro>p{max-width:46rem;width:100%;font-size:1.125rem;line-height:1.65;letter-spacing:-.015em;margin:22px 0 0;text-wrap:pretty;color:var(--muted)}
#work>.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #d9d9de;margin-bottom:28px;padding:0}
#work .work-filters{gap:30px;flex-wrap:wrap}
#work .work-filters button{position:relative;display:inline-flex;align-items:center;border:0;border-radius:0;padding:14px 0 18px;min-height:52px;background:transparent;color:#626269;font-size:.9375rem;font-weight:500;line-height:1.4;transition:color .2s}
#work .work-filters button::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;border-radius:2px;background:#1d1d1f;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
#work .work-filters button[aria-pressed="true"]{color:#1d1d1f;background:transparent}
#work .work-filters button[aria-pressed="true"]::after{transform:scaleX(1)}
#work .work-filters button:hover{color:#1d1d1f;background:transparent}
#work .work-filters button:not([aria-pressed="true"]):hover::after{transform:scaleX(.35)}
#work .work-count{font-size:.875rem;line-height:1.5;color:#626269;padding-bottom:4px;font-variant-numeric:tabular-nums}
@media(max-width:767px){#work>.work-intro{margin-bottom:27px}#work>.work-intro h2{font-size:clamp(2.5rem,7.5vw,3.375rem);line-height:1.1}#work>.work-intro>p{font-size:1.0625rem;line-height:1.65;margin-top:19px}#work>.work-toolbar{flex-direction:row;align-items:center;gap:12px;margin-bottom:23px}#work .work-filters{gap:20px}#work .work-filters button{font-size:.875rem;padding-bottom:16px}#work .work-count{font-size:.8125rem}}
@media(max-width:390px){#work>.work-toolbar{flex-wrap:wrap;gap:4px 16px}#work .work-filters{flex:1;gap:16px}#work .work-count{font-size:.75rem}}

/* Official brand assets retain their proportions and clear space. */
.brand-logo{display:block;height:auto;object-fit:contain;object-position:left center;max-width:100%;flex-shrink:0}
.enterprise-brand .brand-logo-amazon{width:190px;max-height:78px}
.enterprise-brand .brand-logo-royal{width:340px;max-height:100px}
.image-led .enterprise-brand{margin:38px 0 36px;line-height:1}
.case-brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.case-brand-lockup .brand-logo-amazon{width:156px;max-height:64px}
.case-brand-lockup .brand-logo-royal{width:310px;max-height:94px}
.case-brand-lockup .eyebrow{line-height:1.5}
.showcase-caption .brand-logo{width:auto;height:auto;max-width:70%;max-height:46px;object-fit:contain;object-position:left center;aspect-ratio:auto}
.showcase-caption .brand-logo-amazon{width:88px}
.showcase-caption .brand-logo-royal{width:188px}
.showcase-caption>span:has(.brand-logo){margin-bottom:13px}
@media(max-width:767px){.enterprise-brand .brand-logo-amazon{width:158px}.enterprise-brand .brand-logo-royal{width:280px}.image-led .enterprise-brand{margin:30px 0}.case-brand-lockup{gap:20px}.case-brand-lockup .brand-logo-amazon{width:136px}.case-brand-lockup .brand-logo-royal{width:255px}.showcase-caption .brand-logo-amazon{width:74px}.showcase-caption .brand-logo-royal{width:155px}.showcase-caption .brand-logo{max-height:34px}.showcase-caption>span:has(.brand-logo){margin-bottom:10px}}

/* A white backing preserves the official Amazon ink-and-orange artwork. */
.enterprise-brand .brand-logo-amazon,.case-brand-lockup .brand-logo-amazon{box-sizing:content-box;background:#fff;padding:16px 22px;border-radius:12px;max-width:calc(100% - 44px);max-height:none}
.enterprise-brand .brand-logo-royal,.case-brand-lockup .brand-logo-royal{max-height:none}
.showcase-caption .brand-logo-amazon{box-sizing:content-box;background:#fff;padding:8px 12px;border-radius:7px;max-height:none}
.showcase-caption .brand-logo-royal{max-height:none}
.royal .enterprise-cover img{object-position:50% 55%}
@media(max-width:767px){.enterprise-brand .brand-logo-amazon,.case-brand-lockup .brand-logo-amazon{padding:14px 18px;max-width:calc(100% - 36px)}.showcase-caption .brand-logo-amazon{padding:6px 9px}}
/* Transparent, monochrome Amazon mark on the green surface. */
.enterprise-brand .brand-logo-amazon,.case-brand-lockup .brand-logo-amazon{background:transparent;padding:0;border-radius:0;max-width:100%;filter:brightness(0) invert(1)}
.nda-notice{padding:28px;border:1px solid #c9d3e3;border-radius:18px;background:#f4f7fc;margin:0 0 64px;max-width:850px}.nda-notice strong{font-size:1.25rem}.nda-notice p{font-size:1rem;line-height:1.65;max-width:65ch;color:#394457;margin:12px 0}
.responsive-demo{margin:60px 0}.device-pair{display:grid;grid-template-columns:2.5fr 1fr;gap:28px;align-items:center;margin-top:28px}.desktop-concept,.mobile-concept{background:#fff;border:1px solid #a7b3c5;box-shadow:0 16px 45px #10214312;border-radius:18px;overflow:hidden;color:#172238}.concept-nav{background:#112a4b;color:white;padding:20px;font-size:.875rem;display:flex;justify-content:space-between;gap:20px}.concept-nav span{font-size:.8125rem}.concept-content{padding:28px;display:grid;grid-template-columns:1fr 1.5fr;gap:26px}.concept-content img,.mobile-concept img{width:100%;aspect-ratio:1.7;object-fit:cover;border-radius:10px}.concept-content p,.mobile-concept p{font-size:.875rem;line-height:1.6}.concept-content small,.mobile-concept small{font-size:.75rem;letter-spacing:.04em}.concept-content h4,.mobile-concept h4{font-size:1.15rem;margin:14px 0}.concept-action{display:block;background:#12345b;color:#fff;padding:12px 16px;border-radius:8px;font-size:.875rem}.mobile-concept{padding:22px;border:6px solid #172238;border-radius:28px}.device-pair progress{width:100%;accent-color:#12345b}.responsive-demo .demo-caption{flex-wrap:wrap}
@media(max-width:767px){.device-pair{grid-template-columns:1fr;gap:24px}.concept-content{padding:18px;gap:18px}.concept-nav{flex-direction:column}.mobile-concept{max-width:300px;margin:auto}.nda-notice{padding:22px;margin-bottom:42px}}
/* RCG: real project screens and accessible annotation layer. */
.rcg-photo-header{padding-bottom:52px}.rcg-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.rcg-photo-header h1{font-size:clamp(2.75rem,4.7vw,4.75rem);max-width:760px}.rcg-hero-photo{margin:0;min-width:0}.rcg-hero-photo img{width:100%;height:460px;object-fit:cover;border-radius:20px}.rcg-hero-photo figcaption{font-size:.875rem;line-height:1.6;color:#d2e0f2;margin-top:12px}.rcg-hero-photo a{text-decoration:underline;color:#fff}.rcg-photo-header .project-facts dt{color:#c1d2e8}.rcg-photo-header .enterprise-lede{color:#d2e0f2;font-size:1.1875rem}.rcg-section-nav{display:flex;flex-wrap:wrap;gap:12px 26px;padding:18px 0;border-bottom:1px solid #c8ced8}.rcg-section-nav a{font-size:.9375rem;color:#203958;text-decoration:underline;text-underline-offset:5px;padding:6px 0}.rcg-section-nav a[aria-current=true]{color:#651e8d;font-weight:700}.rcg-narrative section[id]{scroll-margin-top:110px}.rcg-narrative .evidence-block .outcome-grid h3{color:#192b46}.rcg-narrative .evidence-block .outcome-grid p{color:#455268}.rcg-narrative .evidence-block .outcome-grid{border-top-color:#c8d0dc}.rcg-narrative .visual-note{font-size:.875rem;color:#455268}.rcg-visual-section{padding:44px 0;border-bottom:1px solid #d6dae2}.rcg-example-label{padding:8px 12px;border-radius:8px;background:#eee6f7;color:#572076;font-size:.875rem;line-height:1.5}.rcg-screen-pair{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(0,1fr);gap:28px;align-items:start}.rcg-visual{margin:0;min-width:0}.rcg-visual img{width:100%;height:auto;display:block;border:1px solid #d1d5df;border-radius:12px}.rcg-visual figcaption{font-size:.875rem;line-height:1.6;color:#455268;margin:14px 0 0}.rcg-visual .image-zoom{width:100%;display:block}.rcg-visual .image-zoom img{max-height:none}.rcg-rationale-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px}.rcg-rationale-grid article{border-top:2px solid #76509b;padding-top:18px}.rcg-rationale-grid span{font-size:.875rem;color:#612486}.rcg-rationale-grid h4{font-size:1.125rem;margin:12px 0;color:#192b46}.rcg-rationale-grid p{font-size:1rem;line-height:1.7;color:#455268;margin:0}.annotation-intro{font-size:1rem;line-height:1.65;color:#455268;max-width:65ch}.annotation-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:start;background:#f1f3f8;padding:32px;border:1px solid #d5dbe6;border-radius:20px}.offer-focus{position:relative;overflow:hidden;width:100%;max-width:480px;aspect-ratio:512/824;background:white;border-radius:12px;align-self:start;position:sticky;top:110px}.offer-focus>img{display:block;width:400%;max-width:none;height:auto}.offer-arrows{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.offer-arrows g{opacity:.3;transition:opacity .25s}.offer-arrows g.active{opacity:1}.offer-arrows path{fill:none;stroke:#6b1e91;stroke-width:1.6;vector-effect:non-scaling-stroke}.offer-arrows marker path{fill:#6b1e91;stroke:none}.offer-arrows circle{fill:#6b1e91;stroke:white;stroke-width:.5}.offer-arrows text{fill:white;font-size:3px;font-weight:700;text-anchor:middle;font-family:system-ui,sans-serif}.annotation-notes{list-style:none;margin:0;padding:0;display:grid;gap:10px}.annotation-notes button{font:inherit;width:100%;display:grid;grid-template-columns:35px 1fr;gap:12px;align-items:start;text-align:left;border:1px solid #c5cede;border-radius:10px;background:#fff;padding:14px;cursor:pointer;color:#1b2b43;transition:background .2s,border-color .2s}.annotation-notes button[aria-pressed=true]{border-color:#6b1e91;background:#f6edfc}.annotation-number{font-size:.875rem;font-weight:700;color:#612486}.annotation-notes strong{font-size:1rem;line-height:1.4}.annotation-copy{display:block;font-size:.9375rem;line-height:1.6;color:#455268;margin-top:6px}.annotation-notes button:focus-visible{outline:3px solid #075ec9;outline-offset:3px}.rcg-breakpoint-visual{padding:38px 0}.rcg-breakpoint-visual img{background:#f1f3f8}.rcg-narrative .outcome-block p{color:#d2e0f2}
@media(max-width:1050px){.rcg-hero-grid{gap:28px}.rcg-hero-photo img{height:400px}.annotation-board{gap:25px;padding:24px}.rcg-screen-pair{gap:20px}}
@media(max-width:767px){.rcg-hero-grid{grid-template-columns:1fr;gap:30px}.rcg-hero-photo img{height:290px}.rcg-photo-header h1{font-size:2.75rem}.rcg-photo-header .project-facts{margin-top:30px}.rcg-screen-pair{grid-template-columns:1fr;gap:32px}.mobile-screen{max-width:350px;width:100%;margin:auto}.rcg-rationale-grid{grid-template-columns:1fr;gap:24px}.rcg-visual-section{padding:32px 0}.annotation-board{grid-template-columns:1fr;padding:16px;gap:25px}.offer-focus{position:relative;top:auto;max-width:430px;margin:auto}.offer-arrows g{opacity:1}.annotation-notes button{padding:14px}.rcg-section-nav{gap:6px 20px}.rcg-narrative section[id]{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){.offer-arrows g,.annotation-notes button{transition:none}}
/* RCG editorial refinement: compact examples with full-size inspection. */
.rcg-narrative .story-row{padding:44px 0;grid-template-columns:1fr 2.6fr;gap:38px}.rcg-narrative .story-row p{font-size:1.0625rem;line-height:1.7;max-width:70ch}.rcg-narrative .story-row h2{font-size:clamp(1.875rem,2.8vw,2.625rem);margin-bottom:20px}.rcg-business-brief{border-left:3px solid #76509b;padding-left:22px;margin-top:28px}.rcg-business-brief h3{font-size:1.125rem;margin:0 0 10px}.rcg-gallery-intro{font-size:1rem;color:#455268;line-height:1.6;max-width:66ch;margin-bottom:28px}.brand-screen-heading{font-size:1.0625rem;letter-spacing:-.01em;margin:0 0 16px;color:#192b46}.celebrity-examples{margin-top:32px}.rcg-screen-pair{max-width:980px;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px}.rcg-screen-pair .rcg-visual{margin:0;max-width:none}.rcg-screen-pair .image-zoom{background:#eef1f6;border:1px solid #d1d5df;border-radius:14px;padding:16px}.rcg-screen-pair .rcg-screen,.rcg-screen-pair .image-zoom .rcg-screen{width:100%;height:380px;max-height:380px;object-fit:contain;object-position:top center;border:0;border-radius:0;background:#eef1f6}.rcg-screen-pair .zoom-label{font-size:.8125rem}.rcg-screen-pair figcaption{margin-top:10px}.rcg-narrative .nda-notice{padding:20px 24px;margin-bottom:24px}.rcg-narrative .nda-notice p{font-size:.9375rem}.rcg-narrative .outcome-block>p{font-size:1.0625rem}.rcg-hero-photo img{height:400px;object-fit:cover}.rcg-narrative .annotation-board{padding:24px;gap:28px}.rcg-narrative .offer-focus{max-width:380px;margin:auto}.rcg-narrative .annotation-notes{gap:7px}.rcg-narrative .annotation-notes button{padding:10px 12px}.rcg-narrative .annotation-copy{font-size:.875rem;line-height:1.55}
@media(max-width:767px){.rcg-narrative .story-row{grid-template-columns:1fr;gap:18px;padding:34px 0}.rcg-screen-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px}.rcg-screen-pair .image-zoom{padding:8px}.rcg-screen-pair .rcg-screen,.rcg-screen-pair .image-zoom .rcg-screen{height:240px;max-height:240px}.rcg-screen-pair .zoom-label{position:static;margin-top:8px;font-size:.75rem}.rcg-hero-photo img{height:240px}.rcg-narrative .annotation-board{padding:14px}.rcg-narrative .offer-focus{max-width:340px}.rcg-screen-pair figcaption{font-size:.8125rem}}

.rcg-hero-photo img{object-position:72% center}

/* Keep annotation markers in a dedicated gutter, outside the original card. */
.rcg-narrative .annotation-board{grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.offer-diagram{position:sticky;top:110px;width:100%;max-width:420px;padding-right:40px;box-sizing:border-box;margin:0 auto;min-width:0}
.rcg-narrative .offer-diagram .offer-focus{position:relative;top:auto;width:100%;max-width:none;margin:0;border-radius:12px}
.offer-callout-rail{position:absolute;inset:0 0 0 auto;width:40px;pointer-events:none}
.offer-callout{position:absolute;top:var(--callout-y);right:0;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;box-sizing:border-box;background:#fff;border:1px solid #a7adc0;color:#4b5267;font:600 12px/1 system-ui,sans-serif;transition:background .2s,color .2s,border-color .2s}
.offer-callout::before{content:"";position:absolute;right:100%;width:12px;height:1px;background:#a7adc0}
.offer-callout.active{background:#612486;border-color:#612486;color:#fff}
.offer-callout.active::before{background:#612486;height:2px}
.rcg-narrative .annotation-notes{gap:0;min-width:0}
.rcg-narrative .annotation-notes button{border:0;border-bottom:1px solid #d5dbe6;border-radius:0;background:transparent;padding:13px 12px;grid-template-columns:26px minmax(0,1fr);gap:10px}
.rcg-narrative .annotation-notes button[aria-pressed=true]{background:#eae2f2;border-radius:8px;border-bottom-color:transparent}
.rcg-narrative .annotation-copy{margin-top:4px;overflow-wrap:anywhere}
@media(max-width:1000px){.rcg-narrative .annotation-board{grid-template-columns:minmax(0,1fr);gap:28px}.offer-diagram{position:relative;top:auto}.rcg-narrative .annotation-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.rcg-hero-grid{gap:28px}.rcg-narrative .story-row{grid-template-columns:1fr;gap:18px}}
@media(max-width:600px){.rcg-narrative .annotation-board{padding:16px 12px;gap:20px;border-radius:14px}.offer-diagram{max-width:360px}.rcg-narrative .annotation-notes{grid-template-columns:minmax(0,1fr)}.rcg-narrative .annotation-notes button{padding:12px 8px}.rcg-screen-pair{grid-template-columns:minmax(0,1fr);gap:24px}.rcg-screen-pair .rcg-screen,.rcg-screen-pair .image-zoom .rcg-screen{height:300px;max-height:300px}.rcg-screen-pair .mobile-screen{max-width:250px;margin-inline:auto;width:100%}.rcg-visual-section .demo-caption{align-items:flex-start;gap:12px}.rcg-narrative .outcome-grid{grid-template-columns:minmax(0,1fr)}.rcg-narrative .nda-notice{padding:18px}.rcg-narrative .annotation-copy{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){.offer-callout{transition:none}}
