:root{--paper:#f6f3ec;--ink:#20211f;--muted:#66685f;--line:#dcd9d0;--yellow:#f7e76b;--coral:#ff795f;--blue:#7da9f1;--green:#bbcfad;--radius:24px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #517cbd;outline-offset:5px}button:disabled{cursor:default}svg{display:block;max-width:100%}[hidden]{display:none!important}.shell{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:10px;left:10px;transform:translateY(-160%);background:var(--yellow);padding:12px 20px;z-index:20}.skip-link:focus{transform:none}.site-header{display:flex;align-items:center;gap:40px;min-height:114px;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:25px;font-weight:800;letter-spacing:-1.2px;white-space:nowrap}.brand-dot{color:var(--coral);margin-left:-9px}.brand-symbol{display:grid;grid-template-columns:repeat(2,8px);gap:3px;margin-right:2px}.brand-symbol i{width:8px;height:8px;background:var(--ink);border-radius:2px}.brand-symbol i:last-child{background:var(--coral);border-radius:50%}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:14px}.site-header nav a:hover{text-decoration:underline;text-underline-offset:5px}.header-contact{font-size:14px;font-weight:700;border:1px solid var(--ink);padding:12px 19px;border-radius:100px;display:flex;align-items:center;gap:15px;white-space:nowrap}.header-contact:hover{background:var(--ink);color:var(--paper)}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:72px;align-items:center;padding:68px 0 78px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 28px;display:flex;align-items:center;gap:9px}.status-dot{width:8px;height:8px;background:var(--coral);border-radius:50%;display:inline-block}.hero h1{font-size:clamp(62px,6.5vw,96px);font-weight:800;letter-spacing:-5.5px;line-height:.99;margin:0 0 37px}.highlight-word{position:relative;display:inline-block;z-index:0}.highlight-word svg{position:absolute;width:105%;height:22px;left:-3px;bottom:-11px;z-index:-1;overflow:visible}.highlight-word path{fill:none;stroke:var(--coral);stroke-width:7px;stroke-linecap:round}.title-period{color:var(--coral)}.hero-description{font-size:19px;line-height:1.6;max-width:445px;margin:0 0 31px}.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;min-height:57px;padding:16px 24px;border-radius:11px;border:1px solid transparent;font-weight:700;line-height:1.25;font-size:16px;transition:background .18s,transform .18s;max-width:100%}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:var(--ink)}.button-yellow:hover{background:#f0db44}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#393b34}.button-outline{border-color:var(--ink);background:transparent}.button-outline:hover{background:var(--ink);color:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:14px;font-weight:700;padding:7px 0;border:0;border-bottom:1px solid currentColor;background:none;text-align:left;border-radius:0;line-height:1.35}.text-link:hover{color:#bb4936}.quiet{color:var(--muted);font-size:12px}.hero-note{margin:21px 0 0}.hero-playground{position:relative;padding:20px 0 0}.floating-note{position:absolute;right:8px;top:-12px;font-size:15px;transform:rotate(5deg);z-index:2}.floating-note span{display:block;font-size:39px;line-height:1;transform:rotate(10deg);margin-left:110px}.game-machine{--art-accent:var(--coral);--art-secondary:var(--yellow);background:#fdfaf1;border:1px solid var(--ink);border-radius:29px;overflow:hidden;box-shadow:8px 9px 0 var(--ink);transform:rotate(2.5deg)}.game-machine[data-palette=blue]{--art-accent:#7da9f1;--art-secondary:#c7b9ed}.game-machine[data-palette=green]{--art-accent:#94bc96;--art-secondary:#f7e76b}.machine-top{display:flex;justify-content:space-between;align-items:center;padding:24px 26px 0;gap:12px;font-size:10px;letter-spacing:1px;font-weight:700}.machine-mark{font-size:13px;letter-spacing:1.7px}.machine-level{display:flex;align-items:center;gap:10px;white-space:nowrap}.machine-level span{font-size:9px}.hero-game-art{width:100%;padding:0 10px}.art-bricks{fill:var(--art-accent);transition:fill .25s}.art-bricks-secondary{fill:var(--art-secondary)}.art-bricks-light{fill:#e7ded1}.art-paddle,.art-ball{fill:var(--ink)}.art-trail{fill:var(--art-accent);opacity:.35}.art-ball-path{fill:none;stroke:var(--art-accent);stroke-width:2;stroke-dasharray:4 8;opacity:.5}.art-spark{stroke:var(--art-accent);fill:none;stroke-width:3;stroke-linecap:round}.machine-play{width:100%;display:flex;align-items:center;justify-content:center;gap:21px;min-height:77px;background:var(--art-accent);border:0;border-top:1px solid var(--ink);font-size:20px;font-weight:700;transition:background .25s}.machine-play:hover{filter:brightness(1.03)}.play-circle{display:grid;place-content:center;background:var(--ink);color:#fff;width:32px;height:32px;border-radius:50%;font-size:12px;padding-left:2px}.palette-picker{display:flex;align-items:center;justify-content:center;gap:18px;font-size:12px;margin-top:34px}.palette-picker>div{display:flex;gap:7px}.palette-dot{width:23px;height:23px;border-radius:50%;border:2px solid var(--paper);box-shadow:0 0 0 1px transparent;padding:0}.palette-dot[aria-pressed=true]{box-shadow:0 0 0 1px var(--ink)}.palette-coral{background:var(--coral)}.palette-blue{background:var(--blue)}.palette-green{background:#94bc96}.promise-strip{border-block:1px solid var(--line)}.promise-strip .shell{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;font-size:14px;font-weight:700}.promise-strip span[aria-hidden]{color:var(--coral);font-size:24px;line-height:1}.section-space{padding-block:104px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:46px}.section-kicker{color:var(--muted);margin-bottom:24px}.section-heading h2,.service-intro h2,.case-copy h2{font-size:clamp(35px,4vw,57px);font-weight:700;line-height:1.1;letter-spacing:-2.3px;margin:0}.section-heading>p{color:#60635a;margin:0 0 3px;font-size:16px;line-height:1.65}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.game-card{min-width:0}.game-preview{position:relative;border:0;width:100%;border-radius:20px;overflow:hidden;aspect-ratio:1.18;padding:25px 18px 28px;color:var(--ink);transition:transform .2s}.game-preview:hover{transform:translateY(-5px)}.preview-breakout{background:#efe6d8}.preview-pong{background:var(--green)}.preview-memory{background:#c5b7eb}.game-preview>svg{width:100%;height:100%}.preview-index{position:absolute;left:20px;top:15px;font-size:10px;font-weight:700;opacity:.6;z-index:1}.preview-launch{display:flex;align-items:center;gap:9px;position:absolute;bottom:15px;right:16px;border:1px solid rgba(32,33,31,.5);background:rgba(246,243,236,.85);padding:9px 14px;border-radius:100px;font-size:12px;font-weight:700}.preview-launch>span{font-size:9px}.memory-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:260px;margin:23px auto 0;transform:rotate(-5deg)}.preview-tile{aspect-ratio:1;display:grid;place-content:center;background:#a99bcf;border:1px solid rgba(32,33,31,.15);border-radius:12px;font-size:32px;color:#e9e1f8;font-weight:700;box-shadow:0 4px 0 rgba(32,33,31,.13)}.face-up{background:#f7e76b;color:var(--ink)}.face-coral{background:#ff967f;color:var(--ink)}.card-text{padding:23px 0 0}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title-row h3{font-size:23px;letter-spacing:-.8px;margin:0}.game-tag{font-size:10px;border:1px solid var(--line);padding:3px 9px;border-radius:100px;white-space:nowrap;color:#64665e}.card-text>p{font-size:15px;color:#60635a;line-height:1.65;margin:14px 0 20px}.choose-link{font-size:13px}.catalog-footnote{font-size:12px;color:var(--muted);margin:34px 0 0}.service-section{background:#eae7df}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:115px}.service-intro>p:not(.eyebrow){max-width:380px;color:#60635a;font-size:17px;margin:26px 0 24px}.service-list>div{display:flex;gap:23px;padding:23px 0;border-top:1px solid #c9c8bf}.service-list>div:last-child{border-bottom:1px solid #c9c8bf}.service-number{font-size:11px;color:var(--muted);padding-top:6px}.service-list h3{margin:0 0 9px;font-size:21px;line-height:1.3;letter-spacing:-.6px}.service-list p{font-size:15px;line-height:1.65;margin:0;color:#60635a}.case-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.case-visual{background:#38234f;border-radius:26px;min-height:490px;padding:32px;color:#fff5c7;transform:rotate(-1deg);overflow:hidden}.case-brand{font-weight:700;letter-spacing:2px;font-size:15px;color:#c5a9ed}.dental-field{position:relative;height:358px;margin-top:26px;border:1px solid #79628d;border-radius:15px;background:#231433;overflow:hidden}.dental-bricks{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px}.dental-bricks i{height:24px;background:#d3b972;border-radius:5px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.12)}.dental-bricks i:nth-child(3n){background:#9b75c4}.dental-tooth{position:absolute;width:49px;left:55%;top:49%;transform:rotate(18deg)}.dental-brush{position:absolute;height:15px;width:122px;bottom:63px;left:calc(50% - 61px);background:#ed877c;border-radius:7px}.dental-brush i{position:absolute;width:69px;height:14px;left:12px;top:-10px;border-radius:3px;background:repeating-linear-gradient(90deg,#fff5c7 0 3px,#b9c6c7 3px 5px)}.case-prize{position:absolute;bottom:21px;font-size:9px;letter-spacing:2px;width:100%;text-align:center;color:#b4a0c5}.case-label{display:block;margin-top:21px;font-size:11px;letter-spacing:.5px;color:#c0afce}.case-name{font-size:12px;font-weight:700;letter-spacing:.5px;margin:27px 0 13px}.case-copy>p:not(.eyebrow):not(.case-name){font-size:16px;color:#60635a;margin:0 0 18px;max-width:455px}.case-copy .button{font-size:14px;margin-top:9px;gap:20px}.process{border-top:1px solid var(--line)}.process-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:62px}.step-marker{display:grid;place-content:center;border:1px solid var(--ink);border-radius:50%;width:38px;height:38px;font-size:16px;margin-bottom:24px}.process-steps h3{font-size:23px;letter-spacing:-.5px;margin:0 0 12px}.process-steps p{font-size:15px;color:#60635a;margin:0;max-width:310px}.contact-section{padding-bottom:66px}.contact-panel{position:relative;background:var(--yellow);border-radius:25px;padding:57px 65px;display:grid;grid-template-columns:1fr 1fr;gap:50px;overflow:hidden}.contact-panel .eyebrow{margin-bottom:25px}.contact-panel h2{font-size:clamp(44px,4.5vw,66px);line-height:1.02;letter-spacing:-3px;margin:0 0 23px}.contact-panel p:not(.eyebrow){font-size:16px;line-height:1.65;margin:0;max-width:370px}.contact-actions{display:flex;flex-direction:column;justify-content:center;align-items:start;position:relative;z-index:1}.contact-actions .button{gap:45px}.contact-phone{font-size:24px;font-weight:700;letter-spacing:-.7px;white-space:nowrap;margin-top:24px}.contact-phone:hover{text-decoration:underline;text-underline-offset:6px}.contact-name{font-size:11px;margin-top:8px;opacity:.7}.contact-star{position:absolute;right:-21px;bottom:-100px;font-size:260px;line-height:1;color:#dac948;transform:rotate(12deg);pointer-events:none}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 35px;color:var(--muted);font-size:11px}.footer-wordmark{color:var(--ink);font-size:20px}.site-footer>a:last-child{color:var(--ink)}
.game-dialog{width:min(570px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--ink);border-radius:22px;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 100px #0003}.game-dialog::backdrop{background:rgba(25,25,23,.64);backdrop-filter:blur(5px)}.dialog-header{display:flex;justify-content:space-between;gap:20px;align-items:center}.dialog-header .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:4px}.dialog-header h2{font-size:25px;letter-spacing:-1px;margin:0}.dialog-close{display:grid;place-content:center;font-size:29px;width:38px;height:38px;border:1px solid var(--line);background:transparent;border-radius:50%;line-height:1}.dialog-close:hover{background:#e6e2d8}.demo-instructions{font-size:12px;line-height:1.45;color:#60635a;margin:12px 0 15px}.demo-hud{display:flex;justify-content:space-between;font-size:12px;margin-bottom:9px}.demo-hud b{font-size:15px}.demo-hud span span{margin-left:4px}.demo-stage{position:relative;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-height:200px;background:#fcf9f0}#demoCanvas{display:block;width:100%;aspect-ratio:480/420;touch-action:none;max-height:48dvh;object-fit:contain;background:#fcf9f0}.demo-overlay{position:absolute;inset:0;background:rgba(246,243,236,.93);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;z-index:2}.overlay-icon{color:var(--coral);font-size:48px;line-height:1;margin-bottom:15px}.demo-overlay h3{font-size:25px;letter-spacing:-1px;margin:0 0 8px}.demo-overlay p{font-size:12px;color:#60635a;margin:0 0 21px;max-width:260px}.demo-overlay .button{min-height:46px;padding:13px 20px;font-size:14px;gap:24px}.demo-result{padding-top:15px;display:flex;align-items:center;justify-content:center;gap:17px;flex-wrap:wrap}.demo-result>p{width:100%;font-size:12px;color:#60635a;margin:0;text-align:center}.demo-result .button{font-size:13px;min-height:44px;padding:12px 17px;gap:25px}.demo-result .text-link{font-size:12px}.demo-caption{text-align:center;color:var(--muted);font-size:10px;margin:13px 0 0}.memory-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:20px;min-height:305px}.memory-board button{aspect-ratio:1;border:1px solid #b5a6d8;background:#c5b7eb;color:#44375f;border-radius:11px;font-size:28px;font-weight:700;box-shadow:0 3px 0 #ad9fc9;transition:background .15s,transform .15s}.memory-board button:hover{transform:translateY(-2px)}.memory-board button:disabled{opacity:1}.memory-board button[data-revealed=true],.memory-board button[data-flipped=true],.memory-board button.is-revealed{background:#f7e76b;border-color:#ddce55;color:var(--ink)}.memory-board button[data-matched=true],.memory-board button.is-matched{background:#c3d6b8;border-color:#a6be98;box-shadow:0 3px 0 #a6be98;color:var(--ink)}
@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:94px}}
@media(max-width:1100px){.shell{width:calc(100% - 64px)}.hero{gap:45px}.hero h1{font-size:76px;letter-spacing:-4.5px}.hero-description{font-size:17px}.hero-actions{gap:19px}.hero-actions .button{gap:22px}.header-contact{padding:11px 15px}.site-header{gap:25px}.site-header nav{gap:20px}.service-layout{gap:60px}.case-section{gap:55px}.section-space{padding-block:85px}.contact-panel{padding:48px}.game-grid{gap:20px}.memory-preview{gap:9px;margin-top:20px}.preview-tile{font-size:27px}.machine-top{padding-inline:20px}.machine-mark{font-size:11px}.machine-level{font-size:8px}}
@media(max-width:820px){.site-header{min-height:90px}.site-header nav{display:none}.header-contact{margin-left:auto}.hero{gap:35px;padding-top:54px}.hero h1{font-size:63px;letter-spacing:-3.8px}.hero-description{font-size:16px}.desktop-break{display:none}.hero-actions{gap:15px}.hero-actions .text-link{font-size:12px}.button{font-size:14px;padding:15px 19px;min-height:52px}.eyebrow{font-size:10px;letter-spacing:.8px}.floating-note{font-size:12px;top:-18px}.machine-top{padding:21px 18px 0}.machine-level{display:none}.machine-play{min-height:64px;font-size:18px}.palette-picker{gap:10px;font-size:10px}.palette-dot{width:20px;height:20px}.section-heading h2,.service-intro h2,.case-copy h2{font-size:41px;letter-spacing:-1.8px}.section-heading>p{font-size:14px;max-width:225px}.game-grid{gap:16px}.game-preview{padding:17px 8px 30px;border-radius:15px}.preview-launch{font-size:10px;padding:7px 10px;right:10px;bottom:10px}.preview-index{top:10px;left:12px}.memory-preview{gap:7px;margin:19px 8px 0}.preview-tile{border-radius:7px;font-size:22px}.card-title-row{align-items:start;flex-direction:column;gap:7px}.card-title-row h3{font-size:21px}.card-text>p{font-size:13px}.service-layout{gap:40px}.service-intro>p:not(.eyebrow){font-size:15px}.service-list h3{font-size:18px}.service-list p{font-size:13px}.service-list>div{gap:16px}.case-section{gap:38px}.case-visual{padding:24px;min-height:410px}.dental-field{height:305px}.case-brand{font-size:12px}.dental-bricks{gap:8px;margin:25px 20px}.case-copy>p:not(.eyebrow):not(.case-name){font-size:14px}.case-copy .button{font-size:12px;padding-inline:15px;gap:13px}.process-steps{gap:32px}.contact-panel{padding:42px 35px;gap:30px}.contact-actions .button{gap:20px;font-size:14px}.contact-phone{font-size:22px}}
@media(max-width:620px){.shell{width:calc(100% - 40px)}.site-header{min-height:80px;gap:12px}.wordmark{font-size:21px;letter-spacing:-.8px;gap:8px}.brand-dot{margin-left:-7px}.brand-symbol{grid-template-columns:repeat(2,6px);gap:2px}.brand-symbol i{width:6px;height:6px}.header-contact{font-size:11px;padding:9px 12px;gap:8px}.hero{grid-template-columns:1fr;gap:49px;padding:42px 0 44px}.hero .eyebrow{margin-bottom:26px}.hero h1{font-size:clamp(64px,15.2vw,90px);letter-spacing:-4px;margin-bottom:30px}.hero-description{max-width:370px;font-size:16px;line-height:1.65;margin-bottom:26px}.hero-actions{gap:23px}.hero-actions .button{font-size:14px;gap:25px;padding:17px 22px}.hero-actions .text-link{font-size:12px;gap:10px}.hero-note{font-size:11px;margin-top:17px}.hero-playground{max-width:410px;width:calc(100% - 18px);margin:0 auto;padding-top:15px}.floating-note{right:6px;top:-18px;font-size:12px}.floating-note span{font-size:30px;margin-left:100px}.game-machine{border-radius:24px;box-shadow:6px 7px 0 var(--ink);transform:rotate(2deg)}.machine-top{padding:22px 24px 0}.machine-mark{font-size:12px}.machine-level{display:flex;font-size:8px}.hero-game-art{padding-inline:7px}.machine-play{min-height:66px;font-size:19px}.palette-picker{font-size:11px;gap:15px;margin-top:28px}.palette-dot{width:22px;height:22px}.promise-strip .shell{gap:8px;padding:17px 0;font-size:10px}.promise-strip span[aria-hidden]{font-size:16px}.section-space{padding-block:60px}.section-heading{display:block;margin-bottom:30px}.section-kicker{font-size:10px;margin-bottom:19px}.section-heading h2,.service-intro h2,.case-copy h2{font-size:39px;letter-spacing:-1.8px}.section-heading>p{font-size:14px;max-width:360px;margin:21px 0 0}.game-grid{grid-template-columns:1fr;gap:39px}.game-preview{aspect-ratio:1.37;padding:22px 18px 30px;border-radius:20px}.game-preview>svg{max-height:270px}.preview-index{font-size:11px;top:15px;left:20px}.preview-launch{font-size:12px;padding:10px 15px;right:16px;bottom:15px}.memory-preview{max-width:250px;gap:11px;margin:18px auto 0}.preview-tile{font-size:30px;border-radius:11px}.card-text{padding-top:19px}.card-title-row{flex-direction:row;align-items:center}.card-title-row h3{font-size:24px}.game-tag{font-size:10px}.card-text>p{font-size:15px;margin:13px 0 16px}.choose-link{font-size:13px}.catalog-footnote{margin-top:27px;font-size:11px}.service-layout{grid-template-columns:1fr;gap:34px}.service-intro h2 br:last-child{display:none}.service-intro>p:not(.eyebrow){font-size:15px;margin:22px 0 20px}.service-list>div{padding:21px 0;gap:20px}.service-list h3{font-size:19px}.service-list p{font-size:14px}.case-section{grid-template-columns:1fr;gap:37px}.case-visual{padding:25px;min-height:390px;max-width:460px;width:100%;margin:auto}.case-brand{font-size:14px}.dental-field{height:285px;margin-top:23px}.dental-bricks{margin:25px;gap:9px}.case-copy>p:not(.eyebrow):not(.case-name){font-size:15px;max-width:100%}.case-copy .button{font-size:13px;padding:16px 18px;gap:15px}.case-name{margin-top:23px}.process-steps{grid-template-columns:1fr;gap:28px}.process-steps li{display:grid;grid-template-columns:40px 1fr;column-gap:17px}.step-marker{grid-row:span 2;margin:2px 0 0}.process-steps h3{font-size:22px;margin-bottom:7px}.process-steps p{max-width:100%;font-size:14px}.contact-section{padding-bottom:37px}.contact-panel{grid-template-columns:1fr;gap:29px;padding:33px 27px;border-radius:20px}.contact-panel .eyebrow{font-size:10px;margin-bottom:22px}.contact-panel h2{font-size:51px;letter-spacing:-2.5px;margin-bottom:20px}.contact-panel p:not(.eyebrow){font-size:14px;max-width:300px}.contact-actions .button{font-size:14px;min-height:54px;gap:23px}.contact-phone{font-size:23px;margin-top:21px}.contact-name{font-size:10px}.contact-star{right:-29px;bottom:-83px;font-size:220px;opacity:.55}.site-footer{display:grid;grid-template-columns:1fr auto;row-gap:12px;font-size:10px;padding-bottom:26px}.footer-wordmark{font-size:19px}.site-footer>span{grid-column:1/-1;grid-row:2}.game-dialog{padding:18px;width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:18px}.dialog-header h2{font-size:23px}.demo-instructions{font-size:11px;margin-bottom:12px}.demo-hud{font-size:11px}.demo-overlay{padding:15px}.overlay-icon{font-size:40px;margin-bottom:11px}.demo-overlay h3{font-size:22px}.demo-overlay p{font-size:11px;margin-bottom:16px}.demo-result{gap:13px}.demo-result .button{font-size:12px}.memory-board{gap:8px;padding:12px;min-height:240px}.memory-board button{font-size:25px;border-radius:8px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.site-header{gap:8px}.wordmark{font-size:19px;gap:6px}.header-contact{padding:8px 10px;font-size:10px;gap:6px}.hero h1{font-size:62px;letter-spacing:-3.6px}.hero .eyebrow{font-size:9px;letter-spacing:.6px}.hero-description{font-size:15px}.hero-actions{gap:16px}.hero-actions .button{padding:15px 17px;gap:17px;font-size:13px}.hero-actions .text-link{font-size:11px;gap:8px}.palette-picker{font-size:10px;gap:10px}.promise-strip .shell{font-size:9px;gap:5px}.promise-strip span[aria-hidden]{font-size:12px}.section-heading h2,.service-intro h2,.case-copy h2{font-size:35px}.game-preview{aspect-ratio:1.25}.memory-preview{max-width:218px;gap:10px}.preview-tile{font-size:27px}.contact-panel{padding:29px 23px}.contact-actions .button{font-size:13px;gap:17px}.contact-phone{font-size:21px}.site-footer{column-gap:10px}.site-footer>a:last-child{font-size:9px}.game-dialog{padding:15px}.memory-board{gap:7px;padding:10px;min-height:220px}.demo-overlay h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
#demoCanvas{width:min(100%,55dvh);height:auto;max-height:none;aspect-ratio:480/420;object-fit:initial;margin-inline:auto}.memory-board button[data-state=open]{background:var(--yellow);border-color:#ddce55;color:var(--ink)}
.memory-board button,.memory-card__face,.memory-card__cover{display:grid;place-items:center}
@media(min-width:621px){.hero-playground{width:100%;max-width:440px;margin-left:auto}.hero{padding-top:54px}}
.service-intro,.service-list,.service-list>div>div{min-width:0}.service-intro>p:not(.eyebrow){width:100%}
@media(max-width:620px){.service-intro h2 br:last-child{display:initial}}

/* Offer, placement examples and pricing. Keep the original games and palette. */
.hero { align-items:center; }
.hero-copy,.hero-playground { min-width:0; }
.hero-playground .game-machine { margin-inline:auto; }
.hero-playground .palette-picker { margin-top:30px; }
.game-card { display:flex; flex-direction:column; }
.game-card .game-preview { flex-shrink:0; }
.card-text { display:flex; flex-direction:column; flex:1; }
.card-text .choose-link { align-self:flex-start; margin-top:auto; }
.process { padding-block:84px; }
.activation-section { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:center; gap:38px 70px; padding:38px 42px; margin-bottom:90px; border:1px solid var(--line); border-radius:24px; background:#ede9df; }
.activation-copy,.trigger-card { min-width:0; }
.activation-copy .eyebrow { margin-bottom:23px; }
.activation-copy h2 { margin:0 0 23px; font-size:clamp(36px,4vw,48px); font-weight:700; line-height:1.05; letter-spacing:-2px; }
.activation-copy>p:last-child { max-width:350px; margin:0; font-size:16px; line-height:1.65; color:#60635a; }
.trigger-options { display:flex; gap:7px; }
.trigger-options button { flex:1; min-width:0; min-height:44px; padding:11px 8px; border:1px solid #d3cfc5; border-radius:9px; background:#f6f3ec; color:var(--ink); font-size:12px; line-height:1.2; white-space:nowrap; }
.trigger-options button[aria-pressed=true] { background:var(--ink); color:var(--paper); border-color:var(--ink); }
.trigger-options button:hover { border-color:var(--ink); }
.trigger-scheme { margin-top:13px; }
.trigger-browser { position:relative; height:185px; border:1px solid #d3cfc5; border-radius:12px; overflow:hidden; background:#fcf9f2; }
.trigger-browser-bar { height:24px; border-bottom:1px solid var(--line); padding:8px 11px; background:#e5e1d7; }
.trigger-browser-bar::before { content:'● ● ●'; display:block; font-size:6px; color:#9b9b91; letter-spacing:3px; line-height:1; }
.trigger-indicator { position:absolute; left:17px; bottom:22px; max-width:36%; font-size:12px; line-height:1.4; font-weight:700; }
.trigger-page-lines { display:grid; gap:9px; width:35%; margin:24px 17px 0; }
.trigger-page-lines i { display:block; height:7px; background:#e7e2d8; border-radius:4px; }
.trigger-page-lines i:nth-child(2) { width:78%; }
.trigger-page-lines i:last-child { width:55%; }
.trigger-window { position:absolute; top:50px; right:20px; width:53%; padding:19px 18px; border-radius:11px; border:1px solid var(--ink); background:var(--yellow); box-shadow:4px 4px 0 #20211f24; font-size:19px; letter-spacing:-.5px; font-weight:700; line-height:1.2; }
.trigger-window>span { float:right; font-size:22px; margin-left:8px; }
.trigger-window>strong { display:block; font-weight:700; }
.trigger-window>i { display:block; width:65px; height:6px; border-radius:3px; background:var(--ink); margin-top:14px; }
.trigger-card[data-active=scroll] .trigger-indicator::before { content:''; display:block; width:45px; height:4px; background:var(--blue); border-radius:3px; margin-bottom:6px; }
.trigger-card[data-active=exit] .trigger-window { background:var(--coral); }
.trigger-copy { font-size:13px; line-height:1.5; margin:13px 0 0; min-height:59px; color:#52564c; }
.trigger-footnote { font-size:11px; line-height:1.5; margin:5px 0 0; color:var(--muted); }
.service-heading { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); align-items:end; gap:55px; margin-bottom:46px; }
.service-heading h2 { margin:0; max-width:740px; font-size:clamp(38px,3.7vw,50px); line-height:1.08; letter-spacing:-2.2px; }
.service-heading .section-kicker { margin-bottom:23px; }
.service-summary p { margin:0 0 22px; font-size:16px; line-height:1.65; color:#60635a; }
.service-summary .text-link { font-size:14px; }
.service-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin-bottom:36px; }
.service-feature { min-width:0; padding-top:20px; border-top:1px solid #c8c6bc; }
.service-feature .service-number { display:block; margin:0 0 12px; font-size:11px; }
.service-feature h3 { margin:0 0 12px; font-size:23px; letter-spacing:-.6px; line-height:1.2; }
.service-feature p { margin:0; font-size:14px; line-height:1.65; color:#60635a; }
.crm-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:35px 55px; padding:33px 36px; border:1px solid #d3cfc5; border-radius:21px; background:#fcf9f2; }
.crm-copy,.crm-connection { min-width:0; }
.crm-copy .eyebrow { margin:0 0 14px; font-size:10px; color:#6c6e64; }
.crm-copy h3 { margin:0 0 14px; font-size:31px; letter-spacing:-1px; line-height:1.1; }
.crm-copy>p:last-child { margin:0; font-size:14px; line-height:1.65; color:#60635a; max-width:455px; }
.crm-route { display:flex; align-items:center; justify-content:center; gap:24px; }
.crm-game { width:137px; min-height:139px; padding:18px 17px 13px; border:1px solid var(--ink); border-radius:16px; background:var(--yellow); box-shadow:4px 4px 0 var(--ink); text-align:center; flex-shrink:0; }
.crm-game svg { width:72px; height:58px; margin:0 auto 13px; }
.crm-game>span { font-size:13px; font-weight:700; }
.crm-arrow { font-size:34px; color:#75786c; }
.crm-destinations { display:grid; gap:12px; flex:1; max-width:205px; min-width:0; }
.crm-destination { display:flex; align-items:center; justify-content:center; min-height:61px; padding:12px 16px; border:1px solid #d7d9d3; border-radius:11px; background:#fff; font-size:24px; font-weight:700; letter-spacing:-.7px; white-space:nowrap; }
.crm-amo { color:#087eaf; }
.crm-bitrix { color:#087da4; }
.crm-route-caption { margin:16px 0 0; font-size:11px; text-align:center; color:#6c6e64; }
.comparison-panel { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr); gap:18px 38px; margin-top:48px; padding:30px 34px; border:1px solid var(--line); border-radius:22px; background:#ede9df; }
.comparison-panel h2 { font-size:clamp(24px,2.6vw,36px); line-height:1.15; letter-spacing:-1.2px; margin:0 0 12px; }
.comparison-panel p { font-size:14px; line-height:1.6; margin:0; }
.comparison-panel .comparison-result { display:inline-block; padding:19px 23px; margin-bottom:16px; background:var(--yellow); border-radius:14px; font-size:25px; font-weight:700; line-height:1.15; letter-spacing:-.8px; }
.comparison-copy>.eyebrow { font-size:10px; color:var(--muted); margin:0 0 16px; }
.comparison-proof>.comparison-note { margin-top:12px; }
.comparison-panel .comparison-note { grid-column:1/-1; color:#6d7066; font-size:11px; max-width:810px; }
.section-heading-stacked { display:block; }
.section-heading-stacked>p,.section-heading-stacked>div>p:not(.eyebrow) { margin:21px 0 0; max-width:610px; font-size:16px; line-height:1.65; color:#60635a; text-align:left; }
.service-list h3 { max-width:470px; }
.pricing-section { border-top:1px solid var(--line); }
.pricing-intro { max-width:650px; margin:22px 0 0; font-size:16px; color:#60635a; line-height:1.65; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.price-card { display:flex; flex-direction:column; min-width:0; padding:28px 25px 25px; border:1px solid var(--line); border-radius:22px; background:#fcf9f2; }
.price-card-featured { border-color:var(--ink); background:#f4edbe; }
.price-card:last-child { background:#e8eddf; }
.price-plan { font-size:10px; text-transform:uppercase; letter-spacing:1px; color:#696d61; font-weight:700; margin:0 0 14px; }
.price-card h3 { font-size:25px; line-height:1.15; letter-spacing:-.8px; margin:0 0 20px; }
.price-value { font-size:clamp(29px,3.2vw,42px); font-weight:700; letter-spacing:-1.5px; line-height:1.12; margin:0; overflow-wrap:normal; }
.price-card:last-child .price-value { font-size:31px; letter-spacing:-1px; }
.price-caption { color:#666b5e; font-size:12px; margin:8px 0 23px; }
.price-card>p:not([class]) { font-size:14px; line-height:1.6; margin:0 0 22px; color:#53594d; }
.price-card ul { padding:0; margin:0 0 26px; list-style:none; }
.price-card li { position:relative; padding-left:18px; margin-bottom:12px; font-size:13px; line-height:1.6; color:#41473c; }
.price-card li::before { content:'+'; position:absolute; left:0; top:0; font-size:14px; font-weight:700; }
.price-card li:last-child { margin-bottom:0; }
.price-card .price-cta { margin-top:auto; width:100%; justify-content:space-between; gap:12px; font-size:14px; min-height:52px; padding:15px 17px; }
.price-card .price-note { font-size:11px; line-height:1.55; color:#666b5e; margin:0 0 20px; }
.subscription-panel { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:28px 45px; padding:27px 30px; margin-top:22px; border:1px solid var(--line); border-radius:19px; }
.subscription-panel h3 { margin:0 0 10px; font-size:19px; line-height:1.3; letter-spacing:-.4px; }
.subscription-price { font-weight:700; font-size:28px; letter-spacing:-1px; line-height:1.2; margin:0 0 10px; }
.subscription-panel p:not(.subscription-price) { font-size:13px; margin:0; line-height:1.65; color:#60635a; }
.subscription-panel ul { margin:0; padding-left:18px; font-size:13px; line-height:1.65; color:#41473c; }
.subscription-panel li+li { margin-top:6px; }
.subscription-panel .quiet { grid-column:1/-1; font-size:11px; }
@media(max-width:1100px) {
  .site-header nav { gap:16px; }
  .hero { gap:45px; }
  .hero h1 { font-size:clamp(56px,6.5vw,76px); letter-spacing:-3.8px; }
  .process { padding-block:70px; }
  .activation-section { padding:32px; gap:35px; margin-bottom:75px; }
  .activation-copy>p:last-child { font-size:15px; }
  .trigger-window { font-size:17px; }
  .service-heading { gap:35px; }
  .service-summary p { font-size:15px; }
  .service-features { gap:25px; }
  .service-feature h3 { font-size:21px; }
  .crm-panel { padding:29px; gap:30px; }
  .crm-route { gap:17px; }
  .crm-game { width:115px; }
  .crm-destination { font-size:21px; padding-inline:11px; }
  .comparison-panel { padding:27px; gap:20px; }
  .comparison-result { font-size:22px; padding:17px; }
  .price-card { padding:25px 20px; }
  .price-card h3 { font-size:23px; }
  .price-card:last-child .price-value { font-size:27px; }
  .subscription-panel { gap:25px; }
}
@media(max-width:820px) {
  .site-header { display:grid; grid-template-columns:minmax(0,1fr) auto; min-height:0; padding:22px 0 4px; gap:10px 20px; }
  .site-header .wordmark { grid-column:1; grid-row:1; }
  .site-header .header-contact { grid-column:2; grid-row:1; justify-self:end; margin-left:0; }
  .site-header nav { display:flex; grid-column:1/-1; grid-row:2; justify-content:space-between; margin:0; gap:20px; font-size:13px; }
  .site-header nav a { display:inline-flex; align-items:center; min-height:42px; }
  .hero { gap:30px; }
  .hero h1 { font-size:clamp(44px,6.8vw,56px); letter-spacing:-3px; }
  .activation-section { grid-template-columns:1fr; gap:28px; padding:32px; }
  .activation-copy h2 br { display:none; }
  .activation-copy h2 { margin-bottom:15px; }
  .activation-copy>p:last-child { max-width:520px; }
  .trigger-window { font-size:21px; }
  .trigger-copy { min-height:39px; }
  .service-heading { grid-template-columns:1fr; gap:23px; margin-bottom:35px; }
  .service-heading h2 { max-width:600px; font-size:43px; }
  .service-summary { display:flex; align-items:center; justify-content:space-between; gap:32px; }
  .service-summary p { margin:0; max-width:410px; }
  .service-summary .text-link { flex-shrink:0; font-size:12px; gap:12px; }
  .service-feature h3 { font-size:20px; }
  .service-feature p { font-size:13px; }
  .crm-panel { grid-template-columns:1fr; gap:26px; }
  .crm-copy>p:last-child { max-width:560px; }
  .crm-route { max-width:420px; margin-inline:auto; gap:28px; }
  .crm-game { width:137px; }
  .crm-destination { font-size:24px; }
  .comparison-panel { grid-template-columns:1fr; }
  .comparison-result { justify-self:start; font-size:23px; }
  .comparison-panel .comparison-note { grid-column:1; }
  .pricing-grid { grid-template-columns:1fr; gap:18px; }
  .price-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); column-gap:32px; padding:28px; }
  .price-card .price-plan,.price-card h3,.price-card .price-value,.price-card .price-caption { grid-column:1; }
  .price-card ul { grid-column:2; grid-row:1/span 5; margin-bottom:0; }
  .price-card .price-note { grid-column:2; }
  .price-card .price-cta { grid-column:1; align-self:end; }
  .price-value { font-size:40px; }
  .price-card:last-child .price-value { font-size:31px; }
  .subscription-panel { grid-template-columns:1fr; gap:20px; }
  .section-heading-stacked>p,.section-heading-stacked>div>p:not(.eyebrow) { max-width:100%; font-size:15px; }
}
@media(max-width:620px) {
  .site-header { padding-top:18px; gap:6px 12px; }
  .site-header nav { font-size:12px; gap:12px; }
  .hero { gap:43px; }
  .hero h1 { font-size:clamp(48px,14vw,80px); letter-spacing:-3px; }
  .process { padding-block:52px; }
  .hero-playground .palette-picker { margin-top:27px; }
  .activation-section { padding:27px 22px; gap:25px; margin-bottom:60px; border-radius:19px; }
  .activation-copy .eyebrow { margin-bottom:18px; }
  .activation-copy h2 { font-size:36px; letter-spacing:-1.6px; }
  .activation-copy>p:last-child { font-size:14px; }
  .trigger-options { gap:5px; }
  .trigger-options button { font-size:11px; padding-inline:5px; }
  .trigger-browser { height:177px; }
  .trigger-indicator { left:12px; bottom:18px; font-size:10px; max-width:34%; }
  .trigger-page-lines { margin-left:12px; width:31%; }
  .trigger-window { top:53px; right:12px; width:55%; padding:16px 11px; font-size:15px; letter-spacing:-.3px; }
  .trigger-window>span { font-size:16px; margin-left:4px; }
  .trigger-window>i { width:50px; height:5px; margin-top:11px; }
  .trigger-copy { font-size:12px; min-height:72px; }
  .service-heading { margin-bottom:30px; }
  .service-heading h2 { font-size:37px; letter-spacing:-1.7px; }
  .service-heading .section-kicker { margin-bottom:20px; }
  .service-summary { display:block; }
  .service-summary p { margin-bottom:20px; font-size:14px; }
  .service-summary .text-link { font-size:13px; gap:20px; }
  .service-features { grid-template-columns:1fr; gap:24px; margin-bottom:29px; }
  .service-feature { display:grid; grid-template-columns:25px minmax(0,1fr); gap:8px 14px; padding-top:20px; }
  .service-feature .service-number { grid-row:1/span 2; margin-top:4px; }
  .service-feature h3 { margin:0; font-size:21px; }
  .service-feature p { font-size:14px; }
  .crm-panel { padding:27px 22px; border-radius:18px; gap:25px; }
  .crm-copy h3 { font-size:28px; }
  .crm-copy>p:last-child { font-size:13px; }
  .crm-route { gap:15px; }
  .crm-game { width:105px; min-height:122px; padding:15px 12px 10px; border-radius:13px; }
  .crm-game svg { width:62px; height:50px; margin-bottom:10px; }
  .crm-game>span { font-size:12px; }
  .crm-arrow { font-size:27px; }
  .crm-destinations { gap:10px; }
  .crm-destination { font-size:21px; min-height:55px; padding:10px 8px; }
  .crm-route-caption { font-size:10px; }
  .comparison-panel { padding:24px 22px; gap:18px; margin-top:32px; border-radius:18px; }
  .comparison-panel h2 { font-size:29px; letter-spacing:-1px; }
  .comparison-panel p { font-size:13px; }
  .comparison-result { font-size:24px; }
  .comparison-panel .comparison-note { font-size:11px; }
  .section-heading-stacked>p,.section-heading-stacked>div>p:not(.eyebrow) { font-size:14px; margin-top:20px; }
  .pricing-intro { font-size:14px; margin-top:20px; }
  .price-card { display:flex; padding:27px 24px; border-radius:19px; }
  .price-card h3 { font-size:26px; margin-bottom:19px; }
  .price-value { font-size:43px; }
  .price-card:last-child .price-value { font-size:33px; }
  .price-card ul { margin-bottom:25px; }
  .price-card li { font-size:14px; }
  .price-card .price-note { font-size:12px; }
  .price-card .price-cta { font-size:14px; }
  .subscription-panel { padding:25px 23px; gap:18px; }
  .subscription-price { font-size:29px; }
  .subscription-panel p:not(.subscription-price),.subscription-panel ul { font-size:14px; }
}
@media(max-width:360px) {
  .site-header nav { font-size:11px; gap:8px; }
  .hero h1 { font-size:44px; letter-spacing:-2.8px; }
  .activation-section { padding:25px 18px; }
  .activation-copy h2 { font-size:32px; }
  .trigger-options button { font-size:10px; }
  .trigger-window { font-size:13px; padding:16px 10px; }
  .service-heading h2 { font-size:33px; }
  .crm-panel { padding:25px 18px; }
  .crm-copy h3 { font-size:25px; }
  .crm-route { gap:8px; }
  .crm-arrow { font-size:22px; }
  .crm-game { width:89px; }
  .crm-destination { font-size:18px; }
  .comparison-panel { padding:22px 19px; }
  .comparison-panel h2 { font-size:27px; }
  .price-card { padding:25px 21px; }
  .price-card:last-child .price-value { font-size:30px; }
}
