@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap');
:root{--ink:#272522;--paper:#fffaf0;--coral:#ff795f;--lilac:#c5b3f1;--mint:#badbd0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.65}h1,h2,h3,.brand{font-family:Outfit,sans-serif;line-height:1.03;letter-spacing:-.045em}h1{font-size:clamp(48px,5.7vw,83px);margin:22px 0}h2{font-size:clamp(38px,4.3vw,61px);margin:15px 0 25px}h3{font-size:31px;margin:18px 0}em{font-style:normal;color:#9b492e}p{margin:0 0 22px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{max-width:1380px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between}.brand{font-size:25px;font-weight:800;letter-spacing:-.04em}.brand span{padding-left:26px}nav{display:flex;gap:32px;align-items:center;font-size:14px;font-weight:700}.pill{display:inline-flex;justify-content:center;gap:35px;align-items:center;border:1.5px solid var(--ink);border-radius:50px;padding:14px 25px;font-weight:700;font-size:15px;background:transparent;transition:transform .2s,box-shadow .2s}.pill:hover{transform:translateY(-3px);box-shadow:3px 4px 0 var(--coral)}.pill.small{padding:10px 22px}.dark{color:var(--paper);background:var(--ink)}.hero{max-width:1380px;margin:auto;padding:50px 5% 70px;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:800;margin-bottom:17px}.intro{max-width:485px;font-size:18px}.actions{display:flex;gap:28px;align-items:center;margin-top:30px}.text-link{font-weight:700;font-size:15px;background:none;border:0;padding:6px 0;text-decoration:underline;text-underline-offset:6px}.hero-note{font-size:13px;margin:24px 0 0}.art{position:relative;background:#f5df9a;border-radius:48% 48% 8px 8px;min-height:510px;align-self:center}.art svg{display:block;position:absolute;width:100%;bottom:0}.sun{position:absolute;left:12%;top:0;font-size:96px;line-height:1;color:#b589da}.spark{position:absolute;right:7%;top:36%;font-size:56px}.bubble{position:absolute;right:-10px;top:2%;border:2px solid var(--ink);border-radius:50%;padding:24px;background:var(--paper);font-size:15px;font-weight:800;line-height:1.15;transform:rotate(12deg)}.sticker{position:absolute;bottom:14px;left:-22px;transform:rotate(-10deg);background:var(--paper);padding:17px 23px;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font-size:12px;font-weight:800;line-height:1.2}.sticker b{color:var(--coral);font-size:30px;position:absolute;right:-15px;bottom:0}.ribbon{padding:19px 0;overflow:hidden;white-space:nowrap;background:var(--coral);font-family:Outfit,sans-serif;font-size:21px;font-weight:700;letter-spacing:.04em;text-align:center;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.ribbon span{padding:0 35px}.section{padding:95px max(5%,calc((100vw - 1240px)/2));scroll-margin-top:20px}.section-head{text-align:center;max-width:720px;margin:0 auto 45px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:34px 30px;border:1.5px solid var(--ink);border-radius:140px 140px 16px 16px}.card p:last-child{font-size:15px;margin:0}.icon{display:block;text-align:center;font-size:85px;line-height:1.4;margin-bottom:22px}.peach{background:#ffcfb8}.lilac{background:#d8cbf5}.mint{background:#c8dfce}.visit{display:grid;grid-template-columns:1fr 1fr;gap:90px;background:#eee8dc}.visit>div>p{max-width:430px}.event{border:1.5px solid var(--ink);border-radius:16px;background:var(--paper);padding:30px}.event>div{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #d9d3c6}.event span{font-size:11px;font-weight:800;letter-spacing:.15em}.event h3{font-size:27px;margin:8px 0}.event p{font-size:14px;margin:0}.tag{display:inline-block;font-size:11px;background:#eadff7;border-radius:20px;padding:3px 9px;margin-right:5px}.event .notice{font-size:13px}.impact{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}.heart-art{min-height:420px;position:relative;display:grid;place-items:center;font-size:350px;color:var(--coral);line-height:1;transform:rotate(-8deg)}.heart-art span{position:absolute;text-align:center;font-family:Outfit,sans-serif;color:var(--ink);font-size:32px;font-weight:800;line-height:1.05;transform:rotate(8deg)}.signature{font-size:13px;font-weight:700;border-top:1px solid #cbc4b7;padding-top:20px}.involved{text-align:center;background:var(--lilac)}.involved em{color:var(--ink)}.join-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;text-align:left;margin-top:45px}.join-grid article{padding:35px;border-top:1.5px solid var(--ink)}.join-grid article>span{font-size:50px}.join-grid p{max-width:440px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}details{border-bottom:1px solid #bdb6a9;padding:18px 0}summary{font-weight:700;cursor:pointer}details p{font-size:15px;margin:14px 0 4px}.closing{text-align:center;padding:65px 5%;background:#f4d890;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink)}.closing>p{font-size:12px;font-weight:800;letter-spacing:.15em}footer{padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer p{margin:0;font-size:12px}.skip{position:absolute;left:10px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid #086c79;outline-offset:5px}dialog{max-width:530px;width:90%;padding:42px;border:2px solid var(--ink);border-radius:20px;background:var(--paper);color:var(--ink)}dialog h2{font-size:35px}dialog::backdrop{background:#27252299}.close{position:absolute;right:16px;top:8px;border:0;background:none;font-size:30px}@media(max-width:800px){header{padding:22px 6%}nav{gap:15px}nav>a:not(.pill){display:none}.hero{grid-template-columns:1fr;padding:32px 6% 55px;gap:40px}.hero h1{font-size:57px}.hero-copy{max-width:600px}.art{min-height:460px;max-width:500px;width:95%;justify-self:center}.section{padding:65px 6%}.cards{grid-template-columns:1fr}.card{border-radius:20px;padding:28px;display:block}.icon{float:right;font-size:65px;margin:0 0 0 20px}.card h3 br{display:none}.visit,.impact,.faq{grid-template-columns:1fr;gap:35px}.heart-art{min-height:300px;font-size:290px}.join-grid{grid-template-columns:1fr;gap:0}.join-grid article{padding:25px 0}.ribbon{font-size:16px}footer{flex-direction:column;text-align:center}.closing h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pill{transition:none}}
.photo-art{height:590px;min-height:0;background:var(--mint);border-radius:180px 180px 20px 20px;isolation:isolate}.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;border-radius:inherit}.photo-art .bubble{z-index:1;right:-14px;top:18px;background:#d8cbf5;border-radius:18px;box-shadow:4px 4px 0 var(--ink);padding:20px 24px;transform:rotate(8deg)}.photo-art .sticker{z-index:1;bottom:26px;left:-18px;background:#f4d890;border-radius:12px;padding:20px 26px;font-size:15px;transform:rotate(-8deg)}@media(max-width:800px){.photo-art{height:510px;min-height:0;max-width:500px;width:95%}.photo-art .bubble{right:-8px;font-size:13px;padding:17px 20px}.photo-art .sticker{left:-10px}}@media(max-width:420px){.photo-art{height:440px}}
.kitten-art{margin:0;position:relative;text-align:center;max-width:500px;width:100%;justify-self:center}.kitten-art img{display:block;width:100%;height:auto;border-radius:42% 42% 20px 20px}.kitten-art figcaption{position:relative;display:inline-block;margin:-28px 0 0;padding:18px 28px;background:#d8cbf5;border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink);transform:rotate(-5deg);font-family:Outfit,sans-serif;font-size:32px;font-weight:800;line-height:1.08;letter-spacing:-.035em}@media(max-width:800px){.kitten-art{max-width:420px}.kitten-art figcaption{font-size:28px}}
.selected-cat-art{width:100%;aspect-ratio:3/4;background-image:url("cat-artwork-sheet.png");background-repeat:no-repeat;background-size:200% 200%;background-position:left top;background-color:#fff;border-radius:24px}.kitten-art figcaption{margin:-28px 0 0}
.selected-cat-art{border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink)}
.photo-art{height:auto;aspect-ratio:3/4;border-radius:24px;background:#9f7cab}.hero-photo{object-fit:contain;object-position:center}.photo-art .bubble{top:18px}@media(max-width:800px){.photo-art{height:auto;aspect-ratio:3/4;min-height:0}}@media(max-width:420px){.photo-art{height:auto}}
.photo-art{border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink)}
.social-callout{margin:45px auto 15px;padding:30px;max-width:1120px;width:90%;background:#d8cbf5;border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink);display:flex;gap:30px;align-items:center;justify-content:space-between}.social-callout h3{margin:8px 0 12px}.social-callout p{margin:0;max-width:540px;font-size:15px}.social-callout .eyebrow{font-size:11px}.social-links{display:flex;gap:12px;flex-wrap:wrap}.social-links .pill{background:var(--paper);white-space:nowrap}@media(max-width:800px){.social-callout{flex-direction:column;align-items:flex-start;padding:25px}.social-links{width:100%}}

.connect-section{background:#e4eee5}.connect-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.connect-grid article{padding:30px;background:var(--paper);border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink)}.connect-grid h3{margin-top:0}.signup-note{font-size:12px;margin:17px 0 0}#form-popup{width:min(740px,94vw);max-width:740px;padding:0;max-height:92dvh;overflow:hidden}#form-popup[open]{display:flex;flex-direction:column}.form-popup-header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid #d9d3c6;gap:20px}.form-popup-header h3{font-size:25px;margin:0}#form-popup-close{border:0;background:transparent;font-size:32px;line-height:1;padding:5px}#form-popup-frame{width:100%;height:65dvh;min-height:250px;border:0;background:var(--paper)}.form-popup-fallback{margin:0;padding:12px 22px;font-size:12px;text-decoration:underline;border-top:1px solid #d9d3c6}@media(max-width:800px){.connect-grid{grid-template-columns:1fr}.connect-grid article{padding:25px}}
#form-popup{padding:24px;width:min(788px,calc(100vw - 40px));max-width:788px;max-height:calc(100dvh - 40px);margin:auto}.form-popup-header{padding:0 0 16px}#form-popup-frame{width:100%;height:60dvh;flex:1 1 auto;min-height:0;margin:20px 0}.form-popup-fallback{padding:14px 0 0}@media(max-width:600px){#form-popup{padding:18px;width:calc(100vw - 28px);max-height:calc(100dvh - 28px)}#form-popup-frame{height:62dvh;margin:16px 0}.form-popup-header h3{font-size:22px}}

.calendar-picker{position:relative;display:inline-block}.calendar-options{position:absolute;left:0;top:calc(100% + 10px);z-index:5;width:280px;max-width:80vw;background:var(--paper);border:1.5px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--ink);padding:10px}.calendar-options[hidden]{display:none}.calendar-options a,.calendar-options button{display:block;width:100%;padding:12px 14px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;font-size:14px;font-weight:600;text-align:left;cursor:pointer}.calendar-options a:hover,.calendar-options button:hover{background:#e7ddf5}
