:root{--paper: #fffbf3;--ink: #221a14;--ink-2: #5d5148;--sun: #ffd23f;--tomato: #ff6b3d;--sky: #8fd3ff;--pink: #ffb3c7;--mint: #9be3c1;--line: 3px solid var(--ink);--shadow: 5px 5px 0 var(--ink);--font: "Bricolage Grotesque", ui-rounded, system-ui, sans-serif;--hand: "Caveat", "Comic Sans MS", cursive;--pad: clamp(16px, 4.5vw, 64px);--spring: cubic-bezier(.34, 1.56, .64, 1);--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html.modal-open{overflow:hidden}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden;background-image:radial-gradient(rgba(34,26,20,.09) 1.2px,transparent 1.3px);background-size:22px 22px}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit}::selection{background:var(--sun)}:focus-visible{outline:3px dashed var(--tomato);outline-offset:4px;border-radius:6px}.hand{font-family:var(--hand);font-weight:700;font-size:26px;line-height:1.1;color:var(--tomato)}.h2{font-size:clamp(38px,5.6vw,76px);line-height:1;letter-spacing:-.03em;font-weight:800}.h3{font-size:clamp(26px,3vw,38px);font-weight:800;letter-spacing:-.02em}.head{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:clamp(32px,5vw,56px)}.head-note{transform:rotate(-3deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:54px;padding:0 26px;border:var(--line);border-radius:14px;font-weight:700;font-size:17px;cursor:pointer;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease,background .2s}.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}.btn:active{transform:translate(4px,4px);box-shadow:1px 1px 0 var(--ink)}.btn-ink{background:var(--ink);color:var(--paper)}.btn-sun{background:var(--sun)}.btn-line{background:#fff}.btn-sm{height:44px;padding:0 18px;font-size:15px;box-shadow:3px 3px 0 var(--ink)}.btn-lg{height:64px;font-size:clamp(16px,2vw,22px);padding:0 30px}.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--pad);background:#fffbf3eb;border-bottom:3px solid transparent;transition:border-color .3s}.nav.is-scrolled{border-bottom-color:var(--ink)}.logo{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:26px;letter-spacing:-.03em}.logo .dot{color:var(--tomato)}.logo-face{width:40px;height:38px;display:inline-block}.logo-face svg{width:100%;height:100%;overflow:visible}.nav-links{display:flex;gap:6px}.nav-links a{font-weight:600;padding:8px 14px;border-radius:10px;transition:background .2s}.nav-links a:hover{background:var(--sun)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(40px,6vw,80px) var(--pad) clamp(56px,7vw,96px);max-width:1440px;margin:0 auto}.hello{font-size:34px;transform:rotate(-4deg);display:inline-block;margin-bottom:8px}.hero-title{font-size:clamp(40px,4.7vw,74px);line-height:1.02;letter-spacing:-.035em;font-weight:800}.hl{padding:0 .12em;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.hl-sun{background:var(--sun)}.hl-sky{background:var(--sky)}.squiggle-word{position:relative;display:inline-block}.squiggle-word svg{position:absolute;left:-2%;bottom:-.12em;width:104%;height:.28em;overflow:visible}.squiggle-word path{fill:none;stroke:var(--tomato);stroke-width:5;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260;transition:stroke-dashoffset 1.2s var(--ease) 1s}.is-loaded .squiggle-word path{stroke-dashoffset:0}.hero-sub{font-size:clamp(17px,1.5vw,20px);color:var(--ink-2);max-width:560px;margin-top:24px}.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.reveal-load{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal-load:nth-child(2){transition-delay:.08s}.reveal-load:nth-child(3){transition-delay:.16s}.reveal-load:nth-child(4){transition-delay:.24s}.is-loaded .reveal-load{opacity:1;transform:none}.hero-art{position:relative;aspect-ratio:1 / 1;max-width:560px;justify-self:center;width:100%}.sun{position:absolute;top:10%;right:8%;bottom:6%;left:10%;border-radius:50%;background:var(--sun);border:var(--line);animation:sunspin 40s linear infinite}.sun:before{content:"";position:absolute;top:-9%;right:-9%;bottom:-9%;left:-9%;border-radius:50%;border:3px dashed var(--ink);opacity:.35}@keyframes sunspin{to{transform:rotate(360deg)}}.momo-btn{position:absolute;top:4%;right:2%;bottom:0;left:0;background:none;border:0;padding:0;cursor:pointer}.momo-btn>span,.momo-btn svg{display:block;width:100%;height:100%}.doodle{position:absolute;fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.d-star{width:44px;left:2%;top:8%;fill:var(--pink);animation:bob 4s ease-in-out infinite}.d-spark{width:34px;right:4%;top:2%;stroke:var(--tomato);stroke-width:4;animation:twinkle 2.4s ease-in-out infinite}.d-loop{width:90px;right:-2%;bottom:14%;stroke:var(--sky);stroke-width:5}@keyframes bob{50%{transform:translateY(-10px) rotate(8deg)}}@keyframes twinkle{50%{transform:scale(.6) rotate(45deg)}}.note-momo{position:absolute;left:-16%;bottom:-2%;font-size:24px;color:var(--ink);transform:rotate(-6deg)}.note-momo svg{position:absolute;left:70%;top:-48px;width:70px;fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linecap:round;transform:scaleY(-1) rotate(-10deg)}.bubble{position:absolute;background:#fff;border:var(--line);border-radius:18px;padding:10px 16px;font-weight:700;font-size:16px;box-shadow:3px 3px 0 var(--ink);white-space:nowrap;pointer-events:none;transform-origin:bottom left;transition:transform .35s var(--spring),opacity .2s}.bubble:after{content:"";position:absolute;left:22px;bottom:-12px;width:18px;height:18px;background:#fff;border-right:var(--line);border-bottom:var(--line);transform:rotate(45deg) skew(10deg,10deg)}.bubble-hero{right:4%;top:4%;transform-origin:bottom left}.bubble.is-hidden{transform:scale(0);opacity:0}.momo{overflow:visible}.m-headwrap,.m-tail,.m-eye,.m-ear,.m-paw,.m-arm-wave,.m-letter{transform-box:fill-box}.m-headwrap{transform-origin:50% 90%;animation:headbob 3.2s ease-in-out infinite}@keyframes headbob{50%{transform:rotate(-2.5deg) translateY(3px)}}.m-tail{transform-origin:0% 100%;animation:wag 2.6s ease-in-out infinite}@keyframes wag{50%{transform:rotate(7deg)}}.m-eye{transform-origin:center;animation:blink 4.6s infinite}@keyframes blink{0%,94%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}.m-pupil{transition:transform .12s linear}.m-ear-l{transform-origin:80% 90%;animation:earL 7s infinite}.m-ear-r{transform-origin:20% 90%;animation:earR 9s infinite 1s}@keyframes earL{0%,90%,to{transform:none}93%{transform:rotate(-12deg)}96%{transform:rotate(4deg)}}@keyframes earR{0%,90%,to{transform:none}93%{transform:rotate(12deg)}96%{transform:rotate(-4deg)}}.momo-typing .m-paw-l{animation:tap .32s ease-in-out infinite alternate}.momo-typing .m-paw-r{animation:tap .32s ease-in-out infinite alternate-reverse}@keyframes tap{to{transform:translateY(-7px)}}.m-happy-eyes,.m-mouth-open,.is-happy .m-eyes,.is-happy .m-mouth{opacity:0}.is-happy .m-happy-eyes,.is-happy .m-mouth-open,.is-happy .m-blush{opacity:1}.momo-btn.is-jump{animation:jump .6s var(--spring)}@keyframes jump{30%{transform:translateY(-9%) rotate(-3deg)}60%{transform:translateY(1%) scaleY(.97)}}.m-arm-wave{transform-origin:90% 90%;animation:wave 1.1s ease-in-out infinite}@keyframes wave{50%{transform:rotate(-24deg)}}.m-letter{transform-origin:center;animation:bob 3s ease-in-out infinite}.strip{border-block:var(--line);background:#fff;display:flex;align-items:center;overflow:hidden}.strip-label{flex:none;padding:0 22px 0 var(--pad);font-size:28px;color:var(--ink);transform:rotate(-4deg)}.strip-track{overflow:hidden;flex:1;padding:16px 0}.strip-row{display:flex;gap:14px;width:max-content;animation:slide 30s linear infinite}.strip-row:hover{animation-play-state:paused}@keyframes slide{to{transform:translate(-50%)}}.chip{font-weight:700;font-size:19px;padding:8px 18px;border:var(--line);border-radius:999px;white-space:nowrap}.c-sun{background:var(--sun)}.c-pink{background:var(--pink)}.c-sky{background:var(--sky)}.c-mint{background:var(--mint)}.chip:nth-child(odd){transform:rotate(-2deg)}.chip:nth-child(2n){transform:rotate(1.5deg)}.work{padding:clamp(80px,10vw,140px) var(--pad);max-width:1440px;margin:0 auto}.feat-list{display:grid;gap:clamp(56px,8vw,110px)}.feat{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,64px);align-items:center}.feat:nth-child(2n){grid-template-columns:1fr 1.25fr}.feat:nth-child(2n) .feat-art{order:2}.feat-art{--r: -1.5deg;position:relative;border:var(--line);border-radius:24px;background:var(--c);box-shadow:8px 8px 0 var(--ink);padding:clamp(18px,3vw,36px);cursor:pointer;transform:perspective(1000px) rotate(var(--r)) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .4s var(--ease),box-shadow .3s}.feat:nth-child(2n) .feat-art{--r: 1.5deg}.feat-art:hover{box-shadow:12px 12px 0 var(--ink)}.browser{background:#fff;border:var(--line);border-radius:14px;overflow:hidden}.browser-bar{display:flex;gap:7px;padding:10px 12px;border-bottom:var(--line);background:#fff}.browser-bar i{width:12px;height:12px;border-radius:50%;border:2.5px solid var(--ink)}.browser-bar i:nth-child(1){background:var(--tomato)}.browser-bar i:nth-child(2){background:var(--sun)}.browser-bar i:nth-child(3){background:var(--mint)}.browser img{width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:top}.phones{display:flex;gap:6%;justify-content:center}.phone{width:38%;border:var(--line);border-radius:26px;overflow:hidden;background:#fff;padding:6px}.phone img{border-radius:18px;border:2px solid var(--ink)}.phones .phone:nth-child(2){transform:translateY(8%) rotate(4deg)}.tag-sticker{position:absolute;top:-18px;right:22px;background:#fff;border:var(--line);border-radius:10px;padding:4px 12px;font-weight:800;font-size:14px;transform:rotate(5deg);box-shadow:3px 3px 0 var(--ink)}.feat-info{display:grid;gap:14px;justify-items:start}.feat-num{font-family:var(--hand);font-size:30px;font-weight:700;color:var(--tomato);line-height:1}.feat-client{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.feat h3{font-size:clamp(30px,3.4vw,50px);line-height:1.02;letter-spacing:-.03em;font-weight:800}.feat-sum{color:var(--ink-2);max-width:520px}.pills{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:4px 0 0;list-style:none}.pills li{font-size:14px;font-weight:700;padding:5px 12px;border:2.5px solid var(--ink);border-radius:999px;background:#fff}.link-more{font-weight:800;border-bottom:3px solid var(--tomato);padding-bottom:2px;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer}.link-more:hover{color:var(--tomato)}.more-title{margin:clamp(90px,12vw,150px) 0 32px}.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,34px)}.card{border:var(--line);border-radius:20px;background:#fff;overflow:hidden;cursor:pointer;text-align:left;padding:0;box-shadow:var(--shadow);transform:rotate(var(--r, 0deg));transition:transform .35s var(--spring),box-shadow .25s}.card:hover{transform:rotate(0) translateY(-6px);box-shadow:9px 11px 0 var(--ink)}.card-art{background:var(--c);border-bottom:var(--line);padding:16px 16px 0;height:210px;overflow:hidden;display:flex;justify-content:center;align-items:flex-start}.card-art img{border:var(--line);border-bottom:0;border-radius:10px 10px 0 0;width:100%;height:100%;object-fit:cover;object-position:top left;transition:transform .5s var(--ease)}.card-art.is-phone img{width:46%;object-fit:cover;border-radius:18px 18px 0 0}.card:hover .card-art img{transform:translateY(-6px)}.card-body{padding:16px 18px 20px;display:grid;gap:6px}.card-client{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.card h4{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.15}.help{padding:0 var(--pad)}.help-inner{background:var(--sky);border:var(--line);border-radius:36px;padding:clamp(36px,6vw,80px) clamp(20px,5vw,72px);max-width:1440px;margin:0 auto}.help .head-note{color:var(--ink)}.help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.help-card{background:#fff;border:var(--line);border-radius:22px;padding:26px 22px;box-shadow:var(--shadow);transform:rotate(var(--r));display:grid;gap:10px;align-content:start;transition:transform .35s var(--spring)}.help-card:hover{transform:rotate(0) translateY(-6px)}.help-card h3{font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.15}.help-card p{color:var(--ink-2);font-size:16px}.help-card .stack{font-weight:700;color:var(--ink);font-size:14px}.ico{width:56px;height:56px;padding:8px;background:var(--c);border:var(--line);border-radius:14px;fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.about{padding:clamp(90px,12vw,160px) var(--pad);max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}.about-copy{display:grid;gap:20px}.about-copy p{font-size:clamp(17px,1.5vw,20px);color:var(--ink-2);max-width:620px}.notes{display:grid;grid-template-columns:1fr 1fr;gap:22px}.note{background:var(--c);border:var(--line);padding:22px 20px 20px;transform:rotate(var(--r));box-shadow:var(--shadow);display:grid;gap:2px;position:relative;transition:transform .35s var(--spring)}.note:before{content:"";position:absolute;top:-12px;left:50%;width:64px;height:22px;margin-left:-32px;background:#ffffffb3;border:2px solid rgba(34,26,20,.25);transform:rotate(-4deg)}.note:hover{transform:rotate(0) scale(1.03)}.note b{font-size:clamp(38px,4vw,56px);font-weight:800;letter-spacing:-.03em;line-height:1.05}.note span{font-weight:600}.contact{padding:0 var(--pad) clamp(70px,8vw,110px)}.contact-card{background:var(--sun);border:var(--line);border-radius:36px;box-shadow:10px 10px 0 var(--ink);max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:24px;padding:clamp(36px,6vw,80px) clamp(24px,5vw,72px);overflow:hidden}.contact-copy{display:grid;gap:22px;justify-items:start}.contact-copy p{font-size:clamp(17px,1.5vw,20px);max-width:520px}.contact-copy .btn-lg{max-width:100%}.contact-links{display:flex;gap:18px;flex-wrap:wrap;font-weight:700}.contact-links a{border-bottom:3px solid var(--ink)}.contact-links a:hover{color:var(--tomato);border-color:var(--tomato)}.contact-art{max-width:360px;justify-self:center;width:100%}.contact-art svg{width:100%;height:auto;display:block}.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:26px var(--pad) 34px;font-weight:600;color:var(--ink-2);border-top:var(--line)}.foot a:hover{color:var(--tomato)}.peek{position:fixed;right:clamp(10px,3vw,32px);bottom:0;z-index:30;width:120px;transform:translateY(110%);transition:transform .6s var(--spring)}.peek.is-out{transform:translateY(18%)}.peek-btn{display:block;width:100%;background:none;border:0;padding:0;cursor:pointer}.peek-btn svg{width:100%;height:auto;display:block}.peek-btn:hover{transform:translateY(-6px);transition:transform .3s var(--spring)}.bubble-peek{bottom:92%;right:70%;transform-origin:bottom right;max-width:240px;white-space:normal;width:max-content}.bubble-peek:after{left:auto;right:22px;transform:rotate(45deg) skew(10deg,10deg)}.reveal{opacity:0;transform:translateY(30px) rotate(var(--r, 0deg));transition:opacity .6s var(--ease),transform .7s var(--spring)}.reveal.in{opacity:1;transform:rotate(var(--r, 0deg))}.note.reveal.in:hover,.help-card.reveal.in:hover{transform:rotate(0) translateY(-6px)}.modal{width:min(980px,calc(100vw - 28px));max-height:calc(100vh - 40px);padding:0;border:var(--line);border-radius:28px;background:var(--paper);color:var(--ink);box-shadow:10px 10px 0 var(--ink);overflow:auto}.modal::backdrop{background:#221a1473}.modal[open]{animation:pop .45s var(--spring)}@keyframes pop{0%{transform:scale(.85) rotate(-2deg);opacity:0}}.modal-body{padding:clamp(26px,5vw,52px);display:grid;gap:16px}.modal-body .feat-client{color:var(--tomato)}.modal-title{font-size:clamp(32px,5vw,56px);line-height:1;font-weight:800;letter-spacing:-.03em}.modal-sum{color:var(--ink-2);max-width:640px;font-size:18px}.modal-gallery{display:grid;gap:18px;margin-top:10px}.modal-gallery img{width:100%;border:var(--line);border-radius:16px}.modal-gallery.is-phone{grid-template-columns:repeat(2,minmax(0,260px));justify-content:center}.modal-close{position:sticky;top:14px;float:right;margin:14px 14px 0 0;z-index:2;width:46px;height:46px;border-radius:50%;border:var(--line);background:var(--sun);font-size:18px;font-weight:800;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}@media (max-width: 1100px){.help-grid,.more-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 860px){.nav-links{display:none}.hero{grid-template-columns:1fr}.hero-art{max-width:440px}.note-momo{left:0;font-size:21px}.feat,.feat:nth-child(2n){grid-template-columns:1fr}.feat:nth-child(2n) .feat-art{order:0}.about,.contact-card{grid-template-columns:1fr}.contact-art{max-width:260px}}@media (max-width: 560px){body{font-size:16px}.help-grid,.more-grid{grid-template-columns:1fr}.hero-cta .btn{flex:1 1 auto}.strip-label{font-size:22px;padding-right:12px}.chip{font-size:16px}.notes{gap:16px}.peek{width:92px}.foot{justify-content:center;text-align:center}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.peek:not(.is-out) .bubble-peek{opacity:0;transform:scale(0)}html,body{overflow-x:clip}.contact-btns{display:flex;gap:14px;flex-wrap:wrap}.btn-wa{background:#7be495}.btn-wa svg{width:26px;height:26px;fill:none;stroke:var(--ink);stroke-width:2;stroke-linejoin:round}.btn-wa svg .fill{fill:var(--ink);stroke:none}@media (max-width: 560px){.contact-btns,.contact-btns .btn{width:100%}}
