:root { --ink:#11162a; --pink:#e51b62; --rose:#b95d64; --cream:#fffaf1; --soft:#fff1f4; --blue:#1f9de1; --muted:#6f7180; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
button, input, textarea { font:inherit; }
a { color:inherit; text-decoration:none; }
.brand-art-crop { display:block; width:190px; height:68px; overflow:hidden; position:relative; border-radius:10px; background:#fffaf1; }
.brand-art-crop img { position:absolute; width:230px; height:auto; left:0; top:-4px; }
.campaign-hero { background:#fffaf1; padding:clamp(18px,3vw,42px) clamp(16px,4vw,64px) 34px; }
.campaign-hero > img { display:block; width:100%; max-width:1536px; margin:0 auto; border-radius:28px; box-shadow:0 24px 70px #4a273020; }
.campaign-actions { display:flex; justify-content:center; gap:16px; margin-top:28px; }
.campaign-secondary { background:#fff; color:var(--ink); border:1px solid #eadadd; }
.site-header { height:92px; padding:0 clamp(24px,6vw,88px); display:flex; align-items:center; justify-content:space-between; background:rgba(255,255,255,.94); position:sticky; top:0; z-index:20; border-bottom:1px solid #f2e7e8; backdrop-filter:blur(16px); }
.brand { display:flex; gap:11px; align-items:center; }
.brand-mark { width:45px; height:45px; display:grid; place-items:center; background:var(--pink); color:white; border-radius:15px 15px 18px 18px; font-size:24px; transform:rotate(-3deg); box-shadow:0 9px 24px #e51b6230; }
.brand > span:last-child { display:flex; flex-direction:column; line-height:.95; }
.brand strong { font-size:23px; letter-spacing:-.8px; }.brand small { font-size:15px; margin-top:6px; }
nav { display:flex; align-items:center; gap:30px; font-size:14px; font-weight:700; }
nav a { transition:color .2s; } nav a:hover { color:var(--pink); }
.nav-cta { background:var(--rose); color:#fff!important; padding:14px 20px; border-radius:999px; box-shadow:0 8px 18px #b95d6430; }
.menu-button { display:none; border:0; background:none; font-size:24px; color:var(--ink); }
.hero { min-height:calc(100vh - 92px); display:grid; grid-template-columns:1.05fr .95fr; background:linear-gradient(115deg,var(--cream) 0 58%,#f8dfe5 58%); overflow:hidden; }
.hero-copy { padding:clamp(70px,9vw,130px) 6vw 64px; max-width:820px; }
.eyebrow { display:inline-flex; gap:9px; align-items:center; color:var(--rose); text-transform:uppercase; letter-spacing:2px; font-size:12px; font-weight:800; }
.hero h1,.section-heading h2,.contribute-intro h2,.contact-section h2 { font-family:Georgia, 'Times New Roman', serif; font-weight:700; letter-spacing:-2.7px; }
.hero h1 { font-size:clamp(56px,6vw,95px); line-height:.93; margin:22px 0 28px; }
.hero h1 em,.contribute-intro h2 em { color:var(--pink); font-style:italic; }
.hero-copy > p { color:var(--muted); max-width:610px; font-size:18px; line-height:1.7; }
.hero-actions { display:flex; align-items:center; gap:30px; margin-top:38px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:18px; border:0; border-radius:999px; padding:17px 25px; font-weight:800; cursor:pointer; }
.primary { background:var(--pink); color:white; box-shadow:0 13px 30px #e51b6230; }
.text-link { font-weight:800; border-bottom:1px solid; padding-bottom:4px; }
.trust-row { display:flex; gap:30px; margin-top:60px; color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.8px; }
.trust-row span { border-left:2px solid #f1c7cf; padding-left:14px; }.trust-row strong { color:var(--ink); display:block; font-size:15px; margin-bottom:4px; }
.hero-visual { min-height:670px; background:linear-gradient(0deg,#531a2a36,#531a2a10),url('https://images.unsplash.com/photo-1552053831-71594a27632d?auto=format&fit=crop&w=1500&q=90') center/cover; position:relative; border-bottom-left-radius:46% 18%; }
.floating-note { position:absolute; left:-55px; bottom:90px; background:white; padding:17px 25px 17px 17px; border-radius:18px; box-shadow:0 20px 60px #3f122633; display:grid; grid-template-columns:44px auto; column-gap:13px; }
.floating-note > span { grid-row:1/3; width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--pink);font-size:21px; }.floating-note strong { align-self:end; }.floating-note small { color:var(--muted); margin-top:3px; }
.project-section,.pets-section,.contact-section { padding:110px 6vw; }
.section-heading { max-width:760px; margin-bottom:55px; }.section-heading h2,.contact-section h2 { font-size:clamp(43px,5vw,70px); line-height:1.02; margin:14px 0 18px; }.section-heading > p,.contact-section > div > p { color:var(--muted); line-height:1.7; max-width:620px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #ddd8d3; }
.feature-grid article { padding:36px 35px 10px 0; border-right:1px solid #ddd8d3; }.feature-grid article + article { padding-left:35px; }.feature-grid article:last-child{border-right:0}.feature-number { font-family:Georgia,serif;color:var(--pink);font-style:italic;font-size:23px}.feature-grid h3{font-size:22px;margin:22px 0 12px}.feature-grid p{color:var(--muted);line-height:1.65}
.pets-section { background:var(--cream); }.row-heading { max-width:none;display:flex;justify-content:space-between;align-items:end}.row-heading > p{max-width:310px;margin-bottom:8px}.pet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pet-card{background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 16px 50px #4a27300c;transition:transform .25s,box-shadow .25s}.pet-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px #4a273018}.pet-image-wrap{height:360px;position:relative;overflow:hidden}.pet-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.pet-card:hover img{transform:scale(1.035)}.pet-index{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffffdd;font-family:Georgia,serif;font-style:italic}.pet-info{padding:25px}.pet-info > div{display:flex;align-items:center;justify-content:space-between}.pet-info h3{font-family:Georgia,serif;font-size:32px;margin:0}.pet-info > div span{background:var(--soft);color:var(--rose);border-radius:99px;padding:7px 11px;font-size:12px;font-weight:800}.pet-info p{color:var(--muted);line-height:1.6;min-height:52px}.pet-info button{width:100%;border:0;border-top:1px solid #eee1e3;background:none;padding:18px 0 0;margin-top:7px;text-align:left;display:flex;justify-content:space-between;color:var(--pink);font-weight:800;cursor:pointer}
.contribute-section{display:grid;grid-template-columns:.82fr 1.18fr;background:var(--ink);color:#fff}.contribute-intro{padding:105px 6vw}.eyebrow.light{color:#f5aebd}.contribute-intro h2{font-size:clamp(44px,5vw,70px);line-height:1;margin:18px 0 25px}.contribute-intro p{color:#c8cad3;line-height:1.7;max-width:560px}.light-button{margin-top:25px;background:#fff;color:var(--ink)}.goal-panel{background:#fff;color:var(--ink);padding:70px clamp(35px,6vw,90px);border-top-left-radius:55px}.panel-label{text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:25px}.goal{display:flex;gap:20px;padding:23px 0;border-bottom:1px solid #eee}.goal-icon{flex:0 0 49px;height:49px;border-radius:15px;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:bold}.pink{background:var(--pink)}.blue{background:var(--blue)}.goal-content{flex:1}.goal-title{display:flex;justify-content:space-between;align-items:center}.goal-title h3{margin:0 0 11px}.goal-title span{font-weight:900}.progress{height:7px;background:#eee;border-radius:9px;overflow:hidden}.progress span{display:block;height:100%;border-radius:9px}.goal-content p{color:var(--muted);font-size:13px;margin:10px 0 0}.goal-content p strong{color:var(--pink)}.goal-panel > small{display:block;margin-top:22px;color:#999}
.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.contact-section h2{max-width:650px}.contact-section form{display:grid;gap:20px;background:var(--soft);padding:36px;border-radius:28px}.contact-section label{display:grid;gap:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.contact-section input,.contact-section textarea{width:100%;border:1px solid #ecdde1;background:#fff;border-radius:13px;padding:15px;text-transform:none;letter-spacing:0;outline:none}.contact-section input:focus,.contact-section textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px #e51b6210}.contact-section textarea{min-height:110px;resize:vertical}.contact-section form .button{justify-self:start}
footer{padding:55px 6vw;background:#0b0f20;color:#fff;display:grid;grid-template-columns:1fr auto 1fr;gap:50px;align-items:center}.footer-brand .brand-mark{width:38px;height:38px;font-size:19px}.footer-brand strong{font-size:19px}.footer-brand small{font-size:13px}footer p{font-size:12px;line-height:1.7;color:#aeb1bd;text-align:center}.footer-note{text-align:right;text-transform:uppercase;letter-spacing:1px}
@media(max-width:900px){.site-header{height:76px}.menu-button{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;padding:25px;flex-direction:column;align-items:stretch;box-shadow:0 20px 40px #32101c14}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;background:var(--cream)}.hero-copy{padding-top:75px}.hero-visual{min-height:540px;border-radius:0}.floating-note{left:24px;bottom:30px}.feature-grid,.pet-grid{grid-template-columns:1fr}.feature-grid article{border-right:0;border-bottom:1px solid #ddd8d3;padding:28px 0!important}.row-heading{display:block}.row-heading>p{max-width:550px}.pet-image-wrap{height:420px}.contribute-section,.contact-section{grid-template-columns:1fr}.goal-panel{border-radius:40px 40px 0 0}.contact-section{gap:40px}footer{grid-template-columns:1fr}.footer-note{text-align:center}}
@media(max-width:520px){.brand strong{font-size:19px}.brand small{font-size:13px}.brand-mark{width:38px;height:38px}.hero h1{font-size:52px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{flex-direction:column;margin-top:42px}.project-section,.pets-section,.contact-section{padding:80px 22px}.contribute-intro{padding:80px 22px}.goal-panel{padding:55px 22px}.pet-image-wrap{height:330px}.contact-section form{padding:24px}.section-heading h2,.contact-section h2{font-size:43px}footer{padding:50px 22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:520px){.brand-art-crop{width:145px;height:54px}.brand-art-crop img{width:180px}.campaign-hero{padding:14px 12px 28px}.campaign-hero>img{border-radius:16px}.campaign-actions{flex-direction:column}.campaign-actions .button{width:100%}}
