/* Home and app showcase. Everything is readable without JavaScript; html.has-motion only adds choreography. */
.home-content{overflow-x:clip}
.home-content>section,.home-content>aside{width:min(1240px,calc(100% - 96px));margin-inline:auto}
.home-lede{font-size:clamp(17px,1.45vw,20px);line-height:1.6;letter-spacing:-.01em}
.home-heading{max-width:760px;margin-bottom:56px}.home-heading .home-lede{margin-top:18px}

/* Device frame drawn in CSS around a real iOS capture, proportioned like iPhone 16 Pro (402×874 pt). */
.pact-phone{position:relative;margin:0;padding:2.4%;border-radius:16.5%/7.6%;background:linear-gradient(145deg,#33333c,#101015);box-shadow:inset 0 0 0 1.5px #55555f,inset 0 0 0 4px #1b1b21,0 40px 80px -30px #2a1f5c66,0 18px 30px -18px #0006}
.pact-phone-screen{position:relative;display:block;overflow:hidden;border-radius:13.7%/6.3%;background:#fbf7f3;transform:translateZ(0)}
.pact-phone .pact-screen-img{display:block;width:100%;height:auto}
.pact-phone-island{position:absolute;top:1.26%;left:50%;width:31.3%;height:4.23%;border-radius:99px;background:#050507;transform:translateX(-50%)}
.pact-character{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}

/* Hero */
.home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:clamp(24px,4vw,64px);min-height:min(860px,calc(100svh - var(--header)));padding-block:24px 72px}
.home-title{font-size:clamp(44px,5.4vw,82px);line-height:.98;letter-spacing:-.06em;margin-bottom:26px}
.home-title .word{display:inline-block}.home-title .word-mask{display:inline-block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em;vertical-align:top}
.home-hero-lede{max-width:540px;margin-bottom:34px}
.home-hero-stage{position:relative;aspect-ratio:1/.94;max-height:640px;min-width:0}
.home-halo{position:absolute;inset:6% 4% 4% 6%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0,#efeafe 38%,#d9d1fd 70%,#c6bbfb 100%)}
.home-orbit{position:absolute;inset:0;border:1.5px dashed #b0a6ff99;border-radius:50%}
.home-hero-phone{position:absolute;top:9%;right:5%;width:36%;max-width:270px;transform:rotate(6deg)}
.home-hero-pact{position:absolute;left:0;bottom:-2%;z-index:2;width:58%;filter:drop-shadow(0 30px 30px #3b2a8a33)}
.home-chip{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:16px;background:var(--card);box-shadow:0 18px 40px -18px #2a1f5c59,0 0 0 1px #2a1f5c0d;font-size:14px;font-weight:650;white-space:nowrap}
.home-chip:before{content:'';width:10px;height:10px;border-radius:50%;background:var(--purple)}
.home-chip--1{top:16%;left:6%}.home-chip--2{top:52%;right:-2%}.home-chip--2:before{background:#2fbf71}.home-chip--3{bottom:8%;right:12%}.home-chip--3:before{background:#f5a524}
.home-hero--app{min-height:0}

/* What is Pact: statement with Pact taking notes, four illustrated fact cards. */
.home-what{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px);align-items:center;padding-block:110px}
.home-what-copy{position:relative}.home-what h2{font-size:clamp(40px,4.8vw,68px)}
.home-definition{max-width:520px;font-size:clamp(19px,1.7vw,23px);line-height:1.55;color:var(--ink);letter-spacing:-.015em}
.home-what-pose{width:min(240px,48%);margin-top:28px;filter:drop-shadow(0 24px 24px #3b2a8a2e)}
.home-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0}
.home-fact{position:relative;display:flex;flex-direction:column;gap:6px;min-height:230px;padding:28px;border-radius:var(--radius);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.home-fact:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 30px 50px -34px #2a1f5c80}
.home-fact--what-1{background:linear-gradient(150deg,#4e42da,#7d6cff);color:#fff}.home-fact--what-1 dt,.home-fact--what-1 dd{color:#fff}.home-fact--what-1 dd{opacity:.85}
.home-fact--what-2{background:#fff3dc}.home-fact--what-3{background:#ddf3e6}.home-fact--what-4{background:#e4eeff}
.home-fact-visual{display:flex;align-items:center;min-height:64px;margin-bottom:auto}
.home-fact-visual .icon{width:44px;height:44px;padding:9px;border-radius:14px;background:#ffffffb3;box-sizing:content-box}
.home-language-window{display:flex;align-items:center;width:100%;min-height:78px;margin-bottom:auto;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.home-language-track{display:flex;align-items:center;gap:10px;width:max-content;animation:home-language-drift 16s ease-in-out infinite alternate}
.home-language-flag{display:grid;place-items:center;flex:none;width:48px;height:44px;border:1px solid #ffffff45;border-radius:13px;background:#ffffff24;font-family:system-ui,sans-serif;font-size:30px;line-height:1}
@keyframes home-language-drift{to{transform:translateX(-50%)}}
.home-fact dt{font-size:22px;font-weight:760;letter-spacing:-.03em;color:var(--ink)}.home-fact dd{margin:0;font-size:15px;line-height:1.5;color:#3d464b}
.home-fact--what-1 dt,.home-fact--what-1 dd{color:#fff}.home-fact--what-1 dd{opacity:.9}

/* Pact types: tabs and a stage that swaps scenes; a plain card grid without JS. */
.home-types{padding-block:96px}
.home-types-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.home-type{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px;border-radius:var(--radius);background:var(--type-tint)}
.home-type-art{display:block;width:70%;max-width:180px}.home-type h3{margin-top:14px}.home-type p{font-size:15px;margin-top:6px}
.home-types-tabs{display:none}
.is-interactive .home-types-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,72px);align-items:center}
.is-interactive .home-types-tabs{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.home-types-tabs button{position:relative;display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;border:0;border-radius:18px;background:transparent;color:var(--muted);font-size:clamp(20px,2.1vw,30px);font-weight:720;letter-spacing:-.03em;text-align:left;cursor:pointer;overflow:hidden;transition:color .3s,background .3s}
.home-types-tabs button:hover{color:var(--ink)}.home-types-tabs button[aria-selected=true]{color:var(--ink);background:var(--card);box-shadow:0 16px 30px -24px #2a1f5c66}
.home-types-tabs button i{flex:none;width:12px;height:12px;border-radius:50%;background:var(--tab-tint,var(--line));box-shadow:inset 0 0 0 1px #0000000f}
.home-types-tabs button b{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--purple);transform-origin:left;transform:scaleX(0)}
.home-types-tabs button.is-custom{color:var(--purple-deep);background:var(--lavender)}
.home-types-tabs button.is-custom[aria-selected=true]{background:#eee5ff;box-shadow:0 16px 30px -24px #2a1f5c66}
.is-interactive .home-types-list{position:relative;display:block;height:clamp(420px,46vw,600px)}
.is-interactive .home-type{position:absolute;inset:0;justify-content:flex-end;padding:32px 40px 36px;border-radius:44% 56% 52% 48%/48% 44% 56% 52%;opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility 0s .45s,border-radius 1.2s var(--ease)}
.is-interactive .home-type.is-active{opacity:1;visibility:visible;transition:opacity .45s var(--ease),border-radius 1.2s var(--ease)}
.is-interactive .home-type-art{position:absolute;top:4%;left:0;right:0;margin-inline:auto;width:fit-content;height:66%;max-width:none}.is-interactive .home-type-art .pact-character{width:auto;height:100%}
.is-interactive .home-type h3{font-size:clamp(26px,2.6vw,36px)}
@media(min-width:1061px){
 .is-interactive .home-types-body{position:relative;display:grid;grid-template-columns:1fr;place-items:center;min-height:780px;isolation:isolate}
 .is-interactive .home-types-list{width:min(490px,48vw);height:min(490px,48vw);z-index:1}
 .is-interactive .home-type{border-radius:50%;padding:32px 46px 40px}
 .is-interactive .home-types-tabs{--orbit-radius:350px;position:absolute;left:50%;top:50%;z-index:2;display:block;width:0;height:0;animation:home-orbit 90s linear infinite;animation-play-state:paused}
 .is-interactive.is-orbit-running .home-types-tabs,.is-interactive.is-orbit-running .home-types-tabs button span{animation-play-state:running}
 .is-interactive .home-types-body:hover .home-types-tabs,.is-interactive .home-types-body:hover .home-types-tabs button span,.is-interactive .home-types-tabs:focus-within,.is-interactive .home-types-tabs:focus-within button span{animation-play-state:paused}
 .is-interactive .home-types-tabs button{position:absolute;left:0;top:0;display:block;width:196px;height:70px;padding:0;overflow:visible;color:var(--ink);background:transparent;box-shadow:none;transform:translate(-50%,-50%) rotate(var(--orbit-angle)) translateY(calc(-1 * var(--orbit-radius)))}
 .is-interactive .home-types-tabs button:hover,.is-interactive .home-types-tabs button[aria-selected=true],.is-interactive .home-types-tabs button.is-custom,.is-interactive .home-types-tabs button.is-custom[aria-selected=true]{background:transparent;box-shadow:none}
 .is-interactive .home-types-tabs button i,.is-interactive .home-types-tabs button b{display:none}
 .is-interactive .home-types-tabs button span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:8px 18px;border-radius:19px;background:var(--card);box-shadow:0 12px 30px -22px #2a1f5c66;color:var(--ink);font-size:16px;font-weight:690;line-height:1.2;text-align:center;text-wrap:balance;transform:rotate(calc(-1 * var(--orbit-angle)));animation:home-orbit-counter 90s linear infinite;animation-play-state:paused;transition:background .25s,color .25s,box-shadow .25s}
 .is-interactive .home-types-tabs button:hover span{background:var(--lavender);box-shadow:0 16px 30px -18px #2a1f5c55}
 .is-interactive .home-types-tabs button[aria-selected=true] span{background:var(--purple);color:#fff;box-shadow:0 16px 32px -16px #4e42da99}
 .is-interactive .home-types-tabs button.is-custom:not([aria-selected=true]) span{background:#eee5ff;color:var(--purple-deep)}
 @keyframes home-orbit{to{transform:rotate(360deg)}}
 @keyframes home-orbit-counter{to{transform:rotate(calc(-1 * var(--orbit-angle) - 360deg))}}
}

/* Together: the pact you make with someone close. */
.home-together{width:100%!important;max-width:none!important;padding:16px}
.home-together-inner{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center;width:min(1320px,100%);margin-inline:auto;padding:clamp(40px,6vw,96px) clamp(24px,6vw,88px);border-radius:48px;background:radial-gradient(circle at 80% 30%,#6c5cff 0,#3d31c4 45%,#221a7a 100%);color:#fff;overflow:hidden}
.home-together h2{color:#fff;font-size:clamp(44px,5.6vw,84px)}.home-together .home-lede{margin:20px 0 32px;color:#dcd8ff;max-width:540px}
.home-together-roles{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.home-role{padding:22px;border-radius:22px;background:#ffffff14;border:1px solid #ffffff26;backdrop-filter:blur(6px)}
.home-role-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff}.home-role-icon .icon{filter:invert(27%) sepia(83%) saturate(3020%) hue-rotate(240deg) brightness(88%) contrast(95%)}
.home-role h3{margin:16px 0 8px;color:#fff;font-size:20px}.home-role p{color:#cfcaf7;font-size:15px}
.home-together-visual{position:relative;min-height:560px}
.home-together-glow{position:absolute;inset:8% 4%;border-radius:50%;background:radial-gradient(circle,#ffffff38,#ffffff00 70%)}
.home-together-line{position:absolute;left:0;right:0;top:14%;width:100%;height:40%;overflow:visible}
.home-together-line path{fill:none;stroke:#ffffff80;stroke-width:2;stroke-dasharray:6 10}
.home-together-phone{position:absolute;right:2%;top:2%;width:min(250px,46%);transform:rotate(7deg)}
.home-together-pose{position:absolute;left:-2%;bottom:0;z-index:1;width:min(440px,74%);filter:drop-shadow(0 30px 40px #0d0840aa)}
.home-together-heart{position:absolute;left:38%;top:16%;z-index:2;color:#ff7aa8;font-size:44px;line-height:1;filter:drop-shadow(0 8px 16px #ff2d7a66)}

/* Story: one pinned stage, four moments. */
.home-story{padding-block:96px}
.home-story-body{position:relative}
.home-story-stage{display:none}
.home-story-steps{list-style:none;margin:0;padding:0;display:grid;gap:40px}
.home-story-step{position:relative;padding:32px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line)}
.home-step-number{display:block;margin-bottom:14px;font-size:14px;font-weight:750;color:var(--purple);font-variant-numeric:tabular-nums}
.home-story-step h3{font-size:clamp(28px,3vw,42px);letter-spacing:-.04em;margin-bottom:14px}.home-story-step p{max-width:460px;font-size:18px}
.home-story-inline{position:relative;display:flex;align-items:flex-end;gap:12px;margin-top:28px}.home-inline-phone{width:min(200px,48%)}.home-inline-pose{width:min(140px,34%);margin-left:-28px}
.home-story-progress{display:none}
@media(min-width:1061px){
 .has-motion .home-story-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px}
 .has-motion .home-story-stage{display:block;position:sticky;top:calc(var(--header) + 40px);height:calc(100vh - var(--header) - 80px);max-height:760px}
 .has-motion .home-story-halo{position:absolute;inset:8% 6%;border-radius:40% 60% 55% 45%/50% 45% 55% 50%;background:linear-gradient(140deg,#efeafe,#dcd4fd)}
 .has-motion .home-story-phones .pact-phone{position:absolute;top:50%;left:60%;width:min(300px,52%);opacity:0;transform:translate(-50%,-50%) translateY(30px) scale(.94)}
 .has-motion .home-story-phones .pact-phone.is-active{opacity:1;transform:translate(-50%,-50%)}
 .has-motion .home-story-poses .pact-character{position:absolute;left:-4%;bottom:2%;width:min(240px,40%);opacity:0;transform:translateY(24px) scale(.9)}
 .has-motion .home-story-poses .pact-character.is-active{opacity:1;transform:none}
 .has-motion .home-story-phones .pact-phone,.has-motion .home-story-poses .pact-character{transition:opacity .5s var(--ease),transform .7s var(--ease)}
 .has-motion .home-story-steps{gap:0;padding-left:44px}
 .has-motion .home-story-step{display:flex;flex-direction:column;justify-content:center;min-height:72vh;padding:0;border:0;background:none;opacity:.28;transition:opacity .4s}
 .has-motion .home-story-step.is-active{opacity:1}
 .has-motion .home-story-inline{display:none}
 .has-motion .home-story-progress{display:block;position:absolute;top:0;bottom:0;left:calc(50% + 40px);width:3px;border-radius:3px;background:var(--line)}
 .has-motion .home-story-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:var(--purple);transform-origin:top;transform:scaleY(var(--progress,0))}
}

/* Features bento */
.home-features{padding-block:96px}
.home-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.home-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:260px;padding:32px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.home-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -36px #2a1f5c66}
.home-card h3{font-size:24px;margin:22px 0 10px;max-width:16ch}.home-card p{font-size:16px;max-width:36ch}
.home-card-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--soft)}
.home-card-icon .icon{width:26px;height:26px;filter:invert(27%) sepia(83%) saturate(3020%) hue-rotate(240deg) brightness(88%) contrast(95%)}
.home-card.has-pose{padding-right:38%}.home-card-pose{position:absolute;right:-2%;bottom:-6%;width:36%;max-width:220px;transition:transform .5s var(--ease)}
.home-card:hover .home-card-pose{transform:translateY(-8px) rotate(-4deg)}
.home-card--1{grid-column:span 2;min-height:320px;background:linear-gradient(135deg,#f6f3ff,#e6e0ff)}
.home-card--5{background:#f4f1ff}

/* Meet Pact */
.home-meet{padding-block:96px 40px}
.home-meet-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.home-meet-points{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}
.home-meet-points li{display:flex;gap:12px;align-items:flex-start;font-size:17px;font-weight:560}.home-meet-points li:before{content:'';flex:none;width:22px;height:22px;margin-top:3px;border-radius:50%;background:var(--soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 8 3 3 5-6' fill='none' stroke='%234e42da' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.home-meet-visual{position:relative;display:grid;place-items:center;padding:40px 0}.home-meet-visual:before{content:'';position:absolute;width:88%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#efeafe,#dcd4fd)}
.home-meet-phone{position:relative;width:min(280px,62%);transform:rotate(-4deg)}
.home-parade{width:100vw!important;margin:56px calc(50% - 50vw) 0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.home-parade-track{display:flex;gap:36px;width:max-content;padding-block:12px 24px}
.home-parade-item{flex:none;width:170px;transition:transform .4s var(--ease)}.home-parade-item:hover{transform:translateY(-12px) rotate(-3deg)}

/* FAQ: smooth accordion (home-motion.js animates height; native details without JS). */
.home-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);padding-block:96px}
.home-faq-intro{align-self:start;position:sticky;top:calc(var(--header) + 32px)}.home-faq-intro .home-lede{margin-top:18px}.home-faq-pose{width:min(220px,60%);margin-top:28px}
.home-faq-list{display:grid;gap:12px}
.home-faq-item{border-radius:24px;background:var(--card);border:1px solid var(--line);transition:background .35s var(--ease),border-color .35s,box-shadow .35s}
.home-faq-item:hover{border-color:#d6d0fb}
.home-faq-item[open]{background:linear-gradient(160deg,#fff,#f4f1ff);border-color:#cfc8fb;box-shadow:0 24px 44px -32px #2a1f5c80}
.home-faq-item summary{display:flex;align-items:center;gap:18px;padding:22px 24px;cursor:pointer;list-style:none;border-radius:inherit}.home-faq-item summary::-webkit-details-marker{display:none}
.home-faq-index{flex:none;font-size:13px;font-weight:750;color:var(--muted);font-variant-numeric:tabular-nums;transition:color .3s}.home-faq-item[open] .home-faq-index{color:var(--purple)}
.home-faq-item h3{flex:1;font-size:19px;letter-spacing:-.02em}
.home-faq-toggle{position:relative;flex:none;width:36px;height:36px;border-radius:50%;background:var(--soft);transition:background .35s var(--ease),transform .45s var(--ease)}
.home-faq-toggle:before,.home-faq-toggle:after{content:'';position:absolute;top:50%;left:50%;width:13px;height:2px;margin:-1px 0 0 -6.5px;border-radius:2px;background:var(--purple);transition:background .35s}
.home-faq-toggle:after{transform:rotate(90deg)}
.home-faq-item[open] .home-faq-toggle{background:var(--purple);transform:rotate(135deg)}.home-faq-item[open] .home-faq-toggle:before,.home-faq-item[open] .home-faq-toggle:after{background:#fff}
.home-faq-answer{overflow:hidden}.home-faq-answer p{padding:0 24px 24px 62px;font-size:16px;max-width:64ch}

/* Download */
.home-cta{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:center;gap:24px;margin-block:40px 24px;padding:clamp(40px,6vw,80px);border-radius:40px;background:radial-gradient(circle at 85% 20%,#7f74ff 0,#4e42da 45%,#3328b0 100%);overflow:hidden}
.home-cta h2{color:#fff;max-width:14ch}.home-cta .home-lede{margin:18px 0 32px;color:#e3e0ff}
.home-cta .store-button{background:#fff;color:var(--ink)}.home-cta .store-button .icon{filter:none}
.home-cta-pose{width:min(320px,100%);justify-self:center;filter:drop-shadow(0 30px 30px #1a105066)}
.home-cta-confetti{position:absolute;inset:0;z-index:-1;pointer-events:none}
.home-cta-confetti i{position:absolute;top:-6%;width:10px;height:16px;border-radius:3px;background:var(--sun);opacity:.85}
.home-cta-confetti i:nth-child(3n){background:var(--mint);width:12px;height:12px;border-radius:50%}.home-cta-confetti i:nth-child(4n){background:var(--lilac)}.home-cta-confetti i:nth-child(5n){background:#ff9fb7}
.home-cta-confetti i:nth-child(1){left:6%}.home-cta-confetti i:nth-child(2){left:14%}.home-cta-confetti i:nth-child(3){left:21%}.home-cta-confetti i:nth-child(4){left:29%}.home-cta-confetti i:nth-child(5){left:36%}.home-cta-confetti i:nth-child(6){left:44%}.home-cta-confetti i:nth-child(7){left:51%}.home-cta-confetti i:nth-child(8){left:58%}.home-cta-confetti i:nth-child(9){left:65%}.home-cta-confetti i:nth-child(10){left:72%}.home-cta-confetti i:nth-child(11){left:79%}.home-cta-confetti i:nth-child(12){left:86%}.home-cta-confetti i:nth-child(13){left:92%}.home-cta-confetti i:nth-child(14){left:97%}
.home-cta-confetti i{transform:translateY(var(--y,40px)) rotate(var(--r,20deg))}
.home-cta-confetti i:nth-child(odd){--y:110px;--r:-35deg}.home-cta-confetti i:nth-child(3n){--y:220px}.home-cta-confetti i:nth-child(4n){--y:300px;--r:60deg}

.home-guides{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:36px 48px}.home-guides p{font-weight:600;color:var(--ink)}

/* Idle life, only when motion is welcome. */
@media(prefers-reduced-motion:no-preference){
 .has-motion .home-orbit{animation:pact-spin 60s linear infinite}
 .has-motion  .has-motion .home-parade-track{animation:pact-parade 48s linear infinite}
 .has-motion .home-parade:hover .home-parade-track{animation-play-state:paused}
}
@keyframes pact-spin{to{transform:rotate(360deg)}}
@keyframes pact-parade{to{transform:translateX(-50%)}}

@media(max-width:1060px){
 .home-hero{grid-template-columns:1fr;min-height:0;padding-top:16px;text-align:left}
 .home-hero-stage{width:min(560px,100%);margin-inline:auto}
 .home-what,.home-meet-grid,.home-faq,.home-together-inner{grid-template-columns:1fr}.is-interactive .home-types-body{grid-template-columns:1fr}.home-types-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-faq-intro{position:static}.home-faq-pose{display:none}
 .home-bento{grid-template-columns:1fr 1fr}.home-card--1{grid-column:1/-1}
}
@media(max-width:700px){
 .home-content>section,.home-content>aside{width:calc(100% - 32px)}
 .home-what,.home-story,.home-features,.home-faq{padding-block:64px}.home-meet{padding-block:64px 24px}
 .home-heading{margin-bottom:36px}
 .home-chip{font-size:12px;padding:8px 12px}.home-chip--2{right:0}
 .home-facts{grid-template-columns:1fr 1fr;gap:12px}.home-fact{min-height:0;padding:20px}.home-fact dt{font-size:18px}
 .home-together-roles{grid-template-columns:1fr}.home-together-visual{min-height:420px}.home-together-inner{border-radius:32px}
 .is-interactive .home-types-tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none;gap:6px}.is-interactive .home-types-tabs button{width:auto;white-space:nowrap;font-size:17px;padding:10px 14px}
 .is-interactive .home-types-list{height:440px}.is-interactive .home-type{padding:24px;border-radius:36px}.is-interactive .home-types-tabs button{flex:none}
 .home-faq-answer p{padding:0 20px 20px}.home-faq-index{display:none}
 .home-bento{grid-template-columns:1fr}.home-card{min-height:0;padding:26px}.home-card.has-pose{padding-right:26px;padding-bottom:150px}.home-card-pose{width:150px}
 .home-story-step{padding:24px}
 .home-cta{grid-template-columns:1fr;border-radius:32px;padding:36px 24px 0}.home-cta-pose{width:200px}
 .home-guides{flex-direction:column;align-items:flex-start}
 .home-parade-item{width:120px}
}
.home-meet-copy h2,.home-faq-intro h2,.home-what h2{margin-bottom:18px}
.home-meet-visual{min-height:520px}.home-meet-phone{margin-left:28%}
.home-meet-pose{position:absolute;left:2%;bottom:6%;width:min(300px,46%);z-index:1;filter:drop-shadow(0 26px 26px #3b2a8a33)}
@media(max-width:700px){.home-meet-visual{min-height:0}.home-meet-pose{width:44%;left:0}}
@media(prefers-reduced-motion:reduce){.home-language-track{animation:none;width:auto;flex-wrap:wrap;gap:8px}.home-language-track span:nth-child(n+11){display:none}.home-language-window{min-height:0;padding-block:8px;mask-image:none}}
/* On phones Pact greets first, then the promise. */
@media(max-width:700px){.home-hero{gap:8px;padding-top:0}.home-hero-stage{order:-1;width:min(360px,100%);aspect-ratio:1/.92}.home-title{font-size:clamp(38px,11vw,52px)}.home-chip--3{display:none}}
@media(max-width:700px){.home-hero{padding-top:12px}.home-hero-phone{top:14%;width:40%}.home-chip--1{top:22%}}
