.kindness-body{background:#061d41;color:#fff;overflow-x:hidden}.kindness-page{background:#061d41}.kindness-kicker,.kindness-page .section-kicker{color:#ffba00;font:800 12px Nunito,sans-serif;letter-spacing:.22em}.kindness-hero{position:relative;isolation:isolate;min-height:100svh;padding:140px 6% 100px;display:grid;grid-template-columns:.86fr 1.14fr;align-items:center;overflow:hidden;background:radial-gradient(circle at 75% 45%,#175b79 0,transparent 28%),linear-gradient(135deg,#061d41,#0b3969 62%,#321c58)}.kindness-hero:before,.join-section:before{content:"";position:absolute;inset:0;z-index:-4;background:url('assets/sky.webp') center/cover;opacity:.58}.kindness-copy{position:relative;z-index:5;max-width:650px}.kindness-copy h1{margin:15px 0;font:700 clamp(62px,7vw,112px)/.86 Fredoka,sans-serif;letter-spacing:-.05em}.kindness-copy h1 em{color:#ffba00}.kindness-hand{font:400 clamp(30px,3vw,48px)/1 "Just Another Hand",cursive;color:#d8eef7;margin:25px 0 35px}.kindness-world{height:min(76vh,740px);position:relative;display:grid;place-items:center;z-index:3}.kindness-face{position:relative;z-index:3;width:min(29vw,430px)}.kindness-face img{position:relative;z-index:2;width:100%;filter:drop-shadow(0 24px 26px rgba(0,0,0,.32))}.face-sun{position:absolute;inset:5%;border-radius:50%;background:radial-gradient(circle,#ffcf45,#ffba00 52%,transparent 53%);box-shadow:0 0 80px rgba(255,186,0,.28)}.kindness-orbit{position:absolute;width:min(45vw,650px);aspect-ratio:1;border:1px dashed rgba(111,227,250,.45);border-radius:50%}.kindness-orbit:before{content:"";position:absolute;inset:12%;border:1px solid rgba(255,186,0,.27);border-radius:50%}.place{position:absolute;width:clamp(115px,11vw,175px);aspect-ratio:1;margin:0;padding:7px;border:2px solid #ffba00;border-radius:28px;background:rgba(6,29,65,.72);box-shadow:0 18px 40px rgba(0,0,0,.3);overflow:hidden}.place img{width:100%;height:100%;object-fit:cover;border-radius:20px}.p1{left:-4%;top:13%}.p2{right:-5%;top:9%}.p3{left:-7%;bottom:9%}.p4{right:-3%;bottom:5%}.kindness-ripple{position:absolute;border:1px solid rgba(255,186,0,.3);border-radius:50%;z-index:-1}.ripple-one{width:58vw;height:58vw;right:-20vw;top:5vh}.ripple-two{width:36vw;height:36vw;left:-20vw;bottom:-13vw}.kindness-clouds{position:absolute;z-index:1;left:-5%;right:-5%;bottom:-10%;height:32%;background:url('assets/clouds.webp') center bottom/cover no-repeat;opacity:.3}.passport-section{padding:110px 7%;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(60px,9vw,150px);color:#071f45;background:#f3e4c4;position:relative;overflow:hidden}.passport-section:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(7,31,69,.12);border-radius:50%;right:-220px;top:-250px}.passport-intro h2{font:700 clamp(48px,5.5vw,85px)/.95 Fredoka,sans-serif;margin:20px 0}.passport-intro h2 em{font-family:"Just Another Hand",cursive;color:#cf8b00;font-weight:400}.passport-lead{font:400 clamp(30px,3vw,48px) "Just Another Hand",cursive;color:#0b75a4}.passport-copy{font-size:17px;line-height:1.75}.passport-steps article{position:relative;display:grid;grid-template-columns:68px 1fr;gap:25px;padding:30px;margin-bottom:22px;border:1px solid rgba(11,117,164,.3);border-radius:28px;background:rgba(255,255,255,.34);transition:.35s}.passport-steps article:hover{transform:translateY(-7px);box-shadow:0 20px 40px rgba(7,31,69,.12);border-color:#0b75a4}.passport-steps span{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#ffba00;font-weight:900}.passport-steps h3{font:400 clamp(32px,3vw,45px) "Just Another Hand",cursive;color:#0b75a4;margin:0 0 8px}.passport-steps p{margin:0;line-height:1.65}.join-section{position:relative;isolation:isolate;overflow:hidden;padding:120px 7% 135px;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,8vw,120px);background:linear-gradient(145deg,#061d41,#0b3969 58%,#321c58)}.join-copy{position:relative}.join-copy h2{font:700 clamp(55px,6vw,96px)/.92 Fredoka,sans-serif;margin:18px 0}.join-copy h2 em{font-family:"Just Another Hand",cursive;color:#ffba00;font-weight:400}.join-copy>p{max-width:520px;color:#d6e7f2;font-size:18px;line-height:1.7}.join-copy img{max-height:420px;margin:25px auto -135px;filter:drop-shadow(0 22px 25px rgba(0,0,0,.35))}.kindness-form{position:relative;z-index:3;padding:42px;border:1px solid rgba(111,227,250,.35);border-radius:36px;background:rgba(4,22,52,.68);backdrop-filter:blur(16px);box-shadow:0 28px 70px rgba(0,0,0,.25)}.kindness-form label{display:block;margin-bottom:22px}.kindness-form label>span{display:block;margin-bottom:8px;color:#ffba00;font:800 11px Nunito,sans-serif;letter-spacing:.13em;text-transform:uppercase}.kindness-form input,.kindness-form select,.kindness-form textarea{width:100%;border:1px solid rgba(111,227,250,.4);border-radius:16px;background:rgba(255,255,255,.08);color:#fff;padding:15px 17px;font:600 15px Nunito,sans-serif;outline:none}.kindness-form select option{color:#071f45}.kindness-form input:focus,.kindness-form select:focus,.kindness-form textarea:focus{border-color:#ffba00;box-shadow:0 0 0 3px rgba(255,186,0,.14)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.kindness-form .form-check{display:flex;align-items:center;gap:10px}.kindness-form .form-check input{width:20px;height:20px}.kindness-form .form-check span{margin:0;color:#d6e7f2;letter-spacing:0;text-transform:none}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.form-bottom p{font-size:13px;color:#b9d8e8}.form-bottom a{color:#6fe3fa}.form-status{color:#6fe3fa;min-height:20px}.kindness-marquee{overflow:hidden;padding:30px 0;background:#ffba00;color:transparent;-webkit-text-stroke:1.5px #071f45}.kindness-marquee>div{display:flex;width:max-content;animation:kindnessMarquee 24s linear infinite}.kindness-marquee span{font:700 clamp(48px,6vw,90px)/1 Fredoka,sans-serif;white-space:nowrap;padding-right:50px}@keyframes kindnessMarquee{to{transform:translateX(-33.333%)}}
@media(max-width:900px){.kindness-hero,.passport-section,.join-section{grid-template-columns:1fr}.kindness-copy{text-align:center;margin:auto}.kindness-world{height:650px}.kindness-face{width:360px}.kindness-orbit{width:590px}.passport-section{gap:55px}.join-copy{text-align:center}.join-copy>p{margin-inline:auto}.join-copy img{margin-bottom:-120px}.kindness-form{max-width:720px;width:100%;margin:auto}}
@media(max-width:640px){.kindness-hero{padding:120px 18px 70px;min-height:auto}.kindness-copy h1{font-size:58px}.kindness-world{height:500px}.kindness-face{width:250px}.kindness-orbit{width:390px}.place{width:104px;border-radius:18px;padding:5px}.place img{border-radius:13px}.passport-section{padding:75px 18px}.passport-intro h2{font-size:50px}.passport-steps article{grid-template-columns:50px 1fr;padding:20px 16px;gap:13px}.passport-steps span{width:48px;height:48px}.join-section{padding:80px 16px 100px}.join-copy h2{font-size:58px}.join-copy img{max-height:320px;margin-bottom:-80px}.kindness-form{padding:25px 18px;border-radius:25px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:flex-start;flex-direction:column}.kindness-form .button{align-self:center}.kindness-marquee{padding:22px 0}}

/* Revision 27 — interactive orbit and rebuilt sections */
.kindness-hero{grid-template-columns:1.08fr .92fr;gap:clamp(35px,5vw,80px)}.kindness-world{grid-column:1;grid-row:1}.kindness-copy{grid-column:2;grid-row:1}.kindness-bg,.kindness-bg-shade{position:absolute;inset:0;z-index:-5;pointer-events:none}.kindness-bg{background-position:center;background-size:cover;opacity:0;transform:scale(1.04);transition:opacity .65s ease,transform 1.2s ease}.kindness-hero.has-place-bg .kindness-bg{opacity:.58;transform:scale(1)}.kindness-bg-shade{z-index:-4;background:linear-gradient(90deg,rgba(6,29,65,.64),rgba(6,29,65,.78) 52%,rgba(6,29,65,.9)),linear-gradient(0deg,rgba(6,29,65,.5),transparent 55%)}.kindness-orbit{will-change:transform}.place{cursor:pointer;transition:border-color .25s,box-shadow .25s,filter .25s}.place:hover,.place:focus-visible,.place.is-active{border-color:#6fe3fa;box-shadow:0 0 0 5px rgba(111,227,250,.18),0 22px 45px rgba(0,0,0,.36);filter:saturate(1.18) brightness(1.05)}
.passport-section{isolation:isolate;color:#fff;background:linear-gradient(135deg,rgba(6,29,65,.96),rgba(11,57,105,.9) 58%,rgba(50,28,88,.94)),url('assets/sky.webp') center/cover}.passport-section:before{content:"";position:absolute;inset:auto -5% -18% -5%;height:52%;z-index:-1;background:url('assets/clouds.webp') center bottom/cover no-repeat;opacity:.25}.passport-section:after{border-color:rgba(111,227,250,.2)}.passport-section .section-kicker{color:#ffba00}.passport-intro h2{white-space:nowrap;color:#fff;font-size:clamp(44px,4.7vw,76px)}.passport-intro h2 em{color:#ffba00}.passport-lead{color:#6fe3fa}.passport-copy{color:#d6e7f2}.passport-side{min-width:0;display:grid;grid-template-columns:minmax(240px,.72fr) minmax(390px,1.28fr);align-items:center;gap:28px}.passport-reader{margin:0;position:relative;border:1px solid rgba(111,227,250,.38);border-radius:35px;overflow:hidden;box-shadow:0 25px 65px rgba(0,0,0,.32)}.passport-reader img{width:100%;height:100%;min-height:530px;object-fit:cover}.passport-steps article{color:#fff;background:linear-gradient(110deg,rgba(6,29,65,.82),rgba(15,67,108,.72));border-color:rgba(111,227,250,.32);padding:24px;grid-template-columns:58px 1fr}.passport-steps span{width:54px;height:54px;color:#071f45}.passport-steps h3{color:#ffba00}.passport-steps article:hover{border-color:#6fe3fa;box-shadow:0 20px 42px rgba(0,0,0,.25)}
.join-section{grid-template-columns:minmax(360px,.8fr) minmax(520px,1.2fr);align-items:center;min-height:900px}.join-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.join-copy img{width:min(100%,430px);max-height:none;margin:35px auto 0;border-radius:40px;border:1px solid rgba(111,227,250,.35);box-shadow:0 24px 60px rgba(0,0,0,.28)}.kindness-form{align-self:center;width:100%;max-width:820px}.kindness-marquee{color:#071f45;-webkit-text-stroke:0}.kindness-marquee span{text-shadow:0 2px 0 rgba(255,255,255,.35)}
@media(max-width:1200px){.passport-section{grid-template-columns:1fr}.passport-side{grid-template-columns:minmax(260px,.7fr) 1.3fr}.passport-intro h2{white-space:normal}.join-section{grid-template-columns:.8fr 1.2fr}}
@media(max-width:900px){.kindness-hero{grid-template-columns:1fr}.kindness-copy{grid-column:1;grid-row:1}.kindness-world{grid-column:1;grid-row:2}.passport-side{grid-template-columns:1fr}.passport-reader{max-width:560px;margin:auto}.passport-reader img{min-height:0}.join-section{grid-template-columns:1fr;min-height:auto}.join-copy img{margin-bottom:0}.kindness-form{margin-top:10px}}
@media(max-width:640px){.kindness-bg-shade{background:linear-gradient(180deg,rgba(6,29,65,.76),rgba(6,29,65,.9))}.passport-section{background:linear-gradient(180deg,rgba(6,29,65,.94),rgba(50,28,88,.9)),url('assets/sky-mobile.webp') center/cover}.passport-intro h2{white-space:normal;font-size:44px}.passport-side{gap:22px}.passport-reader{border-radius:25px}.join-section{padding:75px 16px 90px;gap:35px}.join-copy{display:block}.join-copy img{max-width:360px;border-radius:28px}.kindness-form{margin:0}.kindness-marquee span{font-size:48px}}

/* Revision 28 — annotation refinements */
.kindness-clouds{bottom:-7%;height:40%;background-size:cover;opacity:.34;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 20%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 20%,#000 100%)}
.passport-section{display:block;padding:105px 7% 115px}
.passport-top{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(45px,7vw,115px);align-items:center;max-width:1560px;margin:0 auto 65px}
.passport-intro{grid-column:1;text-align:left;max-width:780px}
.passport-character{grid-column:2;margin:0;display:flex;align-items:center;justify-content:center;min-width:0}
.passport-character img{display:block;width:min(100%,590px);max-height:650px;object-fit:contain;filter:drop-shadow(0 26px 30px rgba(0,0,0,.28))}
.passport-steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1560px;margin:auto}
.passport-steps article{height:100%;margin:0;grid-template-columns:58px minmax(0,1fr)}
.join-section{display:block;min-height:auto;padding:105px 7% 125px}
.join-heading{position:relative;z-index:3;width:100%;max-width:1050px;margin:0 auto 60px;text-align:center}
.join-heading h2{font:700 clamp(55px,6vw,96px)/.92 Fredoka,sans-serif;margin:18px 0}
.join-heading h2 em{font-family:"Just Another Hand",cursive;color:#ffba00;font-weight:400}
.join-heading>p:last-child{max-width:760px;margin:0 auto;color:#d6e7f2;font-size:18px;line-height:1.7}
.join-content{position:relative;z-index:3;display:grid;grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr);gap:clamp(45px,7vw,105px);align-items:center;max-width:1450px;margin:auto}
.join-character{margin:0;display:flex;align-items:center;justify-content:center;min-width:0}
.join-character img{display:block;width:min(100%,650px);max-height:720px;object-fit:contain;filter:drop-shadow(0 28px 32px rgba(0,0,0,.3))}
.join-content .kindness-form{width:100%;max-width:820px;margin:auto}
@media(max-width:1050px){.passport-top{grid-template-columns:1fr 1fr;gap:35px}.passport-steps{grid-template-columns:1fr}.passport-intro h2{white-space:normal}.join-content{grid-template-columns:1fr}.join-character{grid-row:1}.join-character img{width:min(100%,560px);max-height:570px}.join-content .kindness-form{grid-row:2;max-width:760px}}
@media(max-width:720px){.kindness-clouds{height:36%;bottom:-4%;background-size:auto 100%}.passport-section{padding:75px 18px 85px}.passport-top{grid-template-columns:1fr;margin-bottom:42px}.passport-intro,.passport-character{grid-column:1}.passport-intro{text-align:left}.passport-character img{width:min(92%,430px);max-height:460px}.passport-steps{gap:16px}.passport-steps article{grid-template-columns:50px minmax(0,1fr);padding:20px 16px}.join-section{padding:75px 16px 90px}.join-heading{margin-bottom:38px}.join-heading h2{font-size:clamp(48px,14vw,66px)}.join-heading>p:last-child{font-size:16px}.join-content{gap:28px}.join-character img{width:min(100%,480px);max-height:480px}.join-content .kindness-form{width:100%;margin:0 auto}}
