@charset "UTF-8";
.feasibility-stages.single-stage{grid-template-columns:minmax(0,560px);justify-content:center}
:root{--ink:#192020;--muted:#59615f;--blue:#213ee6;--paper:#fafbf9;--line:#d7dcd7;font-family:"Varela Round",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:7px}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}header{display:flex;align-items:center;justify-content:space-between;padding:38px 0;border-bottom:1px solid var(--line)}.brand{font-weight:800;font-size:28px;letter-spacing:-1.6px}.brand span{font-size:12px;vertical-align:top;display:inline-block;margin:2px 0 0 5px;letter-spacing:0}nav{display:flex;gap:38px;font-size:15px}nav span{font-size:12px;color:var(--muted);margin-left:5px}.hero{padding-top:85px;padding-bottom:78px}.eyebrow{text-transform:uppercase;letter-spacing:1.6px;font-size:13px;font-weight:600;margin:0 0 28px}h1{font-size:clamp(56px,7.6vw,112px);font-weight:500;letter-spacing:-.065em;line-height:1.03;margin:0}h1 em{font-family:inherit;font-weight:400;color:var(--blue);letter-spacing:-.065em}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:34px}.hero-bottom p{max-width:550px;font-size:19px;line-height:1.65;margin:0;color:var(--muted)}.round-link{width:60px;height:60px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:28px;transition:background .2s,color .2s}.round-link:hover{background:var(--blue);color:white}.section-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:24px 0}.section-label h2,.section-label span{font-size:13px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;margin:0}.project{margin-bottom:24px;padding:30px 42px 0;border-radius:4px;overflow:hidden}.firstthought{background:#203ddd;color:white}.insurance{background:#e8eddf}.cureatr{background:#e8eaf2}.project-top{display:flex;align-items:center;gap:20px;font-size:14px}.project-top p{margin:0}.number{font-size:13px;opacity:.7}.category{margin-left:auto;opacity:.8}.project-main{display:grid;grid-template-columns:1.6fr 1fr;gap:60px;padding:48px 0 42px;align-items:end}h3{font-size:17px;margin:0 0 20px;font-weight:500}.project-deck{font-size:clamp(30px,3.9vw,56px);line-height:1.1;letter-spacing:-.045em;margin:0}.project-description p{font-size:17px;line-height:1.65;margin:0 0 24px;max-width:330px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:38px;border-bottom:1px solid currentColor;padding-bottom:8px}.text-link span{font-size:21px}.text-link:hover{opacity:.65}.fact-strip{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid #ffffff45;padding:27px 0 30px;gap:20px}.fact-strip strong{display:block;font-size:23px;font-weight:500;letter-spacing:-.6px;margin-bottom:8px}.fact-strip span{font-size:13px;color:#e1e6ff}.priority-strip{display:flex;gap:10px;padding-bottom:30px;flex-wrap:wrap}.priority-strip span{border:1px solid #aab89d;border-radius:30px;padding:10px 17px;font-size:14px}details{border-top:1px solid #19202035}.firstthought details{border-color:#ffffff45}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:21px 0;font-size:14px}summary::-webkit-details-marker{display:none}summary span{font-size:22px;font-weight:400;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}.story{background:var(--paper);color:var(--ink);margin:0 -42px;padding:55px 60px 45px}.story .eyebrow{color:var(--muted)}h4{font-size:clamp(32px,4vw,53px);line-height:1.12;letter-spacing:-.045em;font-weight:500;margin:0 0 42px}.story-grid{display:grid;grid-template-columns:1fr 2fr;gap:28px 40px}.story-grid h5{font-size:16px;margin:5px 0 0}.story-grid p,.standalone{font-size:17px;line-height:1.8;margin:0;color:var(--muted)}.standalone{max-width:720px}.editorial-note{border-top:1px solid var(--line);padding-top:22px;font-size:14px;line-height:1.6;color:var(--muted);margin:36px 0 0}blockquote{font-family:inherit;font-size:27px;line-height:1.4;margin:45px 0 0;max-width:750px;color:var(--blue)}.about{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding:95px 0 100px}.about h2{font-size:clamp(32px,3.4vw,49px);letter-spacing:-.04em;font-weight:500;line-height:1.13;margin:0 0 28px}.about p:not(.eyebrow){font-size:18px;line-height:1.7;color:var(--muted);max-width:660px}.expertise{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;padding-top:15px}footer{border-top:1px solid var(--line);padding:32px 0 42px;display:flex;align-items:center;justify-content:space-between;gap:20px}footer>span,footer>a:last-child{font-size:13px}footer>span{color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:white;color:var(--blue);z-index:10}.skip:focus{top:20px}@media(min-width:1600px){.hero{padding-top:105px;padding-bottom:100px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{padding:25px 0}.brand{font-size:25px}nav{gap:20px;font-size:14px}nav span{display:none}.hero{padding:56px 0}.hero-bottom{gap:22px;margin-top:26px}.hero-bottom p{font-size:17px}.round-link{flex-shrink:0;width:44px;height:44px;font-size:23px}.project{padding:23px 24px 0}.project-top{gap:13px;flex-wrap:wrap;font-size:13px}.category{width:100%;margin-left:35px;font-size:12px}.project-main{grid-template-columns:1fr;gap:26px;padding:34px 0}.project-deck{font-size:39px}.project-description p{max-width:100%;font-size:16px}.fact-strip{grid-template-columns:1fr;gap:21px}.fact-strip strong{font-size:22px}.fact-strip>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.fact-strip strong{margin:0}.fact-strip span{text-align:right;max-width:150px;line-height:1.5}.priority-strip span{font-size:13px;padding:9px 12px}.story{margin:0 -24px;padding:35px 24px}.story-grid{grid-template-columns:1fr;gap:12px}.story-grid p{margin-bottom:18px}.story-grid h5{margin:0}.about{grid-template-columns:1fr;gap:0;padding:65px 0}.about .eyebrow{margin-bottom:24px}footer{flex-wrap:wrap}footer>span{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.case-section{margin-top:42px}.retrospective{border-top:1px solid var(--line);margin-top:48px;padding-top:40px}.retrospective h4{margin-bottom:25px}.research-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:36px 0 44px}.research-flow li{border-top:2px solid var(--blue);padding-top:17px}.research-flow li>span{display:block;color:var(--blue);font-size:13px;margin-bottom:17px}.research-flow strong{display:block;font-size:16px;line-height:1.4}.research-flow p{font-size:15px;line-height:1.6;color:var(--muted);margin:10px 0 0}@media(max-width:900px){.research-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.research-flow{grid-template-columns:1fr}}

.case-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:25px 0;border-block:1px solid var(--line)}.case-facts dt{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:9px}.case-facts dd{margin:0;font-size:16px;line-height:1.6}.full-fact{grid-column:1/-1}.cureatr-flow{row-gap:32px}.cureatr-outcome{margin:44px 0;padding:34px;background:#e8eaf2;border-left:3px solid var(--blue)}.cureatr-outcome h4{margin:0 0 12px}.cureatr-outcome p:last-child{font-size:17px;line-height:1.6;margin:0}.source-link{display:inline-block;margin-top:12px;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.cureatr-reflection{border-top:1px solid var(--line);padding-top:36px}.cureatr-reflection .standalone+.standalone{margin-top:20px}@media(max-width:760px){.case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.cureatr-outcome{padding:25px}}

.case-wrap{width:min(1040px,calc(100% - 112px));margin:auto}.back-link{display:inline-block;margin:40px 0 52px;font-size:14px}.case-content>h1{font-size:clamp(40px,5.5vw,76px);line-height:1.08;letter-spacing:-.055em;margin:0 0 40px}.case-content h2{font-size:clamp(30px,3.7vw,49px);font-weight:500;line-height:1.15;letter-spacing:-.045em;margin:0 0 28px}.case-content .story-grid h3{font-size:17px;font-weight:600;line-height:1.5;letter-spacing:0;margin:3px 0 0}.case-content .story-grid{align-items:start}.image-placeholder{margin:24px 0 40px;grid-column:1/-1;width:100%}.placeholder-canvas{aspect-ratio:16/9;min-height:220px;background:#edf0f6;border:1px dashed #aeb7ca;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:35px;text-align:center;gap:15px}.placeholder-tag{font-size:12px;letter-spacing:1.5px;color:#586681}.placeholder-canvas strong{font-weight:500;font-size:clamp(22px,3vw,34px);letter-spacing:-.03em}.placeholder-canvas>span:last-child{font-size:15px;line-height:1.6;max-width:460px;color:#596577}.image-placeholder figcaption{font-size:13px;color:var(--muted);line-height:1.5;margin-top:12px}.placeholder-hero{margin:0 0 40px}.firstthought-page .placeholder-hero .placeholder-canvas{background:#e9edff;border-color:#899adf}.insurance-page .placeholder-canvas{background:#edf0e7;border-color:#a7b399}.cureatr-page .placeholder-canvas{background:#eaeef4;border-color:#a5b2c7}.case-next{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:64px;padding:32px 0 60px;font-size:16px}.case-next a:hover,.back-link:hover{text-decoration:underline}.case-content .cureatr-outcome h2{margin-bottom:12px}.case-content .editorial-note{margin-bottom:30px}.case-page .story-grid .image-placeholder{margin-top:8px}@media(max-width:760px){.case-wrap{width:calc(100% - 40px)}.back-link{margin:30px 0 36px}.placeholder-canvas{padding:25px;min-height:240px;aspect-ratio:auto}.case-next{flex-wrap:wrap}.case-content .story-grid h3{margin:0}.case-content>h1 br{display:none}}@media(prefers-reduced-motion:reduce){.case-page{scroll-behavior:auto}}

/* Homepage credibility and career experience. */
.hero .expertise{padding-top:28px;color:var(--muted)}
.proof-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;border-top:1px solid var(--line);padding:30px 0 42px}.proof-strip strong{display:block;font-size:clamp(20px,2vw,28px);font-weight:500;letter-spacing:-.04em;line-height:1.2}.proof-strip p{font-size:14px;line-height:1.6;color:var(--muted);margin:12px 0 0}.proof-strip p span{font-size:12px}.experience-entry{border-top:1px solid var(--line);padding:24px 0 12px}.experience-entry h3{font-size:22px;margin:0}.experience-entry h3 span{display:block;font-size:14px;color:var(--muted);margin-top:9px;line-height:1.5}.experience-entry p{margin-bottom:12px}
@media(max-width:1000px){.proof-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.hero h1 br{display:none}.proof-strip{gap:26px 20px}.project-top .category{line-height:1.6}}@media(max-width:380px){.proof-strip{grid-template-columns:1fr}}

.case-content .story-grid .medication-context{grid-column:2}@media(max-width:760px){.case-content .story-grid .medication-context{grid-column:1}}

.feasibility>.standalone+.standalone{margin-top:18px}.feasibility-figure{margin:32px 0}.feasibility-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feasibility-stage{padding:24px 20px;background:#edf0f8;border-top:3px solid var(--blue)}.feasibility-stage h3{font-size:14px;text-transform:uppercase;letter-spacing:.6px;line-height:1.5;margin:0}.feasibility-stage h3>span{display:block;color:var(--blue);margin-bottom:12px}.stage-owner{font-size:13px;color:var(--muted);line-height:1.5;margin:10px 0 24px}.pipeline-steps{list-style:none;padding:0;margin:0}.pipeline-steps li{background:white;border:1px solid var(--line);padding:12px 9px;text-align:center;font-size:14px;line-height:1.4;position:relative}.pipeline-steps li+li{margin-top:26px}.pipeline-steps li+li:before{content:'↓';position:absolute;top:-25px;left:0;width:100%;color:var(--blue);font-size:18px}.iteration-loop{border:1px dashed #899adf;padding:12px;font-size:13px;line-height:1.5;color:var(--blue);margin:20px 0 0}.signal-fields{list-style:none;margin:0;padding:0;background:white;border:1px solid var(--line)}.signal-fields li{padding:12px 16px;font-size:14px}.signal-fields li+li{border-top:1px solid var(--line)}.feasibility-result{text-align:center;font-size:14px;line-height:1.7;margin-top:24px;color:var(--muted)}.feasibility-result strong{color:var(--blue);font-size:18px;font-weight:500}.pipeline-sources{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;border:1px dashed #899adf;padding:14px 8px;margin-bottom:26px}.pipeline-sources span{font-size:12px;background:white;padding:8px}.production-steps li:first-child:before{content:'↓';position:absolute;top:-25px;left:0;width:100%;color:var(--blue);font-size:18px}.production-steps li:last-child{background:var(--blue);color:white;border-color:var(--blue)}.feasibility-figure figcaption{font-size:13px;color:var(--muted);line-height:1.6;margin-top:14px}.ownership-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.ownership-notes h3{font-weight:600;margin:0 0 10px}.ownership-notes p{font-size:16px;color:var(--muted);line-height:1.7;margin:0}@media(max-width:760px){.feasibility-stages,.ownership-notes{grid-template-columns:1fr}.feasibility-stage{padding:24px}.feasibility h2 br{display:none}}

.consumer-learning>.standalone+.standalone{margin-top:18px}.evidence-diagram{background:#edf0e7;padding:30px;margin:32px 0}.evidence-question{text-align:center;text-transform:uppercase;font-size:13px;letter-spacing:1px;margin:0 0 20px}.evidence-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.evidence-pair>div{background:var(--paper);border:1px solid #c7d0bc;padding:22px;text-align:center}.evidence-pair h3{font-size:18px;margin:0 0 10px;font-weight:600}.evidence-pair p{color:var(--muted);font-size:15px;line-height:1.6;margin:0}.evidence-arrow{text-align:center;color:var(--blue);font-size:28px;padding:10px}.evidence-hypothesis{background:var(--blue);color:white;padding:22px;text-align:center;font-size:22px;max-width:420px;margin:auto}.evidence-hypothesis span{font-size:14px;line-height:1.6;display:block;margin-top:8px}.evidence-pair+.evidence-question{margin:20px 0}.evidence-diagram figcaption{border-top:1px solid #c7d0bc;padding-top:18px;font-size:13px;line-height:1.7;color:var(--muted)}@media(max-width:600px){.evidence-diagram{padding:22px 16px}.evidence-pair{grid-template-columns:1fr;gap:12px}.consumer-learning h2 br{display:none}}

.founder-origin>.standalone+.standalone{margin-top:18px}.origin-figure{margin:32px 0 0}.origin-timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.origin-timeline li{position:relative;background:#edf0f8;border-top:3px solid var(--blue);padding:22px 18px}.origin-timeline li+li:before{content:'→';position:absolute;left:-24px;top:45%;color:var(--blue);font-size:22px}.origin-timeline h3{font-size:22px;font-weight:600;margin:0 0 12px;line-height:1.3}.origin-timeline p{font-size:15px;line-height:1.6;margin:16px 0 0;color:var(--muted)}.origin-timeline .origin-type{font-size:11px;text-transform:uppercase;letter-spacing:.7px;margin:0}.origin-timeline .origin-dates{font-size:13px;margin:6px 0 0}.origin-timeline .origin-destination{background:var(--blue);color:white;display:flex;align-items:center}.origin-destination h3{font-size:21px;font-weight:500;margin:0}.origin-figure figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:14px}@media(max-width:850px){.origin-timeline{grid-template-columns:1fr;gap:30px}.origin-timeline li+li:before{content:'↓';left:calc(50% - 7px);top:-29px}.origin-timeline .origin-destination{justify-content:center;text-align:center}}

.evolution-figure{margin:32px 0}.evolution-timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.evolution-timeline>li{position:relative;border-top:3px solid var(--blue);background:#edf0f8;padding:22px 16px}.evolution-timeline>li+li:before{content:'→';position:absolute;left:-21px;top:42px;color:var(--blue)}.evolution-timeline h3{font-size:21px;line-height:1.25;margin:18px 0}.evolution-timeline p,.evolution-timeline ul{font-size:14px;line-height:1.6;color:var(--muted)}.evolution-timeline .evolution-phase{font-size:11px;letter-spacing:.5px;text-transform:uppercase;margin:0;color:var(--blue)}.evolution-timeline ul{padding-left:16px}.evolution-payoff strong{display:block;font-size:48px;letter-spacing:-2px;color:var(--blue);line-height:1.2}.evolution-figure figcaption,.response-chart figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:16px}.sms-learning>.standalone+.standalone{margin-top:18px}.response-chart{margin:32px 0;background:#edf0f8;padding:30px}.response-chart h3{font-size:24px;margin:0 0 10px}.response-chart>p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:24px}.response-row{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;margin:18px 0;font-size:14px}.response-track{border-left:1px solid #adb6d1;padding:4px 0}.response-bar{padding:14px;color:white;font-weight:600}.response-bar.baseline{width:62.5%;background:#596577}.response-bar.sms{width:93.75%;background:var(--blue)}@media(max-width:850px){.evolution-timeline{grid-template-columns:1fr 1fr}.evolution-timeline>li:before{display:none}}@media(max-width:560px){.evolution-timeline{grid-template-columns:1fr}.response-chart{padding:22px 16px}.response-row{grid-template-columns:1fr;gap:8px}.product-evolution h2 br,.sms-learning h2 br{display:none}}

.case-evidence{grid-column:1/-1;margin:16px 0 32px;min-width:0}.case-evidence a{display:block}.case-evidence img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:4px}.case-evidence figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}

.case-content .walkthrough-heading{font-size:25px;font-weight:500;letter-spacing:-.025em;margin:0 0 16px}.ft-screen figcaption a{text-decoration:underline;text-underline-offset:3px}.ft-screen img{background:#191919}.case-content>.ft-screen{margin-bottom:30px}

.press-mention{padding:28px;border-left:3px solid var(--blue);background:#edf0f8}.press-mention .eyebrow{margin-bottom:18px}.case-content .press-mention h2{font-size:clamp(26px,3vw,36px);margin-bottom:18px}.press-mention .source-link{font-size:14px;line-height:1.6}@media(max-width:600px){.press-mention{padding:22px}.press-mention h2 br{display:none}}

/* Varela Round has a single regular weight; retain emphasis through color and size. */
h1 em{font-style:normal}button,input,select,textarea{font-family:inherit}

/* Headlines use PT Sans; body copy remains Varela Round. */
h1,h2,h3,h4,h5,h6,.project-deck{font-family:"PT Sans",sans-serif}h1 em{font-family:inherit}

/* Decorative browser chrome around screenshot assets. */
.screenshot-browser{display:block;overflow:hidden;border:1px solid #d3d7dc;border-radius:10px;background:#fff;box-shadow:0 8px 28px #19202010}.screenshot-toolbar{display:flex;align-items:center;gap:18px;min-height:42px;padding:9px 14px;background:#eef0f3;border-bottom:1px solid #d3d7dc}.window-controls{display:flex;gap:6px;flex-shrink:0}.window-controls i{display:block;width:10px;height:10px;border-radius:50%;background:#ff6058}.window-controls i:nth-child(2){background:#ffbd2e}.window-controls i:nth-child(3){background:#28c840}.screenshot-address{display:block;flex:1;max-width:560px;margin:auto;background:#fff;border:1px solid #dde1e6;border-radius:5px;color:#68717b;font-family:"Varela Round",sans-serif;font-size:11px;line-height:20px;text-align:center;padding:0 14px}.browser-menu{font-size:12px;color:#858b94;letter-spacing:2px}.case-evidence .screenshot-browser img{border:0;border-radius:0;width:100%;height:auto;display:block}@media(max-width:600px){.screenshot-toolbar{min-height:34px;padding:6px 10px;gap:10px}.window-controls{gap:4px}.window-controls i{width:8px;height:8px}.screenshot-address{font-size:10px;line-height:18px}.screenshot-browser{border-radius:7px}}

/* Metrics retain Reddit Mono, including headings within metric sections. */
.proof-strip,.fact-strip,.reach-metric,.response-chart,.response-chart h3,.evolution-payoff,.cureatr-outcome,.cureatr-outcome h2{font-family:"Reddit Mono",monospace}

/* Homepage photography with translucent dark text panels. */
.work .photo-project{padding:240px 32px 32px;background-size:cover;background-repeat:no-repeat;background-position:center;}.work .photo-project.insurance{background-image:url("assets/home/soventure-heliski.webp");background-position:center 38%}.work .photo-project.cureatr{background-image:url("assets/home/cureatr-hospital.jpg");background-position:center 45%}.photo-project-panel{background:rgba(12,20,27,.86);color:#fff;padding:28px 32px 0;border-radius:4px;box-shadow:0 8px 30px #0002}.photo-project-panel .project-main{padding:32px 0;gap:36px}.photo-project-panel .project-description p{max-width:none}.photo-project-panel .project-top .category,.photo-project-panel .number{opacity:1;color:#e1e7ec}.photo-project-panel .priority-strip{padding-bottom:26px}@media(max-width:760px){.work .photo-project{padding:180px 14px 14px}.photo-project-panel{padding:22px 20px 0}.photo-project-panel .project-main{gap:24px;padding:28px 0}.photo-project-panel .project-deck{font-size:34px}}

.photo-project-panel .priority-strip span{border-color:rgba(255,255,255,.5);background:rgba(0,0,0,.12);color:#fff}.photo-project-panel a:focus-visible{outline-color:#fff}.photo-project-panel .text-link:hover{opacity:1;color:#dceaff}

/* FirstThought shares the homepage text-panel treatment. */
.work .framed-project{padding:32px}.framed-project .project-deck{font-size:clamp(30px,3.9vw,56px)}.photo-project-panel .fact-strip{border-color:rgba(255,255,255,.3)}.photo-project-panel .fact-strip span{color:#e1e7ec}@media(max-width:760px){.work .framed-project{padding:14px}.framed-project .project-deck{font-size:34px}}

.screen-gallery{margin-top:32px;border-block:1px solid var(--line)}.screen-gallery summary{font-family:"PT Sans",sans-serif;font-size:19px}.screen-gallery-content{padding-bottom:20px}.cureatr-flow{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){.cureatr-flow{grid-template-columns:1fr}}

.resume-intro{padding:65px 0 48px}.resume-intro h1{font-size:clamp(42px,6vw,76px);letter-spacing:-.04em}.resume-title{font-family:"PT Sans",sans-serif;font-size:25px;margin:14px 0 20px}.resume-contact{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:15px;margin-bottom:28px}.resume-contact a{text-decoration:underline;text-underline-offset:4px}.resume-page main>section>h2{font-size:30px;font-weight:500;margin:0 0 24px}.resume-job{display:grid;grid-template-columns:150px 1fr;gap:28px;padding:28px 0;border-top:1px solid var(--line)}.resume-dates{font-family:"Reddit Mono",monospace;color:var(--muted);font-size:14px;margin:6px 0}.resume-job h3{font-size:27px;margin:0 0 6px;font-weight:600}.resume-domain{font-size:14px;color:var(--muted);margin:0 0 12px}.resume-role{font-size:17px;margin:0 0 16px}.resume-job ul{padding-left:20px;margin:0}.resume-job li{font-size:16px;line-height:1.75;margin-bottom:10px;color:var(--muted)}.resume-education{padding:32px 0 60px;border-top:1px solid var(--line)}.resume-education p{line-height:1.7;color:var(--muted)}@media(max-width:760px){.resume-job{grid-template-columns:1fr;gap:12px}.resume-intro{padding-top:42px}header nav{gap:14px;font-size:13px}}@media print{.resume-page header,.resume-page footer,.resume-page .skip{display:none}.resume-page .case-wrap{width:100%}.resume-intro{padding-top:0}.resume-job{break-inside:avoid}.resume-page{background:white;color:black}.resume-job li{color:black}}

/* Supplied case-study media, with the timeline movie aligned over its preview. */
.supplied-media video{display:block;width:100%;max-height:720px;background:#000;border-radius:4px}
.supplied-media img{border:0;border-radius:0}
.timeline-demo-stage{position:relative;isolation:isolate;line-height:0}
.timeline-demo-stage>img{display:block;width:100%;height:auto}
.timeline-demo-stage>video{position:absolute;z-index:1;left:72%;top:45%;width:25%;height:auto;aspect-ratio:912/1214;max-height:none;object-fit:contain;border-radius:0;background:#fff;box-shadow:0 3px 18px #0002}

/* Keep standalone demos in the same 16:9 presentation as regular case images. */
.supplied-media>video{width:100%;height:auto;aspect-ratio:16/9;max-height:none;object-fit:contain}
/* Cover the dotted outlines baked into the supplied workflow panels. */
.workflow-image-wrap{display:block;position:relative}
.workflow-border-cover{position:absolute;inset:0;pointer-events:none;z-index:1}
.workflow-border-cover i{position:absolute;top:0;bottom:0;width:23.27%;border:1.5px solid white;box-sizing:border-box}
.workflow-border-cover i:nth-child(1){left:0}.workflow-border-cover i:nth-child(2){left:25.58%}.workflow-border-cover i:nth-child(3){left:51.15%}.workflow-border-cover i:nth-child(4){right:0}

/* Playback controls sit below the movie so native gradients do not dim it. */
.supplied-media video{background:var(--paper)}
.video-playback-button{display:block;margin-top:12px;padding:7px 12px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.video-playback-button:hover{background:#edf0f6}
.video-playback-button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}

/* A play icon identifies paused videos without starting playback. */
.video-preview-frame{position:relative}
.video-preview-frame>video{width:100%;height:auto;aspect-ratio:16/9;max-height:none;object-fit:contain}
.video-preview-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:60px;height:60px;padding:0;border:2px solid white;border-radius:50%;background:rgba(25,32,32,.78);color:white;cursor:pointer;box-shadow:0 2px 12px #0003}
.video-preview-play[hidden]{display:none}
.video-preview-play:hover{background:var(--blue)}
.video-preview-play:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.timeline-demo-stage>.video-preview-play{left:84.5%;top:69.65%;width:clamp(28px,5vw,52px);height:clamp(28px,5vw,52px)}

/* Editable, responsive diagrams built with HTML and supplied SVG icons. */
.native-workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin:0;padding:0;list-style:none}
.native-workflow-card{position:relative;padding:24px 16px 16px;background:#fff;min-width:0}
.native-workflow-card+.native-workflow-card:before{content:'→';position:absolute;left:-21px;top:50px;color:var(--muted);font-size:20px}
.native-workflow-card .native-phase,.native-ideation .native-phase{font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.5px;margin:0 0 30px;color:var(--muted)}
.case-content .native-workflow-card h3{font-size:22px;font-weight:400;line-height:1.35;margin:0 0 10px}
.native-diagram .native-diagram-icon{display:block;width:31px;height:31px;border:0;border-radius:0;margin:0 0 12px}
.native-workflow-card>p:not(.native-phase){font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.native-workflow-card>p:empty{display:none}
.native-workflow-card ul{padding-left:16px;margin:0;list-style-type:circle;font-size:14px;line-height:1.65;color:var(--muted)}
.native-ideation{padding:32px 0 20px}
.native-ideation .native-phase{margin-bottom:12px}
.native-ideation-note{font-size:14px;color:var(--muted);margin:0 0 24px;line-height:1.6}
.native-exploration{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px;list-style:none;margin:0;padding:0}
.native-exploration li{display:flex;align-items:center;justify-content:center;position:relative;background:#fff;border:1px solid var(--line);min-height:82px;padding:12px;text-align:center;font-size:13px;line-height:1.5}
.native-exploration li+li:before{content:'→';position:absolute;left:-27px;color:var(--blue);font-size:22px}
.native-sms{padding:24px 0;font-family:"Reddit Mono",monospace}
.native-sms-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:0;align-items:center;font-size:14px;color:var(--muted)}
.native-sms-row+.native-sms-row{margin-top:22px}
.native-sms-track{border-left:1px solid #adb6d1;min-height:50px;display:flex;align-items:center}
.native-sms-baseline{padding:14px;color:var(--muted)}
.native-sms-bar{width:100%;background:var(--blue);color:#fff;padding:14px;font-weight:600}
@media(max-width:900px){.native-workflow{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.native-workflow-card:before{display:none}.native-exploration{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.native-exploration li:nth-child(4):before{display:none}}
@media(max-width:520px){.native-workflow{grid-template-columns:1fr;gap:26px}.native-workflow-card+.native-workflow-card:before{display:block;content:'↓';left:50%;top:-26px}.native-workflow-card .native-phase{margin-bottom:18px}.native-exploration{grid-template-columns:1fr;gap:30px}.native-exploration li+li:before,.native-exploration li:nth-child(4):before{display:block;content:'↓';left:50%;top:-31px}.native-sms-row{grid-template-columns:120px minmax(0,1fr);font-size:12px}.native-sms-baseline,.native-sms-bar{padding:12px}}

/* Dotted outlines around the HTML diagram boxes. */
.native-workflow-card,.native-exploration li{border:1px dotted #8b9391}

/* Email evidence at half the standard case-study width. */
.email-evidence{width:50%;justify-self:start}

/* Email caption sits to the left, vertically centered beside the graphic. */
.email-evidence{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
.email-evidence>a{grid-column:2;grid-row:1}
.email-evidence>figcaption{grid-column:1;grid-row:1;margin:0;align-self:center}

.case-content .story-grid .coverage-uncertainty-heading{margin-top:32px}
.coverage-uncertainty-heading+p{margin-top:32px}

.competitive-comparison-copy p{margin:0 0 18px}.competitive-comparison-copy p:last-child{margin-bottom:0}

.quote-test-copy p{margin:0 0 18px}.quote-test-copy p:last-child{margin-bottom:0}

.case-content .email-evidence figcaption h3{margin:0 0 16px}.case-content .email-evidence .email-painpoint-copy{font-size:17px;line-height:1.7;color:var(--ink);margin:0 0 24px}

/* Timeline demo enlarged by two-thirds, keeping its lower-right alignment. */
.timeline-demo-stage>video{left:55.33%;top:12%;width:41.67%}
.timeline-demo-stage>.video-preview-play{left:76.165%;top:53.1%}

/* Homepage project cards matching the supplied references. */
.work .reference-project{container-type:inline-size;padding:0;border-radius:0;background-size:cover;background-position:center;color:#fff;overflow:hidden}
.reference-soventure{background-image:url("assets/home/soventure-card-background.png")}
.reference-firstthought{background-image:url("assets/home/firstthought-card-background.png")}
.reference-cureatr{background-image:url("assets/home/cureatr-card-background.png")}
.reference-card-content{padding:7.2cqw 7.68cqw 8cqw}
.reference-card-meta{display:flex;align-items:baseline;gap:2.7cqw;font-size:clamp(12px,1.68cqw,20px);line-height:1.5;margin-bottom:3.7cqw}
.reference-card-meta p{margin:0}.reference-card-category{margin-left:auto;text-align:right}
.reference-card-grid{display:grid;grid-template-columns:1.49fr 1fr;gap:7.68cqw;align-items:start}
.reference-card-visual h3{font-size:clamp(16px,2.04cqw,25px);font-weight:400;margin:0 0 1.45cqw}
.reference-screen-link{display:block}.reference-screen-link img{width:100%;height:auto;display:block;border:1px solid white}
.reference-card-visual .project-deck{font-size:clamp(28px,4.32cqw,54px);line-height:1.15;letter-spacing:-.04em;margin:3.7cqw 0 0;font-weight:400}
.reference-card-description>p{font-size:clamp(16px,2.04cqw,25px);line-height:1.36;margin:0 0 3cqw}
.reference-card-description .text-link{font-size:clamp(14px,1.68cqw,20px);gap:4.5cqw;padding-bottom:9px}
.reference-card-description .text-link span{display:grid;place-items:center;width:22px;height:22px;border-radius:3px;background:#89aabe;color:white;font-size:22px;font-weight:bold}
.reference-cureatr .reference-screen-link{display:flex;justify-content:center;padding-top:.4cqw}
.reference-cureatr .reference-screen-link img{width:31.85%;border:0}
.reference-cureatr .project-deck{width:115%}
@media(max-width:760px){.reference-card-content{padding:28px 24px 36px}.reference-card-meta{flex-wrap:wrap;gap:8px 16px;font-size:12px;margin-bottom:24px}.reference-card-category{flex-basis:100%;margin-left:0;text-align:left}.reference-card-grid{grid-template-columns:1fr;gap:28px}.reference-card-visual h3{margin-bottom:12px}.reference-card-visual .project-deck{font-size:32px;margin-top:24px}.reference-card-description>p{font-size:17px;line-height:1.5;margin-bottom:22px}.reference-card-description .text-link{font-size:14px;gap:36px}.reference-cureatr .project-deck{width:100%}.reference-cureatr .reference-screen-link img{width:122px;max-width:40%}}

/* Stretch the project link across its card; keep the supplied arrow text-sized. */
.work .reference-project{position:relative;background-color:#626778}
.reference-card-description .text-link{position:static}
.reference-card-description .text-link:after{content:'';position:absolute;inset:0;z-index:2}
.reference-card-description .text-link .project-arrow-icon{display:block;width:1em;height:1em;border:0;flex-shrink:0}
.work .reference-project:hover,.work .reference-project:focus-within{background-image:none}
.reference-project:has(.text-link:focus-visible){outline:3px solid var(--blue);outline-offset:4px}
.reference-project .text-link:hover{opacity:1}

/* Fade the background layer while leaving card content unchanged. */
.work .reference-project{background-image:none;isolation:isolate}
.reference-project:before{content:'';position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;opacity:1;transition:opacity 280ms ease}
.reference-soventure:before{background-image:url("assets/home/soventure-card-background.png")}
.reference-firstthought:before{background-image:url("assets/home/firstthought-card-background.png")}
.reference-cureatr:before{background-image:url("assets/home/cureatr-card-background.png")}
.reference-project:hover:before,.reference-project:focus-within:before{opacity:0}
@media(prefers-reduced-motion:reduce){.reference-project:before{transition:none}}

/* Reveal the background on hover or keyboard focus. */
.reference-project:before{opacity:0}
.reference-project:hover:before,.reference-project:focus-within:before{opacity:1}

/* Tighten spacing before the competitive comparison image. */
.competitive-comparison-copy+figure{margin-top:0}

.experience-years{font-family:"Reddit Mono",monospace;font-size:13px;font-weight:400;color:var(--muted);margin-left:14px;white-space:nowrap}.about .experience-byline{font-size:14px;line-height:1.7;color:var(--muted);margin-top:24px}

/* Personal About section with circular media. */
.personal-about{display:grid;grid-template-columns:1fr 1.7fr;gap:60px;padding:34px 0 76px;align-items:start}
.personal-about>.eyebrow{margin-top:8px}
.personal-about-content{min-width:0}
.personal-about-content h2{font-size:clamp(32px,3.6vw,56px);font-weight:400;line-height:1.2;letter-spacing:-.035em;margin:0;border-bottom:1px solid var(--line);padding-bottom:10px}
.personal-about-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:30px}
.personal-about-circle{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:50%;object-fit:cover;overflow:hidden}
.surf-circle{object-position:34% center}.cook-circle{object-position:center}.snow-circle{background:#e8eaf2;object-position:center}
@media(max-width:760px){.personal-about{grid-template-columns:1fr;gap:20px;padding:24px 0 50px}.personal-about>.eyebrow{margin:0}.personal-about-content h2{font-size:32px}.personal-about-media{gap:14px;margin-top:24px}}

/* Match the earlier-work column alignment. */
.personal-about{grid-template-columns:1fr 2fr}
@media(max-width:760px){.personal-about{grid-template-columns:1fr}}
