/* Pink identity: bright accents, quiet surfaces, and a flowing photographic hero. */
:root{--blue:#bd075d;--deep:#a30650;--ink:#19212f;--muted:#657087;--pale:#fff0f7;--line:#e4e6ec;--mint:#ffc2de;--pink:#ec0878;--soft:#f5f6f8}
.announcement{background:var(--soft);display:flex;justify-content:space-between;padding:12px max(5%,calc((100vw - 1290px)/2));font-size:14px}
.announcement a{color:var(--blue)}
.header{padding-top:24px;padding-bottom:24px;max-width:1440px}
.brand-icon{color:var(--pink);width:53px}
.brand{font-size:24px;letter-spacing:-1.2px}
.brand-small{color:var(--pink);letter-spacing:5px;font-size:14px}
nav{font-size:15px;gap:35px}
.button{background:var(--pink);border-radius:12px;padding:18px 27px;font-size:17px;font-weight:700;color:white}
.button:hover{background:var(--deep)}
.button-small{padding:15px 24px}
.button-white{background:#fff;color:var(--blue)}
.button-white:hover{background:var(--pale)}
.hero{max-width:1680px;margin:0 auto;border-radius:0;background:var(--soft);grid-template-columns:48% 52%;min-height:620px;position:relative}
.hero-copy{color:var(--ink);padding:60px 0 60px max(32px,calc((100vw - 1290px)/2));z-index:2}
.location{color:var(--ink);font-size:12px;letter-spacing:2.3px;text-transform:uppercase;gap:15px;margin-bottom:28px}
.location>span{height:4px;width:40px;border-radius:4px;background:var(--pink)}
h1{font-size:clamp(48px,5.3vw,80px);line-height:1.07;letter-spacing:-3.8px}
h1>span{color:var(--pink);white-space:nowrap}
.hero-copy>p{color:var(--muted);font-size:18px;line-height:1.6;max-width:485px;margin:25px 32px 32px 0}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.hero-actions .button{min-width:200px}
.hero-secondary{display:flex;gap:17px;align-items:center;font-size:15px;font-weight:700}
.hero-secondary>span{font-size:28px;color:var(--pink)}
.hero-photo{margin-left:-45px;clip-path:polygon(16% 0,100% 0,100% 100%,24% 100%,22% 96%,20% 89%,17% 80%,13% 70%,9% 60%,5% 49%,3% 40%,3% 31%,5% 22%,8% 13%);clip-path:shape(from 16% 0%,line to 100% 0%,line to 100% 100%,line to 24% 100%,curve to 3% 40% with 20% 92% / 2% 59%,curve to 16% 0% with 0% 22% / 9% 7%,close)}
.hero-photo>img{object-position:58% center}
.handwritten{position:absolute;left:22%;top:38px;font-family:Caveat,'Segoe Print',cursive;font-size:35px;line-height:.94;letter-spacing:-.9px;color:var(--ink);transform:rotate(-10deg);text-shadow:0 1px 6px #fff,0 0 18px #fff}
.handwritten>span{display:block;height:4px;width:75px;background:var(--pink);border-radius:50%;margin:9px 0 0 16px;transform:rotate(-9deg)}
.photo-caption{left:auto;right:30px;bottom:26px;padding:15px 20px;border-radius:24px;background:#fff;box-shadow:0 5px 22px #19212f0b;font-size:14px;gap:14px}
.caption-icon{width:49px;height:49px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffe4f1;color:var(--pink);font-size:34px}
.photo-caption i{display:block;width:35px;height:3px;border-radius:3px;background:var(--pink);margin-top:7px}
.trust-strip{max-width:1350px;grid-template-columns:1fr 1fr 1fr;padding:35px 30px;gap:25px;border-bottom:0}
.trust-strip>div{display:flex;gap:17px;align-items:center;padding-left:25px}
.trust-strip>div:first-child{border-left:0;padding-left:0}
.trust-strip>div strong{font-size:17px}
.trust-strip>div>span:not(.trust-icon)>span{display:block;font-size:12px;margin-top:4px;color:var(--muted)}
.trust-strip>div .trust-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0;width:54px;height:54px;border-radius:50%;background:#ffe7f2;color:var(--pink)}
.trust-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.needs{padding-top:85px}
.need-tabs button[aria-selected=true]{border-color:var(--pink);box-shadow:inset 4px 0 var(--pink)}
.need-panel{background:var(--soft);border-radius:24px}
.need-symbol{color:var(--pink)}
.local-section{background:var(--ink);border-radius:0 85px 0 0}
.local-copy p:not(.eyebrow),.community>p,.community-heading{color:#d0d5df}
.city,.community>p{border-color:#475161}
.city>span:last-child:not(:first-child){color:#d0d5df}
.city small{border-color:#697385}
.story-mark{border-radius:55px 12px 55px 12px}
.story-mark svg{color:#f8c6dc}
.contact{background:var(--soft)}
.contact-card{border-radius:25px;border-top:4px solid var(--pink)}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-color:var(--ink)}
.local-section a:focus-visible{outline-color:white}
@media(min-width:1680px){.hero-copy{padding-left:100px}}
@media(max-width:1150px){nav{gap:20px;font-size:14px}.brand{font-size:21px}.hero-copy{padding-left:35px}.hero{min-height:590px}.hero-copy>p{font-size:16px}.hero-actions{gap:17px}.hero-actions .button{min-width:170px;font-size:15px;padding:16px 22px}.hero-secondary{font-size:13px;gap:12px}.handwritten{left:23%;font-size:29px}.trust-strip>div{padding-left:15px;gap:12px}.trust-strip>div strong{font-size:15px}.trust-strip>div .trust-icon{width:44px;height:44px}}
@media(min-width:761px) and (max-width:900px){h1{font-size:43px;letter-spacing:-2.2px}.hero-copy{padding-left:25px;padding-top:45px}.hero{min-height:560px}.location{font-size:9px;letter-spacing:1.3px;gap:8px}.location>span{width:24px}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start}.handwritten{font-size:26px;top:27px;left:25%}.photo-caption{right:15px;font-size:12px;padding:12px;gap:8px}.caption-icon{width:38px;height:38px}.header{padding-left:25px;padding-right:25px}nav{gap:15px;font-size:12px}.brand{font-size:18px}.brand-icon{width:39px}.button-small{font-size:13px;padding:12px 16px}.trust-strip{gap:15px;padding:26px 25px}.trust-strip>div{align-items:flex-start}.trust-strip>div .trust-icon{width:32px;height:32px}.trust-icon svg{width:22px;height:22px}}
@media(max-width:760px){.announcement{display:block;padding:10px 20px;font-size:11px;text-align:center}.header{padding:20px}.brand{font-size:20px}.brand-icon{width:42px}.brand-small{font-size:12px;letter-spacing:4px}.hero{margin:0;grid-template-columns:1fr;min-height:0}.hero-copy{padding:36px 25px 34px}.location{font-size:10px;letter-spacing:1.4px;margin-bottom:22px;gap:12px}.location>span{width:30px}h1{font-size:clamp(39px,9.8vw,68px);letter-spacing:-2px;line-height:1.1}.hero-copy>p{font-size:16px;margin:22px 0 25px;max-width:480px}.hero-actions{gap:22px;align-items:center}.hero-actions .button{min-width:165px;font-size:15px;padding:16px 20px}.hero-secondary{font-size:13px;gap:10px}.hero-photo{margin-left:0;height:390px;clip-path:ellipse(88% 100% at 64% 100%)}.hero-photo>img{object-position:center 48%}.handwritten{font-size:29px;left:12%;top:38px}.photo-caption{right:18px;left:auto;bottom:18px;font-size:12px;padding:12px 15px;border-radius:18px}.caption-icon{width:40px;height:40px}.trust-strip{grid-template-columns:1fr;gap:0;padding:12px 25px}.trust-strip>div,.trust-strip>div:first-child{padding:20px 0;border-left:0;border-bottom:1px solid var(--line);gap:17px;align-items:center}.trust-strip>div:last-child{border-bottom:0}.trust-strip>div strong{font-size:16px}.trust-strip>div>span:not(.trust-icon)>span{max-width:none;font-size:12px}.trust-strip>div .trust-icon{width:47px;height:47px}.needs{padding-top:55px}.local-section{border-radius:0 45px 0 0}.story-mark{border-radius:40px 12px}.contact-card{border-radius:20px}}
@media(max-width:360px){.hero-copy{padding-left:20px;padding-right:20px}h1{font-size:36px}.hero-photo{height:335px}.handwritten{font-size:25px;left:11%;top:34px}.hero-actions{gap:14px}.hero-secondary{font-size:12px}.photo-caption{right:12px}}
