:root{--ink:#203d3c;--cream:#fffaf7;--pink:#faa1c5;--aqua:#01bdbf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;object-fit:contain}.wrap{max-width:1200px;margin:auto;padding-left:40px;padding-right:40px}header{background:var(--pink) url('assets/header-pattern.webp') center/460px}nav{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:18px 40px;gap:24px}nav>div{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:14px;font-weight:700}.logo{display:flex}.nav-button{background:var(--cream);padding:12px 19px;border-radius:30px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding-top:90px;padding-bottom:100px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(52px,6vw,82px);line-height:1.03;letter-spacing:-4px;margin-bottom:28px}h2{font-size:clamp(36px,4vw,52px);line-height:1.1;letter-spacing:-2px;margin-bottom:24px}h3{font-size:25px;line-height:1.2;margin-bottom:12px;letter-spacing:-.7px}.intro{font-size:18px;max-width:510px;line-height:1.65}.button{display:inline-flex;gap:35px;align-items:center;background:var(--ink);color:white;border-radius:32px;padding:16px 24px;text-decoration:none;font-weight:700;margin-top:10px}.small{font-size:12px;margin:15px 0 0}.hero-art{position:relative;border-radius:48% 48% 43% 46%;background:#d9f2ed;transform:rotate(3deg)}.hero-art img{display:block;transform:rotate(-3deg);width:100%;height:auto}.orbit{position:absolute;background:white;padding:10px 20px;box-shadow:0 5px 25px #203d3c0c;border-radius:25px;font-size:14px;font-weight:700;z-index:1}.top{top:24px;left:5px;transform:rotate(-9deg)}.bottom{bottom:20px;right:-8px;transform:rotate(4deg)}.discovery{padding-top:40px;padding-bottom:80px}.section-heading{max-width:580px}.section-heading>p:last-child{max-width:440px}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.category{padding:18px 24px 24px;border-radius:22px}.category img{width:100%;height:auto;aspect-ratio:1}.category span{font-size:9px;font-weight:bold;letter-spacing:1px;display:block;margin:12px 0 16px}.category p{font-size:14px;margin-bottom:0}.playground{background:#e1ebde}.cafe{background:#fbe0e9}.event{background:#f7dfd6}.group{background:#d4efeb}.how{padding-top:45px;padding-bottom:95px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:35px}.steps b{display:block;color:#54756c;font-size:13px;border-top:1px solid #becdc4;padding-top:18px;margin-bottom:25px}.steps p{max-width:280px}.note{font-size:12px;margin:35px 0 0;color:#526662}.organisers{background:#d4efeb;padding:75px 0}.organiser-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.organiser-inner p:last-child{margin-bottom:0}.launch{text-align:center;padding-top:100px;padding-bottom:90px}.launch h2{font-size:clamp(45px,6vw,72px)}.platforms{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}.platforms span{padding:12px 22px;border:1px solid #b8cac1;border-radius:30px;font-size:13px}.faq{max-width:850px;padding-bottom:90px}.faq h2{font-size:32px}.faq details{border-bottom:1px solid #d7ded6;padding:19px 0}.faq summary{cursor:pointer;font-weight:700}.faq details p{margin:15px 0 0;max-width:650px}footer{background:var(--ink);color:var(--cream);padding:35px 0}footer .wrap{display:flex;justify-content:space-between;gap:25px;align-items:center}footer a{text-decoration:none;font-size:36px;font-weight:800;letter-spacing:-2px}footer span{display:block;font-size:12px;font-weight:400;letter-spacing:0}footer p{font-size:12px;margin:0}.skip{position:absolute;left:15px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid #087b7d;outline-offset:5px}@media(max-width:850px){.categories{grid-template-columns:repeat(2,1fr)}.hero{padding-top:65px;gap:20px}h1{letter-spacing:-2px}.steps{gap:25px}.organiser-inner{gap:30px}}@media(max-width:600px){.wrap{padding-left:24px;padding-right:24px}nav{padding:14px 24px}nav>div{gap:12px}nav>div>a:not(.nav-button){display:none}.hero{grid-template-columns:1fr;padding-top:50px;padding-bottom:50px;gap:50px}.hero-art{max-width:370px;width:90%;margin:auto}.intro{font-size:17px}.categories{gap:12px}.category{padding:12px 16px 22px}.category h3{font-size:22px}.category span{font-size:8px;letter-spacing:.5px}.steps,.organiser-inner{grid-template-columns:1fr;gap:25px}.steps p{max-width:none}.how{padding-bottom:60px}.organisers{padding:55px 0}.launch{padding-top:65px;padding-bottom:60px}.launch br{display:none}.launch h2 br{display:block}.faq{padding-bottom:60px}footer .wrap{align-items:start;flex-direction:column}h2{letter-spacing:-1.3px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared mobile toolbar branding: AppHeader uses a 78px row and 16% pattern. */
header{position:relative;isolation:isolate;overflow:hidden;background:var(--pink)}
header::before{content:"";position:absolute;z-index:-1;inset:0;background:url('assets/kidli-header-pattern.webp') left top/100% auto no-repeat;opacity:.16;pointer-events:none}
nav{min-height:78px;padding-top:8px;padding-bottom:14px}
.logo{width:156.8px;height:56px;flex-shrink:0;align-items:center}
.logo img{width:100%;height:56px}
nav>div>a:not(.nav-button){color:var(--ink)}
.nav-button{color:#97506d;background:var(--cream);min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:24px}
footer a{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
footer a img{display:block;width:156.8px;height:56px}
@media(max-width:600px){nav{padding:8px 22px 14px;gap:12px}.logo{max-width:48%}.nav-button{font-size:13px;padding:10px 14px}}

/* Reference masthead: centred white wordmark, generous pink surround, fine pattern. */
header{background:#faa1c5}
header::before{background-size:620px auto;background-repeat:repeat;background-position:center top}
nav{flex-direction:column;justify-content:center;gap:20px;min-height:200px;padding:28px 24px 22px}
.logo{width:230px;max-width:70%;height:82px}
.logo img{height:82px}
nav>div{justify-content:center;gap:28px}
nav a{font-size:13px}
.nav-button{min-height:38px;padding:7px 16px}
@media(max-width:600px){nav{min-height:185px;padding:24px 20px 18px;gap:16px}.logo{width:220px;max-width:75%;height:78px}.logo img{height:78px}nav>div>a:not(.nav-button){display:inline}nav>div{gap:18px}nav a{font-size:12px}.nav-button{font-size:12px;padding:7px 13px}}

/* Horizontal masthead, retaining the reference logo and pattern. */
nav{flex-direction:row;justify-content:space-between;min-height:150px;padding:30px 40px;gap:30px}
.logo{width:230px;height:82px;max-width:40%}
nav>div{justify-content:flex-end}
@media(max-width:600px){nav{min-height:110px;padding:22px;gap:18px;flex-wrap:wrap}.logo{width:157px;max-width:48%;height:56px}.logo img{height:56px}nav>div{gap:12px;margin-left:auto;flex-wrap:wrap}nav a{font-size:12px}}
@media(max-width:430px){nav{gap:14px}.logo{width:135px;height:49px}.logo img{height:49px}nav>div{gap:10px;max-width:50%}.nav-button{padding:6px 12px}}
