:root{--paper:#fafaf8;--yellow:#efef67;--ink:#21221e;--muted:#65685e;--line:#dfe1d7}body{background:var(--paper)}.button{border-radius:100px;min-height:52px;padding:13px 25px}.button:hover{background:#404238}.button-small{min-height:44px}.wordmark-dot{color:inherit}.showcase .site-header{min-height:96px}.showcase h1{font-weight:600}.showcase .eyebrow{font-size:.75rem;letter-spacing:.12em}.portfolio-hero{display:grid;grid-template-columns:1fr 1fr;gap:20px;min-height:710px;align-items:center;padding:64px 0 66px}.portfolio-hero-copy{position:relative;z-index:2}.portfolio-hero h1{font-size:clamp(3.4rem,5.9vw,5.6rem);line-height:1.04;letter-spacing:-.065em;margin-bottom:27px}.hero-highlight{display:inline-block;position:relative}.hero-highlight:after{content:'';position:absolute;inset:auto -8px 1px;height:23%;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.portfolio-intro{font-size:1.05rem;line-height:1.75;color:var(--muted);max-width:405px;margin-bottom:28px}.hero-proof{display:flex;align-items:center;gap:15px;margin-top:35px}.icon-stack{display:flex;padding-left:0}.icon-stack img{border-radius:12px;width:42px;height:42px;object-fit:cover;box-shadow:0 0 0 3px var(--paper);margin-left:-8px}.icon-stack img:first-child{margin-left:0}.hero-proof p{font-size:.8rem;line-height:1.45;margin:0;font-weight:500}.hero-proof p span{color:var(--muted)}.hero-gallery{height:610px;min-width:0;position:relative}.hero-stage{position:relative;height:575px;isolation:isolate;background:#efefe7;border-radius:50% 50% 20% 20%;margin:0 8px}.hero-poster{position:absolute;width:230px;margin:0;box-shadow:0 22px 35px #21221e1c;border-radius:20px;overflow:hidden;background:white;border:5px solid #fff}.hero-poster>img{width:100%;height:auto;aspect-ratio:832/1800;object-fit:cover}.hero-poster figcaption{display:flex;align-items:center;justify-content:center;gap:9px;font-size:.8rem;font-weight:600;background:white;padding:9px}.hero-poster figcaption img{border-radius:8px;width:26px;height:26px}.hero-poster-back{left:4%;top:8%;transform:rotate(-12deg);--float-angle:-12deg;z-index:1}.hero-poster-front{right:4%;top:2%;transform:rotate(10deg);--float-angle:10deg;z-index:2}.hero-game-tile{position:absolute;right:-4%;bottom:45px;z-index:3;display:flex;flex-direction:column;align-items:center;padding:12px 14px;background:white;border:1px solid #ededeb;border-radius:23px;box-shadow:0 20px 30px #21221e17;transform:rotate(-8deg);--float-angle:-8deg}.hero-game-tile img{width:85px;height:85px;border-radius:18px}.hero-game-tile span{font-size:.75rem;margin-top:8px;font-weight:500}.stage-caption{position:absolute;left:0;bottom:8px;display:flex;align-items:center;gap:8px;font-size:.75rem;z-index:4;background:var(--yellow);padding:10px 16px;border-radius:30px;transform:rotate(-3deg)}.mini-cross{font-size:1.2rem}.motion-toggle{position:absolute;right:4px;bottom:0;border:0;border-bottom:1px solid var(--line);background:none;padding:5px 0;font-size:.75rem;color:var(--muted)}.float-a{animation:soft-float 7s ease-in-out infinite}.float-b{animation:soft-float 6.5s ease-in-out -2.1s infinite}.float-c{animation:soft-float 8s ease-in-out -4s infinite}@keyframes soft-float{0%,100%{transform:translateY(0) rotate(var(--float-angle,0deg))}50%{transform:translateY(-15px) rotate(calc(var(--float-angle,0deg) + 2deg))}}.motion-off .float-a,.motion-off .float-b,.motion-off .float-c{animation-play-state:paused}.motion-off [data-tilt]{transform:none!important}.app-dock{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:29px 0;border-block:1px solid var(--line)}.app-dock>a{display:flex;align-items:center;justify-content:center;gap:14px;padding:5px 18px;border-right:1px solid var(--line);transition:transform .2s}.app-dock>a:first-child{justify-content:flex-start;padding-left:0}.app-dock>a:last-child{border:0;justify-content:flex-end;padding-right:0}.app-dock a:hover{transform:translateY(-4px)}.app-dock img{width:52px;height:52px;object-fit:cover;border-radius:13px;box-shadow:0 3px 8px #0001}.app-dock span{font-family:var(--heading);font-size:1rem;font-weight:650;letter-spacing:-.03em}.app-dock small{display:block;font-family:var(--font);font-size:.75rem;color:var(--muted);font-weight:400;letter-spacing:0;margin-top:3px}.coming-symbol{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:13px;background:#f1e4df;color:#684244;font-family:Georgia,serif!important;font-size:1.45rem!important;font-style:italic;flex-shrink:0}.work-intro{padding:104px 0 47px}.work-intro>div{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.work-intro h2{font-size:clamp(2.3rem,3.4vw,3.3rem);font-weight:600;margin-bottom:0}.work-intro>div>p{margin:0;color:var(--muted);font-size:.95rem}.app-feature{border-radius:24px;padding:28px 48px 38px;margin-bottom:35px;overflow:hidden;scroll-margin-top:25px}.colorclub-feature{background:#f2e6c7;color:#44302a;--app-ink:#44302a}.recipin-feature{background:#ffdece;color:#622e1c;--app-ink:#622e1c}.swimmy-feature{background:#251530;color:#fff;--app-ink:#fff}.feature-topline{display:flex;justify-content:space-between;gap:25px;font-size:.75rem;font-weight:500;padding-bottom:20px;border-bottom:1px solid #44302a22}.swimmy-feature .feature-topline{border-color:#ffffff24}.feature-main{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:center;min-height:670px}.feature-copy{padding:50px 0;position:relative;z-index:2}.feature-icon{width:76px;height:76px;border-radius:19px;margin-bottom:22px;box-shadow:0 4px 15px #44302a13}.feature-name{font-size:1rem;font-weight:600;letter-spacing:-.025em;margin-bottom:16px}.feature-copy h2{font-size:clamp(2.9rem,4.15vw,4rem);font-weight:600;margin-bottom:23px;line-height:1.07}.feature-copy>p:not(.feature-name){font-size:1rem;line-height:1.8;max-width:360px;opacity:.85;margin-bottom:20px}.feature-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:28px}.feature-chips span{font-size:.75rem;padding:4px 10px;border:1px solid #44302a3b;border-radius:50px}.swimmy-feature .feature-chips span{border-color:#ffffff40}.feature-copy .button{font-size:.875rem;background:var(--app-ink);border-color:var(--app-ink);color:var(--paper)}.swimmy-feature .button{color:#251530}.feature-details{display:block;margin-top:20px;color:var(--app-ink);text-decoration:underline;text-underline-offset:4px;font-size:.875rem}.apple-icon{width:18px;height:20px;margin-right:9px}.feature-visual{height:630px;min-width:0;position:relative;will-change:transform;transition:transform .5s ease-out;perspective:1000px}.feature-poster{position:absolute;display:block;width:232px;border-radius:17px;box-shadow:0 18px 35px #44302a25;border:5px solid #ffffff;object-fit:cover;aspect-ratio:832/1800;height:auto;background:#fff}.feature-poster-secondary{right:0;top:70px;transform:rotate(9deg);z-index:1}.feature-poster-primary{left:0;top:50px;transform:rotate(-8deg);z-index:2}.visual-label{position:absolute;top:15px;left:5px;font-size:.8rem;border-bottom:1px solid #44302a44;padding-bottom:5px;font-weight:500}.swimmy-feature .feature-poster{border-color:#3b2347;box-shadow:0 18px 45px #0006}.swimmy-feature .visual-label{border-color:#ffffff55}.screenshot-gallery{padding-top:18px;border-top:1px solid #44302a22}.swimmy-feature .screenshot-gallery{border-color:#ffffff24}.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.gallery-heading h3{font-size:1rem;font-weight:600;letter-spacing:-.03em;margin:0;line-height:1.3}.gallery-controls{display:flex;align-items:center;gap:15px;font-size:.75rem}.gallery-controls button{border:0;background:transparent;font-size:.75rem;padding:8px 0;text-decoration:underline;text-underline-offset:4px}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-controls span{font-family:monospace;font-size:.75rem;white-space:nowrap}.screenshot-track{display:flex;gap:17px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#44302a66 transparent;padding:0 0 10px;overscroll-behavior-inline:contain}.screenshot-tile{padding:0;border:0;background:transparent;flex:0 0 calc((100% - 51px)/4);scroll-snap-align:start;border-radius:12px;position:relative}.screenshot-tile img{width:100%;height:auto;aspect-ratio:832/1800;object-fit:cover;border-radius:11px;transition:transform .25s,filter .25s}.screenshot-tile:hover img{transform:translateY(-4px);filter:brightness(1.04)}.screenshot-tile:focus-visible{outline-offset:-3px}.wedding-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding:76px 48px;background:#e6ebe5;border-radius:24px;align-items:center;margin-top:40px;overflow:hidden}.wedding-copy .eyebrow{font-size:.75rem}.wedding-wordmark{font-family:Georgia,serif;font-style:italic;font-size:2.1rem;letter-spacing:-.07em;color:#445a4c;margin-bottom:22px}.wedding-wordmark span{color:#7b473c}.wedding-copy h2{font-size:clamp(2.5rem,3.6vw,3.5rem);margin-bottom:24px;font-weight:600}.wedding-copy>p:not(.eyebrow):not(.wedding-wordmark):not(.wedding-status){font-size:1rem;color:#526353;max-width:360px;margin-bottom:25px}.wedding-copy .button.detail-trigger{padding:13px 25px;background:#314a39;color:white;text-decoration:none;border:1px solid #314a39;min-height:52px;font-size:.875rem}.wedding-status{font-size:.875rem;color:#526353;margin:20px 0 0}.wedding-preview{min-width:0;width:min(230px,100%);margin-inline:auto;transform:rotate(3deg)}.browser-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;background:white;border-radius:10px 10px 0 0;padding:13px 18px;font-size:.75rem;box-shadow:0 -4px 12px #213b2210}.browser-dots{font-size:.6rem;letter-spacing:4px;color:#bec5bc}.wedding-screen{height:410px;overflow:auto;background:#f7f7f0;border:7px solid #fff;border-top:0;border-radius:0 0 10px 10px;box-shadow:0 18px 30px #213b221a;scrollbar-width:thin}.wedding-screen img{width:100%;height:auto;display:block}.wedding-preview>p{font-size:.75rem;color:#526353;margin:18px 0 0;text-align:right}.studio-story{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:120px 0 110px}.studio-story h2{font-size:clamp(2.4rem,3.6vw,3.6rem);font-weight:600}.studio-story>div>p:not(.eyebrow){color:var(--muted);font-size:1rem}.studio-story .studio-lead{font-size:1.45rem!important;line-height:1.45;letter-spacing:-.035em;color:var(--ink)!important}.studio-story .company-details{margin-top:30px}.studio-contact{text-align:center;border-top:1px solid var(--line);padding:74px 0 86px}.studio-contact h2{font-size:clamp(3.2rem,5.4vw,5rem);font-weight:600;line-height:1.08;margin-bottom:28px}.studio-contact .contact-link{font-size:1.3rem;font-weight:500;margin-bottom:15px;letter-spacing:-.02em}.studio-contact .text-link{font-size:.875rem;color:var(--muted)}.mega-footer{background:#21221e;color:#f4f5ef;padding:40px 0 28px}.footer-navigation{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-navigation p{font-size:1rem;line-height:1.5;margin:0}.footer-navigation nav{display:flex;gap:28px;font-size:.875rem}.footer-navigation a:hover{text-decoration:underline;text-underline-offset:5px}.footer-wordmark{display:block;font-family:var(--heading);font-size:clamp(7rem,21.5vw,19rem);font-weight:800;letter-spacing:-.08em;line-height:1.15;margin:10px 0 15px;white-space:nowrap}.footer-wordmark span{color:var(--yellow)}.mega-footer .footer-bottom{border-color:#ffffff30;color:#b9bdb1;font-size:.75rem}.motion-ready [data-reveal]{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.motion-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}.motion-off [data-reveal]{transition:none;opacity:1;transform:none}#image-dialog{width:min(760px,calc(100% - 30px));max-height:93vh;background:#191b16;overflow:auto;padding:0;border-radius:16px}#image-dialog::backdrop{background:#151714c7}.lightbox-inner{position:relative;padding:25px 60px 20px}.lightbox-inner img{max-height:78vh;width:auto;height:auto;max-width:100%;margin:auto;object-fit:contain;border-radius:6px}.lightbox-inner p{color:#fff;font-size:.875rem;text-align:center;margin:18px 0 0}.image-close{position:fixed;margin-left:-40px;border:0;background:#fff;color:#21221e;width:35px;height:35px;border-radius:50%;font-size:1.5rem;line-height:1;z-index:1}.gallery-controls button:focus-visible,.motion-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(min-width:1500px){.hero-poster{width:255px}.hero-poster-back{left:5%}.hero-poster-front{right:7%}.hero-stage{height:610px}.hero-gallery{height:650px}.feature-poster{width:260px}.feature-visual{height:690px}.feature-main{min-height:710px}}
@media(max-width:1100px){.portfolio-hero{min-height:650px;gap:10px;padding-top:45px}.portfolio-hero h1{font-size:4.7rem}.hero-gallery{height:580px}.hero-stage{height:540px}.hero-poster{width:205px}.hero-poster-back{left:0;top:10%}.hero-poster-front{right:0;top:3%}.hero-game-tile{right:-2%;bottom:15px}.app-dock>a{gap:10px;padding:5px 12px}.app-dock img,.coming-symbol{width:44px;height:44px}.app-dock span{font-size:.9rem}.app-dock small{font-size:.75rem}.app-feature{padding:25px 32px 32px}.feature-copy h2{font-size:3rem}.feature-main{grid-template-columns:1fr 1fr;min-height:610px}.feature-visual{height:560px}.feature-poster{width:195px}.feature-poster-primary{left:0;top:42px}.feature-poster-secondary{right:0;top:64px}.wedding-feature{gap:40px;padding:60px 32px}.wedding-screen{height:360px}.studio-story{gap:60px;padding-block:95px}}
@media(max-width:850px){.portfolio-hero h1{font-size:3.8rem}.portfolio-hero{padding-block:35px;min-height:590px}.portfolio-intro{font-size:1rem}.hero-gallery{height:505px}.hero-stage{height:465px;margin:0}.hero-poster{width:174px;border-width:4px;border-radius:14px}.hero-poster-back{left:-1%;top:12%}.hero-poster-front{right:0;top:5%}.hero-game-tile{right:-2%;bottom:4%;padding:8px 10px;border-radius:17px}.hero-game-tile img{width:62px;height:62px;border-radius:14px}.hero-game-tile span{font-size:.75rem}.stage-caption{left:0;bottom:1%;padding:7px 10px;font-size:.75rem}.app-dock{grid-template-columns:1fr 1fr;gap:24px 0;padding:25px 0}.app-dock>a,.app-dock>a:last-child{justify-content:flex-start;padding:0 20px}.app-dock>a:nth-child(odd){border-right:1px solid var(--line);padding-left:0}.app-dock>a:nth-child(even){border:0}.app-dock img,.coming-symbol{width:46px;height:46px}.app-dock span{font-size:1rem}.work-intro{padding-top:75px}.app-feature{padding:22px 28px 30px}.feature-main{grid-template-columns:.9fr 1.1fr;gap:14px;min-height:525px}.feature-copy{padding:35px 0}.feature-copy h2{font-size:2.5rem}.feature-copy>p:not(.feature-name){font-size:.95rem}.feature-icon{width:64px;height:64px;border-radius:16px}.feature-visual{height:480px}.feature-poster{width:160px;border-width:4px}.feature-poster-primary{top:50px;left:2%}.feature-poster-secondary{top:68px;right:0}.visual-label{font-size:.75rem}.feature-chips{gap:5px}.feature-chips span{padding:3px 7px}.feature-copy .button{font-size:.8rem;padding:12px 18px}.feature-details{font-size:.875rem}.screenshot-tile{flex-basis:calc((100% - 34px)/3)}.wedding-feature{grid-template-columns:1fr 1fr;gap:25px;padding:45px 28px}.wedding-copy h2{font-size:2.7rem}.wedding-screen{height:335px}.browser-bar{font-size:.75rem;padding:12px}.browser-dots{display:none}.studio-story{gap:45px}.studio-story .company-details>div{flex-direction:row}.studio-story .company-details strong{text-align:right}.footer-navigation nav{gap:20px}}
@media(max-width:650px){.portfolio-hero{grid-template-columns:1fr;padding-top:35px;gap:25px;padding-bottom:30px}.portfolio-hero-copy{padding:0 5px}.portfolio-hero .eyebrow{margin-bottom:23px}.portfolio-hero h1{font-size:clamp(3.3rem,10vw,4.5rem);line-height:1.03;margin-bottom:24px}.portfolio-intro{max-width:400px;font-size:1rem}.hero-proof{margin-top:27px}.hero-gallery{height:550px;width:min(460px,100%);margin-inline:auto}.hero-stage{height:520px;border-radius:48% 48% 20% 20%}.hero-poster{width:200px;border-width:4px}.hero-poster-back{left:2%;top:9%}.hero-poster-front{right:2%;top:1%}.hero-game-tile{bottom:32px;right:0}.stage-caption{bottom:10px;left:0}.hero-proof p{font-size:.8rem}.work-intro>div{flex-direction:column;align-items:flex-start;gap:22px}.work-intro h2{font-size:2.45rem}.work-intro{padding:60px 0 30px}.work-intro>div>p{font-size:.95rem}.app-feature{padding:20px 24px 28px;border-radius:18px}.feature-main{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:auto}.feature-copy{padding-top:30px;padding-bottom:15px}.feature-copy h2{font-size:3rem}.feature-copy>p:not(.feature-name){max-width:100%;font-size:1rem}.feature-icon{width:64px;height:64px;float:right;margin-left:15px;margin-bottom:0}.feature-name{padding-top:18px;margin-bottom:24px}.feature-copy .button{font-size:.875rem;padding:12px 21px}.feature-visual{height:530px;width:min(400px,100%);align-self:center;margin:15px 0 5px}.feature-poster{width:195px}.feature-poster-primary{left:0;top:50px}.feature-poster-secondary{right:0;top:70px}.visual-label{left:3px;top:3px}.feature-details{margin-top:17px}.gallery-heading{flex-direction:column;align-items:flex-start;gap:9px;margin-bottom:18px}.gallery-controls{justify-content:space-between;width:100%}.screenshot-tile{flex-basis:calc((100% - 17px)/2)}.screenshot-track{padding-bottom:9px}.wedding-feature{grid-template-columns:1fr;padding:35px 24px;gap:40px;border-radius:18px}.wedding-copy h2{font-size:3rem}.wedding-copy>p:not(.eyebrow):not(.wedding-wordmark):not(.wedding-status){max-width:none}.wedding-preview{transform:rotate(1.5deg);margin:0 4px}.wedding-screen{height:370px}.studio-story{grid-template-columns:1fr;padding-block:70px;gap:16px}.studio-story h2{font-size:2.65rem}.studio-story .studio-lead{font-size:1.35rem!important}.studio-story .company-details>div{font-size:.85rem}.studio-contact{padding-block:60px}.studio-contact h2{font-size:3.6rem}.studio-contact .contact-link{font-size:1.2rem}.footer-navigation{flex-direction:column;gap:25px}.footer-navigation nav{flex-wrap:wrap;gap:22px}.mega-footer{padding-top:32px}.footer-wordmark{font-size:21vw;margin:26px 0 20px}.mega-footer .footer-bottom{font-size:.75rem}.lightbox-inner{padding:50px 25px 20px}.image-close{position:absolute;right:12px;top:10px;margin:0}.lightbox-inner img{max-height:73vh}}
@media(max-width:400px){.portfolio-hero-copy{padding:0}.portfolio-hero h1{font-size:3.1rem}.hero-gallery{height:490px}.hero-stage{height:460px}.hero-poster{width:172px}.hero-poster-back{left:0;top:12%}.hero-poster-front{right:0;top:4%}.hero-game-tile{bottom:10px}.stage-caption{bottom:3px;font-size:.75rem}.app-dock>a{gap:10px}.app-dock span{font-size:.875rem}.app-dock small{font-size:.75rem}.app-dock img,.coming-symbol{width:40px;height:40px;border-radius:10px}.feature-visual{height:450px}.feature-poster{width:155px;border-width:3px}.feature-poster-primary{top:48px;left:0}.feature-poster-secondary{top:67px;right:0}.feature-copy h2,.wedding-copy h2{font-size:2.6rem}.app-feature,.wedding-feature{padding-inline:20px}.feature-icon{width:56px;height:56px;border-radius:14px}.work-intro h2{font-size:2.15rem}.studio-story .company-details>div{font-size:.8rem}.studio-contact h2{font-size:3.1rem}.wedding-screen{height:325px}}
@media(prefers-reduced-motion:reduce){.float-a,.float-b,.float-c{animation:none!important}.motion-ready [data-reveal]{opacity:1;transform:none;transition:none!important}.feature-visual{transform:none!important}.motion-toggle{display:none}}

.feature-copy>p:not(.feature-name),.work-intro>div>p{font-size:1rem}.visual-label,.feature-topline,.feature-chips span,.gallery-controls button,.motion-toggle{font-size:.875rem}.image-close{position:absolute;right:15px;top:15px;margin:0}.feature-topline{flex-wrap:wrap}.hero-poster figcaption,.app-dock small,.hero-game-tile span{font-size:.875rem}
