@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--ink:#243128;--forest:#294432;--deep:#1e3528;--sage:#8ba08a;--cream:#f5efe2;--paper:#faf7f0;--gold:#b79a66;--line:#d9d1c3;--white:#fffdf8;--serif:"Playfair Display",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}.section-pad{padding:105px 8vw}.site-header{height:86px;padding:0 4vw;display:flex;align-items:center;gap:38px;border-bottom:1px solid rgba(39,55,44,.14);background:rgba(250,247,240,.92);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand-mark{display:grid;place-items:center;width:41px;height:41px;border:1px solid var(--ink);border-radius:50%;font-family:var(--serif);font-size:23px}.brand b,.brand small{display:block}.brand b{font-family:var(--serif);font-size:20px;letter-spacing:.02em}.brand small{font-size:7px;letter-spacing:.15em;text-transform:uppercase;color:#69756c}.main-nav{display:flex;gap:27px}.main-nav a{font-size:11px}.header-cta{font-size:10px;background:var(--forest);color:white;padding:12px 17px}.menu-button{display:none;border:0;background:transparent}.hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:1.04fr .96fr}.hero-copy{padding:90px 7vw 70px 8vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:8px;letter-spacing:.25em;font-weight:600}.eyebrow span{display:inline-block;width:34px;height:1px;background:var(--gold);margin:0 12px 3px 0}.hero h1,.manifesto h2,.section-heading h2,.academy h2,.founder h2,.closing h2{font-family:var(--serif);font-weight:500;line-height:1.13;letter-spacing:-.035em}.hero h1{font-size:clamp(54px,6vw,92px);margin:24px 0}.hero h1 em,.manifesto em,.section-heading em{color:#789078;font-weight:500}.hero-lead{max-width:650px;color:#627068}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 35px}.button{display:inline-flex;gap:20px;align-items:center;justify-content:center;padding:13px 19px;border:1px solid #7e8e80;font-size:10px}.button.primary{background:var(--forest);color:white;border-color:var(--forest)}.button.quiet{border-color:#c8c1b4}.button.cream{background:var(--cream);color:var(--deep);border-color:var(--cream)}.dedication{display:flex;gap:12px;align-items:center;padding-top:22px;border-top:1px solid var(--line);max-width:560px}.dedication>span{color:#a7766d}.dedication p,.dedication strong,.dedication small{display:block;margin:0}.dedication strong{font-family:var(--serif);font-size:15px}.dedication small,.privacy-note{font-size:8px;color:#7d867e;letter-spacing:.08em}.privacy-note{margin-top:18px}.hero-visual{min-height:680px;background:linear-gradient(0deg,rgba(25,48,34,.62),transparent 58%),url('../assets/pets/helen-hero.jpg') center/cover;position:relative}.hero-caption{position:absolute;left:7%;bottom:7%;color:white}.hero-caption small,.hero-caption strong{display:block}.hero-caption small{font-size:8px;letter-spacing:.2em}.hero-caption strong{font-family:var(--serif);font-size:42px}.manifesto{display:grid;grid-template-columns:.35fr 1.65fr;gap:6vw;background:#e9eee7}.section-index{font-size:8px;letter-spacing:.2em;color:#8d7754}.manifesto h2{font-size:clamp(42px,5vw,72px);margin:0}.manifesto div>p{max-width:720px;color:#667168}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.pillar{background:var(--paper);padding:48px 38px;min-height:340px;display:flex;flex-direction:column}.pillar.feature{background:var(--forest);color:white}.pillar>span{font-family:var(--serif);color:var(--gold)}.pillar h3{font-family:var(--serif);font-size:38px;margin:55px 0 12px}.pillar p{font-size:12px;color:#69736b}.pillar.feature p{color:#ced8d0}.pillar a{margin-top:auto;font-size:10px}.memorial{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:var(--deep);color:white}.memorial-image{background:url('../assets/pets/helen-young.jpg') center/cover}.memorial-copy{padding:100px 8vw;display:flex;flex-direction:column;justify-content:center}.eyebrow.light{color:#d5ded7}.memorial-copy h2{font-family:var(--serif);font-size:clamp(48px,5vw,76px);line-height:1.15;margin:22px 0}.memorial-copy>p{color:#c5d1c8}.memory-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);margin:28px 0}.memory-stats div{padding:20px 12px 20px 0}.memory-stats strong,.memory-stats small{display:block}.memory-stats strong{font-family:var(--serif);font-size:18px}.memory-stats small{font-size:8px;color:#aebdb2}.memorial-copy .button{width:max-content}.section-heading{display:grid;grid-template-columns:1fr .75fr;gap:8vw;align-items:end;margin-bottom:46px}.section-heading h2{font-size:clamp(43px,5vw,70px);margin:12px 0}.section-heading>p{color:#69736b}.story-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:16px}.story-card{background:#eee8dd;padding-bottom:30px}.story-photo{height:350px;background:center/cover}.story-photo.helen{background-image:url('../assets/pets/family.jpg')}.story-photo.wanglin{background-image:url('../assets/pets/wanglin-clean.png')}.story-card small,.story-card h3,.story-card>p,.story-card>a,.story-card blockquote,.story-card>b{margin-left:26px;margin-right:26px}.story-card small{display:block;margin-top:22px;color:#9d8157;font-size:8px;letter-spacing:.15em}.story-card h3{font-family:var(--serif);font-size:28px;line-height:1.35}.story-card>p{font-size:11px;color:#6a746c}.quote-card{background:var(--forest);color:white;padding:38px 10px;display:flex;flex-direction:column}.quote-card>b{font-family:var(--serif);font-size:70px;color:#d6bd8b}.quote-card blockquote{font-family:var(--serif);font-size:21px;line-height:1.65;margin-top:0}.quote-card a{font-size:10px;margin-top:auto}.academy{background:#e9eee7;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.academy h2{font-size:clamp(44px,5vw,68px)}.academy-copy>p:last-child{color:#68736a}.course-list article{display:grid;grid-template-columns:50px 1fr 30px;align-items:center;border-top:1px solid #c7d1c5;padding:24px 0}.course-list article:last-child{border-bottom:1px solid #c7d1c5}.course-list>article>span{font-family:var(--serif);color:var(--gold)}.course-list small{font-size:7px;letter-spacing:.15em;color:#7d887f}.course-list h3{font-family:var(--serif);font-size:22px;margin:4px 0}.ai-section{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:110px 9vw;background:var(--forest);color:white}.ai-copy h2{font-family:var(--serif);font-size:clamp(56px,7vw,95px);line-height:1.05}.ai-copy>p{color:#cad5cc;max-width:580px}.coming{display:inline-block;border:1px solid rgba(255,255,255,.35);padding:9px 14px;font-size:9px;margin-top:18px}.chat-card{background:#f6f2e8;color:var(--ink);padding:35px;align-self:center;box-shadow:0 30px 80px rgba(0,0,0,.18)}.chat-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.chat-head>span{display:grid;place-items:center;width:43px;height:43px;background:var(--forest);color:white;border-radius:50%;font-family:var(--serif)}.chat-head p,.chat-head strong,.chat-head small{display:block;margin:0}.chat-head small{font-size:8px;color:#778078}.bubble{width:max-content;max-width:78%;background:#e4eade;padding:11px 14px;border-radius:3px;font-size:12px;margin:22px 0}.bubble.user{margin-left:auto;background:var(--forest);color:white}.boundary{display:block;border-top:1px solid var(--line);padding-top:15px;color:#828982;font-size:8px}.founder{display:grid;grid-template-columns:1fr 1.15fr;min-height:760px}.founder-photo{background:url('../assets/founder/zouqin-founder.jpg') center 34%/cover}.founder-copy{padding:100px 9vw;display:flex;flex-direction:column;justify-content:center}.founder h2{font-size:clamp(65px,8vw,115px);margin:20px 0}.role{font-family:var(--serif);font-size:17px;color:#59685e}.founder blockquote{font-family:var(--serif);font-size:20px;border-left:2px solid var(--gold);padding-left:22px;margin:35px 0}.founder-copy>p:last-of-type{color:#68736b}.founder-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.founder-tags span{border:1px solid var(--line);border-radius:30px;padding:7px 12px;font-size:8px}.closing{text-align:center;padding:120px 20px;background:var(--deep);color:white}.closing>p{font-size:8px;letter-spacing:.2em;color:#afc0b3}.closing h2{font-size:clamp(44px,6vw,80px)}.closing .button{margin-top:18px}footer{padding:50px 5vw;background:#17291f;color:white;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center}.footer-brand .brand-mark{border-color:white}footer>p{font-family:var(--serif);text-align:center;color:#becbc1}footer>div{text-align:right}footer>div a{font-size:9px;margin-left:17px}footer>small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;color:#819187}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:950px){.main-nav,.header-cta{display:none}.menu-button{display:block}.main-nav.open{position:absolute;display:grid;top:86px;left:0;right:0;background:var(--paper);padding:25px 6vw;border-bottom:1px solid var(--line)}.hero,.memorial,.academy,.ai-section,.founder{grid-template-columns:1fr}.hero-visual{min-height:620px}.manifesto{grid-template-columns:1fr}.story-grid{grid-template-columns:1fr 1fr}.quote-card{grid-column:1/-1;min-height:340px}.founder-photo{min-height:700px}footer{grid-template-columns:1fr}footer>p,footer>div{text-align:left}footer>div a{margin:0 17px 0 0}}
@media(max-width:620px){.site-header{height:72px}.section-pad{padding:75px 6vw}.hero-copy{padding:65px 6vw}.hero-visual{min-height:500px}.pillars,.story-grid{grid-template-columns:1fr}.pillar{min-height:290px}.section-heading{grid-template-columns:1fr}.story-card,.quote-card{grid-column:auto}.memorial-copy,.founder-copy{padding:75px 7vw}.memory-stats{grid-template-columns:1fr}.memory-stats div+div{border-top:1px solid rgba(255,255,255,.15)}.founder-photo{min-height:520px}.ai-section{padding:75px 7vw}.hero-actions{align-items:flex-start;flex-direction:column}}
