:root{--navy:#222c64;--cream:#f6f1e7;--red:#d8262e;--gray:#dad9d7}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--navy);font-family:Helvetica,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--red)}a:focus-visible{outline:3px solid var(--red);outline-offset:6px}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}header{max-width:1280px;margin:auto;padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo img{width:230px;display:block}nav{display:flex;gap:30px;font-size:15px;font-weight:700}nav a{text-decoration:none}.hero,.section{max-width:1280px;margin:auto;padding:80px 6%}.hero{padding-top:55px;padding-bottom:55px;border-bottom:1px solid #222c6440}.eyebrow{font-size:14px;letter-spacing:1.8px;font-weight:700;margin-bottom:22px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,7.4vw,6.75rem);line-height:1.02;letter-spacing:-3px;max-width:1050px;margin-bottom:38px}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--red)}h2{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.12;letter-spacing:-1px;margin-bottom:25px}h3{font-size:22px;line-height:1.3;margin-bottom:15px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:35px}.hero-bottom p{font-size:22px;max-width:650px;margin-bottom:0}.button{display:inline-block;background:var(--navy);color:white;text-decoration:none;padding:17px 26px;border-radius:5px;font-weight:700;font-size:16px;text-align:center}.button:hover{background:var(--red);color:white}.member-note{padding-top:32px;font-size:16px}.member-note span{font-weight:700;margin-right:12px}.lede{font-size:21px;max-width:780px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}.cards article{background:white;padding:30px 28px;border-top:5px solid var(--red);box-shadow:0 8px 0 #222c640a}.cards article:nth-child(2){transform:rotate(-1deg)}.cards p{margin:0}.number{display:block;color:var(--red);font-size:15px;font-weight:700;margin-bottom:24px}.events{background:var(--navy);color:var(--cream);max-width:none;padding-left:max(6%,calc((100vw - 1126px)/2));padding-right:max(6%,calc((100vw - 1126px)/2))}.section-head{display:flex;gap:40px;justify-content:space-between;align-items:end}.section-head p{max-width:340px}.event-list{margin-top:25px}.event-list article{display:grid;grid-template-columns:130px 1fr;gap:35px;padding:30px 0;border-top:1px solid #ffffff55}.event-list p{margin-bottom:6px;max-width:750px}.date{font-size:14px;letter-spacing:2px}.date span{display:block;font-family:Georgia,serif;font-size:44px;line-height:1.25;letter-spacing:0}.event-list h3{font-size:26px;margin-bottom:8px}.opportunities{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.opportunities article{border-top:2px solid var(--navy);padding-top:22px}.actions{display:flex;gap:25px;align-items:center;margin:22px 0 40px}.winter{padding:25px 30px;border-left:5px solid var(--red);background:white}.winter strong{font-size:22px}.winter p{margin:10px 0;max-width:950px}.store{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #222c6440}.store-photo{align-self:start;transform:rotate(-2deg);background:white;padding:15px;box-shadow:0 10px 25px #222c6410;margin-top:55px}.store-photo img{width:100%;display:block}.store-photo span{display:block;padding:15px 5px 6px;font-weight:700;font-size:14px;letter-spacing:1px}.store h2{font-size:40px}.hours{font-size:24px;font-weight:700}.special{border-top:1px solid #222c6430;padding-top:20px}.care{background:var(--navy);color:var(--cream);max-width:none;padding-left:max(6%,calc((100vw - 1126px)/2));padding-right:max(6%,calc((100vw - 1126px)/2))}.care p{max-width:790px;font-size:20px}.light{background:var(--cream);color:var(--navy);margin-top:15px}.board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.board-grid article{border-top:1px solid #222c6440;padding-top:22px}.board-grid h3{margin-bottom:5px}.board-grid p{margin-bottom:10px}footer{border-top:1px solid #222c6430;display:flex;gap:35px;align-items:center;justify-content:space-between;padding:45px 6% 65px;position:relative}footer img{width:200px}footer p{font-family:Georgia,serif;font-size:20px;margin:0}footer span{font-size:14px}footer:after{content:'';position:absolute;bottom:0;left:0;right:0;height:18px;background:repeating-conic-gradient(var(--navy) 0% 25%,var(--cream) 0% 50%) 0/36px 36px}@media(max-width:760px){header{padding:22px 6%;align-items:start;flex-direction:column;gap:20px}.logo img{width:185px}nav{gap:22px;font-size:14px}.hero,.section{padding:50px 6%}h1{letter-spacing:-1.5px}.hero-bottom{display:block}.hero-bottom p{font-size:20px;margin-bottom:25px}.member-note span{display:block}.cards,.opportunities,.store,.board-grid{grid-template-columns:1fr}.cards{gap:22px}.section-head{display:block}.section-head p{max-width:none}.event-list article{grid-template-columns:80px 1fr;gap:20px}.date span{font-size:34px}.actions{align-items:start;flex-direction:column;gap:20px}.store{gap:35px}.store-photo{margin-top:0}.store h2{font-size:34px}.board-grid{grid-template-columns:1fr 1fr;gap:30px 18px}.board-grid h3{font-size:20px}footer{align-items:start;flex-direction:column;gap:22px}.care p{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Paper tape accents echo HPA social templates. */
.cards article{position:relative;padding-top:42px;margin-top:12px}.cards article:before{content:"";position:absolute;width:90px;height:28px;top:-14px;left:calc(50% - 45px);background:#dad9d7dd;transform:rotate(-5deg);box-shadow:0 1px 1px #222c6410}.cards article:nth-child(2):before{transform:rotate(5deg)}.cards article:nth-child(3):before{transform:rotate(-3deg)}

.shopping{border-top:1px solid #222c6430}.shopping-contact{margin-top:22px;margin-bottom:0}

.board-photo{position:relative;margin:38px 0 45px;padding:14px 14px 0;background:white;box-shadow:0 8px 0 #222c640a}.board-photo:before{content:"";position:absolute;top:-12px;left:calc(50% - 55px);width:110px;height:28px;background:#dad9d7dd;transform:rotate(-4deg)}.board-photo img{display:block;width:100%;height:auto}.board-photo figcaption{padding:15px 6px 18px;font-size:15px;font-weight:700}@media(max-width:760px){.board-photo{padding:8px 8px 0}.board-photo figcaption{font-size:14px}}

.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:55px}.community-photo{position:relative;margin:0;background:white;padding:12px 12px 0;box-shadow:0 8px 0 #222c640a;color:var(--navy)}.community-photo:before{content:"";position:absolute;width:90px;height:26px;left:calc(50% - 45px);top:-12px;background:#dad9d7dd;transform:rotate(-4deg);z-index:1}.community-photo img{display:block;width:100%;height:auto}.community-photo figcaption{font-size:15px;padding:14px 5px 17px;font-weight:700}.portrait-pair{max-width:760px;margin:55px auto 0}.portrait-pair .community-photo:nth-child(2){transform:rotate(1deg)}.festival-pair{margin:35px 0 40px;gap:25px}.volunteer-photo{max-width:750px;margin:40px auto 50px}@media(max-width:760px){.photo-pair{gap:20px}.festival-pair{grid-template-columns:1fr}.portrait-pair{grid-template-columns:1fr;max-width:420px}.community-photo figcaption{font-size:14px}.volunteer-photo{margin:35px 0 40px}}

#meet-hpa,#involved,#contact{scroll-margin-top:24px}

img{max-width:100%;height:auto}

/* Two taped snapshots fill the School Store column. */
.store-gallery{display:grid;gap:38px;align-self:start;padding-top:28px;min-width:0}.store-gallery .store-photo{position:relative;margin:0;transform:rotate(-2deg)}.store-gallery .store-photo:nth-child(2){transform:rotate(1.5deg);margin:0 18px 0 26px}.store-gallery .store-photo:before{content:"";position:absolute;top:-12px;left:calc(50% - 50px);width:100px;height:28px;background:#dad9d7dd;transform:rotate(-4deg);z-index:1}.store-photo figcaption{display:block;padding:15px 5px 6px;font-weight:700;font-size:14px;letter-spacing:1px}.store .special{margin-top:24px}@media(max-width:760px){.store-gallery{padding-top:12px;gap:32px}.store-gallery .store-photo:nth-child(2){margin:0 12px}.store-gallery{max-width:480px;width:100%;margin:auto}}

/* Quiet copyright and studio credit beneath the HPA footer. */
footer{display:block}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-note{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:35px;padding-top:24px;border-top:1px solid #222c6430}.footer-note small{font-size:13px;line-height:1.6}.studio-credit{display:flex;align-items:center;gap:14px;text-decoration:none}.studio-credit span{font-size:13px}.studio-credit img{width:110px;height:auto;display:block}@media(max-width:760px){.footer-main{flex-direction:column;align-items:flex-start;gap:22px}.footer-note{flex-direction:column;align-items:flex-start;gap:20px}.studio-credit{flex-wrap:wrap;gap:12px}}

/* A taped invitation to follow the HPA on Instagram. */
.instagram-callout{padding-top:10px;padding-bottom:65px}.instagram-paper{position:relative;background:white;border-bottom:5px solid var(--red);padding:40px;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:0 8px 0 #222c640a}.instagram-paper:before{content:"";position:absolute;top:-12px;left:calc(50% - 55px);width:110px;height:28px;background:#dad9d7dd;transform:rotate(-4deg)}.instagram-paper h2{font-size:clamp(2rem,3.5vw,3rem);margin-bottom:18px}.instagram-paper p{max-width:570px;margin-bottom:0}.instagram-paper .eyebrow{margin-bottom:16px}.instagram-action{display:flex;flex-direction:column;align-items:center;gap:14px;flex-shrink:0}.instagram-action span{font-size:14px;overflow-wrap:anywhere}@media(max-width:760px){.instagram-paper{padding:32px 24px;flex-direction:column;align-items:flex-start;gap:25px}.instagram-action{align-items:flex-start;max-width:100%}.instagram-callout{padding-top:10px}}

/* Recognizable Instagram glyph and Harding red heart. */
.instagram-action .button{display:inline-flex;align-items:center;justify-content:center;gap:12px}.instagram-icon{display:block;flex:0 0 26px;width:26px;height:26px;filter:brightness(0) invert(1)}.care-heading{display:flex;align-items:center;gap:24px}.care-heading h2{margin-bottom:25px}.care-heart{color:var(--red);font-family:Arial,Helvetica,sans-serif;font-size:80px;line-height:1;flex-shrink:0;margin-bottom:25px}@media(max-width:760px){.care-heading{gap:16px}.care-heart{font-size:54px}}


.school-website-link{margin-top:28px}.school-website-link a{font-size:16px;font-weight:700;text-decoration:underline;text-underline-offset:5px}
