:root{--ink: #1F1A24;--ink-soft: #3D3546;--muted: #5A5163;--paper: #FFFBF4;--violet: #5B33C4;--violet-dark: #3E1F99;--pink: #C2246F;--sun: #F6C445;--sky: #E4F4FD;--cream: #FFF1C9;--line: #EFE6D8;--lilac: #F4EEFF;--warm: #FFF6E6;--font-body: "Nunito", system-ui, sans-serif;--font-head: "Baloo 2", var(--font-body);--font-hand: "Permanent Marker", cursive;--gutter: clamp(16px, 4vw, 40px);--radius: 24px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.5;-webkit-text-size-adjust:100%}img,video{max-width:100%;height:auto;display:block}a{color:var(--violet)}a:hover{color:var(--violet-dark)}.wrap{width:min(1200px,100% - 2 * var(--gutter));margin-inline:auto}h1,h2,h3,h4{font-family:var(--font-head);line-height:1.05;margin:0}h1{font-size:clamp(2.4rem,5vw + .8rem,4rem);font-weight:800;letter-spacing:-.5px}h2{font-size:clamp(1.9rem,2.6vw + 1rem,2.9rem);font-weight:800}.hand{font-family:var(--font-hand);font-weight:400}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}.skip:focus{left:8px;top:8px}:focus-visible{outline:3px solid #B9A3FF;outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--violet);color:#fff;text-decoration:none;padding:14px 24px;border-radius:999px;border:2px solid transparent;cursor:pointer;font:inherit;font-weight:800;min-height:48px;transition:filter .15s}.btn:hover{color:#fff;filter:brightness(.94)}.btn[disabled]{opacity:.6;cursor:wait}.btn-sm{padding:10px 18px;min-height:44px;font-size:.95rem}.btn-white{background:#fff;color:var(--ink);border-color:var(--ink)}.btn-white:hover{color:var(--ink)}.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{color:var(--paper)}.btn-yellow{background:var(--sun);color:var(--ink)}.btn-yellow:hover{color:var(--ink)}.btn-green{background:#1e7f45}.btn-wa{background:#25d366;color:#0b3b1e;padding:10px 26px 10px 10px;box-shadow:0 10px 24px #25d3664d}.btn-wa:hover{color:#0b3b1e}.btn-outline{background:#fff;color:var(--violet);border-color:var(--violet)}.btn-outline:hover{color:var(--violet)}.chip{display:inline-block;font-weight:800;font-size:.85rem;padding:7px 14px;border-radius:999px;background:var(--cream)}.chip:first-child{background:var(--ink);color:var(--paper)}.chip:last-child{background:var(--sky)}.lang{border:2px solid var(--ink);border-radius:999px;padding:6px 14px;font-weight:800;text-decoration:none;color:var(--ink);min-height:44px;display:inline-flex;align-items:center}.lang:hover{background:var(--ink);color:var(--paper)}form.signup{display:grid;gap:22px;max-width:760px}fieldset{border:0;padding:0;margin:0;display:grid;gap:12px}legend{font-family:var(--font-head);font-weight:800;font-size:1.3rem;padding:0;margin-bottom:8px}label{display:grid;gap:4px;font-weight:700}input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{font:inherit;font-size:16px;padding:12px 14px;border:2px solid #D9CFC0;border-radius:12px;background:#fff;min-height:48px;width:100%;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid #B9A5F0;border-color:var(--violet)}.hint{font-weight:400;font-size:.9rem;color:var(--muted)}.check{display:flex;gap:10px;align-items:flex-start;font-weight:600}.check input{width:22px;height:22px;margin-top:3px;flex:none;accent-color:var(--violet)}.kid{background:#fff;border:2px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:12px}.row{display:grid;gap:12px;grid-template-columns:1fr;align-items:start}@media(min-width:640px){.row.two{grid-template-columns:2fr 1fr}.row.eq{grid-template-columns:1fr 1fr}}.yn{display:flex;gap:16px}.yn label{display:flex;gap:6px;align-items:center;font-weight:600}.summary{background:var(--cream);border-radius:18px;padding:16px 18px;display:grid;gap:4px}.summary strong{font-size:1.4rem;font-family:var(--font-head)}.err{color:#b00020;font-weight:700}.field-error{color:#b00020;font-weight:700;font-size:.9rem}input[aria-invalid=true]{border-color:#b00020}.ok-box{background:var(--sky);border-radius:22px;padding:28px}[hidden]{display:none!important}
