@charset "UTF-8";
:root{--paper:#f3f0e8;--ink:#191b1a;--orange:#f05a28;--orange-text:#bc3d16;--muted:#62635e;--line:#c9c8c0;--dark-line:#4b4f4b;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:Arial,Helvetica,sans-serif;--max:1392px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(to right,#191b1a04 1px,transparent 1px);background-size:calc((100vw - 100px)/8) 100%}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}img{display:block;max-width:100%}figure{margin:0}h1,h2,h3,h4,h5,p{margin:0}h1,h2,h3{line-height:1.02;letter-spacing:-.055em}h1{font-size:clamp(3.25rem,6.65vw,6.4rem);font-weight:750}h2{font-size:clamp(2.6rem,4.3vw,4.4rem);font-weight:750}h3{font-size:2rem}em{font-style:normal;color:var(--orange)}p{color:var(--muted)}.shell{width:calc(100% - 96px);max-width:var(--max);margin-inline:auto}.eyebrow{display:block;font:12px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.15em;color:var(--orange-text)}.mono{font:12px/1.7 var(--mono);letter-spacing:.05em}.skip{position:absolute;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:12px;z-index:100}.skip:focus{top:10px}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c9c8c066;position:relative;z-index:5}.brand{font-size:28px;letter-spacing:-.055em;font-weight:800;line-height:1}.brand span{color:var(--ink)}.brand small{font:9px/1 var(--mono);letter-spacing:.26em;display:block;margin-top:11px;color:var(--muted)}.site-header nav{display:flex;align-items:center;gap:34px}.site-header nav a{font-size:14px;position:relative}.site-header nav a:not(.nav-arrow):after{content:"";height:1px;background:var(--orange);position:absolute;bottom:-7px;left:0;width:0;transition:width .2s}.site-header nav a:hover:after,.site-header nav a.active:after{width:100%}.nav-arrow{margin-left:40px;color:var(--orange);font-size:38px!important;line-height:1}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:730px;padding-top:55px}.hero-copy{position:relative;z-index:2;padding-bottom:110px}.hero-copy .eyebrow{margin-bottom:32px}.hero h1{white-space:nowrap;line-height:1.02}.hero-copy>p{font-size:18px;line-height:1.5;max-width:490px;margin-top:30px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:58px;padding:17px 22px;font-size:14px;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s}.button.dark{background:var(--ink);color:var(--paper)}.button.dark:hover{background:#333833;transform:translateY(-2px)}.button span{font-size:25px;color:var(--orange);line-height:1}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;line-height:1.5;border-bottom:1px solid currentColor;padding-bottom:6px;transition:color .2s}.text-link:hover{color:var(--orange-text)}.text-link span{font-size:20px}.hero-art{align-self:stretch;position:relative;min-width:0;margin-left:-18px;margin-right:-24px;display:flex;align-items:center;padding-bottom:60px}.hero-art img{width:115%;max-width:none;margin-left:-6%;mix-blend-mode:multiply;filter:contrast(1.02)}.art-note{position:absolute;font:10px/1.7 var(--mono);letter-spacing:.06em;color:var(--orange-text);z-index:2}.art-note b{font-weight:400;color:var(--muted);letter-spacing:0;font-size:10px}.note-one{left:1%;top:46%}.note-two{right:0;bottom:22%}.note-three{right:0;top:12%}.art-note:before{content:"";display:block;width:32px;border-top:1px solid var(--orange);margin-bottom:7px}.hero-foot{position:absolute;left:0;right:0;bottom:0;min-height:75px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font:10px/1.8 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.hero-foot i{font-style:normal;color:var(--orange-text);margin:0 9px}.hero-foot a{font-size:30px;color:var(--ink)}.portfolio{padding-top:88px;padding-bottom:100px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:20px 0 45px}.section-title>p{font-size:16px;max-width:300px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:50px 36px}.project{min-width:0}.project.featured{grid-column:1/-1;display:grid;grid-template-columns:1.8fr 1fr;border-bottom:1px solid var(--line);padding-bottom:48px;gap:38px}.project-visual{display:block;min-width:0;overflow:hidden}.project-copy{padding-top:27px}.project-copy h3{font-size:clamp(1.8rem,2.75vw,2.7rem);margin-top:12px;letter-spacing:-.055em}.project-copy h3 a:hover{color:var(--orange-text)}.project-copy>p{font-size:17px;margin-top:15px;max-width:510px}.project-bottom{display:flex;gap:20px;align-items:end;justify-content:space-between;margin-top:28px}.project-status{font:11px/1.6 var(--mono);letter-spacing:.04em;color:var(--muted)}.project-bottom .text-link{color:var(--orange-text);white-space:nowrap}.featured .project-copy{padding:25px 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.featured h3{font-size:clamp(4rem,6.4vw,6rem);margin-top:18px}.featured .project-copy>p{font-size:22px;line-height:1.4;margin-top:25px;max-width:300px}.featured .project-bottom{display:flex;flex-direction:column;align-items:start;gap:32px;margin-top:38px}.featured .project-status:before{content:"";display:block;width:24px;height:2px;background:var(--ink);margin-bottom:26px}.app-figure{--app-accent:#3561e9;--app-soft:#eaf0ff;--app-back:#e0ebf5;background:var(--app-back);padding:46px 25px 40px;position:relative;overflow:hidden;aspect-ratio:1.55;display:flex;align-items:center;justify-content:center;container-type:inline-size}.app-figure:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(115deg,transparent 49.9%,#ffffff88 50%,transparent 50.15%),linear-gradient(30deg,transparent 49.9%,#ffffff88 50%,transparent 50.15%);background-size:240px 240px;opacity:.7}.diagnostic{--app-accent:#7865c9;--app-soft:#efecfc;--app-back:#e6e0f5}.assessment{--app-accent:#52645f;--app-soft:#e8eeec;--app-back:#e3e1dc}.app-figure figcaption{position:absolute;bottom:13px;left:20px;font:9px/1.5 var(--mono);color:#52596a;letter-spacing:.035em}.demo-window{width:100%;background:#fff;position:relative;border:1px solid #ffffffd0;border-radius:8px;box-shadow:0 14px 35px #24395c15;transform:perspective(1500px) rotateY(-3deg) rotateX(2deg);transition:transform .45s;overflow:hidden;color:#243048;font:10px/1.5 var(--sans)}.project-visual:hover .demo-window{transform:perspective(1500px) rotateY(0) rotateX(0) translateY(-4px)}.window-bar{height:25px;background:#f4f6fb;display:flex;align-items:center;gap:5px;padding:0 10px;border-bottom:1px solid #e7ebf1}.window-bar>span:not(.window-end){width:5px;height:5px;background:#a6b0c2;border-radius:50%}.window-bar b{font:7px var(--mono);font-weight:400;letter-spacing:.1em;margin-left:auto;opacity:.55}.window-end{margin-left:auto;font-size:8px;letter-spacing:2px}.demo-layout{display:grid;grid-template-columns:22% 1fr;min-height:240px}.demo-sidebar{border-right:1px solid #e8edf5;display:flex;flex-direction:column;background:#fcfdff}.demo-brand{display:flex;align-items:center;gap:7px;padding:14px 10px 13px;font-size:11px}.demo-brand>b{display:grid;place-items:center;background:var(--app-accent);color:white;width:19px;height:19px;border-radius:4px}.demo-nav{display:flex;align-items:center;gap:7px;padding:8px 10px;font-size:8px;white-space:nowrap}.demo-nav.selected{background:var(--app-soft);color:var(--app-accent)}.demo-nav.last{margin-top:auto;padding-bottom:16px}.mini-symbol{font-size:12px;line-height:1}.demo-main{min-width:0;padding:17px 14px 19px;background:#fafbfe}.demo-heading{display:flex;align-items:center;gap:8px;margin-bottom:20px}.demo-heading h4{font-size:14px;letter-spacing:-.04em;line-height:1.1}.demo-search{margin-left:auto;border:1px solid #e4e9f1;padding:4px 8px;border-radius:3px;color:#8b96a8;font-size:7px}.demo-action{font-size:7px;background:var(--app-accent);color:white;padding:6px 8px;border-radius:3px;white-space:nowrap}.demo-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}.demo-stats>div{padding:9px 10px;border:1px solid #e5ebf5;background:white;border-radius:4px}.demo-stats small{font-size:8px;color:#56647e}.demo-stats b{display:block;color:#bbc4d2;font-size:16px;font-weight:400}.demo-mails{display:grid;grid-template-columns:1fr 1fr;gap:10px}.demo-mails>div{padding:9px;background:white;border:1px solid #e5ebf5;border-radius:4px}.demo-mails h5{font-size:8px;font-weight:600;padding-bottom:4px}.demo-mail{display:flex;align-items:start;gap:6px;padding:9px 0;border-bottom:1px solid #edf0f7;min-width:0}.demo-mail:last-child{border-bottom:0}.demo-mail>div{flex:1;min-width:0}.demo-mail strong{display:block;font-size:7px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.demo-mail>span:last-child{font-size:10px;color:#9aa9c1}.avatar-dot{display:block;flex:0 0 14px;height:14px;border-radius:50%;background:#dfe5ed;border:4px solid #eff2f7}.demo-mail i,.demo-project i,.demo-report i{display:block;width:92%;height:3px;background:#e1e6ee;margin-top:5px}.demo-mail i.short{width:64%}.demo-section-label{font-size:8px;color:#718097;margin-bottom:10px}.demo-project{display:flex;align-items:center;gap:9px;padding:14px 7px;background:white;border:1px solid #e5e9f2;margin-bottom:9px;border-radius:3px}.demo-project>div{width:30%}.demo-project strong{font-size:9px;font-weight:500}.project-glyph{font-size:16px;color:#8a95aa}.demo-progress{width:20%;height:4px;background:#e7eaf0;margin-left:auto}.demo-progress>b{height:100%;display:block;background:var(--app-accent);opacity:.55}.status-pill{padding:3px 6px;color:var(--app-accent);background:var(--app-soft);border-radius:3px;font-size:6px;white-space:nowrap}.status-pill.done{color:#537369;background:#e7f0eb}.demo-report{display:flex;gap:10px;align-items:center;background:white;border:1px solid #e5e9f2;padding:12px;margin-top:14px}.demo-report>span{font-size:19px;color:var(--app-accent)}.demo-report>div{flex:1}.demo-report strong{font-size:9px;font-weight:500}.demo-report small{font-size:7px;color:#687888}.diagnostic .demo-sidebar{background:#29253f;color:#eeecf9}.assessment .demo-sidebar{background:#2b3430;color:#eeefeb}.diagnostic .demo-nav.selected,.assessment .demo-nav.selected{background:#ffffff14;color:white}.diagnostic .demo-brand>b,.assessment .demo-brand>b{background:#ffffff1f}.floating-detail{position:absolute;right:4%;bottom:15%;width:23%;padding:20px;background:white;border:1px solid #e3e9f2;border-radius:7px;box-shadow:0 18px 40px #20325315;font-size:12px;color:#2b3850;transform:rotate(2deg)}.floating-detail>span{display:block;font-weight:bold;margin-bottom:20px}.floating-detail>b{font-size:10px;font-weight:400;color:var(--app-accent)}.detail-lines{padding-top:10px}.detail-lines i{display:block;height:5px;background:#e0e6ee;margin:10px 0;width:90%}.detail-lines i:nth-child(2){width:65%}.workshop{background:var(--ink);color:var(--paper);padding:78px 0 40px;position:relative}.workshop:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,#ffffff03 1px,transparent 1px);background-size:12.5% 100%}.workshop .shell{position:relative}.workshop .eyebrow{color:#ff835d}.workshop-title{margin-bottom:36px;display:block}.workshop-title h2{max-width:1100px}.workshop-title>p{color:#b5b8b2;font-size:18px;max-width:none;margin-top:23px}.workshop-title>p br{display:none}.steps{border-top:1px solid var(--dark-line)}.steps details{border-bottom:1px solid var(--dark-line)}.steps summary{display:flex;align-items:center;gap:28px;padding:23px 0;cursor:pointer;list-style:none;font-size:21px;line-height:1.3}.steps summary::-webkit-details-marker{display:none}.steps summary:hover{color:#ff835d}.step-num{font:14px var(--mono);color:#ff835d;min-width:42px}.plus{height:20px;width:20px;position:relative;margin-left:auto;flex:0 0 20px}.plus:before,.plus:after{content:"";position:absolute;background:currentColor;left:0;top:9px;width:20px;height:1px}.plus:after{transform:rotate(90deg);transition:transform .2s}.steps details[open] .plus:after{transform:rotate(0deg)}.steps details[open] summary{color:#ff835d}.step-content{padding:8px 0 32px 70px;display:grid;grid-template-columns:1.4fr 1fr;gap:80px}.step-content h3{font-size:22px;letter-spacing:-.025em;line-height:1.3;margin-bottom:12px}.step-content p{font-size:16px;color:#b9bdb5;max-width:600px}.step-delivery{align-self:center;border-left:1px solid var(--dark-line);padding:12px 0 12px 28px;position:relative}.step-delivery>span:first-child{display:block;font:10px var(--mono);letter-spacing:.15em;color:#a6aaa2}.step-delivery strong{font-weight:400;display:block;font-size:25px;line-height:1.2;letter-spacing:-.03em;margin-top:12px;max-width:250px}.step-delivery>span:last-child{display:block;color:#ff835d;font-size:30px;line-height:1;margin-top:15px}.workshop-foot{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:30px}.workshop-foot p{font-size:13px;color:#a6aaa2;max-width:370px}.about{padding-top:90px;padding-bottom:80px}.about-grid{display:grid;grid-template-columns:1fr 1.7fr;gap:90px;margin:35px 0 60px}.portrait-placeholder{position:relative;background:#dfdcd4;min-height:340px;max-width:420px;display:grid;place-items:center;background-image:linear-gradient(135deg,#ffffff00,#ffffff55);align-self:start;aspect-ratio:1/1.05}.portrait-placeholder>b{font-size:clamp(100px,12vw,170px);font-weight:700;letter-spacing:-.065em;color:#52534e;line-height:1}.portrait-caption{position:absolute;left:24px;bottom:22px;font:11px var(--mono);letter-spacing:.05em;color:#60615a}.corner{position:absolute;width:23px;height:23px;border-color:var(--muted);border-style:solid}.corner.top{border-width:1px 0 0 1px;top:-9px;left:-9px}.corner.bottom{border-width:0 1px 1px 0;right:-9px;bottom:-9px}.about-copy h2{margin-bottom:30px}.about-copy h3{font-size:24px;letter-spacing:-.035em;margin-bottom:6px}.about-role{font-size:16px!important;margin:0 0 20px!important;color:var(--muted)}.about-copy>p{font-size:17px;line-height:1.6;margin-bottom:15px;max-width:640px}.about-copy .text-link{margin-top:13px}.roles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:29px;gap:28px}.roles>div+div{padding-left:28px;border-left:1px solid var(--line)}.role-number{font:10px var(--mono);letter-spacing:.11em;color:var(--muted)}.roles h3{font-size:23px;letter-spacing:-.035em;margin:13px 0}.roles p{font-size:15px;line-height:1.55;max-width:330px}.workshop .roles{border-color:var(--dark-line);margin-top:35px}.workshop .roles>div+div{border-color:var(--dark-line)}.workshop .roles p,.workshop .role-number{color:#b5b8b2}.contact{background:var(--orange);color:var(--ink);padding:58px 0 62px}.contact-inner{display:flex;gap:40px;align-items:center;justify-content:space-between}.contact h2{font-size:clamp(2.6rem,4.1vw,4rem);margin:16px 0}.contact p{color:var(--ink);font-size:17px}.contact .eyebrow{color:#512111}.contact .button{flex-shrink:0}.site-footer{display:flex;align-items:center;gap:28px;justify-content:space-between;min-height:110px}.site-footer .brand{font-size:24px}.site-footer>span{font:11px/1.6 var(--mono);color:var(--muted)}.site-footer>a:not(.brand){font-size:13px}.back-top{font-size:25px!important}.case-intro{padding-top:35px}.back-link{font:12px var(--mono);color:var(--muted)}.back-link:hover{color:var(--orange-text)}.case-title{display:grid;grid-template-columns:1fr 220px;gap:65px;margin:38px 0}.case-title h1{font-size:clamp(3.2rem,5vw,5rem);margin-top:18px;max-width:1000px;line-height:1.03}.case-title>div>p{font-size:21px;margin-top:22px}.case-title dl{margin:0;border-left:1px solid var(--line);padding-left:28px;align-self:center;font:12px/1.8 var(--mono)}.case-title dt{color:var(--muted);font-size:10px;letter-spacing:.08em}.case-title dd{margin:8px 0 0}.case-title dl>div+div{margin-top:28px}.detail-figure{aspect-ratio:2.35;padding:35px 12% 43px 6%}.detail-figure .demo-window{max-width:970px;transform:perspective(1500px) rotateY(-2deg);margin-right:7%}.detail-figure .demo-layout{min-height:325px}.detail-figure .demo-heading h4{font-size:21px}.detail-figure .demo-main{padding:23px}.detail-figure .demo-nav{font-size:11px;padding:10px 15px}.detail-figure .demo-brand{font-size:15px;padding:20px 15px}.detail-figure .demo-stats small{font-size:11px}.detail-figure .demo-mails h5{font-size:11px}.detail-figure .demo-mail{padding:13px 0}.detail-figure .demo-mail strong{font-size:10px}.detail-figure .demo-project{padding:17px}.detail-figure .demo-project strong{font-size:12px}.detail-figure .status-pill{font-size:9px}.detail-figure .demo-report strong{font-size:12px}.detail-figure .demo-section-label{font-size:11px}.case-nav{display:flex;gap:35px;padding:23px 0;border-bottom:1px solid var(--line);font:13px var(--mono)}.case-nav a:hover{color:var(--orange-text)}.case-story{padding-block:45px;display:grid;grid-template-columns:1fr 1fr;gap:38px}.case-story>div+div{border-left:1px solid var(--line);padding-left:38px}.case-story h2{font-size:34px;margin-top:14px;line-height:1.12}.case-story p{font-size:17px;line-height:1.55;margin-top:18px;max-width:620px}.case-features{grid-column:1/-1;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border-top:1px solid var(--line);padding:22px 0 0;margin:5px 0 0;font:13px/1.6 var(--mono)}.case-features li+li{border-left:1px solid var(--line);padding-left:22px}.case-next{padding-block:50px}.case-next>a{display:flex;justify-content:space-between;align-items:center;font-size:28px;font-weight:600;letter-spacing:-.035em;border-bottom:1px solid var(--line);padding:22px 0}.case-next>a:hover{color:var(--orange-text)}.not-found{padding-block:100px}.not-found h1{margin:25px 0 40px}
@media(min-width:1500px){.hero{min-height:820px}.hero-art img{width:112%}.hero-copy{padding-bottom:100px}}
@media(max-width:1100px){.shell{width:calc(100% - 60px)}.site-header nav{gap:24px}.nav-arrow{margin-left:10px}.hero{min-height:660px}.hero-copy{padding-bottom:100px}.hero-copy>p{font-size:17px;max-width:410px}.hero-actions{gap:20px}.hero-actions .button{padding:15px 17px;font-size:12px;gap:14px}.hero-actions .text-link{font-size:12px}.hero-art{margin-left:-25px}.hero-art img{width:118%}.art-note{display:none}.hero-foot{font-size:9px}.project.featured{gap:28px;grid-template-columns:1.6fr 1fr}.featured .project-copy>p{font-size:20px}.app-figure{padding-inline:18px}.demo-action{display:none}.project-bottom{align-items:start;flex-direction:column;gap:15px}.step-content{gap:35px}.about-grid{gap:60px}.detail-figure .demo-layout{min-height:270px}.case-title{gap:35px;grid-template-columns:1fr 170px}.detail-figure .demo-nav{font-size:9px}.detail-figure .demo-main{padding:16px}.detail-figure .demo-mails h5{font-size:9px}.detail-figure .demo-mail strong{font-size:8px}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.site-header{height:86px}.brand{font-size:25px}.brand small{font-size:8px;letter-spacing:.2em;margin-top:9px}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:0;padding:12px 0 12px 12px;min-height:44px;font-size:13px}.menu-toggle i{display:block;width:22px;height:12px;position:relative;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.menu-toggle[aria-expanded=true] i{border:0}.menu-toggle[aria-expanded=true] i:before,.menu-toggle[aria-expanded=true] i:after{content:"";position:absolute;top:5px;width:22px;height:1px;background:var(--ink);transform:rotate(45deg)}.menu-toggle[aria-expanded=true] i:after{transform:rotate(-45deg)}.site-header nav{display:none;position:absolute;left:-20px;right:-20px;top:85px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;box-shadow:0 12px 20px #191b1a08;gap:0}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch}.site-header nav a{font-size:22px;padding:13px 0}.site-header nav a:after{display:none}.site-header nav .nav-arrow{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:39px}.hero-copy{padding-bottom:0}.eyebrow{font-size:10px;letter-spacing:.13em}.hero-copy .eyebrow{margin-bottom:23px}h1{font-size:clamp(2.7rem,9vw,4.6rem)}.hero h1{letter-spacing:-.065em;line-height:1.04;white-space:normal}.hero-copy>p{font-size:17px;max-width:500px;margin-top:24px}.hero-actions{margin-top:25px;gap:22px}.hero-actions .button{font-size:13px;padding:15px 17px;gap:22px;min-height:53px}.hero-actions .text-link{font-size:13px}.hero-art{padding-bottom:0;margin:0;align-self:center;width:100%;max-width:520px;max-height:450px;aspect-ratio:1;overflow:hidden}.hero-art img{width:110%;margin-left:-5%;margin-top:-6%;max-width:none}.hero-foot{position:relative;min-height:66px;gap:14px;font-size:8px}.hero-foot>span:first-child{display:none}.hero-foot i{margin:0 4px}.hero-foot a{font-size:23px}.portfolio{padding-block:55px 60px}.section-title{display:block;margin:18px 0 29px}h2{font-size:clamp(2.35rem,7.5vw,3.7rem)}.section-title>p{margin-top:18px;max-width:none;font-size:15px}.section-title>p br{display:none}.projects{grid-template-columns:1fr;gap:34px}.project.featured{grid-column:auto;display:block;padding-bottom:30px}.project{border-bottom:1px solid var(--line);padding-bottom:30px}.project:last-child{border:0;padding-bottom:0}.project-copy,.featured .project-copy{padding:20px 0 0;display:block}.project-copy h3{font-size:32px;margin-top:10px}.featured h3{font-size:48px;margin-top:10px}.project-copy>p,.featured .project-copy>p{font-size:17px;max-width:none;margin-top:12px}.project-bottom,.featured .project-bottom{display:flex;flex-direction:row;justify-content:space-between;gap:18px;align-items:center;margin-top:22px}.featured .project-status:before{display:none}.project-status{font-size:10px;max-width:135px}.project-bottom .text-link{font-size:12px;gap:8px}.app-figure{aspect-ratio:1.4;padding:25px 13px 32px}.app-figure figcaption{font-size:8px;left:13px;bottom:11px}.demo-layout{min-height:195px;grid-template-columns:23% 1fr}.demo-brand{font-size:9px;padding:12px 7px}.demo-brand>b{width:16px;height:16px;font-size:9px}.demo-nav{font-size:6px;padding:7px;gap:5px}.mini-symbol{font-size:9px}.demo-main{padding:12px 9px}.demo-heading{gap:5px;margin-bottom:13px}.demo-heading h4{font-size:11px}.demo-search{font-size:6px;padding:3px 5px}.demo-stats{gap:5px;margin-bottom:10px}.demo-stats>div{padding:6px}.demo-stats small{font-size:6px}.demo-mails{gap:5px}.demo-mails>div{padding:6px}.demo-mails h5{font-size:6px}.demo-mail{padding:7px 0;gap:4px}.demo-mail strong{font-size:5px}.avatar-dot{flex-basis:10px;height:10px;border-width:3px}.demo-mail i{height:2px;margin-top:4px}.demo-project{gap:6px;padding:10px 6px;margin-bottom:6px}.demo-project strong{font-size:7px}.status-pill{font-size:5px;padding:2px 4px}.demo-report{margin-top:8px;padding:7px;gap:6px}.demo-report strong{font-size:7px}.demo-report small{font-size:6px}.demo-section-label{font-size:7px}.workshop{padding-block:48px 30px}.workshop-title h2 br{display:none}.workshop-title>p{font-size:16px;margin-top:21px}.steps summary{font-size:17px;padding:20px 0;gap:15px}.step-num{font-size:11px;min-width:24px}.plus{width:17px;flex-basis:17px;height:17px}.plus:after,.plus:before{width:17px}.step-content{grid-template-columns:1fr;padding:0 0 25px 39px;gap:20px}.step-content h3{font-size:19px}.step-content p{font-size:15px}.step-delivery{padding:12px 0 12px 18px;display:block}.step-delivery strong{font-size:21px;max-width:none}.step-delivery>span:last-child{display:none}.workshop-foot{display:block;padding-top:25px}.workshop-foot .mono{font-size:10px}.workshop-foot p{font-size:13px;margin-top:14px}.about{padding-block:52px}.about-grid{display:flex;flex-direction:column;gap:35px;margin:27px 0 36px}.portrait-placeholder{width:180px;min-height:180px;aspect-ratio:1;max-width:none}.portrait-placeholder>b{font-size:92px}.portrait-caption{font-size:8px;left:14px;bottom:16px}.about-copy h2{margin-bottom:24px}.about-copy>p{font-size:16px}.roles{grid-template-columns:1fr;gap:20px;padding-top:25px}.roles>div+div{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.roles h3{font-size:22px;margin-block:9px}.roles p{font-size:15px;max-width:none}.contact{padding-block:39px 42px}.contact-inner{display:block}.contact h2{font-size:37px;margin-block:15px}.contact p{font-size:16px}.contact .button{margin-top:27px;min-height:56px;font-size:13px}.site-footer{padding-block:30px;min-height:0;flex-wrap:wrap;gap:23px}.site-footer .brand{font-size:23px}.site-footer>span{order:5;flex-basis:100%;font-size:10px}.site-footer>a:not(.brand){margin-left:auto}.site-footer .back-top{margin-left:0!important}.case-intro{padding-top:27px}.case-title{display:block;margin:30px 0 25px}.case-title h1{font-size:clamp(2.6rem,8.5vw,4rem);margin-top:15px}.case-title>div>p{font-size:17px;margin-top:20px}.case-title dl{border-left:0;border-top:1px solid var(--line);padding:17px 0 0;margin:25px 0 0;display:flex;gap:32px;font-size:10px}.case-title dl>div+div{margin:0}.case-title dt{font-size:9px}.detail-figure{aspect-ratio:1.4;padding:22px 12px 31px}.detail-figure .demo-window{margin-right:0}.detail-figure .demo-layout{min-height:210px}.detail-figure .demo-main{padding:12px 9px}.detail-figure .demo-heading h4{font-size:11px}.detail-figure .demo-brand{font-size:9px;padding:12px 7px}.detail-figure .demo-nav{font-size:6px;padding:7px}.detail-figure .demo-stats small{font-size:6px}.detail-figure .demo-mails h5{font-size:6px}.detail-figure .demo-mail{padding:7px 0}.detail-figure .demo-mail strong{font-size:5px}.detail-figure .demo-project{padding:10px 6px}.detail-figure .demo-project strong{font-size:7px}.detail-figure .status-pill{font-size:5px}.detail-figure .demo-report strong{font-size:7px}.detail-figure .demo-section-label{font-size:7px}.floating-detail{display:none}.case-nav{padding-block:20px;gap:28px;font-size:12px}.case-story{grid-template-columns:1fr;padding-block:32px;gap:29px}.case-story>div+div{border-left:0;padding-left:0}.case-story h2{font-size:29px}.case-story p{font-size:16px;margin-top:12px}.case-features{grid-template-columns:1fr;gap:12px;padding-top:18px;font-size:12px}.case-features li+li{border:0;padding:0}.case-next{padding-block:36px}.case-next>a{font-size:23px;padding-block:19px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.hero h1{font-size:2.6rem}.hero-actions{gap:18px}.hero-actions .button{width:100%}.hero-foot{font-size:7px}.project-bottom,.featured .project-bottom{flex-direction:column;align-items:flex-start}.project-status{max-width:none}.contact h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.project-visual:hover .demo-window{transform:none}}
/* V2: business-led opening and animated product walkthroughs */
.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;min-height:760px;padding-top:60px;padding-bottom:105px}.hero-copy{padding-bottom:0;min-width:0}.hero h1{font-size:clamp(32px,3.95vw,61px);white-space:normal;letter-spacing:-.06em;line-height:1.09}.hero h1>span,.hero h1>em{display:block}.hero-copy>p{max-width:555px;font-size:18px;line-height:1.65;margin-top:28px}.hero-actions{gap:22px;margin-top:28px}.hero-actions .button{font-size:14px;padding:16px 18px;gap:16px}.hero-actions .text-link{font-size:14px}
/* V3: a broad digital workshop, with product examples only in the portfolio. */
.digital-workshop{position:relative;min-width:0;width:100%;align-self:center;padding-bottom:40px}.workshop-visual{overflow:hidden;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.workshop-visual img{width:110%;max-width:none;mix-blend-mode:multiply;animation:workshop-float 8s ease-in-out infinite;will-change:transform}.digital-workshop figcaption{font-size:14px;color:var(--muted);text-align:center;margin-top:18px;position:static}.art-motion-toggle{display:block;margin:16px auto 0;padding:9px 12px;min-height:40px;border:1px solid var(--line);background:transparent;color:var(--muted);font:11px var(--mono);cursor:pointer}.art-motion-toggle:hover{color:var(--ink);border-color:var(--ink)}.art-paused img{animation-play-state:paused}.section-title>p{max-width:355px}.hero{min-height:730px}.hero-copy{padding-bottom:0}
@keyframes workshop-float{0%,100%{transform:translateY(8px) rotate(-.8deg) scale(.97)}50%{transform:translateY(-9px) rotate(.8deg) scale(1)}}
@media(min-width:1500px){.hero{min-height:780px}.hero h1{font-size:61px}}
@media(max-width:1100px) and (min-width:761px){.hero{gap:24px;min-height:660px}.hero h1{font-size:clamp(30px,3.85vw,44px)}.hero-copy>p{font-size:16px}.hero-actions .button{font-size:13px}.digital-workshop figcaption{font-size:12px}}
@media(max-width:760px){.hero{gap:20px;padding-top:40px;padding-bottom:0;min-height:0}.hero h1{font-size:clamp(27px,6.8vw,48px);line-height:1.12;letter-spacing:-.055em}.hero-copy>p{font-size:17px;margin-top:23px;max-width:600px}.hero-actions{gap:20px;margin-top:25px}.hero-actions .button{font-size:13px;padding:15px;gap:15px}.digital-workshop{max-width:520px;padding-bottom:0;align-self:center}.digital-workshop figcaption{font-size:13px;margin-top:16px}.art-motion-toggle{font-size:11px;margin-top:10px}.hero-foot{margin-top:4px}.section-title>p{max-width:none}}
@media(max-width:380px){.hero h1{font-size:26px}.hero-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.workshop-visual img{animation:none!important;transform:none!important}}
@media(prefers-reduced-motion:reduce){.art-motion-toggle{display:none}}
/* Portfolio: anonymized product screens and concise case studies. */
.portfolio-screen{background:#fff;border:1px solid #dce1e8;overflow:hidden;position:relative}.portfolio-screen img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;transition:transform .35s}.project-visual:hover .portfolio-screen img{transform:none}.portfolio-screen figcaption{position:relative;padding:11px 15px;font:12px/1.6 var(--mono);color:#657082;background:#f8f9fb;border-top:1px solid #e5e8ec}.portfolio-screen-large{max-width:1200px;margin-inline:auto}.featured .project-copy>p{max-width:370px;font-size:21px}.case-features{row-gap:16px}.case-features li:nth-child(3n+1){border-left:0;padding-left:0}.project-process{padding-block:30px 55px}.project-process ol{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;list-style:none;counter-reset:flow;margin:25px 0 35px;padding:0}.project-process li{counter-increment:flow;border-top:1px solid var(--line);padding-top:15px;font-size:16px}.project-process li:before{content:'0' counter(flow);display:block;font:12px var(--mono);color:var(--orange-text);margin-bottom:12px}.project-challenge{border-top:1px solid var(--line);padding-top:28px;display:grid;grid-template-columns:1fr 1.6fr;gap:40px}.project-challenge h2{font-size:28px;letter-spacing:-.035em;line-height:1.15}.project-challenge p{font-size:16px;line-height:1.7}.case-next{border-top:1px solid var(--line)}
@media(max-width:760px){.portfolio-screen figcaption{font-size:12px;padding:12px}.featured .project-copy>p{font-size:17px;max-width:none}.project-process ol{grid-template-columns:1fr 1fr;gap:22px}.project-process li{font-size:15px}.project-challenge{grid-template-columns:1fr;gap:16px}.project-challenge h2{font-size:25px}.case-features li{border:0!important;padding-left:0!important}.project-process{padding-block:10px 35px}.case-nav{gap:20px;font-size:11px}}
/* Owner portrait, replacing the temporary monogram. */
.owner-portrait{width:100%;max-width:380px;align-self:center;position:relative;margin:0}.owner-portrait img{width:100%;height:auto;display:block;border:1px solid #d8d3c9}.owner-portrait figcaption{font:11px/1.6 var(--mono);letter-spacing:.035em;color:var(--muted);padding-top:12px}
@media(max-width:760px){.owner-portrait{max-width:290px;align-self:flex-start}.owner-portrait figcaption{font-size:10px}}

/* Contact: a direct conversation, with an explicit email handoff. */
.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:64px}
.contact-copy{min-width:0}.contact-email,.contact-phone{display:block;margin-top:14px;font-size:clamp(1rem,1.8vw,1.4rem);text-decoration:underline;text-underline-offset:6px;overflow-wrap:anywhere}.contact-email{margin-top:28px}
.contact-form{min-width:0;background:var(--paper);padding:32px;color:var(--ink)}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;font-size:14px;font-weight:600;margin-bottom:20px}
.contact-form input,.contact-form textarea{display:block;width:100%;min-width:0;margin-top:8px;border:1px solid #aaa99f;border-radius:0;background:#fffdf8;padding:12px;font:400 16px/1.5 var(--sans);color:var(--ink)}
.contact-form textarea{resize:vertical}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.contact .form-note,.contact .form-status{font-size:14px;line-height:1.5;color:var(--ink)}
.contact-form .button{border:0;cursor:pointer;margin-top:20px}.form-status:not(:empty){margin-top:16px}
@media(max-width:900px){.contact-inner{gap:30px;grid-template-columns:1fr}.contact-form{max-width:700px}}
@media(max-width:480px){.contact-form{padding:22px}.contact-fields{grid-template-columns:1fr;gap:0}.contact-form .button{width:100%}}

/* Captions occupy their own row, below images at every viewport size. */
.digital-workshop,.portfolio-screen,.owner-portrait{display:flex;flex-direction:column}
.digital-workshop figcaption,.portfolio-screen figcaption,.owner-portrait figcaption{flex:none;inset:auto;transform:none;overflow-wrap:anywhere}
.workshop-visual{flex:none}
.owner-portrait figcaption{font-size:12px;line-height:1.6}
.hero-foot{position:static;grid-column:1/-1;width:100%;margin-top:24px}
.hero{padding-bottom:0}

/* Explicit human oversight, following the delivery stages. */
.ai-process{margin-top:48px;padding-top:48px;border-top:1px solid #ffffff30}
.ai-process-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:56px;align-items:start}
.ai-process h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.12;letter-spacing:-.035em}
.ai-process p{color:#d0d3cc;font-size:16px;line-height:1.7}
.ai-process-intro p+p{margin-top:20px}
.ai-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;margin:36px 0 0;padding:0}
.ai-principles li{padding-top:20px;border-top:2px solid var(--orange)}
.ai-principles .mono{color:#c1c6bd;font-size:12px}
.ai-principles h4{font-size:20px;line-height:1.3;margin:12px 0 10px;color:var(--paper)}
.ai-process .ai-process-benefit{margin-top:30px;color:var(--paper);font-weight:600}
@media(max-width:760px){.ai-process{margin-top:30px;padding-top:30px}.ai-process-intro{grid-template-columns:1fr;gap:24px}.ai-principles{grid-template-columns:1fr;gap:24px;margin-top:28px}.ai-principles h4{font-size:20px}}

/* Mobile headings wrap naturally, with room between lines and words. */
.workshop-title h2{line-height:1.12;text-wrap:balance}
@media(max-width:760px){
 h1,h2,h3{line-height:1.15;letter-spacing:-.035em;overflow-wrap:break-word}
 .hero h1{line-height:1.16;letter-spacing:-.035em}
 .section-title h2,.about-copy h2,.contact h2,.case-title h1{text-wrap:balance}
 .section-title h2 br,.about-copy h2 br,.contact h2 br,.case-title h1 br{display:none}
 .steps summary>span:nth-child(2){min-width:0;line-height:1.4}
}

/* CRM Presentation & Enhanced Case Study */
.featured h3{font-size:clamp(2rem,3.4vw,2.9rem);line-height:1.15;margin-top:12px;letter-spacing:-.045em}
.featured .project-copy>p{max-width:540px;font-size:17px;line-height:1.6;margin-top:16px}

/* CRM Subpage Typography & Hierarchy */
.crm-title h1{
 font-size:clamp(3rem,4.2vw,4rem);
 font-weight:750;
 line-height:1.1;
 letter-spacing:-.04em;
 margin:14px 0 0;
 text-wrap:balance;
 hyphens:none;
 word-break:normal;
 white-space:normal;
}
.crm-lead{
 font-size:clamp(17px,1.35vw,19px);
 line-height:1.6;
 margin-top:20px;
 max-width:72ch;
 color:var(--ink);
}
.crm-section{
 border-top:1px solid var(--line);
 padding-block:48px;
}
.crm-section h2{
 font-size:clamp(1.8rem,2.8vw,2.5rem);
 margin:12px 0 16px;
 line-height:1.18;
 letter-spacing:-.035em;
 max-width:72ch;
}
.crm-prose{
 max-width:68ch;
}
.crm-prose p{
 font-size:17px;
 line-height:1.62;
 color:var(--ink);
 margin:0 0 16px;
}
.crm-prose p:last-child{margin-bottom:0}

/* CRM Feature Cards */
.crm-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:28px;
 margin-top:28px;
}
.crm-card{
 background:#fff;
 border:1px solid var(--line);
 padding:28px 24px;
 border-top:3px solid var(--ink);
}
.crm-card.crm-card-accent{
 border-top-color:var(--orange);
}
.crm-card h3{
 font-size:20px;
 letter-spacing:-.025em;
 margin:0 0 10px;
 color:var(--ink);
}
.crm-card p{
 font-size:16px;
 line-height:1.58;
 color:var(--ink);
 margin:0 0 14px;
}
.crm-card ul{
 margin:0;
 padding-left:18px;
 display:flex;
 flex-direction:column;
 gap:8px;
}
.crm-card li{
 font-size:14px;
 line-height:1.55;
 color:var(--muted);
}

/* CRM Mobile Section */
.crm-mobile-layout{
 display:grid;
 grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
 gap:48px;
 align-items:center;
 margin-top:24px;
}
.crm-mobile-content{
 min-width:0;
}
.crm-mobile-content h2{
 font-size:clamp(1.8rem,2.8vw,2.5rem);
 margin:12px 0 16px;
 line-height:1.18;
 letter-spacing:-.035em;
}
.crm-mobile-media{
 width:100%;
 max-width:330px;
 margin:0 auto;
}

/* CRM Visualizations */
.crm-media{
 margin:28px 0 0;
 padding:0;
}
.crm-media-pulpit{
 max-width:1024px;
 margin-inline:auto;
}
.crm-media-ai{
 max-width:760px;
 margin-inline:auto;
}
.crm-media figcaption{
 margin-top:10px;
 font:12px/1.6 var(--mono);
 color:var(--muted);
 text-align:left;
}

/* Zoom Button & Hint */
.media-zoom-btn{
 display:block;
 width:100%;
 padding:0;
 margin:0;
 background:none;
 border:0;
 text-align:left;
 cursor:zoom-in;
}
.media-zoom-btn img{
 display:block;
 width:100%;
 height:auto;
 border:1px solid #dce1e8;
 border-radius:6px;
 box-shadow:0 4px 16px rgba(0,0,0,0.06);
 transition:box-shadow .2s ease, border-color .2s ease;
}
.media-zoom-btn:hover img,.media-zoom-btn:focus-visible img{
 box-shadow:0 8px 24px rgba(0,0,0,0.12);
 border-color:var(--line);
}
.zoom-hint{
 display:inline-flex;
 align-items:center;
 gap:6px;
 margin-top:8px;
 font:11px/1.4 var(--mono);
 letter-spacing:.04em;
 color:var(--muted);
}
.media-zoom-btn:hover .zoom-hint,.media-zoom-btn:focus-visible .zoom-hint{
 color:var(--orange-text);
}

/* CRM CTA Box */
.crm-cta-box{
 background:var(--ink);
 color:var(--paper);
 padding:40px 44px;
 margin-top:40px;
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:32px;
}
.crm-cta-copy h2{
 color:var(--paper);
 font-size:clamp(1.8rem,2.6vw,2.4rem);
 margin:0 0 12px;
 line-height:1.2;
}
.crm-cta-copy p{
 font-size:17px;
 line-height:1.55;
 color:#b5b8b2;
 max-width:62ch;
 margin:0;
}
.crm-cta-box .button{
 flex-shrink:0;
 background:var(--paper);
 color:var(--ink);
 border-color:transparent;
 white-space:nowrap;
}
.crm-cta-box .button:hover{
 background:#fff;
 transform:translateY(-2px);
}

/* Lightbox Modal */
body.modal-open{overflow:hidden}
.image-modal{
 border:1px solid var(--line);
 border-radius:8px;
 background:#fff;
 color:var(--ink);
 padding:0;
 width:min(1100px, 94vw);
 max-height:92vh;
 box-shadow:0 24px 60px rgba(0,0,0,0.3);
 margin:auto;
}
.image-modal::backdrop{
 background:rgba(25,27,26,0.75);
 backdrop-filter:blur(2px);
}
.modal-header{
 display:flex;
 justify-content:flex-end;
 padding:10px 16px;
 border-bottom:1px solid #e7ebf1;
 background:#f8f9fb;
}
.modal-close{
 background:transparent;
 border:1px solid var(--line);
 border-radius:4px;
 padding:6px 14px;
 font:12px/1.4 var(--mono);
 color:var(--ink);
 cursor:pointer;
 transition:background .2s, color .2s;
}
.modal-close:hover,.modal-close:focus-visible{
 background:var(--ink);
 color:var(--paper);
}
.modal-body{
 padding:20px;
 overflow:auto;
 max-height:calc(92vh - 90px);
 display:flex;
 flex-direction:column;
 align-items:center;
}
.modal-img{
 display:block;
 max-width:100%;
 height:auto;
 border:1px solid #dce1e8;
 border-radius:4px;
 box-shadow:0 4px 16px rgba(0,0,0,0.08);
}
.modal-caption{
 margin-top:14px;
 font:12px/1.6 var(--mono);
 color:var(--muted);
 text-align:center;
 max-width:800px;
}

@media(max-width:860px){
 .crm-grid{
  grid-template-columns:1fr;
  gap:20px;
 }
 .crm-mobile-layout{
  display:flex;
  flex-direction:column;
  gap:28px;
 }
 .crm-mobile-media{
  max-width:300px;
 }
 .crm-cta-box{
  flex-direction:column;
  align-items:flex-start;
  padding:28px 20px;
  gap:24px;
 }
 .crm-cta-box .button{
  width:100%;
  justify-content:space-between;
 }
}
@media(max-width:760px){
 .crm-title h1{
  font-size:clamp(2rem,5.5vw,2.5rem);
  line-height:1.15;
 }
 .crm-section{padding-block:36px}
 .crm-lead{font-size:16px;margin-top:16px}
 .crm-card{padding:22px 18px}
 .modal-body{padding:12px}
 .modal-caption{font-size:11px}
}

