@font-face{font-family:Archivo;src:url("../assets/fonts/Archivo-Variable.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Bricolage;src:url("../assets/fonts/BricolageGrotesque-Variable.woff2") format("woff2");font-weight:200 800;font-display:swap}
.kitty{--ink:#24113e;--violet:#6426e8;--pink:#ffb8df;--mint:#b9f7d2;--lemon:#eeff83;--periwinkle:#c9c5ff;margin:0;background:#fffaf5;color:var(--ink);font:1.0625rem/1.65 Archivo,Arial,sans-serif}
.kitty *{box-sizing:border-box}
.kitty .wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}
.kitty h1,.kitty h2,.kitty h3,.kitty .brand{font-family:Bricolage,Archivo,sans-serif;line-height:1;letter-spacing:-.045em;font-weight:800}
.kitty h1{font-size:clamp(3.7rem,7.8vw,7rem);margin:24px 0 28px}
.kitty h2{font-size:clamp(2.8rem,5.8vw,5.2rem);margin:14px 0 30px}
.kitty h3{font-size:2rem;margin:0 0 18px;letter-spacing:-.035em;line-height:1.1}
.kitty p{margin:0 0 20px}
.kitty a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1.5px}
.kitty a:focus-visible{outline:3px solid #24113e;outline-offset:5px;border-radius:4px;box-shadow:0 0 0 7px #fff}
.kitty .hero a:focus-visible,.kitty .closing a:focus-visible{outline-color:var(--lemon);box-shadow:0 0 0 7px var(--ink)}
.kitty .skip-link{position:absolute;left:20px;top:-100px;padding:14px 24px;background:var(--lemon);z-index:10}
.kitty .skip-link:focus{top:12px}
.kitty .masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}
.kitty .brand{display:flex;align-items:center;gap:12px;font-size:2.2rem;text-decoration:none}
.kitty .brand img{width:48px;height:48px}
.kitty nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.kitty nav a,.kitty .footer a,.kitty .text-link{display:inline-flex;align-items:center;min-height:48px;font-weight:600}
.kitty nav a{font-size:.94rem}
.kitty .hero{background:var(--violet);color:white;border-radius:48px;padding:64px 56px;display:grid;grid-template-columns:1.65fr 1fr;gap:20px;position:relative}
.kitty .eyebrow{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;line-height:1.5}
.kitty .dot{display:inline-block;width:10px;height:10px;background:var(--lemon);border-radius:50%;margin-right:8px}
.kitty .hero-word{color:var(--lemon)}
.kitty .lead{font-size:1.25rem;line-height:1.6;max-width:590px}
.kitty .actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:28px}
.kitty .button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:15px 24px;min-height:56px;border:2px solid transparent;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s}
.kitty .lemon{background:var(--lemon);color:var(--ink)}
.kitty .outline{border-color:currentColor}
.kitty .ink{color:white;background:var(--ink)}
.kitty .snapshot{font-size:.85rem;max-width:490px;margin-bottom:0}
.kitty .hero-art{position:relative;display:grid;place-items:center;min-height:360px;align-self:center}
.kitty .icon-bubble{position:relative;z-index:2;background:var(--pink);border-radius:48% 52% 42% 58%;width:100%;aspect-ratio:1;display:grid;place-items:center;transform:rotate(8deg);box-shadow:12px 18px 0 #431699}
.kitty .icon-bubble img{width:60%;height:auto;transform:rotate(-8deg);position:relative;z-index:2}
.kitty .sticker{position:absolute;z-index:3;padding:10px 20px;border-radius:999px;color:var(--ink);font-weight:700;box-shadow:3px 4px 0 var(--ink)}
.kitty .sticker-one{top:-24px;left:-12px;background:var(--mint);transform:rotate(-12deg)}
.kitty .sticker-two{bottom:-24px;right:-10px;background:var(--lemon);transform:rotate(10deg)}
.kitty .spark{position:absolute;color:var(--lemon);font-size:5rem;z-index:1;line-height:1}
.kitty .spark-one{right:0;top:-15px}
.kitty .spark-two{left:0;bottom:0;color:var(--periwinkle)}
.kitty .little-bubble{position:absolute;width:30px;height:30px;border-radius:50%;background:var(--mint);right:0;bottom:30%}
.kitty .preview{margin-block:72px 112px;background:var(--periwinkle);border-radius:40px;padding:40px}
.kitty .section-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.kitty .section-head h2{font-size:clamp(2.5rem,4vw,3.8rem)}
.kitty .pill{border:1.5px solid var(--ink);padding:8px 16px;border-radius:999px;font-size:.8rem;font-weight:600}
.kitty figure{margin:0}
.kitty .screenshot-link{display:block;border-radius:16px}
.kitty .app-shot{display:block;width:100%;height:auto;border-radius:16px;border:2px solid var(--ink)}
.kitty figcaption{font-size:.9rem;line-height:1.6;margin-top:20px;max-width:900px}
.kitty .section-intro{max-width:560px;font-size:1.2rem}
.kitty .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:36px 0 20px}
.kitty .card{padding:32px;border-radius:32px;transition:transform .2s;position:relative}
.kitty .mint{background:var(--mint)}
.kitty .pink{background:var(--pink)}
.kitty .periwinkle{background:var(--periwinkle)}
.kitty .card-mark{display:grid;place-items:center;width:56px;height:56px;border:2px solid var(--ink);border-radius:50%;font-size:2rem;margin-bottom:28px}
.kitty .small{font-size:.9rem}
.kitty .card p:last-child{margin-bottom:0}
.kitty .workflow{background:var(--lemon);margin-block:100px;padding-block:80px;border-radius:64px}
.kitty .workflow-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.kitty .steps{list-style:none;counter-reset:step;margin:0;padding:0}
.kitty .steps li{counter-increment:step;position:relative;padding:4px 0 24px 76px;border-bottom:1px solid #24113e44;margin-bottom:24px}
.kitty .steps li:last-child{margin:0;border:0;padding-bottom:0}
.kitty .steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;background:var(--ink);color:var(--lemon);border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-weight:700}
.kitty .steps h3{font-size:1.6rem;margin-bottom:12px}
.kitty .steps p{margin:0}
.kitty .appearance-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-bottom:32px}
.kitty .appearance-note{background:var(--pink);padding:32px;border-radius:32px}
.kitty .appearance-flower{float:right;font-size:3rem;line-height:1}
.kitty .requirements{background:var(--mint);border-radius:40px;padding:48px;margin-block:100px}
.kitty .requirements-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:40px 0 24px}
.kitty .requirements h3{font-size:1.6rem}
.kitty .sources{font-size:.94rem;margin-bottom:80px}
.kitty .sources h2{font-size:2.5rem}
.kitty .sources p{max-width:940px}
.kitty .closing{background:var(--violet);color:#fff;padding-block:80px;border-radius:64px 64px 0 0}
.kitty .closing h2{font-size:clamp(3.3rem,7vw,6.5rem);color:var(--lemon)}
.kitty .footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;font-size:.9rem}
@media(hover:hover){.kitty .button:hover{transform:translateY(-3px);box-shadow:0 5px 0 #24113e55}.kitty .card:hover{transform:translateY(-5px)}.kitty nav a:hover,.kitty .text-link:hover{text-decoration-thickness:3px}}
@media(max-width:1000px){.kitty .wrap{width:calc(100% - 48px)}.kitty .hero{padding:44px 32px;grid-template-columns:1.6fr 1fr}.kitty .hero-art{min-height:260px}.kitty .sticker{font-size:.85rem;padding:8px 14px}.kitty .card{padding:24px}.kitty .workflow-layout{gap:40px}.kitty .section-head{flex-wrap:wrap;margin-bottom:20px}.kitty .feature-grid{gap:14px}.kitty .masthead{align-items:flex-start}.kitty nav{justify-content:flex-end}}
@media(max-width:760px){.kitty .masthead{flex-direction:column;gap:12px}.kitty nav{justify-content:flex-start;gap:4px 18px}.kitty .hero{grid-template-columns:1fr;border-radius:32px;padding:36px 24px}.kitty h1{font-size:clamp(3.1rem,11vw,5.4rem)}.kitty .hero-art{width:min(280px,85%);margin:28px auto 12px;min-height:280px}.kitty .feature-grid,.kitty .workflow-layout,.kitty .appearance-layout,.kitty .requirements-grid{grid-template-columns:1fr}.kitty .feature-grid{gap:20px}.kitty .card{padding:32px}.kitty .preview{padding:24px;margin-block:48px 72px;border-radius:28px}.kitty .preview h2{margin-bottom:12px}.kitty .workflow{padding-block:56px;margin-block:64px;border-radius:32px}.kitty .appearance-layout{gap:20px}.kitty .requirements{padding:32px 24px;margin-block:64px}.kitty .requirements-grid{gap:20px}.kitty .closing{border-radius:32px 32px 0 0;padding-block:56px}.kitty .footer{flex-wrap:wrap;gap:8px}.kitty .sources{margin-bottom:56px}}
@media(max-width:380px){.kitty .wrap{width:calc(100% - 32px)}.kitty .hero{padding:28px 20px}.kitty h1{font-size:3rem}.kitty h2{font-size:2.6rem}.kitty .button{padding:14px 18px;font-size:.95rem}.kitty .preview{padding:18px}.kitty .steps li{padding-left:64px}.kitty .pill{font-size:.75rem}.kitty .card{padding:26px}}
@media(prefers-reduced-motion:reduce){.kitty *{transition:none!important;scroll-behavior:auto!important}.kitty .button:hover,.kitty .card:hover{transform:none}}.kitty h1,.kitty h2,.kitty h3{overflow-wrap:anywhere}.kitty .hero>div,.kitty .appearance-layout>*,.kitty .workflow-layout>*{min-width:0}
