:root{--ink:#183a37;--forest:#236154;--moss:#8ec5a2;--cream:#fffaf0;--sand:#f0e7d5;--coral:#ee7b5e;--line:#dce7dc;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{background:var(--cream);margin:0;overflow-y:auto}button,input,select,textarea{font:inherit}.site-shell{overflow:visible}.section{max-width:1180px;margin:0 auto;padding:96px 28px}.hero-section{grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;min-height:660px;display:grid;position:relative}.hero-section:before{content:"";z-index:-1;background:#dff1df;border-radius:50%;width:640px;height:640px;position:absolute;top:-120px;right:-190px}.hero-copy{max-width:690px}.eyebrow,.section-label{color:var(--forest);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.06em;margin:20px 0 26px;font-family:Georgia,serif;font-size:clamp(48px,7vw,88px);line-height:.94}h2{letter-spacing:-.045em;margin:18px 0 26px;font-family:Georgia,serif;font-size:clamp(36px,4vw,56px);line-height:1}.hero-lead,.section-description{color:#52716b;max-width:650px;font-size:18px;line-height:1.65}.hero-dog{filter:drop-shadow(0 26px 18px #25594829);text-align:center;font-size:min(29vw,310px);line-height:1;transform:rotate(-5deg)}.button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:14px 21px;font-weight:800;text-decoration:none;transition:transform .2s,opacity .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--forest);margin-top:18px}.button-dark{color:#fff;background:var(--ink);width:100%}.story-section{border-top:1px solid var(--line)}.coffee-story{grid-template-columns:minmax(220px,.72fr) 1.28fr;align-items:center;gap:48px;display:grid}.coffee-portrait{background:#fffdf8;border:1px solid #eadfcb;padding:12px 12px 36px;position:relative;transform:rotate(-2deg);box-shadow:0 18px 30px #26433724}.coffee-portrait:before{content:"♥";color:var(--coral);font-size:29px;position:absolute;top:-22px;right:-13px;transform:rotate(15deg)}.coffee-portrait img{aspect-ratio:4/5;object-fit:cover;filter:saturate(.82)sepia(.08);width:100%;display:block}.coffee-portrait span{color:#55736b;text-align:center;padding:13px 4px 0;font:italic 16px Georgia,serif;display:block}.coffee-copy{min-width:0}.two-column-copy{grid-template-columns:1fr 1fr;gap:48px;max-width:940px;display:grid}.two-column-copy p{color:#4c6963;font-size:18px;line-height:1.7}.research-section{background:var(--ink);color:#fff;max-width:none;padding-left:max(28px,50vw - 562px);padding-right:max(28px,50vw - 562px)}.research-section .section-label{color:#b8e0bd}.research-section h2{max-width:540px}.method-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:46px;display:grid}.method-grid article{border:1px solid #fff3;border-radius:18px;min-height:245px;padding:25px}.method-grid span{color:#b8e0bd;font-weight:800}.method-grid h3{margin:44px 0 10px;font-size:19px}.method-grid p{color:#d3e4dc;font-size:14px;line-height:1.6}.method-card{color:var(--ink);background:#fff!important}.method-card h3{color:var(--ink)}.method-card p{color:#647d75}.platform-section{background:#f7fbf7;max-width:none;padding-left:max(28px,50vw - 562px);padding-right:max(28px,50vw - 562px)}.platform-section h2{max-width:620px}.platform-grid{grid-template-columns:repeat(3,1fr);margin-top:28px}.platform-card{min-height:315px}.platform-card h3{margin-top:24px}.register-animation{background:#eef5ff;justify-content:center;align-items:center;display:flex}.register-paw{font-size:48px;animation:2s ease-in-out infinite platform-bob}.register-heart{color:#ee7b5e;font-size:30px;animation:1.5s ease-in-out infinite heart-pulse;position:absolute;top:18px;right:30%}.fund-animation{background:#fff8e8;justify-content:center;align-items:center;display:flex}.fund-target{color:#ee7b5e;font-size:46px;animation:1.8s ease-in-out infinite target-pulse}.fund-coin{color:#fff;background:#e9ae4b;border-radius:50%;place-items:center;width:25px;height:25px;font-weight:900;animation:2.4s ease-in-out infinite coin-float;display:grid;position:absolute}.coin-one{top:24%;left:22%}.coin-two{animation-delay:.5s;top:22%;left:68%}.coin-three{animation-delay:1s;bottom:17%;left:30%}.delivery-animation{background:#f1efff;justify-content:center;align-items:center;display:flex}.delivery-box{color:#6d65c7;font-size:58px;animation:1.8s ease-in-out infinite box-bounce}.delivery-paw{font-size:35px;animation:1.8s ease-in-out infinite delivery-in;position:absolute;bottom:15px;right:24%}.delivery-spark{color:#ee9678;font-size:25px;animation:1.5s ease-in-out infinite heart-pulse;position:absolute;top:15px;right:27%}@keyframes platform-bob{50%{transform:translateY(-7px)rotate(-5deg)}}@keyframes heart-pulse{50%{opacity:.65;transform:scale(1.25)}}@keyframes target-pulse{50%{transform:scale(1.12)}}@keyframes coin-float{50%{transform:translateY(-9px)rotate(12deg)}}@keyframes box-bounce{50%{transform:translateY(-8px)}}@keyframes delivery-in{0%,to{transform:translate(8px)}50%{transform:translate(-8px)}}.method-animation{background:#eef7ef;border-radius:14px;height:105px;margin:-5px -5px 18px;position:relative;overflow:hidden}.anatomy-animation{justify-content:center;align-items:center;display:flex}.tiny-dog{filter:grayscale(.15);font-size:43px;animation:2s ease-in-out infinite gentle-bob}.scan-beam{background:#49ae9029;border:1px solid #62c7a7;border-radius:50%;width:42px;height:70px;animation:2.6s ease-in-out infinite scan-sweep;position:absolute;left:35px}.scan-line{background:#5bc9a5;width:100%;height:2px;animation:2.6s ease-in-out infinite scan-line;position:absolute;box-shadow:0 0 9px #5bc9a5}.gait-animation{background:repeating-linear-gradient(0deg,#eef7ef 0 24px,#e1efe5 25px);justify-content:center;align-items:center;display:flex}.robot-dog{font-size:38px;animation:1.7s ease-in-out infinite robot-walk}.gait-animation i{background:#70b99b;border-radius:50%;width:5px;height:5px;animation:1.7s infinite learning-dots;position:absolute;bottom:18px}.gait-animation i:first-of-type{left:24%}.gait-animation i:nth-of-type(2){animation-delay:.3s;left:50%}.gait-animation i:nth-of-type(3){animation-delay:.6s;left:76%}.fitness-animation{background:#f1f0ff;padding:16px 12px 7px}.fitness-animation svg{width:100%;height:72px;overflow:visible}.fitness-axis{fill:none;stroke:#b6b2da;stroke-width:1.5px}.fitness-line{fill:none;stroke:#6d65c7;stroke-width:3px;stroke-linecap:round;stroke-dasharray:210;stroke-dashoffset:210px;animation:3s ease-in-out infinite draw-fitness}.fitness-animation span{color:#6d65c7;font-size:10px;font-weight:800;position:absolute;top:8px;right:10px}.print-animation{background:#fff2ea;justify-content:center;align-items:end;padding-bottom:12px;display:flex}.printer-head{background:#ee9678;border-radius:4px;width:36px;height:9px;animation:2.2s ease-in-out infinite printer-move;position:absolute;top:17px}.prosthetic-leg{color:#bf6750;text-align:center;letter-spacing:2px;font-size:19px;line-height:18px;animation:2.2s ease-in-out infinite print-build}.print-glow{background:#ef9b7c;width:58px;height:3px;animation:2.2s ease-in-out infinite print-glow;position:absolute;bottom:19px;box-shadow:0 0 12px #ef9b7c}@keyframes gentle-bob{50%{transform:translateY(-4px)rotate(-3deg)}}@keyframes scan-sweep{0%,to{left:29px}50%{left:calc(100% - 70px)}}@keyframes scan-line{0%,to{top:17px}50%{top:86px}}@keyframes robot-walk{0%,to{transform:translate(-22px)rotate(-2deg)}50%{transform:translate(22px)rotate(2deg)}}@keyframes learning-dots{50%{opacity:.35;transform:scale(2)}}@keyframes draw-fitness{0%{stroke-dashoffset:210px}55%,to{stroke-dashoffset:0}}@keyframes printer-move{0%,to{transform:translate(-30px)}50%{transform:translate(30px)}}@keyframes print-build{0%,20%{clip-path:inset(100% 0 0)}80%,to{clip-path:inset(0)}}@keyframes print-glow{0%,20%{opacity:0}50%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.method-animation *,.method-animation{animation:none!important}}.form-section{background:#f7f2e8;grid-template-columns:.8fr 1.2fr;gap:72px;max-width:none;padding-left:max(28px,50vw - 562px);padding-right:max(28px,50vw - 562px);display:grid}.form-intro p{color:#58716b;line-height:1.6}.privacy-note{border-left:3px solid var(--coral);color:#52716b;gap:9px;padding:10px 0 10px 14px;font-size:14px;line-height:1.45;display:flex}.dog-form{background:#fff;border:1px solid #eadfcb;border-radius:23px;padding:28px;box-shadow:0 16px 38px #453c2614}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.form-grid label{color:#48665f;gap:7px;font-size:13px;font-weight:800;display:grid}.full-width{grid-column:1/-1}input,select,textarea{color:var(--ink);background:#fffefa;border:1px solid #d7e0d5;border-radius:10px;outline:none;width:100%;padding:12px}input:focus,select:focus,textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #dff1df}.drop-zone{color:#5b7d74;cursor:pointer;text-align:center;border:1.5px dashed #99b8a4;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:146px;margin:22px 0 12px;padding:14px;display:flex}.drop-zone input{display:none}.drop-zone.has-photo{border-style:solid;position:relative}.drop-zone img{object-fit:cover;border-radius:11px;width:105px;height:105px}.drop-zone.has-photo span{color:var(--forest);align-items:center;gap:5px;font-weight:700;display:flex}.remove-photo{color:#a54f3d;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-size:12px;display:flex}.form-error{color:#b44631;font-size:14px}.success-message{color:var(--forest);align-items:center;gap:7px;font-weight:700;display:flex}.submit-button{width:100%;margin-top:8px}.submit-button:disabled{opacity:.6;cursor:wait}.waitlist-section{padding-bottom:104px}.dog-grid{grid-template-columns:repeat(5,1fr);gap:15px;margin-top:38px;display:grid}.dog-card{background:#fff;border:1px solid #e6ede5;border-radius:16px;min-width:0;padding:13px}.dog-photo{background:#e9f2e8;border-radius:11px;justify-content:center;align-items:center;height:120px;font-size:58px;display:flex;overflow:hidden}.dog-photo img{object-fit:cover;width:100%;height:100%}.dog-photo-button{cursor:pointer;border:0;width:100%;padding:0;transition:transform .2s,box-shadow .2s}.dog-photo-button:hover,.dog-photo-button:focus-visible{outline-offset:2px;outline:2px solid #818cf8;transform:translateY(-2px);box-shadow:0 8px 18px #4352be2e}.dog-modal-backdrop{z-index:50;background:#183a378c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dog-modal{text-align:center;background:#fffdf8;border-radius:28px;width:min(440px,100%);padding:24px;position:relative;box-shadow:0 24px 70px #183a3747}.dog-modal-close{color:#765b61;cursor:pointer;background:#f3e9e2;border:0;border-radius:50%;width:32px;height:32px;font-size:24px;line-height:1;position:absolute;top:10px;right:14px}.dog-modal-photo{background:#e9f2e8;border-radius:50%;place-items:center;width:180px;height:180px;margin:4px auto 18px;font-size:70px;display:grid;overflow:hidden;box-shadow:0 0 0 8px #f8efe4,0 12px 24px #453c2629}.dog-modal-photo img{object-fit:cover;width:100%;height:100%}.dog-modal h2{color:var(--ink);margin:0 0 10px;font-size:32px}.dog-modal p{color:#765b61;margin:0;font:italic 17px/1.65 Georgia,serif}.pet-story-card{color:#765b61;background:linear-gradient(135deg,#fff7ed,#fdf2f8);border-radius:18px;margin:18px 0 8px;padding:16px 20px;font:italic 17px/1.65 Georgia,serif;box-shadow:0 8px 20px #78575a1a}.dog-card h3{margin:14px 0 6px;font-size:16px}.dog-card p{color:#6b827d;min-height:53px;margin-bottom:9px;font-size:12px;line-height:1.45}.dog-card span{color:var(--forest);align-items:center;gap:4px;font-size:10px;font-weight:800;display:flex}.donation-dog-button{background:linear-gradient(135deg,#f2f6ff,#e7efff);border:1px solid #c7d9f5;box-shadow:0 4px 10px #4360b41a}.donation-dog-button:hover{color:#fff;background:linear-gradient(135deg,#5967d8,#4053bd);border-color:#5967d8;transform:translateY(-1px);box-shadow:0 7px 16px #4352be3d}.donation-coin{color:#5967d8;transition:transform .2s}.donation-dog-button:hover .donation-coin{color:#ffe28a;transform:rotate(-12deg)scale(1.12)}.donation-arrow{opacity:.55;transition:transform .2s,opacity .2s}.paypal-button{color:#123b83;cursor:pointer;background:#fff;border:1px solid #c8d7f3;border-radius:12px;justify-content:center;align-items:center;gap:7px;width:100%;padding:10px 14px;font-weight:800;transition:background .2s,transform .2s;display:inline-flex}.paypal-button:hover{background:#f1f6ff;transform:translateY(-1px)}.paypal-button:disabled{opacity:.6;cursor:wait}.paypal-mark{color:#fff;background:#0070ba;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font:italic 900 14px Georgia,serif;display:inline-flex}.selected-dog-summary{text-align:left;color:#43569f;background:#f3f6ff;border:1px solid #cbd8fa;border-radius:14px;align-items:center;gap:9px;max-width:255px;padding:9px;display:flex}.selected-dog-avatar{color:#5967d8;background:#dfe6ff;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid;overflow:hidden}.selected-dog-avatar img{object-fit:cover;width:100%;height:100%}.selected-dog-summary p{margin:0;font-size:11px;line-height:1.35}.selected-dog-summary strong{color:#263d91;font-size:12px;display:inline}.selected-dog-summary small{color:#6e7cae;margin-top:3px;font-size:10px;display:block}.clear-selected-dog{color:#7b88b6;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0 2px;font-size:18px;line-height:1}.thanks-page{background:radial-gradient(circle at 20% 15%, #e3f4e6, transparent 35%), var(--cream);place-items:center;min-height:100vh;padding:120px 22px 70px;display:grid}.thanks-card{text-align:center;background:#fff;border:1px solid #e2ebe0;border-radius:28px;max-width:600px;padding:52px 34px;box-shadow:0 20px 50px #2643371f}.thanks-heart{color:#ee7b5e;background:#fff0ea;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 22px;display:grid}.thanks-card .section-label{justify-content:center}.thanks-card h1{margin:18px 0;font-size:clamp(42px,7vw,66px)}.thanks-dog-photo{background:#fff3ee;border:2px solid #f5c7ba;border-radius:50%;width:118px;height:118px;margin:23px auto 5px;padding:6px;transform:rotate(-4deg);box-shadow:0 8px 18px #ee7b5e2e}.thanks-dog-photo img{object-fit:cover;border-radius:50%;width:100%;height:100%}.thanks-dog-placeholder{place-items:center;width:100%;height:100%;font-size:58px;display:grid}.thanks-dog-name{color:#236154;background:#e8f4e9;border-radius:999px;align-items:center;gap:5px;padding:8px 13px;font-size:13px;display:inline-flex}.thanks-card>p{color:#617a72;font-size:17px;line-height:1.7}.thanks-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:28px;display:flex}.thanks-actions .button{margin-top:0}.thanks-home-link{color:var(--forest);font-weight:800;text-decoration:none}.donation-dog-button:hover .donation-arrow{opacity:1;transform:translate(3px)}.offer-section{background:#dcefdc;grid-template-columns:1.25fr .75fr;align-items:center;gap:70px;max-width:none;padding-left:max(28px,50vw - 562px);padding-right:max(28px,50vw - 562px);display:grid}.offer-section>div>p{color:#43635b;max-width:600px;font-size:17px;line-height:1.65}.offer-card{background:#fffdf8;border-radius:19px;padding:29px;box-shadow:0 14px 30px #2457401f}.offer-card>span{color:var(--coral);letter-spacing:.1em;font-size:11px;font-weight:900}.offer-card>strong{letter-spacing:-.07em;margin:10px 0;font:52px Georgia,serif;display:block}.offer-card small{letter-spacing:0;color:#607b73;font:14px Inter,sans-serif}.offer-card p{color:#607b73;line-height:1.5}.donors-list{background:#fff;border:1px solid #e5ece3;border-radius:20px;max-width:760px;margin:0 auto 50px;padding:28px}.donors-list h3{color:var(--ink);margin:8px 0 4px;font:28px Georgia,serif}.donors-list>div>p,.donors-empty{color:#70867f;font-size:13px}.donors-table{border-top:1px solid #dce7dc;margin-top:20px}.donors-row{color:#47665d;border-bottom:1px solid #edf2eb;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:13px 3px;font-size:14px;display:grid}.donors-row strong{color:var(--forest);font-size:14px}.donors-header{color:#879991;letter-spacing:.08em;text-transform:uppercase;padding-top:10px;font-size:11px;font-weight:800}.funding-summary{justify-content:space-between;align-items:end;gap:8px;margin-top:10px;display:flex}.funding-summary span{color:#82938e;font-size:10px;display:block}.funding-summary strong{color:#183a37;font-size:13px}.funding-summary b{color:#236154;font-size:13px}.funding-track{background:#e5eee5;border-radius:999px;height:7px;margin-top:7px;overflow:hidden}.funding-track div{border-radius:inherit;background:linear-gradient(90deg,#8ec5a2,#236154);height:100%;transition:width .35s}.funding-caption{color:#6b827d!important;min-height:0!important;margin:5px 0 10px!important;font-size:10px!important}.progress-page{background:#f7f2e8;min-height:100vh;padding:124px 28px 80px}.progress-hero,.timeline-section{max-width:920px;margin:0 auto}.progress-hero h1{margin-bottom:14px;font-size:clamp(42px,6vw,72px)}.progress-hero>p{color:#55736b;font-size:17px}.progress-form{background:#fff;border:1px solid #eadfcb;border-radius:18px;grid-template-columns:1fr 1fr auto;align-items:end;gap:14px;margin-top:34px;padding:20px;display:grid}.progress-form label{color:#496961;gap:7px;font-size:13px;font-weight:800;display:grid}.progress-form .button{min-height:44px;margin:0}.timeline-section{background:#fff;border:1px solid #e8dfd1;border-radius:23px;margin-top:55px;padding:32px}.timeline-heading{border-bottom:1px solid #e6eee4;padding-bottom:19px}.timeline-heading h2{margin:9px 0 6px;font-size:40px}.timeline-heading p{color:#658078;margin:0}.timeline{grid-template-columns:repeat(3,1fr);gap:0;margin-top:31px;display:grid}.timeline-step{color:#71877f;padding:0 20px 0 0;position:relative}.timeline-step:not(:last-child):after{content:"";background:#dce7dc;height:2px;position:absolute;top:20px;left:44px;right:0}.step-indicator{z-index:1;color:#6d847c;background:#e8eeea;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:14px;font-weight:800;display:flex;position:relative}.timeline-step.completed .step-indicator{background:var(--forest);color:#fff}.timeline-step.current .step-indicator{color:#785e1b;background:#ffe5a7;box-shadow:0 0 0 6px #fff6d9}.timeline-step span{color:#779088;text-transform:uppercase;letter-spacing:.1em;margin-top:19px;font-size:11px;font-weight:800;display:block}.timeline-step h3{color:var(--ink);margin:6px 0;font-size:18px}.timeline-step p{margin:0;font-size:13px;line-height:1.55}.download-placeholder{color:#638078;background:#f5f8f3;border:1px solid #cfded1;border-radius:8px;align-items:center;gap:5px;margin-top:13px;padding:9px;font-size:11px;font-weight:700;display:flex}.download-placeholder:disabled{opacity:.75;cursor:not-allowed}@media (width<=850px){.hero-section,.form-section,.offer-section,.coffee-story{grid-template-columns:1fr}.hero-section{min-height:auto;padding-top:130px}.hero-dog{display:none}.coffee-portrait{max-width:330px;margin:0 auto}.method-grid{grid-template-columns:repeat(2,1fr)}.dog-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=540px){.section{padding:66px 20px}.two-column-copy,.form-grid,.progress-form,.timeline{grid-template-columns:1fr;gap:16px}.method-grid{grid-template-columns:1fr}.dog-grid{grid-template-columns:repeat(2,1fr)}.research-section,.form-section,.offer-section{padding-left:20px;padding-right:20px}.dog-form,.timeline-section{padding:18px}.progress-page{padding-left:20px;padding-right:20px}.timeline-step{padding-bottom:24px}.timeline-step:not(:last-child):after{width:2px;height:24px;top:40px;left:20px;right:auto}}