:root{--ink:#252323;--paper:#fffaf0;--yellow:#ffe855;--pink:#f7a6bf;--blue:#9bdde9;--green:#b7d995;--line:#342d2a;--hand:"Patrick Hand","Comic Sans MS",cursive;--body:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--body);overflow-x:hidden}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
button{font:inherit}
img{max-width:100%;display:block}
svg{display:block}
:focus-visible{outline:3px solid #e44470;outline-offset:4px}
.skip-link{position:absolute;z-index:200;top:-60px;left:20px;background:#fff;padding:10px 16px}
.skip-link:focus{top:10px}
.container{width:min(1180px,calc(100% - 48px));margin:auto}
.section-pad{padding:100px 0}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,250,240,.96);border-bottom:2px solid var(--ink);backdrop-filter:blur(12px)}
.header-inner{width:min(1240px,calc(100% - 48px));min-height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{text-decoration:none;display:flex;align-items:center;gap:10px;flex:none}
.brand img{width:58px;height:58px;object-fit:cover;border:2px solid var(--ink);border-radius:45% 55% 49% 51%/52% 42% 58% 48%;transform:rotate(-5deg)}
.brand-name{font:31px/0.95 var(--hand);letter-spacing:-.02em}
.brand-name small{display:block;font:700 10px/1.5 var(--body);letter-spacing:.13em;text-transform:uppercase;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:30px}
.main-nav>a:not(.button){font-weight:700;font-size:14px;text-decoration:none;position:relative}
.main-nav>a:not(.button):after{content:"";position:absolute;height:6px;bottom:-5px;left:0;right:100%;background:var(--pink);border-radius:60% 40% 45% 55%;transition:right .2s}
.main-nav>a:not(.button):hover:after{right:0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border:2px solid var(--ink);border-radius:52% 48% 50% 50%/11% 17% 14% 18%;background:var(--pink);color:var(--ink);box-shadow:4px 5px 0 var(--ink);padding:13px 24px;font:700 15px/1.2 var(--body);text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;text-align:center}
.button:hover{transform:translate(2px,2px);box-shadow:2px 3px 0 var(--ink);background:#ffc1d3}
.button-small{background:var(--yellow);padding:11px 19px;font-size:14px}
.button-small:hover{background:#fff195}
.menu-toggle{display:none}
.hero{background:var(--yellow);position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;opacity:.1;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:9px 9px;pointer-events:none}
.hero-inner{width:min(1240px,calc(100% - 48px));min-height:635px;margin:auto;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:60px;padding:50px 0 95px;position:relative;z-index:1}
.hero-copy{max-width:650px}
.eyebrow,.section-label{font:25px/1.2 var(--hand);margin:0 0 16px;color:#a52751}
.eyebrow span{color:#e53b62;font-size:30px;vertical-align:middle;margin-right:5px}
h1,h2,h3,p{margin-top:0}
.hero h1{font:normal clamp(58px,6.7vw,96px)/.98 var(--hand);letter-spacing:-.03em;margin:0 0 30px;max-width:750px}
.underlined{position:relative;white-space:nowrap}
.underlined:after{content:"";position:absolute;bottom:1px;left:4px;width:100%;height:9px;border-radius:90% 70% 40% 50%;background:#f18bae;transform:rotate(-2deg);z-index:-1}
.hero-lead{font-size:18px;line-height:1.65;max-width:560px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px}
.hero .button{background:#fffaf0}
.hero .button:hover{background:white}
.text-link{font-weight:700;text-underline-offset:5px}
.text-link span{font-size:22px;margin-left:4px}
.hero-note{font:23px var(--hand);margin:36px 0 0}
.hero-note span{color:#db4570}
.hero-art{position:relative;display:grid;place-items:center;min-width:0}
.logo-frame{width:min(100%,460px);padding:15px;background:#fffaf0;border:3px solid var(--ink);border-radius:48% 52% 50% 50%/5% 6% 4% 7%;transform:rotate(4deg);box-shadow:14px 14px 0 rgba(36,35,35,.18)}
.logo-frame img{width:100%;height:auto;border-radius:3px}
.hand-note{position:absolute;bottom:-34px;left:-20px;z-index:2;background:var(--pink);border:2px solid var(--ink);border-radius:51% 49% 48% 52%/9% 12% 12% 10%;transform:rotate(-8deg);padding:5px 18px;font:26px var(--hand);box-shadow:4px 4px 0 var(--ink)}
.doodle{position:absolute;font-family:var(--hand);line-height:1}
.doodle-star{font-size:100px;color:#ed688d;left:-55px;top:-38px;transform:rotate(-12deg)}
.doodle-squiggle{font-size:100px;color:#69bbc4;right:-30px;bottom:-60px;transform:rotate(-26deg)}
.section-wave{position:absolute;bottom:-1px;width:100%;height:62px}
.intro{background:var(--paper)}
.intro-grid{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:100px}
.intro-mark{min-height:370px;display:grid;place-items:center;position:relative;transform:rotate(-5deg)}
.intro-mark:before,.intro-mark:after{content:"";position:absolute;inset:20px 25px;border:3px solid var(--ink);border-radius:52% 48% 59% 41%/45% 55% 45% 55%}
.intro-mark:before{background:var(--blue);transform:rotate(5deg)}
.intro-mark:after{inset:27px 21px 17px 30px;transform:rotate(-4deg)}
.intro-mark span{position:relative;z-index:1;font:55px/.98 var(--hand);text-align:center;transform:rotate(-1deg)}
.intro-mark svg{position:absolute;bottom:-28px;right:-40px;width:150px;fill:none;stroke:#e65c7f;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-8deg)}
.intro h2,.section-heading h2,.donate h2{font:normal clamp(44px,4.5vw,64px)/1.02 var(--hand);letter-spacing:-.02em;margin-bottom:24px}
.intro h2 em,.gallery h2 em,.donate h2 em{font-style:normal;color:#d84672}
.intro-copy>p:not(.section-label){font-size:17px;max-width:680px;color:#504a47}
.intro-facts{display:flex;flex-wrap:wrap;gap:16px;margin-top:34px}
.intro-facts span{border-top:2px dashed var(--ink);min-width:145px;padding-top:12px;font-size:12px;line-height:1.3}
.intro-facts strong{font:30px/1 var(--hand);display:block;margin-bottom:5px}
.actions{background:#fff2ed;position:relative;border-top:2px dashed #e8b7af;border-bottom:2px dashed #e8b7af}
.section-heading{max-width:740px;margin-bottom:52px}
.section-heading.center{text-align:center;margin-left:auto;margin-right:auto}
.section-heading>p:last-child{color:#5a504c;font-size:17px;line-height:1.6}
.marker{background:linear-gradient(transparent 78%,#ffe577 78%)}
.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.action-card{background:#fffdf8;border:2px solid var(--ink);border-radius:47% 53% 51% 49%/3% 4% 3% 4%;padding:26px 24px 30px;box-shadow:5px 6px 0 var(--ink);min-height:360px;transition:transform .2s}
.action-card:nth-child(1){transform:rotate(-2deg)}.action-card:nth-child(2){transform:rotate(1.5deg)}.action-card:nth-child(3){transform:rotate(-1deg)}.action-card:nth-child(4){transform:rotate(2deg)}
.action-card:hover{transform:translateY(-8px) rotate(0)}
.action-icon{width:86px;height:86px;display:grid;place-items:center;margin:0 auto 23px;border:2px solid var(--ink);border-radius:53% 47% 48% 52%/47% 51% 49% 53%}
.action-icon svg{width:65px;height:65px;fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.card-pink .action-icon{background:var(--pink)}.card-blue .action-icon{background:var(--blue)}.card-yellow .action-icon{background:var(--yellow)}.card-green .action-icon{background:var(--green)}
.card-number{display:block;font:20px var(--hand);color:#a52751;margin-bottom:4px}
.action-card h3{font:33px/1.05 var(--hand);margin:0 0 12px}
.action-card p{font-size:14px;line-height:1.6;color:#554c48;margin:0}
.gallery{background:var(--paper)}
.gallery-heading{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:50px}
.gallery-heading>div{max-width:600px}.gallery-heading>p{max-width:400px;margin-bottom:10px}
.gallery-grid{display:grid;grid-template-columns:1.25fr .85fr .85fr;grid-template-rows:250px 250px;gap:18px}
.photo-slot{padding:0;overflow:hidden;position:relative;background:#eee;border:3px solid var(--ink);border-radius:49% 51% 52% 48%/3% 4% 3% 4%;box-shadow:5px 6px 0 var(--ink);cursor:pointer;min-width:0;transition:transform .2s}
.photo-slot:hover{transform:translateY(-5px)}
.photo-slot img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.photo-slot:hover img{transform:scale(1.04)}
.photo-slot>span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(20,20,20,.8));color:#fff;text-align:left;padding:35px 16px 13px;font:24px/1.1 var(--hand)}
.photo-slot>span span{float:right}
.photo-one{grid-row:span 2;transform:rotate(-1deg)}.photo-two{transform:rotate(1deg)}.photo-three{transform:rotate(-1deg)}.photo-four{grid-column:span 2;transform:rotate(1deg)}
.photo-one img{object-position:center 40%}.photo-three img{object-position:center 35%}
.donate{background:var(--blue);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.donate-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:90px}
.donate-copy>p:not(.section-label){font-size:18px;max-width:540px}
.donate-ways{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.donate-ways span{background:#fffaf0;border:2px solid var(--ink);border-radius:51% 49% 52% 48%/16% 20% 15% 19%;padding:6px 14px;font:22px var(--hand);box-shadow:3px 3px 0 var(--ink)}
.pix-card{background:#fffdf8;border:3px solid var(--ink);border-radius:49% 51% 48% 52%/3% 4% 3% 4%;box-shadow:9px 10px 0 var(--ink);padding:40px;position:relative;transform:rotate(1deg)}
.pix-sticker{position:absolute;right:-24px;top:-38px;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;width:110px;height:110px;display:grid;place-items:center;text-align:center;font:22px/1 var(--hand);transform:rotate(13deg);box-shadow:3px 4px 0 var(--ink)}
.pix-kicker{font:23px var(--hand);color:#b22a55}
.pix-card h3{font:43px/1 var(--hand);margin:12px 0}
.pix-card p{color:#544b47}
.pix-key{background:#fff3c2;border:2px dashed var(--ink);padding:15px 18px;margin:25px 0}
.pix-key small{font:15px var(--hand);display:block}
.pix-key strong{font-size:clamp(17px,2.3vw,25px);letter-spacing:.02em;word-break:break-word}
.button-full{width:100%}
.pix-footnote{display:block;font-size:12px;line-height:1.5;margin-top:15px;color:#625955}
.partners{padding:56px 0 70px;text-align:center;background:var(--paper)}
.partners h2{font:36px var(--hand);margin:0 0 24px}
.partners h2 span{color:#d84672}
.partner-list{display:flex;justify-content:center;flex-wrap:wrap;gap:11px}
.partner-list span{border:2px solid var(--ink);border-radius:50% 50% 48% 52%/20% 15% 18% 16%;background:#fff;padding:6px 16px;font:19px var(--hand)}
.partner-list span:nth-child(4n+1){background:#ffe9aa}.partner-list span:nth-child(4n+2){background:#d6f1f3}.partner-list span:nth-child(4n+3){background:#fbd7e2}
.site-footer{background:#282526;color:#fffaf0;padding:65px 0 22px;position:relative}
.site-footer:before{content:"";position:absolute;top:-1px;width:100%;height:12px;background:repeating-linear-gradient(100deg,var(--paper) 0 18px,transparent 18px 32px)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr .6fr;gap:65px}
.footer-brand{font:45px var(--hand);text-decoration:none;line-height:1}
.footer-brand span{color:var(--yellow)}
.footer-grid p{color:#e1d9d3;max-width:360px;font-size:14px;margin:13px 0}
.footer-grid h2{font:27px var(--hand);margin:0 0 16px}
.footer-grid a:not(.footer-brand){display:block;margin:8px 0;text-decoration:none}
.footer-grid a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-link{font:25px var(--hand);color:var(--yellow)}
.footer-bottom{border-top:1px dashed #9c918d;margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px;color:#cbc0ba}
.lightbox-clean{display:none;position:fixed;inset:0;z-index:100;background:rgba(16,14,14,.92);padding:50px 20px;align-items:center;justify-content:center}
.lightbox-clean.active{display:flex}
.lightbox-clean-box{position:relative;max-width:min(900px,100%);max-height:100%;display:flex;justify-content:center}
.lightbox-clean-box img{display:block;max-width:100%;max-height:calc(100vh - 100px);object-fit:contain;border:3px solid #fffaf0}
.lightbox-close{position:absolute;right:-10px;top:-44px;background:transparent;border:0;color:white;font-size:38px;line-height:1;cursor:pointer}
.clean-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,80px);opacity:0;z-index:110;background:var(--ink);color:white;padding:12px 20px;border-radius:8px;transition:transform .2s,opacity .2s;pointer-events:none;text-align:center}
.clean-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1000px){.main-nav{gap:16px}.main-nav>a:not(.button){font-size:13px}.hero-inner{gap:25px}.action-grid{grid-template-columns:repeat(2,1fr)}.intro-grid{gap:40px}.donate-grid{gap:40px}}
@media(max-width:760px){.header-inner{min-height:74px}.brand-name{font-size:27px}.brand img{width:50px;height:50px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:9px;background:var(--yellow);border:2px solid var(--ink);border-radius:6px;cursor:pointer}.menu-toggle span{display:block;height:2px;width:100%;background:var(--ink)}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 24px 28px;background:var(--paper);border-bottom:2px solid var(--ink);box-shadow:0 12px 20px #0002;flex-direction:column;align-items:stretch;gap:18px}.main-nav.open{display:flex}.main-nav>a:not(.button){font-size:17px}.hero-inner{grid-template-columns:1fr;padding:55px 0 110px;gap:45px}.hero h1{font-size:clamp(56px,11vw,78px)}.hero-art{max-width:440px;margin:auto}.intro-grid,.donate-grid{grid-template-columns:1fr}.intro-mark{max-width:380px;margin:auto;width:100%;min-height:330px}.gallery-heading{display:block}.gallery-heading>p{max-width:550px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 240px 240px}.photo-one{grid-row:span 2}.photo-four{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-grid>div:first-child{grid-column:span 2}.section-pad{padding:75px 0}}
@media(max-width:520px){.container,.hero-inner,.header-inner{width:min(100% - 36px,1180px)}.hero h1{font-size:clamp(51px,12vw,66px)}.eyebrow{font-size:21px}.hero-lead{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column;gap:20px}.hero-actions .button{width:100%}.hero-art{width:88%}.doodle-star{font-size:66px;left:-25px}.doodle-squiggle{font-size:65px;right:-25px;bottom:-45px}.hand-note{font-size:21px;left:-12px}.intro-mark{min-height:300px}.intro-mark span{font-size:45px}.intro-mark svg{right:0;bottom:-14px;width:120px}.intro-facts{gap:10px}.intro-facts span{min-width:calc(50% - 10px)}.action-grid{grid-template-columns:1fr}.action-card{min-height:0}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:210px 210px 210px;gap:12px}.photo-slot>span{font-size:18px;padding:30px 10px 10px}.pix-card{padding:30px 23px}.pix-sticker{width:82px;height:82px;font-size:17px;right:-12px;top:-32px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{margin-top:40px}.section-heading h2,.intro h2,.donate h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
