@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{font-family:Arial,Helvetica,sans-serif;font-synthesis:none;color-scheme:dark;--bg:#151718;--ink:#f3f5ee;--muted:#b9c1bd;--line:#3a4140;--accent:#d6f56b;--accent-ink:#182010;--surface:#202729;--art:#243333;--art-ink:#d4dfcb;--soft:#b6d1c4;--head:Arial,Helvetica,sans-serif;--body:Arial,Helvetica,sans-serif;--card-gap:64px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.65}body.raga{color-scheme:light;--bg:#f7f8f6;--ink:#162d35;--muted:#52666c;--line:#cbd6d4;--accent:#a83c08;--accent-ink:#fff;--surface:#e9f0ee;--art:#e0ebe7;--art-ink:#184e59;--soft:#174e5b;--head:'Plus Jakarta Sans',Arial,sans-serif;--body:'Plus Jakarta Sans',Arial,sans-serif}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--head);line-height:1.1;font-weight:500;text-wrap:balance}h1{font-size:clamp(3.8rem,6.5vw,6.5rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.5vw,3.1rem);letter-spacing:-.035em}h3{font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:-.025em}p{max-width:67ch}svg,img{display:block;max-width:100%}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;left:18px;top:-100px;z-index:100;background:var(--accent);color:var(--accent-ink);padding:12px}.skip:focus{top:10px}.eyebrow{font:500 11px/1.6 monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:22px}
.preview-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:9px 28px;font:12px/1.4 Arial,sans-serif;color:#e2e8e2;background:#242a2d;border-bottom:1px solid #444d4f}.preview-bar>span{display:flex;align-items:center;gap:8px}.preview-bar i{width:6px;height:6px;background:#d6f56b;border-radius:50%;flex-shrink:0}.preview-bar a{padding:5px 0;white-space:nowrap}.site-header{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px}.rr-mark{font-size:32px;line-height:1;font-weight:700;letter-spacing:-2px;color:var(--accent)}.brand-name{font-size:14px;letter-spacing:-.02em}.brand img{width:125px;height:53px;object-fit:contain}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a{min-height:44px;display:inline-flex;align-items:center;gap:15px}nav [aria-current=page]{color:var(--accent)}.nav-cta{border-bottom:1px solid var(--accent)}
.hero{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:64px;padding-block:88px 80px}.hero h1>span{color:var(--accent)}.hero-intro{font-size:18px;line-height:1.65;color:var(--muted);max-width:510px;margin-top:30px}.hero .text-link{margin-top:30px}.text-link{display:inline-flex;gap:26px;align-items:center;min-height:44px;font-size:14px;font-weight:600}.hero-signature{display:flex;align-items:center;gap:13px;margin-top:49px;color:var(--muted);font-size:11px}.small-line{width:29px;height:1px;background:var(--muted)}.hero-feature{display:block;background:var(--art);border:1px solid var(--line);transform:rotate(1.3deg);transition:transform .22s ease}.hero-feature:hover{transform:rotate(0);text-decoration:none}.feature-top{padding:20px 24px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font:11px monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--art-ink)}.hero-feature svg{width:100%;color:var(--art-ink)}.feature-bottom{padding:24px 28px 12px;display:flex;gap:20px;align-items:center;justify-content:space-between;color:var(--art-ink);border-top:1px solid var(--line)}.feature-bottom>div>span{display:block;font:10px monospace;text-transform:uppercase;letter-spacing:.1em;margin-bottom:9px}.feature-bottom strong{display:block;font-size:22px;line-height:1.3;font-weight:500;max-width:310px}.circle-arrow{border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;font-size:21px}.illustration-note{color:var(--art-ink);opacity:.82;font-size:10px;padding:6px 28px 22px}.diagram-doc rect{fill:var(--art);stroke:currentColor;stroke-width:1.2}.diagram-doc path,.diagram-doc circle{fill:none;stroke:currentColor;stroke-width:1;opacity:.65}.diagram-highlight rect,.diagram-highlight circle{fill:var(--art);stroke:var(--accent);stroke-width:2}.diagram-highlight path{fill:none;stroke:var(--accent);stroke-width:2}.diagram-text{fill:currentColor;font:12px Arial,sans-serif;letter-spacing:.2px}
.context-note{padding:28px 0;display:grid;grid-template-columns:1.45fr 1fr;gap:60px;border-block:1px solid var(--line);align-items:center}.context-note p{font-size:13px;color:var(--muted);max-width:720px}.context-note strong{font-weight:500;color:var(--ink)}.note-tag{text-align:right;font:10px/1.6 monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--soft)}.work-section{padding-top:80px;padding-bottom:80px}.section-top{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:32px}.section-top .eyebrow{margin-bottom:12px}.result-count{font:12px monospace;color:var(--muted);white-space:nowrap;padding-bottom:7px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:46px}.filters button{background:transparent;border:1px solid var(--line);color:var(--muted);padding:9px 18px;min-height:44px;border-radius:3px;font-size:12px;transition:background .2s,color .2s,border-color .2s}.filters button:hover{border-color:var(--accent);color:var(--ink)}.filters button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--card-gap) 42px}.project-card{min-width:0;display:flex;flex-direction:column}.card-image{display:block;position:relative;overflow:hidden;background:var(--art);color:var(--art-ink);aspect-ratio:1.83;border:1px solid var(--line);transition:background .25s}.card-image svg{height:100%;width:100%;transition:transform .3s}.card-image:hover svg{transform:scale(1.035)}.card-image.matching,.card-image.campaign{--art:#273132}.card-image.research,.card-image.signals{--art:#29312a}.card-image.conversation,.card-image.mobile{--art:#292e30}.raga .card-image.matching,.raga .card-image.campaign{--art:#e9e9df}.raga .card-image.research,.raga .card-image.signals{--art:#e1e9e5}.raga .card-image.conversation,.raga .card-image.mobile{--art:#e8edf0}.image-label{position:absolute;bottom:10px;left:13px;font:9px monospace;letter-spacing:.07em;text-transform:uppercase;background:var(--art);padding:4px 6px;color:var(--art-ink)}.card-arrow{position:absolute;right:16px;top:12px;font-size:22px;color:var(--art-ink)}.card-meta{display:flex;justify-content:space-between;gap:15px;margin:22px 0 14px;font:10px/1.6 monospace;letter-spacing:.03em;color:var(--soft)}.card-meta span:last-child{text-align:right;color:var(--muted)}.project-card>p{font-size:14px;line-height:1.7;margin:15px 0 22px;color:var(--muted);max-width:57ch}.card-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:13px;margin-top:auto;font-size:11px;align-items:center}.card-bottom>span{color:var(--muted)}.card-bottom a{display:inline-flex;align-items:center;min-height:35px;gap:15px;font-weight:600}
.how{padding-block:66px 78px;border-top:1px solid var(--line)}.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.how-grid h2{font-size:52px;line-height:1.08;color:var(--soft)}.how-grid>div{padding-top:5px}.how-grid p{font-size:17px;margin-bottom:20px}.how-grid .muted{font-size:14px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-block:74px;border-top:1px solid var(--line)}.contact h2{font-size:54px}.contact>div>p:not(.eyebrow){font-size:16px;color:var(--muted);margin-bottom:28px}.button{display:inline-flex;gap:50px;align-items:center;justify-content:space-between;padding:15px 22px;min-height:50px;background:var(--accent);color:var(--accent-ink);font-size:13px;font-weight:600;transition:transform .2s}.button:hover{transform:translateY(-2px);text-decoration:none}.button:active{transform:translateY(1px)}footer{display:flex;justify-content:space-between;gap:20px;padding-block:26px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer a{min-height:30px}
.raga .hero h1{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.045em;font-size:clamp(3.5rem,5.9vw,6rem)}.raga .hero h1 em{font-weight:500;color:var(--accent)}.raga .hero-feature{transform:rotate(-1deg)}.raga .hero-feature:hover{transform:rotate(0)}.raga .hero{padding-block:80px}.raga .card-meta{color:#285b61}.raga .how-grid h2{font-family:'Playfair Display',Georgia,serif}.raga .hero .eyebrow{color:#266375}.raga .nav-cta{background:#ff821a;color:#15252c;border:0;padding:0 18px;border-radius:5px;font-weight:700}.raga nav [aria-current=page]{color:#176a80}
.case-heading{padding-top:43px;padding-bottom:45px}.back{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:var(--muted);margin-bottom:40px}.case-heading h1{font-size:clamp(2.6rem,5.2vw,5rem);max-width:1000px;letter-spacing:-.045em;line-height:1.1}.case-intro{font-size:20px;color:var(--muted);max-width:740px;margin-top:26px}.case-facts{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:30px;margin-top:45px;padding-top:24px;border-top:1px solid var(--line)}.case-facts span{font:10px monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);display:block;margin-bottom:10px}.case-facts strong{font-weight:500;font-size:14px}.big-diagram{background:var(--art);color:var(--art-ink);border:1px solid var(--line);padding:25px 45px 17px}.big-diagram svg{width:min(760px,100%);margin:auto;max-height:460px}.big-diagram>p{text-align:center;font-size:11px;max-width:none;color:var(--art-ink);margin-top:10px}.flow-caption{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:20px 0 0;margin:0}.flow-caption li{border-top:1px solid var(--line);padding-top:14px;font-size:12px}.flow-caption span{font:11px monospace;color:var(--soft);margin-right:15px}.case-body{display:grid;grid-template-columns:220px 1fr;gap:90px;padding-block:90px 70px}.case-body aside{align-self:start;position:sticky;top:28px;font-size:12px}.case-body aside>a{display:block;min-height:40px;color:var(--muted)}.stack{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.stack>span{display:block;font-size:11px;color:var(--muted);margin-bottom:9px}.stack .eyebrow{color:var(--soft);margin-bottom:20px}.case-body article{max-width:810px}.case-body article>section{margin-bottom:65px;scroll-margin-top:40px}.case-body h2{font-size:34px;margin-bottom:25px}.case-body p{font-size:17px;line-height:1.85;color:var(--muted)}.case-body .eyebrow{font-size:11px;color:var(--soft);line-height:1.6;margin-bottom:15px}.implementation{list-style:none;padding:0;margin:0 0 30px}.implementation li{display:flex;align-items:baseline;gap:23px;border-top:1px solid var(--line);padding:21px 0}.implementation li>span{font:11px monospace;color:var(--soft)}.implementation li>p{font-size:15px;line-height:1.75}.decision{background:var(--surface);padding:25px 30px;border-left:2px solid var(--accent)}.decision>span{font:10px monospace;text-transform:uppercase;letter-spacing:.05em;color:var(--soft);display:block;margin-bottom:13px}.decision p{font-size:17px;color:var(--ink)}.case-body .scope-note{font-size:13px;border-top:1px solid var(--line);margin-top:26px;padding-top:17px;line-height:1.75}.fit{border-top:1px solid var(--line);padding-top:40px}.fit .text-link{margin-top:20px;color:var(--ink)}.related{padding-bottom:90px;border-top:1px solid var(--line);padding-top:60px}.related .section-top{margin-bottom:35px}.raga .case-heading h1{font-family:'Playfair Display',Georgia,serif}.raga .case-body .decision{background:#e7eeea}
@media(min-width:1700px){.wrap{width:min(1400px,calc(100% - 160px))}.hero{gap:100px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:35px;padding-block:60px}.hero h1{font-size:65px}.hero-intro{font-size:16px}.feature-bottom strong{font-size:18px}.feature-bottom{padding:20px}.hero-signature{font-size:10px}.brand-name{display:none}.context-note{gap:25px}.project-grid{gap:48px 28px}.how-grid,.contact{gap:45px}.case-body{grid-template-columns:160px 1fr;gap:40px}.case-heading h1{font-size:59px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.preview-bar{padding:9px 18px;font-size:10px;gap:10px}.preview-bar>span{max-width:170px}.preview-bar a{font-size:10px}.site-header{min-height:82px}nav{gap:19px;font-size:11px}.nav-about{display:none}.brand img{width:98px;height:auto}.rr-mark{font-size:29px}.raga .nav-cta{padding:0 10px}.hero,.raga .hero{grid-template-columns:1fr;gap:36px;padding-block:44px 46px}.hero h1,.raga .hero h1{font-size:clamp(49px,12vw,70px)}.hero .eyebrow{font-size:9px;letter-spacing:.08em;margin-bottom:20px}.hero-intro{font-size:16px;margin-top:22px}.hero .text-link{margin-top:20px}.hero-signature{margin-top:23px;font-size:11px}.hero-feature,.raga .hero-feature{transform:none}.feature-top{padding:15px 18px;font-size:10px}.feature-bottom strong{font-size:20px}.feature-bottom{padding:19px}.illustration-note{padding-left:19px}.context-note{grid-template-columns:1fr;gap:17px;padding-block:25px}.context-note p{font-size:12px}.note-tag{text-align:left;font-size:9px}.work-section{padding-block:47px 55px}.section-top{align-items:start;gap:10px}.section-top h2{font-size:29px}.section-top .eyebrow{font-size:9px}.result-count{font-size:10px;padding-top:34px}.filters{gap:6px;margin-bottom:29px}.filters button{padding:8px 12px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:40px}.card-meta{margin-top:16px;font-size:9px}.project-card h3{font-size:26px}.project-card>p{font-size:14px}.card-bottom{font-size:11px}.how{padding-block:42px}.how-grid,.contact{grid-template-columns:1fr;gap:25px}.how-grid h2{font-size:44px}.how-grid p{font-size:16px}.contact{padding-block:46px}.contact h2{font-size:44px}.contact>div>p:not(.eyebrow){font-size:15px}.button{gap:35px}footer{flex-wrap:wrap;font-size:10px;gap:12px}footer>span:nth-child(2){display:none}.case-heading{padding-top:22px}.back{margin-bottom:25px}.case-heading .eyebrow{font-size:9px}.case-heading h1{font-size:40px}.case-intro{font-size:17px}.case-facts{grid-template-columns:1fr 1fr;gap:23px;margin-top:30px}.case-facts>div:last-child{grid-column:1/-1}.case-facts strong{font-size:13px}.big-diagram{padding:10px}.big-diagram>p{font-size:10px;padding-inline:10px}.flow-caption{grid-template-columns:1fr 1fr;gap:15px}.flow-caption li{font-size:11px}.case-body{display:block;padding-block:48px 20px}.case-body aside{display:none}.case-body h2{font-size:30px}.case-body p{font-size:16px}.case-body article>section{margin-bottom:43px}.implementation li{gap:15px}.decision{padding:20px}.decision p{font-size:16px}.related{padding-block:42px}.related h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.preview-bar,nav,.filters,.contact,.card-arrow,footer,.case-body aside{display:none}.wrap{width:100%}body{color:#172a30!important;background:#fff!important}.case-body{display:block}.project-grid{grid-template-columns:1fr 1fr}.project-card{break-inside:avoid}.hero-feature{transform:none}.case-body p,.hero-intro{color:#334!important}}

/* Homepage retains existing services, approach, founder portrait and local demo. */
.home-services,.home-approach,.home-resources,.home-founder{padding-block:72px;border-top:1px solid var(--line)}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:35px}.section-heading>p{max-width:52ch;color:var(--muted)}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.services article{border-top:1px solid var(--line);padding-top:24px}.services .number{font:10px monospace;color:var(--soft)}.services h3{font-size:25px;margin-top:18px}.services p{font-size:14px;color:var(--muted);margin-block:18px}.services .text-link{font-size:12px}
.steps{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:34px;padding:0;margin-top:40px}.steps li{counter-increment:step;border-top:1px solid var(--line);padding-top:24px}.steps li:before{content:'0' counter(step);font:11px monospace;color:var(--accent)}.steps h3{font-size:23px;margin-block:20px 16px}.steps p{font-size:14px;color:var(--muted)}
.home-founder{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:center}.home-founder>div>p:not(.eyebrow){color:var(--muted);margin-top:24px}.home-founder .text-link{margin-top:28px}.home-founder img{width:100%;max-width:320px;height:390px;object-fit:cover;object-position:center 24%;filter:grayscale(1);justify-self:end}
.demo{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;border-block:1px solid var(--line);padding-block:35px;margin-top:35px}.demo h3{font-size:28px;margin-block:20px}.demo p{font-size:14px;color:var(--muted);margin-block:18px}.demo .tag,.project .tag{font:10px monospace;text-transform:uppercase;color:var(--soft)}.demo button{border:0}.demo-toolbar{display:flex;justify-content:space-between;padding:17px;background:var(--surface);font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th,td{padding:13px 10px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-weight:400}.status{font-size:10px;color:var(--muted)}.status.ready{color:var(--accent)}.status.duplicate,.status.review{color:#f2bd83}.demo .check-result{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.project-list{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}.project{display:grid;grid-template-columns:110px 1fr;gap:25px}.project h3{font-size:23px;margin-block:13px}.project p{font-size:13px;color:var(--muted);margin-block:12px}.project .text-link{font-size:12px}.project-art{align-self:start;background:var(--art);padding:14px}.project-art img{width:100%;height:auto}.wordmark>span{font-size:21px;font-weight:bold}.wordmark small{font-size:10px;display:block;margin-top:15px}.accent{color:var(--accent)}
@media(max-width:700px){.site-header nav{gap:12px;font-size:10px}.section-heading,.services,.steps,.home-founder,.demo,.project-list{grid-template-columns:1fr;gap:28px}.section-heading h2,.home-founder h2,.home-resources h2{font-size:34px}.home-services,.home-approach,.home-founder,.home-resources{padding-block:45px}.home-founder img{justify-self:start;max-width:240px;height:310px}.project{grid-template-columns:85px 1fr;gap:20px}.demo-output{min-width:0}.hero h1{font-size:clamp(43px,10.5vw,65px)}}
