@charset "UTF-8";
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f7f5f0;color:#232823;font-family:var(--font-dm-sans),Arial,sans-serif;font-size:17px;line-height:1.6}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.08;font-weight:500;letter-spacing:-.045em}p{color:#59605a}p+p{margin-top:20px}h1{font-size:clamp(48px,6.5vw,92px)}h2{font-size:clamp(35px,4vw,58px)}h3{font-size:25px;letter-spacing:-.035em}.shell{width:min(1320px,calc(100% - 112px));margin-inline:auto}.premium-site{--accent:#c54224;--ink:#232823;--paper:#f7f5f0;--tint:#ece8df;--line:#d8d7cc;--dark:#252d25}.premium-site.stack{--accent:#b8ef68;--ink:#dce8eb;--paper:#edf1f1;--tint:#dce4e4;--line:#bfcacc;--dark:#102c36;background:#edf1f1;color:#12313b}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;border:1px solid var(--dark);border-radius:3px;padding:16px 23px;min-height:54px;background:var(--dark);color:#fff;font-size:15px;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#44503f;transform:translateY(-2px)}.button.light{background:#e4eccb;color:#1b2b24;border-color:#e4eccb}.button.outline{color:var(--dark);background:transparent;margin-top:30px}.inline-link{display:inline-flex;align-items:center;border-bottom:1px solid currentColor;padding:7px 0;font-size:15px;font-weight:500}.inline-link:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c75030;outline-offset:5px}.skip{position:fixed;left:16px;top:-80px;z-index:100;background:white;padding:10px 20px}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:40;background:rgba(247,245,240,.97);border-bottom:1px solid var(--line)}.stack .site-header{background:rgba(237,241,241,.97)}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{font-size:30px;font-weight:650;letter-spacing:-1.6px;white-space:nowrap;display:inline-flex;align-items:center}.wordmark>span{font-weight:400}.wordmark>i{font-style:normal;color:#c54224;font-size:34px;margin-left:10px}.stack .wordmark>i{margin:0 9px 0 0;color:#17717b}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px}.site-header nav>a:not(.nav-cta){padding:12px 0}.site-header nav>a:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{padding:12px 20px;border:1px solid var(--dark);border-radius:3px}.menu-button{display:none;background:none;border:1px solid var(--line);padding:9px 14px}.hero{padding:38px 0 0;overflow:hidden}.hero-kicker{display:flex;justify-content:space-between;font-size:13px;color:#62675e;border-bottom:1px solid var(--line);padding-bottom:18px}.hero h1{font-size:clamp(58px,7.1vw,102px);line-height:1.02;letter-spacing:-.055em;margin-top:38px;max-width:1050px}.hero h1 em{font-family:var(--font-instrument-serif),Georgia,serif;font-weight:400;letter-spacing:-.025em;color:#a8422c}.hero-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:15%;margin:30px 0 38px;align-items:end}.hero-copy>p{font-size:19px;max-width:610px;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:23px;flex-wrap:wrap}.hero-founder{display:flex;gap:19px;align-items:center;max-width:400px;margin-left:auto}.mini-portrait{width:76px;height:94px;object-fit:cover;border-radius:3px;flex-shrink:0}.hero-founder strong{font-size:14px;font-weight:500;display:block;line-height:1.5}.hero-founder p{font-size:12px;line-height:1.65;margin-top:7px}.craft-line{display:flex;align-items:center;justify-content:space-between;border-block:1px solid var(--line);padding:20px 0;font-size:clamp(15px,2vw,28px);font-weight:400;letter-spacing:.06em;overflow:hidden}.craft-line i{font-size:35px;font-weight:400;color:#b45136;animation:craft-turn 16s linear infinite;font-style:normal}.chapter{display:block;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px;color:inherit}.section-top{display:flex;align-items:end;justify-content:space-between;gap:65px;margin-bottom:40px}.section-top>p{max-width:360px;font-size:17px}.section-top h2{max-width:650px}.section-top h2 em{color:var(--accent);font-style:normal}.showcase-section{padding:68px 0 80px;background:#e9e5dc}.showcase-section .section-top h2{font-size:60px}.project-gallery{display:grid;grid-template-columns:1.2fr 1fr;gap:45px 32px}.project-preview{display:block;padding:23px 23px 0;background:#cecdbd;position:relative;overflow:hidden;border-radius:5px;transition:background .35s}.project-card:nth-child(2) .project-preview{background:#d3b39c}.project-card:nth-child(3) .project-preview{background:#b6c7c9}.browser-chrome{height:24px;background:#f8f8f4;border-radius:4px 4px 0 0;display:flex;align-items:center;justify-content:space-between;font-size:8px;padding:0 10px;color:#777}.browser-chrome span:first-child{font-size:6px;letter-spacing:2px}.project-image{width:100%;aspect-ratio:1.6;object-fit:contain;object-position:top;background:#fff;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.project-card:first-child .project-preview{padding:36px 36px 0}.project-card:first-child .project-image{aspect-ratio:1.23;object-fit:cover;object-position:top}.project-preview:hover .project-image{transform:translateY(-5px)}.project-open{position:absolute;bottom:15px;right:15px;background:#fff;color:#233126;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:25px;transition:transform .25s}.project-preview:hover .project-open{transform:rotate(45deg)}.project-caption{padding-top:19px}.project-caption>span{font-size:11px;letter-spacing:.04em;color:#62675e}.project-caption h3{margin-top:7px;font-size:27px}.project-caption p{margin-top:10px;font-size:15px;max-width:470px}.project-card:first-child .project-caption h3{font-size:34px}.services-section{padding:90px 0;background:#f7f5f0}.offer-list{border-top:1px solid var(--line)}.offer-row{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(220px,.7fr);gap:24px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.offer-number{font-size:12px;color:#75796c;padding-top:7px}.offer-row h3{font-size:28px}.offer-row h3 a:hover{text-decoration:underline;text-underline-offset:6px}.offer-row p{margin-top:12px;max-width:520px;font-size:16px}.offer-price{text-align:right}.amount{font-size:23px;letter-spacing:-.035em;white-space:normal}.price-unit{font-size:13px;color:#626a61;display:block}.offer-price .inline-link{font-size:12px;margin-top:10px}.founder-section{padding:95px 0;background:#e5e9dc}.founder-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;align-items:center}.portrait{width:100%;aspect-ratio:4/5;object-fit:cover;max-height:540px;border-radius:5px;border:1px solid #ced0c6}.founder-grid figure{max-width:410px}.founder-grid figcaption{display:flex;justify-content:space-between;font-size:13px;margin-top:14px}.founder-grid figcaption span{color:#646a61}.founder-grid h2{max-width:620px}.founder-grid p{margin-top:25px;font-size:18px}.location{display:flex;align-items:center;gap:20px;border-top:1px solid #bec6b6;margin-top:30px;padding-top:24px}.location-orbit{font-size:52px;line-height:1;color:#a84730}.location>div>span{font-size:12px}.location strong{display:block;font-size:27px;font-weight:500}.founder-grid .inline-link{margin-top:20px}.process-section{padding:85px 0;background:#f7f5f0}.process-list{padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.process-list li{border-top:1px solid var(--line);padding-top:20px}.process-list li>span{font-size:12px;color:#6b7568}.process-list h3{font-size:22px;margin:28px 0 14px}.process-list p{font-size:15px}.onsite-band{padding:65px 0;background:#d8ddc9}.onsite-band>.shell{display:grid;grid-template-columns:1.2fr 1fr;gap:22px 10%}.onsite-band .chapter{grid-column:1/-1;margin:0}.onsite-band h2{font-size:46px}.onsite-band p{font-size:17px}.onsite-band .button{margin-top:22px}.cross-brand{padding-block:50px;display:grid;grid-template-columns:1fr 1.2fr auto;gap:35px;align-items:center}.cross-brand h3{font-size:25px}.cross-brand p{font-size:15px}.cross-brand .inline-link{white-space:nowrap}.footer{background:#252d25;color:#f2f2e9;padding:70px 0 24px}.footer p{color:#b7c0af}.footer-invitation{display:flex;justify-content:space-between;align-items:center;gap:70px;padding-bottom:55px;border-bottom:1px solid #4a5447}.footer-invitation h2{font-size:clamp(38px,4.4vw,64px);max-width:690px}.footer-invitation .button{white-space:nowrap}.footer-bottom{display:grid;grid-template-columns:1.1fr 1fr .7fr;gap:30px;padding:40px 0}.footer-bottom p{font-size:12px;margin-top:14px;max-width:240px}.preferences{display:flex;gap:15px;align-items:start}.preferences label{font-size:11px;display:block;min-width:0}.preferences select{display:block;margin-top:9px;background:transparent;border:1px solid #66705f;color:#f2f2e9;border-radius:2px;padding:9px 25px 9px 9px;font-size:13px;max-width:145px}.preferences option{background:#252d25;color:white}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:12px}.legal{border-top:1px solid #4a5447;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:#aeb8a9}.page-heading{padding-block:75px 45px}.page-heading p{max-width:700px;font-size:20px;margin-top:28px}.catalogue{padding-bottom:80px}.price-note{font-size:13px;max-width:850px;margin-top:30px}.fx-status,.fx-credit{font-size:11px;line-height:1.5}.fx-credit{display:inline-block;text-decoration:underline;margin-top:12px}.search-programme{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.service-hero{padding-block:75px}.service-hero h1{max-width:950px}.lead{font-size:23px;line-height:1.55}.service-hero .lead{margin-top:30px;max-width:750px}.service-investment{margin:25px 0}.service-investment .amount{font-size:35px}.service-detail{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;padding-block:55px 80px;border-top:1px solid var(--line)}.service-detail h2{font-size:40px}.service-detail p+p{margin-top:22px}.contact-page{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;padding-block:70px 90px}.contact-heading h1{font-size:58px;max-width:550px}.contact-heading>p{margin-top:25px;font-size:18px}.contact-heading>.inline-link{margin-top:25px}.contact-heading .small{font-size:14px}.field{display:block;font-size:14px;margin-bottom:22px;color:#27392d}.field>span:not(.field-error){font-size:11px;color:#646d62}.field input,.field select,.field textarea{display:block;width:100%;padding:13px 14px;margin-top:8px;border:1px solid #b6beb0;border-radius:3px;background:#fffdf8;color:#202c24;min-height:51px}.field textarea{resize:vertical}.field [aria-invalid=true]{border-color:#b73525}.field-error{display:block;font-size:12px;color:#a62a1d;margin-top:6px;min-height:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note,.small{font-size:13px}.form-note a{text-decoration:underline}.enquiry-form .button{margin-top:25px}.enquiry-form .small{margin-top:15px;font-size:11px}.form-status{margin-top:15px;font-size:15px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.case-heading{padding-block:55px}.case-heading>.inline-link{margin-bottom:35px}.case-heading h1{max-width:1050px}.case-heading .lead{margin-top:23px;max-width:750px}.case-image{background:#dfdfd2;padding:40px;border-radius:5px}.case-image img{width:100%;object-fit:contain}.case-image figcaption{font-size:12px;margin-top:18px;color:#596257}.case-story{display:grid;grid-template-columns:1fr 1.3fr;gap:55px 90px;padding-block:85px}.case-story h2{font-size:40px}.case-story>p,.case-story>div>p{font-size:20px;line-height:1.7}.case-story .inline-link{margin-top:20px}.case-metric{font-size:110px;letter-spacing:-.07em;line-height:1.1;margin-top:25px}.case-metric span{display:block;font-size:14px;letter-spacing:0;margin-top:10px}.privacy-page{max-width:850px;padding-block:70px 90px}.privacy-page h1{font-size:55px;margin-bottom:30px}.privacy-page p{margin-bottom:24px}.privacy-page>a{text-decoration:underline}.stack .hero{background:#102c36;color:#e5eff0;padding-top:35px}.stack .hero-kicker{color:#a9c2c7;border-color:#36515a}.stack .hero h1{font-family:var(--font-dm-sans),Arial,sans-serif;font-size:clamp(55px,6.6vw,95px)}.stack .hero h1 em{font-family:inherit;color:#c2ef89;font-style:normal;letter-spacing:-.055em}.stack .hero-copy>p,.stack .hero-founder p{color:#b6cdd0}.stack .hero .button{background:#c2ef89;border-color:#c2ef89;color:#163338}.stack .hero .inline-link:hover{color:#c2ef89}.workflow{border-top:1px solid #3e5b63;padding:30px 0 35px;margin-top:35px}.workflow-top{display:flex;justify-content:space-between;align-items:center;font-size:14px}.workflow-top small{font-size:10px;color:#aec0c4}.flow-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px;border:1px solid #456069}.flow-stages button{background:transparent;border:0;border-right:1px solid #456069;color:#dce9eb;padding:18px 22px;display:grid;grid-template-columns:1fr auto;text-align:left;transition:background .3s,color .3s;min-width:0}.flow-stages button:last-child{border:0}.flow-stages button[aria-pressed=true]{background:#c2ef89;color:#102c36}.flow-stages small{font-size:10px;grid-column:1}.flow-stages strong{font-size:20px;font-weight:400;grid-column:1}.flow-stages button>span{font-size:34px;grid-column:2;grid-row:1/3;align-self:center}.flow-caption{font-size:14px;color:#bbd1d4;margin-top:18px;min-height:24px}.stack-work{padding:80px 0;background:#dde7e7}.stack-work .section-top{align-items:start}.stack-work h2{max-width:720px}.evidence-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;align-items:center}.dashboard-frame{display:block;background:#bacdcd;padding:27px;border-radius:4px;overflow:hidden}.dashboard-frame img{width:100%;transition:transform .5s}.dashboard-frame:hover img{transform:scale(1.03)}.metric strong{font-size:110px;font-weight:400;letter-spacing:-.07em;line-height:1}.metric strong>span{font-size:60px}.metric>p{font-size:19px;margin-top:18px;max-width:260px}.metric>p.small{font-size:14px}.metric .inline-link{margin-top:23px}.caption{font-size:11px;margin-top:16px}.stack .services-section,.stack .process-section{background:#edf1f1}.stack .founder-section{background:#d9e3df}.stack .onsite-band{background:#d0dfd5}.stack .footer{background:#102c36}.stack .offer-number{color:#647a7f}.stack .inline-link:hover{color:#147482}.stack .offer-row{grid-template-columns:42px minmax(0,1fr) minmax(220px,.7fr)}.ai-editorial{padding-block:65px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px 10%;border-top:1px solid #bdcaca}.ai-editorial h2{font-size:42px}.ai-editorial p{font-size:19px}.ai-editorial .inline-link{grid-column:2;justify-self:start}.stack .cross-brand{border-top:1px solid #becdcd}.stack .case-image{background:#cbd9d9}.stack .location-orbit{color:#1b6a78}.hero h1{animation:arrive .7s ease-out both}.hero-bottom{animation:arrive .7s .12s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes craft-turn{to{transform:rotate(360deg)}}
@media(min-width:1550px){.hero{padding-top:55px}.hero h1{margin-top:50px}.hero-bottom{margin-bottom:55px}}
@media(max-width:1050px){.shell{width:calc(100% - 64px)}.hero-bottom{gap:7%}.hero-founder{max-width:320px}.hero h1{font-size:80px}.project-gallery{gap:30px 24px}.project-card:first-child .project-preview{padding:22px 22px 0}.project-card:first-child .project-image{aspect-ratio:1;object-fit:cover}.project-preview{padding:16px 16px 0}.section-top{gap:40px}.offer-row,.stack .offer-row{grid-template-columns:25px minmax(0,1fr) minmax(180px,.8fr);gap:15px}.amount{font-size:21px}.founder-grid{gap:8%}.process-list{gap:22px}.cross-brand{grid-template-columns:1fr 1fr}.cross-brand .inline-link{grid-column:2;justify-self:start}.footer-bottom{grid-template-columns:1fr 1fr}.footer-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:25px}.contact-page{gap:7%}.contact-heading h1{font-size:47px}.field-pair{grid-template-columns:1fr;gap:0}.flow-stages button{padding:14px}.flow-stages strong{font-size:18px}.flow-stages button>span{font-size:24px}.evidence-grid{gap:5%}.metric strong{font-size:90px}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.header-inner{height:74px}.wordmark{font-size:27px}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:74px;left:0;right:0;background:#f7f5f0;border-bottom:1px solid #bfc6ba;padding:24px 20px;flex-direction:column;align-items:stretch;gap:12px}.stack .site-header nav{background:#edf1f1;color:#173740}.site-header nav.open{display:flex}.hero{padding-top:25px}.hero-kicker{font-size:10px;gap:15px}.hero h1,.stack .hero h1{font-size:clamp(46px,8.7vw,65px);margin-top:29px;line-height:1.06}.hero-bottom{grid-template-columns:1fr;gap:28px;margin:25px 0 30px}.hero-copy>p{font-size:17px;max-width:550px}.hero-actions{gap:24px;margin-top:22px}.hero-founder{margin:0;max-width:460px;border-top:1px solid var(--line);padding-top:23px}.mini-portrait{width:55px;height:68px}.hero-founder strong{font-size:13px}.hero-founder p{font-size:11px;max-width:340px;margin-top:4px}.craft-line{font-size:12px;padding-block:16px;letter-spacing:.03em}.craft-line i{font-size:25px}.chapter{font-size:10px;margin-bottom:17px}.section-top{display:block;margin-bottom:28px}.section-top>p{margin-top:20px;max-width:500px;font-size:15px}.section-top h2{font-size:36px}.showcase-section{padding:42px 0 50px}.showcase-section .section-top h2{font-size:44px}.project-gallery{grid-template-columns:1fr;gap:32px}.project-card:first-child .project-image{aspect-ratio:1.6;object-fit:contain}.project-card:first-child .project-preview,.project-preview{padding:20px 20px 0}.project-card:first-child .project-caption h3,.project-caption h3{font-size:27px}.project-card:nth-child(n+2) .project-caption p{display:block;font-size:14px}.project-caption>span{font-size:10px}.services-section{padding:50px 0}.offer-row,.stack .offer-row{grid-template-columns:24px minmax(0,1fr);gap:12px;padding-block:24px}.offer-row h3{font-size:25px}.offer-row p{font-size:14px}.offer-price{grid-column:2;text-align:left;margin-top:5px}.offer-price .amount{font-size:22px}.price-unit{display:inline;margin-left:8px;font-size:11px}.offer-price .inline-link{display:table;margin-top:8px}.founder-section{padding:50px 0}.founder-grid{grid-template-columns:1fr;gap:35px}.founder-grid figure{max-width:300px}.portrait{aspect-ratio:4/4.5;object-position:top}.founder-grid h2{font-size:38px}.founder-grid p{font-size:16px;margin-top:20px}.founder-grid figcaption{font-size:11px}.location{margin-top:25px;padding-top:20px}.process-section{padding:50px 0}.process-list{grid-template-columns:1fr 1fr;gap:28px 22px}.process-list h3{font-size:22px;margin:17px 0 12px}.process-list p{font-size:14px}.onsite-band{padding-block:45px}.onsite-band>.shell{display:block}.onsite-band h2{font-size:36px;margin-top:18px}.onsite-band p{margin-top:23px;font-size:16px}.cross-brand{padding-block:35px;grid-template-columns:1fr;gap:18px}.cross-brand .inline-link{grid-column:auto;justify-self:start}.footer{padding:45px 0 20px}.footer-invitation{display:block;padding-bottom:35px}.footer-invitation h2{font-size:42px}.footer-invitation .button{margin-top:25px}.footer-bottom{grid-template-columns:1fr;gap:28px;padding-block:30px}.footer-links{grid-column:auto;font-size:12px;gap:16px}.preferences{gap:20px}.preferences select{max-width:155px}.legal{font-size:9px;gap:20px}.page-heading{padding-block:45px 30px}.page-heading h1{font-size:45px}.page-heading p{font-size:17px;margin-top:22px}.catalogue{padding-bottom:45px}.service-hero{padding-block:45px}.service-hero h1{font-size:46px}.service-hero .lead{font-size:20px}.service-detail{display:block;padding-block:35px 45px}.service-detail h2{font-size:32px;margin-bottom:25px}.service-detail .lead{font-size:19px}.contact-page{grid-template-columns:1fr;gap:40px;padding-block:40px 55px}.contact-heading h1{font-size:44px}.contact-heading>p{font-size:16px}.field-pair{grid-template-columns:1fr}.case-heading{padding-block:35px}.case-heading h1{font-size:46px;overflow-wrap:anywhere}.case-heading .lead{font-size:20px}.case-image{padding:16px;border-radius:0}.case-image figcaption{font-size:10px}.case-story{grid-template-columns:1fr;gap:22px;padding-block:45px}.case-story h2{font-size:32px}.case-story>p,.case-story>div>p{font-size:17px;margin-bottom:25px}.case-story .chapter{margin-bottom:9px}.case-metric{font-size:80px}.privacy-page{padding-block:40px 55px}.privacy-page h1{font-size:42px}.privacy-page .lead{font-size:20px}.workflow{margin-top:25px;padding-top:23px}.workflow-top{display:block;font-size:12px}.workflow-top small{display:block;margin-top:5px;font-size:9px}.flow-stages{grid-template-columns:1fr 1fr}.flow-stages button{border-bottom:1px solid #456069;min-height:78px}.flow-stages button:nth-child(2){border-right:0}.flow-stages button:nth-child(3){border-bottom:0}.flow-stages strong{font-size:18px}.flow-caption{font-size:13px;min-height:44px}.stack-work{padding-block:45px}.evidence-grid{grid-template-columns:1fr;gap:30px}.dashboard-frame{padding:15px}.metric{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}.metric strong{font-size:85px;grid-row:span 2}.metric strong>span{font-size:45px}.metric>p{font-size:16px;margin:0}.metric>p.small{font-size:12px}.metric .inline-link{margin-top:10px;grid-column:2;justify-self:start}.ai-editorial{grid-template-columns:1fr;padding-block:45px;gap:25px}.ai-editorial h2{font-size:35px}.ai-editorial p{font-size:17px}.ai-editorial .inline-link{grid-column:1}.stack .hero-founder{border-color:#36515a}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.hero h1,.stack .hero h1{font-size:43px}.hero-actions{gap:15px}.button{padding:14px 18px;font-size:14px}.inline-link{font-size:13px}.craft-line{font-size:10px}.craft-line i{font-size:20px}.footer-invitation h2{font-size:36px}.project-preview,.project-card:first-child .project-preview{padding:12px 12px 0}.process-list{grid-template-columns:1fr}.contact-heading h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.project-preview:hover .project-image,.dashboard-frame:hover img,.button:hover{transform:none}}
.site-header{transition:background .5s ease}.site-header.over-work{background:#e9e5dc}.stack .site-header.over-work{background:#dde7e7}.site-header .preferences{gap:10px}.site-header .preferences label{font-size:9px}.site-header .preferences select{color:#24392c;border-color:#b9c0b0;font-size:11px;padding:5px 18px 5px 7px;margin-top:3px;max-width:115px}.site-header .preferences option{background:#f7f5f0;color:#24392c}.site-header nav{gap:22px}.footer-bottom{grid-template-columns:1fr 1fr}.footer-links{flex-direction:row;flex-wrap:wrap;align-content:start;gap:18px 25px}.footer .fx-credit{color:#b4c1ac;font-size:10px;margin:0 0 22px}.footer .fx-status{color:#c8d2c1}.craft-line i{animation:none;transition:transform .5s}.craft-line:hover i{transform:rotate(90deg)}
@media(max-width:1100px){.header-inner{height:74px}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:74px;left:0;right:0;background:#f7f5f0;border-bottom:1px solid #bfc6ba;padding:24px 32px;flex-direction:column;align-items:stretch;gap:12px}.site-header nav.open{display:flex}.stack .site-header nav{background:#edf1f1}.site-header .preferences{padding-block:10px}.site-header .preferences label{font-size:12px}.site-header .preferences select{font-size:14px;padding:9px;max-width:170px}.footer-links{grid-column:auto}}
@media(max-width:760px){.footer-bottom{grid-template-columns:1fr}.site-header nav{padding-inline:20px}}
/* Round two: founder-led SwiftSites composition; connected-system Stackcraft motion. */
.tax-note{display:block;font-size:12px;letter-spacing:0;color:#59665c;margin-top:5px}.visit-details{border-block:1px solid #bfc6ba;padding:18px 0;margin-bottom:24px}.visit-details summary{cursor:pointer;font-size:16px}.visit-details[open] summary{margin-bottom:24px}.hero.swift>.shell{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);column-gap:7%}.hero.swift .hero-kicker{grid-column:1/-1}.hero.swift h1{grid-column:1;font-size:clamp(54px,6.2vw,89px);margin-top:46px;align-self:end;line-height:1.04}.hero.swift .hero-bottom{grid-column:1;grid-template-columns:1fr;margin:26px 0 40px;gap:0;align-self:start}.hero.swift .hero-founder{display:none}.hero.swift .hero-copy>p{font-size:18px;max-width:570px}.hero-portrait{grid-column:2;grid-row:2/4;margin:38px 0 35px;position:relative;align-self:stretch;min-height:385px}.hero-portrait-image{width:100%;height:100%;max-height:480px;object-fit:cover;object-position:center 26%;border:1px solid #c7cbbb;border-radius:5px}.hero-portrait figcaption{position:absolute;bottom:18px;left:18px;right:18px;padding:15px 19px;background:rgba(247,245,240,.95);border:1px solid #d6d8cc;display:grid;gap:3px;font-size:12px}.hero-portrait strong{font-size:20px;font-weight:500}.hero.swift .craft-line{grid-column:1/-1;font-size:19px}.system-map{position:relative;max-width:1000px;margin:22px auto 0;padding-bottom:28px}.system-map svg{width:100%;height:auto;display:block;overflow:visible}.system-map path,.system-map circle,.system-map rect{fill:#102c36;stroke:#9ebbbb;stroke-width:2}.system-map .map-track,.system-map .map-branch{fill:none;stroke:#496c73;stroke-width:2}.system-map .map-signal{fill:none;stroke:#c2ef89;stroke-width:4;stroke-dasharray:0 680;opacity:0}.system-map.trace .map-signal{animation:signal-trace 1.3s ease-out both}.system-stage{position:absolute;bottom:0;font-size:12px;transform:translateX(-50%);color:#b6cdd0}.system-stage:nth-of-type(1){left:8%}.system-stage:nth-of-type(2){left:36%}.system-stage:nth-of-type(3){left:64%}.system-stage:nth-of-type(4){left:92%}.workflow[data-stage="0"] .system-stage[data-stage="0"],.workflow[data-stage="1"] .system-stage[data-stage="1"],.workflow[data-stage="2"] .system-stage[data-stage="2"],.workflow[data-stage="3"] .system-stage[data-stage="3"]{color:#c2ef89;font-weight:600}.stack .workflow{margin-top:0;padding-top:18px}.stack .flow-stages{margin-top:25px}.stack .hero h1{max-width:1000px}.stack .hero-bottom{margin-bottom:20px}@keyframes signal-trace{0%{stroke-dasharray:0 680;opacity:1}70%{stroke-dasharray:680 0;opacity:1}100%{stroke-dasharray:680 0;opacity:.3}}
@media(max-width:1050px){.hero.swift>.shell{column-gap:5%;grid-template-columns:1.15fr .85fr}.hero.swift h1{font-size:clamp(50px,6.3vw,72px)}.hero-portrait{min-height:360px}.hero.swift .hero-copy>p{font-size:17px}.hero.swift .hero-actions{gap:18px}.hero-portrait figcaption{left:12px;right:12px;bottom:12px;padding:12px}}
@media(max-width:760px){.hero.swift>.shell{grid-template-columns:1fr}.hero.swift h1{font-size:clamp(48px,10.3vw,72px);margin-top:30px;grid-column:1}.hero.swift .hero-bottom{margin:25px 0 28px}.hero-portrait{grid-column:1;grid-row:auto;min-height:0;max-width:none;margin:0 0 28px}.hero-portrait-image{height:340px;object-position:center 23%;max-height:none}.hero-portrait figcaption{left:auto;width:58%;max-width:270px}.hero.swift .craft-line{font-size:12px}.system-map{padding-bottom:22px}.system-stage{font-size:10px;max-width:24%;text-align:center}.system-map svg{height:100px}.stack .hero h1{font-size:clamp(44px,9.5vw,65px)}}
@media(prefers-reduced-motion:reduce){.system-map.trace .map-signal{animation:none!important;stroke-dasharray:none;opacity:.5}}
.preview-expand{background:transparent;border:0;border-bottom:1px solid #707968;color:#35422f;padding:10px 0 6px;font-size:13px;margin-top:8px}.project-image{transition:aspect-ratio .6s ease,transform .6s ease}.project-card.expanded .project-image{aspect-ratio:1.6;object-fit:contain}.project-card.expanded .project-preview{background:#b7c6b1}.project-card.expanded .project-image{transform:none}.hero.stack>.shell{display:grid;grid-template-columns:1.05fr .95fr;column-gap:7%;padding-bottom:40px}.hero.stack .hero-kicker{grid-column:1/-1}.hero.stack h1{grid-column:1;font-size:clamp(48px,5.4vw,78px);margin-top:45px;line-height:1.06;align-self:end}.hero.stack .hero-bottom{grid-column:1;display:block;margin:30px 0 0}.hero.stack .hero-founder{margin:35px 0 0;border-top:1px solid #36515a;padding-top:22px;max-width:420px}.hero.stack .workflow{grid-column:2;grid-row:2/4;margin:45px 0 0;padding:28px;background:#193b46;border:1px solid #3b5c65;border-radius:5px;align-self:center}.hero.stack .workflow-top{display:block;font-size:17px}.hero.stack .workflow-top small{display:block;margin-top:5px;font-size:11px}.hero.stack .system-map{margin:25px 0}.hero.stack .system-map svg{height:140px}.hero.stack .system-stage{font-size:10px}.hero.stack .flow-stages{grid-template-columns:1fr 1fr}.hero.stack .flow-stages button{border-bottom:1px solid #456069;padding:15px 12px}.hero.stack .flow-stages button:nth-child(2){border-right:0}.hero.stack .flow-stages button:nth-child(3){border-bottom:0}.hero.stack .flow-stages strong{font-size:17px}.hero.stack .flow-stages button>span{font-size:23px}.hero.stack .flow-caption{min-height:48px;font-size:14px}.hero.stack .hero-copy>p{font-size:18px}
@media(max-width:1050px){.hero.stack>.shell{column-gap:4%;grid-template-columns:1.1fr .9fr}.hero.stack h1{font-size:clamp(43px,5.8vw,64px)}.hero.stack .workflow{padding:18px}.hero.stack .hero-actions{gap:20px}.hero.stack .flow-stages strong{font-size:15px}}
@media(max-width:760px){.hero.stack>.shell{display:block;padding-bottom:30px}.hero.stack h1{font-size:clamp(44px,10vw,68px);margin-top:30px}.hero.stack .hero-founder{margin-top:28px}.hero.stack .workflow{margin-top:30px;padding:22px}.hero.stack .system-map svg{height:105px}.hero.stack .flow-stages strong{font-size:18px}.hero.stack .hero-copy>p{font-size:17px}.hero.stack .flow-caption{min-height:46px}}
.work-lightbox{width:min(1200px,94vw);max-width:94vw;max-height:94dvh;border:1px solid #c1c9bc;border-radius:5px;padding:18px;background:#f7f5f0;color:#263528}.work-lightbox::backdrop{background:rgba(10,25,22,.8)}.work-lightbox[open]{animation:preview-open .25s ease-out}.lightbox-close{display:block;margin:0 0 15px auto;border:1px solid #8b9588;background:none;padding:9px 18px;color:inherit}.lightbox-scroll{overflow:auto;max-height:77dvh}.lightbox-scroll img{width:100%;min-width:700px;height:auto;max-width:none}@keyframes preview-open{from{opacity:.2;transform:scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.work-lightbox[open]{animation:none}}
h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}.hero.swift h1,.hero.stack h1{text-wrap:balance}.hero-portrait figcaption span{line-height:1.5}
.scenario{margin-top:35px;padding:25px;background:#dce7df;border-left:3px solid #557864}.scenario h3{font-size:24px;margin-bottom:15px}.scenario p{font-size:15px;margin-top:15px}
h1,h2,h3{hyphens:manual}.service-hero>.button{margin-top:24px}
.site-header{background:#f7f5f0}.stack .site-header{background:#edf1f1}@media(max-width:1050px){.service-detail{grid-template-columns:1fr;gap:28px}.service-detail h2{font-size:36px}.service-hero{padding-block:50px}}

/* Product concepts communicate the actual services. */
.hero.stack .workflow.product-art{padding:0;overflow:hidden;background:#0c2931;border:0;align-self:center}
.product-art>img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain}
.product-art figcaption{padding:14px 18px;font-size:12px;color:#b9d0d4;line-height:1.5}
.design-art{aspect-ratio:auto;max-width:100%;background:#eee5d6}
.design-art img{aspect-ratio:1.5;object-fit:contain;height:auto}
.design-art figcaption{padding:14px 18px;color:#56564d;font-size:12px;line-height:1.5}

.design-art{margin:0 0 48px;overflow:hidden;border-radius:4px}
@media(max-width:760px){.design-art{margin-bottom:32px}}

/* Real desktop/mobile captures, framed in CSS without altering client designs. */
.project-preview:has(.device-pair){background:#e4e1d8;padding:36px 22px 28px;overflow:hidden}
.device-pair{display:flex;align-items:center;gap:3%;width:100%}
.desktop-device{width:75%;background:#1b2222;border:5px solid #1b2222;border-radius:9px;overflow:hidden;box-shadow:0 12px 25px #17232028}
.desktop-device .browser-chrome{font-size:9px;padding:7px 10px;line-height:1.2;background:#f2f3ed;color:#45504a}
.desktop-device .project-image{width:100%;height:auto;aspect-ratio:1.6;object-fit:contain;transform:none!important}
.phone-device{width:22%;border:5px solid #1b2222;border-radius:17px;overflow:hidden;background:#1b2222;box-shadow:0 12px 25px #17232028}
.phone-device img{width:100%;height:auto;aspect-ratio:390/844;object-fit:contain}
.project-preview:hover .device-pair{transform:translateY(-4px)}
.device-pair{transition:transform .35s ease}
@media(max-width:760px){.project-preview:has(.device-pair){padding:24px 10px}.desktop-device{border-width:3px;border-radius:5px}.phone-device{border-width:3px;border-radius:10px}.desktop-device .browser-chrome{font-size:7px;padding:5px}.project-open{bottom:8px;right:8px}}
@media(prefers-reduced-motion:reduce){.device-pair{transition:none;transform:none!important}}

.guide-teaser{padding-block:80px;border-top:1px solid var(--line)}.guide-teaser h2{max-width:880px}.guide-teaser p{max-width:740px;margin:24px 0 14px;font-size:19px}
.business-guide{padding-block:72px 100px}.business-guide header{max-width:1000px}.business-guide h1{font-size:clamp(42px,5.5vw,76px)}.business-guide .lead{max-width:840px;margin-top:30px}
.guide-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:54px 0 24px;border-block:1px solid var(--line);padding:35px 0}.guide-stats strong{font-size:clamp(38px,4vw,62px);font-weight:500;letter-spacing:-.04em}.guide-stats p{font-size:17px;margin:12px 0}.guide-stats a,.guide-sources a{font-size:13px;text-decoration:underline;text-underline-offset:3px}.guide-note{font-size:14px;max-width:880px;line-height:1.7}.business-guide section{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;padding-block:40px;border-bottom:1px solid var(--line)}.business-guide section h2{font-size:32px;line-height:1.2}.business-guide section p{font-size:18px;line-height:1.8}.business-guide .guide-sources{grid-column:2;display:grid;gap:12px;margin:0}.business-guide>.guide-note:last-of-type{margin-top:32px}
@media(max-width:760px){.guide-stats{grid-template-columns:1fr;gap:24px;margin-top:35px}.guide-stats>div+div{border-top:1px solid var(--line);padding-top:24px}.business-guide section{grid-template-columns:1fr;gap:20px}.business-guide .guide-sources{grid-column:1}.business-guide{padding-block:40px 60px}.guide-teaser{padding-block:50px}}
.project-card:first-child .desktop-device .project-image{aspect-ratio:1.6;object-fit:contain;height:auto}.project-preview:has(.device-pair){height:auto;min-height:0}

.concept-expand{display:block;color:#dce8eb;border-color:#7c9fa9;margin-top:10px}.product-art>img{transition:filter .3s ease}.product-art:has(.concept-expand:hover)>img{filter:brightness(1.08)}@media(prefers-reduced-motion:reduce){.product-art>img{transition:none}}
