/* Pachu — quiet typography, generous composition, purposeful motion. */
:root{--paper:#fafaf8;--ink:#202221;--quiet:#646865;--surface:#eeefed;--accent:#245bff;--display:'DM Sans',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;--ease-out:cubic-bezier(.23,1,.32,1)}
body{font-family:var(--body);font-weight:400;line-height:1.65}h1,h2,h3,.logo,.scene-current strong{font-family:var(--display);font-weight:500;letter-spacing:-.045em}p{letter-spacing:-.012em}h1{line-height:1.05}h2{line-height:1.12}.wrap{width:min(1320px,calc(100% - 96px))}.header{padding-block:24px;background:var(--paper)}.logo{font-weight:600;letter-spacing:-.065em}.logo span{font-weight:400;letter-spacing:-.02em}.hero{padding-top:58px}.hero-title{grid-template-columns:1.45fr 1fr;gap:7vw;align-items:end;margin-bottom:56px}.hero h1{font-size:clamp(48px,6.8vw,100px);font-weight:500;letter-spacing:-.055em;line-height:1.06}.hero-intro{max-width:330px;padding-bottom:6px}.hero-intro p{font-size:18px;line-height:1.6}.hero-intro .button{margin-top:24px}.hero h1 em{font-style:normal;color:var(--quiet)}.hero-spark,.contact-spark{display:none}.button{border-radius:7px;box-shadow:none!important;font-size:14px;font-weight:500;min-height:50px;padding:14px 23px;transition:transform 180ms var(--ease-out),background 180ms}.button svg{width:20px;height:20px}.button:active{transform:scale(.98)}.web-experience{width:min(1320px,calc(100% - 96px));margin-bottom:88px}.web-experience .stage{border-radius:10px;background:#e7e9e6}.web-experience .screen-chrome{background:#e7e9e6;color:#60655f}.web-experience .scene-picks button{font-size:14px;min-height:66px}.web-experience .scene-picks button[aria-pressed=true]{background:transparent;box-shadow:inset 0 -2px var(--ink);color:var(--ink)}.web-experience .scene-picks button:after{background:var(--ink)}.web-experience .scene-toolbar{padding-top:26px}.scene-current strong{font-size:27px}.reference-disclosure{font-size:13px!important}.section-head h2,.showcase-head h2,.closing-heading h2,.seo-layout h2,.faq h2{font-size:clamp(32px,4.1vw,58px);font-weight:500;letter-spacing:-.045em}.services{background:#f0f1ee;padding-block:90px}.service-tabs button{font-family:var(--body);font-size:15px;border-radius:6px}.service-details h3{font-size:34px;font-weight:500;letter-spacing:-.035em}.service-details p{font-size:17px}.service-details li{font-size:14px}.showcase{padding-top:90px}.showcase-head{margin-bottom:50px}.reference-grid{grid-template-columns:1.12fr 1fr;gap:80px 54px;align-items:start}.reference-project:nth-child(even){padding-top:110px}.reference-image{border-radius:8px;overflow:hidden}.reference-image .native-window{height:440px}.reference-caption{padding-top:22px}.reference-caption h3{font-size:23px;font-weight:500;letter-spacing:-.025em}.reference-caption p{font-size:15px;line-height:1.7;margin-top:12px}.reference-caption span{font-size:13px}.gallery-play{font:13px var(--body);color:var(--quiet);text-decoration:none;margin-top:15px}.custom-project{padding-top:110px}.custom-project-body{background:#e9edfa;color:var(--ink);padding:40px;min-height:440px;border-radius:8px}.custom-project-body h3{font-size:42px;font-weight:500;letter-spacing:-.045em}.custom-symbol{display:none}.custom-project-body p{font-size:16px}.custom-project-body .button{background:var(--ink);color:white}.custom-capabilities span{border-color:#b7c1df}.custom-project .reference-caption{margin-top:0}.pricing-section{padding-block:110px}.pricing-grid{gap:16px}.price-tile{background:#202221;border-radius:18px;padding:28px;aspect-ratio:auto;min-height:385px;transition:transform 250ms var(--ease-out)}.price-tile h3{font-size:21px;letter-spacing:-.025em;font-weight:500}.price-value strong{font-size:36px;font-weight:500;letter-spacing:-.04em}.price-tile p,.price-tile li{font-size:14px}.price-tile li:before{content:'—';color:#a6aaa6}.price-tile a{font-size:14px}.seo-section{background:#eeefec;padding-block:90px}.seo-layout{grid-template-columns:1fr 1fr;gap:10vw}.seo-details h3{font-size:23px;font-weight:500;letter-spacing:-.025em}.how-we-work{padding-block:90px}.work-steps article{padding-right:20px}.work-steps h3{font-weight:500;font-size:23px}.faq{padding-block:45px 100px}.faq summary{font-size:18px}.contact{background:#202221;color:#f5f6f2;padding-block:70px}.contact-top p{font-size:18px;line-height:1.5}.contact h2{font-size:clamp(70px,12vw,174px);font-weight:400;line-height:1;letter-spacing:-.065em;margin:38px 0 55px}.contact h2 br{display:none}.contact-bottom .button{background:#f5f6f2;color:#202221}.contact-bottom p{color:#c1c5bf}.footer{padding-block:40px}.footer p,.footer a{font-size:14px}.footer .logo{font-size:28px}.reading-progress{background:var(--accent)}
.motion-ribbon{overflow:hidden;position:relative;background:#eeefec;padding:27px 0;display:flex;align-items:center}.ribbon-track{display:flex;flex-shrink:0;width:max-content;animation:pachu-ribbon 38s linear infinite}.ribbon-track span{font-size:clamp(22px,3vw,40px);letter-spacing:-.035em;padding:0 35px;white-space:nowrap;color:#555b55}.ribbon-toggle{position:absolute;right:18px;background:var(--paper);border:1px solid #d3d6d0;border-radius:6px;padding:8px 13px;min-height:40px;font:12px var(--body)}.motion-ribbon.is-paused .ribbon-track{animation-play-state:paused}@keyframes pachu-ribbon{to{transform:translateX(-50%)}}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity 650ms var(--ease-out),transform 650ms var(--ease-out)}.reveal-ready.is-revealed{opacity:1;transform:none}.preview-dialog{border-radius:12px}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid #245bff;outline-offset:5px}.admin-bar .header{top:32px}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.price-tile:hover{transform:translateY(-6px)}.reference-visit:hover{background:#202221;color:white}.web-experience .scene-picks button:hover{background:#eeefec;color:#202221}.nav a:hover,.header nav a:hover{color:#245bff}}
@media(max-width:1000px){.hero-title{gap:35px}.hero h1{font-size:64px}.reference-grid{gap:55px 28px}.reference-project:nth-child(even),.custom-project{padding-top:60px}.pricing-grid{grid-template-columns:1fr 1fr}.price-tile{min-height:350px}.custom-project-body{padding:30px}.custom-project-body h3{font-size:34px}}
@media(max-width:650px){.wrap,.web-experience{width:calc(100% - 40px)}.header{padding-block:18px}.hero{padding-top:30px}.hero-title{display:block;margin-bottom:30px}.hero h1{font-size:clamp(43px,10vw,62px)}.hero-intro{margin-top:24px;max-width:100%}.hero-intro p{font-size:16px}.web-experience{margin-bottom:55px}.services,.seo-section,.how-we-work{padding-block:60px}.reference-grid{grid-template-columns:1fr;gap:44px}.reference-project:nth-child(even),.custom-project{padding-top:0}.reference-image .native-window{height:350px}.reference-caption h3{font-size:22px}.showcase{padding-top:60px}.custom-project-body{min-height:390px}.pricing-section{padding-block:60px}.pricing-grid{grid-template-columns:1fr}.price-tile{min-height:360px;padding:28px}.seo-layout{grid-template-columns:1fr;gap:40px}.contact{padding-block:50px}.contact h2{font-size:19vw;margin:35px 0}.contact-bottom{gap:25px}.faq{padding-bottom:60px}.motion-ribbon{padding-block:22px}.ribbon-track span{padding-inline:24px}.footer{padding-bottom:95px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ribbon-track{animation:none}.reveal-ready{opacity:1;transform:none;transition:none}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.hero-title{display:grid}.hero h1{max-width:none}.hero-intro{display:block}.hero-intro p{margin-bottom:0}.hero-intro .button{width:auto}.hero-intro{flex:none}@media(max-width:900px){.hero-title{grid-template-columns:1fr}.hero-intro{display:flex;align-items:center;justify-content:space-between;gap:32px;max-width:none}.hero-intro .button{margin:0;white-space:nowrap}}@media(max-width:650px){.hero-intro{display:block}.hero-intro .button{margin-top:22px}}

.motion-ribbon:hover .ribbon-track,.motion-ribbon:focus-within .ribbon-track{animation-play-state:paused}@media(max-width:650px){.hero-title{display:block}.header{height:auto;flex-wrap:wrap;gap:20px}.header nav{width:100%;justify-content:space-between;gap:14px;font-size:13px}.header nav a{display:flex!important}.nav-contact{gap:8px}.header nav svg{width:15px}.hero{padding-top:25px}}
