:root{--ink:#1B1140;--bg:#F6F3FF;--c:#5B2EFF}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font:17px/1.6 'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--bg)}
h1,h2,h3,.logo{font-family:'Bricolage Grotesque','DM Sans',sans-serif;line-height:1.02;letter-spacing:-.02em;font-weight:800}
a{color:inherit}
:focus-visible{outline:4px solid var(--ink);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
nav{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
.logo{display:inline-block;text-decoration:none;background:#fff;border:3px solid var(--ink);border-radius:14px;padding:4px 12px;transform:rotate(-2deg);box-shadow:4px 4px 0 var(--ink)}.logo img{height:46px;width:auto;display:block}
nav a.btn{font-size:.95rem}
.btn{display:inline-block;text-decoration:none;font-weight:700;background:#FFD84D;color:var(--ink);border:3px solid var(--ink);border-radius:999px;padding:10px 22px;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.hero{padding:56px 0 40px}
.hero h1{font-size:clamp(2.9rem,9.5vw,7rem);max-width:12ch}
.hero p{font-size:1.3rem;max-width:34ch;margin:22px 0 30px}
.hero .stickers{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.pill{border:3px solid var(--ink);border-radius:999px;padding:6px 16px;font-weight:700;background:var(--c);box-shadow:3px 3px 0 var(--ink)}
.strip{background:var(--ink);color:#fff;overflow:hidden;white-space:nowrap;padding:14px 0;transform:rotate(-1.2deg);margin:30px -20px}
.strip span{display:inline-block;padding-left:100%;animation:run 28s linear infinite;font:800 1.4rem 'Bricolage Grotesque',sans-serif}
@keyframes run{to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.strip span{animation:none;padding-left:22px}}
h2.sec{font-size:clamp(2rem,5vw,3.2rem);margin:50px 0 26px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:26px;padding-bottom:30px}
.tile{display:flex;flex-direction:column;gap:10px;min-height:250px;text-decoration:none;background:var(--c);color:var(--ink);border:3px solid var(--ink);border-radius:24px;padding:24px;box-shadow:7px 7px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.tile:nth-child(odd){transform:rotate(-1deg)}.tile:nth-child(even){transform:rotate(1deg)}
.tile:hover{transform:translate(-3px,-3px) rotate(0);box-shadow:11px 11px 0 var(--ink)}
.tile .em{font-size:2.6rem}
.tile h3{font-size:1.7rem}
.tile .go{margin-top:auto;font-weight:700}
.tile.dark{color:#fff}
.about{background:#fff;border:3px solid var(--ink);border-radius:28px;padding:34px;margin:30px 0 60px;box-shadow:7px 7px 0 var(--ink);display:grid;gap:14px}
.about h2{font-size:2.2rem}
.about p{max-width:60ch}
.phero{background:var(--c);border-bottom:3px solid var(--ink);padding-bottom:46px}
.phero.dark{color:#fff}.phero.dark .logo{background:#fff;color:var(--ink)}
.phero .em{font-size:3.4rem;display:block;margin-top:20px}
.phero h1{font-size:clamp(2.6rem,8vw,5.5rem);margin:6px 0 14px}
.phero p{font-size:1.25rem;max-width:44ch}
.formcard{background:#fff;border:3px solid var(--ink);border-radius:28px;box-shadow:8px 8px 0 var(--ink);padding:14px;margin:-26px 0 50px;position:relative}
.formcard iframe{width:100%;height:1150px;border:0;border-radius:18px;display:block}
.setup{padding:30px;font-weight:500}
.setup code{background:var(--bg);padding:2px 8px;border-radius:6px}
.more{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:30px}
.more a{text-decoration:none;border:3px solid var(--ink);border-radius:999px;padding:6px 16px;font-weight:700;background:#fff;transition:background .15s}
.more a:hover{background:#FFD84D}
.navlinks{display:flex;align-items:center;gap:20px}.tl{font-weight:700;text-decoration:none}.tl:hover{text-decoration:underline}
.contact{background:#FFD84D;border:3px solid var(--ink);border-radius:28px;padding:34px;margin:0 0 60px;box-shadow:7px 7px 0 var(--ink);display:grid;gap:14px;scroll-margin-top:20px}
.contact h2{font-size:2.2rem}.contact p{max-width:52ch}.contact .btn{background:#fff;justify-self:start;max-width:100%;overflow-wrap:anywhere}
footer a{font-weight:700}
footer{border-top:3px solid var(--ink);padding:30px 0;margin-top:30px;font-weight:500}